Closed bkauler closed 2 years ago
OK, at this point it should be running something like:
LANG=en LANGUAGE=en mpv -vo help | grep -i "image" >/dev/null 2>&1
Can you try this from the commandline and check the result ?
# mpv -vo help
The legacy option syntax ('-vo value') is deprecated and dangerous.
Please use '--vo=value'.
Available video outputs:
libmpv render API for libmpv
gpu Shader-based GPU Renderer
xv X11/Xv
x11 X11 (slow, old crap)
null Null video output
image Write video frames to image files
tct true-color terminals
# echo $?
0
# LANG=en LANGUAGE=en mpv -vo help | grep -i "image" >/dev/null 2>&1
# echo $?
0
# mpv --vo=help
Available video outputs:
libmpv render API for libmpv
gpu Shader-based GPU Renderer
xv X11/Xv
x11 X11 (slow, old crap)
null Null video output
image Write video frames to image files
tct true-color terminals
# echo $?
0
OK, so it does seem to work, It's currently unclear to me why it should be hanging.
Edit:, right, so it seems to be doing the more thorough test. If you edit /usr/bin/smogrify and uncomment the line $DEBUG_OPEN = 1; then there may be more clues in the terminal.
Note also, support for mpv may not be current, it is preferable to have mplayer installed. Currently this is only used a) to rip audio and subtitle tracks from clips, b) as a fallback for video if none of the decoder plugins can open a clip, c) showing embedded previews in the clip opener, and d) converting (importing) some audio formats which cannot be handled via other methods.
At some point it would be nice to remove this dependency, which would imply - updating all video decoders to rip audio / subs; ignoring files which cant be opened via decoder plugins; implementing previews for unopened clips and embedding the player in the preview window; and using another tool - e.g.sox, for converting exotic audio format - this is quite involved, so for the moment the recommendation is still to have mplayer installed.
Having said that, it is still a bug if mpv causes the app to hang on setup.
Lives 3.0.2 starts up ok, running on same EasyOS system:
I compiled 3.0.2 with some patches from debian, and linked with gtk2.
That is not really helpful, a lot of things have changed since version 3.0.2. It would be challenging to try to track downexactly which set of changes are causing the hang in the current version. The best solution is still to try to pinpoint it using $DEBUG_OPEN.
As a quick worakaround, you can also try clicking the "Skip" button before it gets to that test.
OK, with $DEGUG_OPEN=1:
# lives
LiVES 3.2.1-pre
Copyright 2002 - 2021 Gabriel Finch (salsaman+lives@gmail.com) and others.
LiVES comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details.
vid open command for 81122605 is: /usr/bin/mpv -quiet -noconfig all -osdlevel 0 -vo png:z=1 -lavdopts o=threads=4 -fps 1000000. -noframedrop -nosound "/usr/share/lives/resources/vidtest.avi" </dev/null
aud open command for 81122605 is:
It freezes immediately after that last line.
Note, I am running as root.
"Skip" doesn't work, the app is completely frozen. Also, I tried clicking "Skip" before gets to that test, but that also freezes the app.
Running mpv directly:
# /usr/bin/mpv -quiet -noconfig all -osdlevel 0 -vo png:z=1 -lavdopts o=threads=4 -fps 1000000. -noframedrop -nosound "/usr/share/lives/resources/vidtest.avi"
Error parsing option noconfig (option not found)
Setting commandline option --noconfig= failed.
Exiting... (Fatal error)
#
Why is there "</dev/null" on the end?
# /usr/bin/mpv -quiet -config no all -osdlevel 0 -vo png:z=1 -lavdopts o=threads=4 -fps 1000000. -noframedrop -nosound "/usr/share/lives/resources/vidtest.avi"
Warning: option --osdlevel was replaced with --osd-level and might be removed in the future.
The legacy option syntax ('-osdlevel value') is deprecated and dangerous.
Please use '--osdlevel=value'.
The legacy option syntax ('-vo value') is deprecated and dangerous.
Please use '--vo=value'.
Option vo: this option does not accept sub-options.
Sub-options for --vo and --ao were removed from mpv in release 0.23.0.
See https://0x0.st/uM for details.
Error parsing option vo (option parameter could not be parsed)
Setting commandline option --vo=png:z=1 failed.
Exiting... (Fatal error)
#
Fix pushed 67f79fdb2e6b5ac38c945285b2d476b32dc8b3c7
Yes, success, starts up OK.
The photo shows. It freezes on checking mpv for decoding png. The next line, should be checking mpv for jpeg, but has "????" in place of mpv:
That's it, goes no further and I have to kill the process.
LiVES 3.0.2 works fine, at startup detects mpv does not decode to png, and does decode to jpeg.