Two enhancement requests
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Two enhancement requests
Two enhancement requests:
1, In order to do exact trimming, would you expand PTS selection (i.e. 'Range: Seconds') from hh:mm:ss to hh:mm:ss.sss? Alternatively, trimming to exact frame number, N=0,1,2..., would be very welcome and could be used to bypass potential PTS errors.
2, Would you provide a means to entirely bypass 'Filters' & 'Video' (& perhaps 'Audio', too) and substitute a user-supplied, ffmpeg -filter_complex?
Thank you, and Warm Regards,
Mark.
1, In order to do exact trimming, would you expand PTS selection (i.e. 'Range: Seconds') from hh:mm:ss to hh:mm:ss.sss? Alternatively, trimming to exact frame number, N=0,1,2..., would be very welcome and could be used to bypass potential PTS errors.
2, Would you provide a means to entirely bypass 'Filters' & 'Video' (& perhaps 'Audio', too) and substitute a user-supplied, ffmpeg -filter_complex?
Thank you, and Warm Regards,
Mark.
Re: Two enhancement requests
If you need "exact trimming", you REALLY need to be using an editor. You cannot guarantee that a key frame happens at a specific location to make a clean cut.
And no, the handbrake pipeline does not have that capability. It isn't "just an ffmpeg front end".
And, in case you didn't see the prominent announcement about it, feature requests are handled on github.
And no, the handbrake pipeline does not have that capability. It isn't "just an ffmpeg front end".
And, in case you didn't see the prominent announcement about it, feature requests are handled on github.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
Howdy,
Are you saying that the time stamps & frame numbers returned by ffprobe aren't correct? I successfully trim via MKVToolNix all the time. I'd like to do it in Handbrake. That's a great tribute to Handbrake because, as you probably know, MKVToolNix is very good.If you need "exact trimming", you REALLY need to be using an editor. You cannot guarantee that a key frame happens at a specific location to make a clean cut.
I know that. But it certainly appears that ffmpeg version 4.2.2 is built-in (hb.dll). So, what's the real reason?And no, the handbrake pipeline does not have that capability. It isn't "just an ffmpeg front end".
Oh, excuse me. I didn't see any announcement via the path that I came in. I'll try github even though it's not very user friendly. Thanks.And, in case you didn't see the prominent announcement about it, feature requests are handled on github.
Re: Two enhancement requests
Handbrake uses the library functions of ffmpeg, not the executable. There is an open github ticket about exposing more the the ffmpeg filters within handbrake (handbrake has its own), but I only recall one other person asking for the ability to splice their own filters in.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
Obviously the Handbrake team have integrated a wide range of tools; one need look no further than how subtitltes are handled. That's what makes Handbrake great. The Handbrake team can justly feel proud.
Here's a use case that applies to over 90% of DVDs and to all Blu-rays.
-filter_complex "telecine=pattern=55, split[1][2], [1]select=not(eq(mod(n\,5)\,2))[3], [2]select=eq(mod(n\,5)\,2), pp=linblenddeint[4], [3][4]interleave"
You see, my TV simply 23-telecines 24FPS video and it's full of judder. For a DisplayPort-connected TV, the NVIDIA GPU 64-telecines, so is no better. A 55-telecine halves the combing from 40% of frames to 20%, and it doubles the combed-frame rate from 6Hz to 12Hz, thereby raising the combed-frame rate to almost above the flicker-rate threshold of human vision. Adding linblenddeint postprocessing to the combed frames (N modulo5 == 2) makes judder completely disappear so that the transcodes look as good on a 60Hz TV as the original sources look on a 24Hz TV -- a true movie theater experience. But I can't incorporate this filter complex as a Handbrake preset. That's a shame.
Yes, I could do it all on the command line with a script. I could combine ffmpeg with tools to extract chapters & subtitles and maybe even launch MKVToolNix GUI with everything already set up, but why not do it all in Handbrake? Handbrake is the best tool, people like it, it just feels right.
Wouldn't it be great if the number of presets could be reduced to just a handful? I've developed other filter graphs that handle, for example, mixed 23-telecined+30FPS sources: "Making of" documentaries. Also, various flawed sources that were originally 23-telecined, then frame dropped, then frame doubled back to 30FPS, then mastered into a DVD in that state (probably because the DVD author had no better source). Also, others including hard telecine of course -- existing Handbrake presets already 23-detelecine.
Also, I'm extracting short video samples of each of these use cases so that other people can visually identify the type of source (and its foibles) and thereby select the best preset. But it all is unaccessible in Handbrake because I can't integrate ffmpeg filter graphs into Handbrake.
Here's a use case that applies to over 90% of DVDs and to all Blu-rays.
-filter_complex "telecine=pattern=55, split[1][2], [1]select=not(eq(mod(n\,5)\,2))[3], [2]select=eq(mod(n\,5)\,2), pp=linblenddeint[4], [3][4]interleave"
You see, my TV simply 23-telecines 24FPS video and it's full of judder. For a DisplayPort-connected TV, the NVIDIA GPU 64-telecines, so is no better. A 55-telecine halves the combing from 40% of frames to 20%, and it doubles the combed-frame rate from 6Hz to 12Hz, thereby raising the combed-frame rate to almost above the flicker-rate threshold of human vision. Adding linblenddeint postprocessing to the combed frames (N modulo5 == 2) makes judder completely disappear so that the transcodes look as good on a 60Hz TV as the original sources look on a 24Hz TV -- a true movie theater experience. But I can't incorporate this filter complex as a Handbrake preset. That's a shame.
Yes, I could do it all on the command line with a script. I could combine ffmpeg with tools to extract chapters & subtitles and maybe even launch MKVToolNix GUI with everything already set up, but why not do it all in Handbrake? Handbrake is the best tool, people like it, it just feels right.
Wouldn't it be great if the number of presets could be reduced to just a handful? I've developed other filter graphs that handle, for example, mixed 23-telecined+30FPS sources: "Making of" documentaries. Also, various flawed sources that were originally 23-telecined, then frame dropped, then frame doubled back to 30FPS, then mastered into a DVD in that state (probably because the DVD author had no better source). Also, others including hard telecine of course -- existing Handbrake presets already 23-detelecine.
Also, I'm extracting short video samples of each of these use cases so that other people can visually identify the type of source (and its foibles) and thereby select the best preset. But it all is unaccessible in Handbrake because I can't integrate ffmpeg filter graphs into Handbrake.
-
- Veteran User
- Posts: 4840
- Joined: Wed May 04, 2011 11:06 pm
Re: Two enhancement requests
The issue may be that enabling these ffmpeg options may cause other issues within HB.
Obviously they may not, but that’s for the developers to decide as they have to program it and support it.
Obviously they may not, but that’s for the developers to decide as they have to program it and support it.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
Indeed. But there's a way out of supporting inserted ffmpeg filter graphs. Simply include a note in the insertion dialog that states:rollin_eng wrote: ↑Mon Jan 25, 2021 7:38 pm The issue may be that enabling these ffmpeg options may cause other issues within HB.
Obviously they may not, but that’s for the developers to decide as they have to program it and support it.
Since Handbrake cannot possibly support the vast number of ffmpeg filters and unlimited combinations, help with filters inserted here are best supported directly by ffmpeg (ffmpeg.org).
Now, you're probably aware of the sad state of ffmpeg documention. I suggest that a sub-forum be created here to handle that and to supplement ffmpeg documentation -- I would participate -- and that the sub-forum be supported solely by users (not by the Handbrake developers). I think that could work, and who knows, maybe it would shame the ffmpeg developers into a more reasonable stance: To allow volunteers to flesh out ffmpeg documentation... Imagine a doom9.org-type sub-forum that's more accessable and more focused than is doom9.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
Since Handbrake cannot possibly support the vast number of ffmpeg filters and combinations, help with filters inserted here is best obtained directly from ffmpeg (ffmpeg.org).
Sorry. I revised this several times prior to posting. While revising, I lost track of the sentence subject, so I failed to adjust language usage. I think it's proper English now.
Sorry. I revised this several times prior to posting. While revising, I lost track of the sentence subject, so I failed to adjust language usage. I think it's proper English now.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
May I give you an example of what Handbrake currently does?
Suppose I represent 24000/1001FPS frames via my notation, thusly:
[A.a][B.b][C.c][D.d]
Setting CFR=60000/1001 in Handbrake produces this:
[A.a][A.a][B.b][B.b][C.c][C.c][C.c][D.d][D.d][D.d]
It's offal. The judder makes it almost unwatchable.
Suppose I represent 24000/1001FPS frames via my notation, thusly:
[A.a][B.b][C.c][D.d]
Setting CFR=60000/1001 in Handbrake produces this:
[A.a][A.a][B.b][B.b][C.c][C.c][C.c][D.d][D.d][D.d]
It's offal. The judder makes it almost unwatchable.
Re: Two enhancement requests
Oh god it's the 5-5 telecine guy again.
Pull requests are more interesting than feature requests.
Pull requests are more interesting than feature requests.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
Yup! Have you tried it?
-filter_complex "telecine=pattern=55, split[1][2], [1]select=not(eq(mod(n\,5)\,2))[3], [2]select=eq(mod(n\,5)\,2), pp=linblenddeint[4], [3][4]interleave"
I've spent the intervening time learning ffmpeg to a pretty deep depth.
What does that mean?Pull requests are more interesting than feature requests.
-
- Veteran User
- Posts: 4840
- Joined: Wed May 04, 2011 11:06 pm
Re: Two enhancement requests
I would guess the HB developers don’t want to add features then not support them.
Mduell is probably suggesting that you pull the code and do the updates yourself.
Mduell is probably suggesting that you pull the code and do the updates yourself.
Re: Two enhancement requests
https://docs.github.com/en/github/colla ... l-requestsmarkfilipak wrote: ↑Tue Jan 26, 2021 1:51 amI've spent the intervening time learning ffmpeg to a pretty deep depth.
What does that mean?mduell wrote:Pull requests are more interesting than feature requests.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
https://docs.github.com/en/github/colla ... l-requests
What am I supposed to conclude from that? Is that a *F*YOU*: If you're not a coder you have no place here? Is that it?
What am I supposed to conclude from that? Is that a *F*YOU*: If you're not a coder you have no place here? Is that it?
-
- Veteran User
- Posts: 4840
- Joined: Wed May 04, 2011 11:06 pm
Re: Two enhancement requests
It’s more: You’ve asked for this/similar before, it probably ain’t gonna happen if you don’t do it yourself.
-
- Bright Spark User
- Posts: 313
- Joined: Thu Aug 01, 2019 8:58 pm
Re: Two enhancement requests
You're trolling... naughty, naughty.rollin_eng wrote: ↑Tue Jan 26, 2021 6:54 pm It’s more: You’ve asked for this/similar before, it probably ain’t gonna happen if you don’t do it yourself.
-
- Veteran User
- Posts: 4840
- Joined: Wed May 04, 2011 11:06 pm
Re: Two enhancement requests
Not at all, I can’t speak for the devs and they may implement this tomorrow, but I wouldn’t bet on it.markfilipak wrote: ↑Wed Jan 27, 2021 2:05 pmYou're trolling... naughty, naughty.rollin_eng wrote: ↑Tue Jan 26, 2021 6:54 pm It’s more: You’ve asked for this/similar before, it probably ain’t gonna happen if you don’t do it yourself.