linuxserver / docker-radarr

GNU General Public License v3.0
650 stars 104 forks source link

Add package ffmpeg #206

Closed zetneteork closed 1 year ago

zetneteork commented 1 year ago

linuxserver.io



Description: Add package ffmpeg

ffprobe is part of the ffmpeg package

Benefits of this PR and context: It fixes the error when working with movie files.

It fixes error when getting the info from video files.

How Has This Been Tested?

Installed with apk, check the docker if works.

Source / References:

[Error] DetectSample: Failed to get runtime from the file, make sure ffprobe is available
LinuxServer-CI commented 1 year ago

I am a bot, here are the test results for this PR: https://ci-tests.linuxserver.io/lspipepr/radarr/4.3.2.6857-pkg-0eac9846-pr-206/index.html https://ci-tests.linuxserver.io/lspipepr/radarr/4.3.2.6857-pkg-0eac9846-pr-206/shellcheck-result.xml

LinuxServer-CI commented 1 year ago

I am a bot, here are the test results for this PR: https://ci-tests.linuxserver.io/lspipepr/radarr/4.3.2.6857-pkg-0eac9846-pr-206/index.html https://ci-tests.linuxserver.io/lspipepr/radarr/4.3.2.6857-pkg-0eac9846-pr-206/shellcheck-result.xml

zetneteork commented 1 year ago

At this moment, radarr fails when detecting the sample. Adding the package was not ideal solution. But adding PATH to env makes ffprobe accessible at any time.

ffprobe: command not found

I think adding this to env will make this fix.

ENV PATH "$PATH:/app/radarr/bin"
aptalca commented 1 year ago

I think we're having a miscommunication. Are you saying that radarr itself is presenting that error? Or is it a 3rd party mod/script?

Radarr devs confirmed that ffprobe (customized version) is included in their package and radarr should use it by default. If that's not happening, please open an issue so we can try and diagnose.

3rd party mods or scripts would need the repo provided ffprobe and you can use our package installer mod to install it.

zetneteork commented 1 year ago

I missed the radarr container has ffprobe at /app/radarr/bin/ffprobe' And this binary works fine. Because of that, I moved the change from adding a package to extending ENV to path/app/radarr/bin`. That seems more elegant than the proposed solution with symlinks. The error comes from docker log lscr.io/linuxserver/radarr when processing files. Container runs without MOD

[Error] DetectSample: Failed to get runtime from the file, make sure ffprobe is available
aptalca commented 1 year ago

Changing the PATH is also not an appropriate solution because 1. it now points to a radarr customized version systemwide and 2. it adds a ton of other binaries to PATH that could break things.

In any case, my point is that due to lack of info, we have not properly diagnosed this issue you're facing yet, and therefore it's not appropriate to discuss band-aid fixes. Please open an issue and fill out the template so we can propoerly diagnose and troubleshoot.