Recent DTV encoding features #287
Replies: 7 comments
-
Thanks for pointing this out. I'm still learning the ins and outs of the encoding stuff specifically, so this is very helpful. I think tackling the ffmpeg.ts file will be one of my next efforts; it's quite messy and hard to follow. I will definitely take your advice on withholding the mpeg2video change as well. |
Beta Was this translation helpful? Give feedback.
-
Cool. I think the difference between
Whereas with
|
Beta Was this translation helpful? Give feedback.
-
Yeah, before I saw the DTV change I had run into the stillimage issue on my own instance when running with nvenc. I changed this over in fc67cf1. Verified those 3 encoders work as expected with stillimage. Also reverted the |
Beta Was this translation helpful? Give feedback.
-
Hmmm interestingly for the offline player + stillimage I'm seeing that same warning you posted about
|
Beta Was this translation helpful? Give feedback.
-
That case looks like an encoder that doesn't understand the tune option, thus the warning, vs the invalid tune value which might totally fail. Which encoder are you using? |
Beta Was this translation helpful? Give feedback.
-
Must be ffmpeg -hide_banner -h encoder=mpeg2video | grep tune |
Beta Was this translation helpful? Give feedback.
-
Yep it was mpeg2video, I missed the warning the first time around when testing. I'll remove it from the new allowlist array I just added |
Beta Was this translation helpful? Give feedback.
-
You may not want these changes as-is bf3b076
For the
stillimage
tune, I think it would make more sense to explicitly enable for only those encoders known to support it. The upside of the tune as written is that it optimizes the (brief) loading screen, while the downside is that the stream won't start at all if the encoder doesn't support that specific tune. Also, there is some duplication:tunarr/server/src/ffmpeg.ts
Lines 424 to 430 in bf3b076
tunarr/server/src/ffmpeg.ts
Lines 671 to 673 in bf3b076
For the "
mpeg2video
fix" which replaced-b:v
(target video bitrate) with-crf
(constant quality mode) for all encoders exceptmpeg2video
- it's kind of a similar story since many encoders don't support-crf
, though at least they seem to ignore it rather than failing altogether. This introduced a massive quality loss for everything exceptmpeg2video
and maybelibx264
.My guess is that DTV testing may be limited to
mpeg2video
andlibx264
, in which case these recent changes wouldn't really affect anything, or might actually improve things, but for anyone using hardware encoding they have not been well received.Beta Was this translation helpful? Give feedback.
All reactions