It did not work, theres any way to make OT recognize my system ffmpeg installation?
I tried this as well, unfortunately AppArmor service still denies it. I think based on standard policy settings for snap it filters out bin and lib directories.
When using the browser in OT to pick the folder, it cannot navigate to the folder. If OT cannot navigate to it, it cannot get to it even if you just type in the path without browsing for it.
Iām not familiar with snap security, but is there a way you can you set up an AppArmor policy specifically for snap.opentoonz.opentoonz (I think) to use ācomplainā mode? Curently, on Ubuntu, the policy is set to āenforcedā, but I think its inheriting it from the snap policy.
When you say ādoesnāt workā, what actually happens?
The directory selection dialog always fails with āThe input folder path is invalidā error message and the audit log shows that the application attempt to access random top-level directories and as a result get a denial:
[97803.772237] audit: type=1400 audit(1556418141.285:1446): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/etc/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
[97807.520837] audit: type=1400 audit(1556418145.033:1447): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/sbin/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
The problem might be that the paths between /snap/ā¦/current isnāt really accessible by the application and the file system traverse attempt failed.
Even when you force the FFmpeg path by throw in the /snap/opentoonz/current/usr/bin
value into the textbox OpenToonz still complain about FFmpeg not found with more denial errors with unrelated paths:
[98105.899039] audit: type=1400 audit(1556418443.410:1455): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/meta/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
[98105.899053] audit: type=1400 audit(1556418443.410:1456): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/mnt/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
[98105.899055] audit: type=1400 audit(1556418443.410:1457): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/opt/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
[98105.900637] audit: type=1400 audit(1556418443.414:1458): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/run/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
[98105.900640] audit: type=1400 audit(1556418443.414:1459): apparmor="DENIED" operation="open" profile="snap.opentoonz.opentoonz" name="/sbin/" pid=16282 comm="OpenToonz" requested_mask="r" denied_mask="r" fsuid=12345 ouid=0
This is exactly what I was seeing in the logs. Even if you put the ffmpeg in a folder that opentoonz can get to, AppArmor will still deny the request to access it.
The only way I was able to get opentoonz to read the path and run ffmpeg successfully was to remove all the AppArmor profiles and readd the snapd profile in ācomplainā mode. This is only temporary until the next reboot. Obviously this is not ideal nor something users should really be playing with.
There is something wrong with the snap. Like @Lin-Buo-Ren said, for some reason it is trying to access all kinds of top-level directories it doesnāt actually need access to. /meta/
is particularly interesting since that isnāt an LSB directory but it is within the snapās runtime. You could perhaps solve this with layouts, but it really feels like that would just be papering over the bug that is causing this.
You might try installing the snap in --devmode which puts AppArmor in complain mode while you debug this.
Hi all
Is there a way to make ffmpeg work finally?
I have noticed that the program ffmpeg included in the snap has problem when launched from terminal.
$ /snap/opentoonz/current/usr/bin/ffmpeg
/snap/opentoonz/current/usr/bin/ffmpeg: error while loading shared libraries: libavdevice.so.57: cannot open shared object file: No such file or directory
$ ls -al /snap/opentoonz/current/usr/bin/ff*
-rwxr-xr-x 1 root root 272528 Apr 24 2019 /snap/opentoonz/current/usr/bin/ffmpeg
-rwxr-xr-x 1 root root 137376 Apr 24 2019 /snap/opentoonz/current/usr/bin/ffplay
-rwxr-xr-x 1 root root 161944 Apr 24 2019 /snap/opentoonz/current/usr/bin/ffprobe
-rwxr-xr-x 1 root root 142608 Apr 24 2019 /snap/opentoonz/current/usr/bin/ffserver
I have logged an issue here (i did not know about this forum before):
I have replied on the github issue.