Platform: LXLE (Lubuntu remix) 16.04.1 i686 4.4.0-92-generic #115-Ubuntu
Version: 17.8.0 (revision 8621)
Using Qt 4.8.7 (compiled with Qt 4.8.7)
Using MPV 0.14.0
Following implementation of feature request [#637], the following changes in behaviour are seen:
show_filename action replaced by show_info_osd, which provides a much busier display by default, when using the mpv engine.
show_info_osd display can be configured using smplayer.ini/[advanced]/mpv_osd_media_info setting; eg to emulate show_filename set value to ${filename}.
With mplayer engine, show_info_osd emulates show_filename exactly by default: filename is displayed via OSD for a short period ~ 2s. This applies whether the action is invoked by a keyboard command (shift+I by default) or by setting it to run on each opened file through Options/Preferences/Advanced.
With the mpv engine, when invoked by a keyboard command, show_info_osd displays the information with no timeout, and has to be cancelled by repeating the command.
With the mpv engine, when invoked on opening a file, show_info_osd either displays the information for less than a second and then clears it, or displays it for ~4s, clears it for a moment, then redisplays it with no timeout, and has to be cancelled by repeating the command. These behaviours alternate when moving through a playlist.
Personally I would have preferred the show_filename action with its previous behaviour to be retained along with show_info_osd but perhaps there's probably a technical limitation in the mpv/mplayer interface to blame.
In any case the inconsistent set of behaviours exhibited with the mpv engine is clearly wrong. There should be a timeout in all cases, with a way of overriding it separately for the keyboard invocation case if possible.
The link should be to [feature-requests:#637], but the creator can't edit the original ticket, even though commenters can edit their comments.
Installing a newer mpv doesn't help, though it does fix missing audio for some files when volume normalisation is enabled - should there be a dependency on a later mpv in the smplayer PPA package for versions that use the acompressor filter [#825]?
The root of the display issue may be in these smplayer log entries. After either method of invoking show_info_osd, log entries like these appear, until the action is repeated to cancel it (mpv_osd_media_info="${filename}"):
...
[15:00:53:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:54:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:54:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:55:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:55:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:56:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:56:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:57:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:57:710] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:58:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:58:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:59:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:00:59:709] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
[15:01:00:209] PlayerProcess::writeToStdin: show_text "${filename}" 2000 0
...
Looks as though an event handler that is supposed to be run once is being triggered at 0.5s intervals.
Related
Bugs:
#825Feature Requests:
#637Last edit: Dirk Fieldhouse 2017-08-22
Elsewhere in the log mpv complains about not being able to parse the command "osd 0". I guess this is not related to the main issue but arises from the mpv change https://github.com/mpv-player/mpv/commit/a22ff44f7bfe7737929a5d2ebccd38a198289c1a where the osd command was removed (the man page was not updated to match). Presumably replace with "set osd-level 0" update - I see that was already committed a couple of weeks ago!
Last edit: Dirk Fieldhouse 2017-08-23
The commits of interest:
Explanation for the alternating behaviour when moving through a playlist with open file action set to show_info_osd: the 500ms timer is not cancelled when closing the first file, so that the behaviour on opening the next file is first to display the filename (according to mpv_osd_media_info) via the timed event and then to cancel the display when the show_info_osd action is run.
If the display is cancelled before moving to the next file, the behaviour is consistent: the display remains up for the next file until cancelled.