HaveAGitGat / Tdarr

Tdarr - Distributed transcode automation using FFmpeg/HandBrake + Audio/Video library analytics + video health checking (Windows, macOS, Linux & Docker)
Other
3.02k stars 94 forks source link

Upgrade FFMPEG to higher version #583

Closed DavidReinberger closed 1 year ago

DavidReinberger commented 2 years ago

Describe the bug FFMPEG in the current version does not support Dolby Vision. 4.4 Supports parsing, which does not let the job fail. 5.0 Supports decoding (Tonemapping) and Remuxing! Was released exactly 2 months ago.

To Reproduce Use a dolby vision enhanced file. The job fails

Expected behavior The job does not fail

Screenshots N/A

Please provide the following information:

-Worker error [can be found on the 'Tdarr' tab by pressing the 'i' button on a failed item in the staged file section or in the transcode error section at the bottom] Versions prior to 4.4 fails with: [hevc_vaapi @ 0x5615c9a0cb40] colour_primaries does not match inferred value: 0, but should be 2..

Additional context I've tested it on the host system with 4.4.1-3 installed and it worked. Is there a possibility to get the 5.0 version, I understand this is using the Jellyfin fork of FFMPEG (why btw?), the DV muxing is an interesting possibility.

HaveAGitGat commented 2 years ago

Sure will maybe do this for .17. Was thinking about doing it for .16 but had already made a lot of changes. Every time I change FFmpeg something stops working for at least 1 person so it's never fun.

DavidReinberger commented 2 years ago

@HaveAGitGat Maybe you could publish multiple docker images of the node with a different ffmpeg version 🤔 separated by a tag

HaveAGitGat commented 2 years ago

sorry didn't do this for .17 as I had a hundred other things come up but will do it for .19.

@DavidReinberger could potentially be a bit confusing when trying to debug issues. Especially with novices who have no idea what version they're using.

Shawn9347 commented 2 years ago

When is .19 coming?

HaveAGitGat commented 2 years ago

I've bumped the dev docker container to 5.0.1-4 and dev native packages to 5.0. Building atm.

ffmpeg version 5.0-essentials_build-www.gyan.dev Copyright (c) 2000-2022 the FFmpeg developers

So will need to check it over the next few weeks to see if there's any unexpected behaviour.

maxroxx commented 2 years ago

Any update on this?

Shawn9347 commented 2 years ago

yea I've been waiting for ages as well

maxroxx commented 2 years ago

@HaveAGitGat hey any update on this ??

HaveAGitGat commented 2 years ago

Docker dev image and 2.00.19 pre-release packages have had ffmpeg 5 for the last few months.

Sorry been in a bit of a pickle the last few months due to some medical issues. Been trying to sort them out with my Dr but due to covid everything is taking quite a long time (e.g. have an appointment, wait 1-2 weeks before next appointment, rinse repeat). Quite frustrating but looking to get back to 100% as soon as I can as there's a lot I want to do.

Shawn9347 commented 2 years ago

Ah okay. I'll try the dev branch. Take care man. Get well soon.

Shawn9347 commented 2 years ago

I just tried "haveagitgat/tdarr:dev" but it's an older version. There's no ffmpeg 5 in that image.

Shawn9347 commented 2 years ago

Nevermind. "haveagitgat/tdarr_acc:dev" does work

sdvaletone commented 2 years ago

Is there any possibility of maybe making the ffmpeg install be a bind mount through docker? This would allow users to install any ffmpeg build they wanted, and any dependencies more easily managed through the host container, while still falling back to your most recently tested one if not.

Forgive my ignorance if this is somehow an obviously bad solution as I know little of the work it would take to make such a thing possible.

taw123 commented 2 years ago

Is there any possibility of maybe making the ffmpeg install be a bind mount through docker?

Perhaps I'm missing something obvious here, but why don't you just exec into the container and then try your upgrade that way? docker exec -it Tdarr bash

Shawn9347 commented 2 years ago

This is no longer an issue. The dev version already includes the version of ffmpeg that is compatible with dolby vision. Use this iamge: haveagitgat/tdarr_acc:dev

Shawn9347 commented 2 years ago

I have been using it for a few weeks now and It works flawlessly

pontusnaslund commented 1 year ago

Is there any update to this? I can't get any version to work? Using tdarr_acc:dev just gives mev 2.00.12 for some reason and tdarr_acc:2.00.19 does not seem to exist at all.

Shawn9347 commented 1 year ago

I am still using the one from my previous comment. I have no issues with it. The developer seems to be inactive. If only he could release v19.

Shawn9347 commented 1 year ago

D813FF74-4F58-4D1F-8FCD-4DCC37BD91F5

took a screenshot real quick of how I pull the image in my docker compose.

pontusnaslund commented 1 year ago

I found that I still had ghcr.io/ in the image link... silly. Does this not come with a node included or am I missing something else in the setup?

Shawn9347 commented 1 year ago

The node is included in this version.

HaveAGitGat commented 1 year ago

Apologies, FFmpeg bumped to 5.1.2 in 2.00.19 released on 12th February 2023 so use that if needed ty.

maxroxx commented 1 year ago

@HaveAGitGat hey im running the latest build but it still removes dolby vision.

Shawn9347 commented 1 year ago

That's odd. I've been using 0.19 for months now.

maxroxx commented 1 year ago

@Shawn9347 yeah i too had updated to .19 months ago when it was reported that this one comes with FFMPEG 5 but never used it with dolby vision as i had stopped using dolby vision content all together up until recently when i upgraded LG OLED G2. So today only i tried clearing unwanted subs from a media file with dolby vision as a HDR format and once the process was completed it again removed Dolby vision as well.

That's odd. I've been using 0.19 for months now.

Have u tested it mp4 files, i noticed it only happens with mp4 containers, so if your file is in mkv container it will work as it should. I too would prefer to use MKV over mp4 But LG OLEDs don't support dolby vision in MKV container.

Shawn9347 commented 1 year ago

Okay. Strange. What is ur plugin stack? For me it works perfectly with dolby vision.

Edit: Yes I only tried it with mkv containers.

Shawn9347 commented 1 year ago

Mp4 only supports dolby vision profile 5 if I'm not wrong. Why don't you use an external player that supports profile 7 in mkv?

maxroxx commented 1 year ago

Mp4 only supports dolby vision profile 5 if I'm not wrong. Why don't you use an external player that supports profile 7 in mkv?

if i'm not wrong currently only shield tv pro supports DV profile 7/8 and loseless atmos, and although my current audio setup doesn't support loseless atmos, so I was avoiding it until I upgrade to loseless atmos sound system. Especially cause as you you shield tv pro is almost 4 years old now. But i have been thinking of getting a device which supports DV profile 7 or 8 and atleast lossy atmos support, as don't see myself upgrading anytime soon. So would apreciate any suggestion you might have.

Shawn9347 commented 1 year ago

Yeah I wish there was a device that could play anything perfectly. I am using a shield tv pro but idk if I would buy it right now if I didn't have one yet.

Hopefully some brand will release a beefy media player soon that supports all lossless audio and smoothly plays back dolby vision.

Or maybe dolby vision support on linux and windows would be awesome.