Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
![]() |
#1 | Link |
Registered User
Join Date: Feb 2022
Posts: 166
|
x264 mod to encode mixed framerate in CFR container
I was reading Blu-ray.com, found about a new release with mixed framerate content that used hard pulldown, and I decided I had enough.
So, here are two tools to encode VFR content in CFR containers, exploiting the soft pull-down capabilities of H.264. x265 support to come later. Blu-ray compatible, of course. VS-PicStruct - VapourSynth tool to analyze a VFR clip and produce a sequence of pulldown instructions that have to be used by the encoder to achieve the container framerate. Porting this to AviSynth should be straightforward. x264 - x264 mod adding a --psfile option to parse the pull-down instructions and put them in the stream appropriately. All pull-downs supported (18/1.001 -> 23.976, 24/1.001 -> 29.97, 23.976->29.97, 23.976 -> 59.94p, etc.) and the pattern can change anytime according to your own desires! A test x264 build is provided on the release page, enjoy. Last edited by cubicibo; 30th January 2025 at 22:37. |
![]() |
![]() |
![]() |
#2 | Link |
Big Bit Savings Now !
Join Date: Feb 2007
Location: close to the wall
Posts: 1,838
|
Beautiful, many thanks cubicibo ! Will come handy for silent films, Regular 8, Super 8.
__________________
"To bypass shortcuts and find suffering...is called QUALity" (Die toten Augen von Friedrichshain) "Data reduction ? Yep, Sir. We're that issue working on. Synce invntoin uf lingöage..." |
![]() |
![]() |
![]() |
#3 | Link |
Registered User
Join Date: Feb 2022
Posts: 166
|
You are welcome. You are right, all low framerate films can benefit from it. Any movie or anime with VFR content too!
The versatility of H.264 pic struct enables for exotic framerates to fit in 23.976/24/25/29.97. VS-PicStruct determines the pattern programmatically, you don't have to figure them out yourself: they can be nasty. The pulldown pattern is also written in the output file as comments, you can verify them. For those who care, the rules to see if there's a pulldown are: - (container_framerate)/(clip_to_pd_framerate) = repetitions/cycles should be in [1; 3] - cycles must be smaller than container_fps, else PD goes over gop-second boundary. If both conditions are satisfied, there should be a pulldown pattern. VS-PicStruct will happily crash if it can't find a pattern. No garbage guaranteed! Last edited by cubicibo; 12th January 2025 at 16:00. |
![]() |
![]() |
![]() |
Thread Tools | Search this Thread |
Display Modes | |
|
|