[FFmpeg-user] 1080i AVC-I 100 frame rate conversion
Mark Filipak (ffmpeg)
markfilipak at bog.us
Fri Mar 26 22:12:27 EET 2021
On 2021-03-26 10:02, Bruce Roberts wrote:
> Hello,
>
> I'm looking for advice on the best ways to convert 23.976fps and 29.97fps
> AVC-I 100Mbps content to 25fps (also interlaced AVC-I 100Mbps).
Hello Bruce,
I think we may be treading parallel paths, you: from the west to east (FILM & NTSC to 50fps), me:
from the east to west (FILM & PAL to 60fps).
In addition to what ffmpeg offers (e.g. minterpolate), I've tried single-pass, motion-vector
interpolation via havsfunc.InterFrame running in VapourSynth while piping InterFrame's raw frames to
ffmpeg for down conversion and HEVC encoding. The InterFrame pipe approach produced incredible
results but took 3+ days to convert a 2 hour movie from 24fps to 60fps with a 3.3GHz, 8 thread CPU,
so I seek a faster way that still produces acceptable picture synthesis and sharpness while avoiding
judder.
I'm currently pursuing weighted pixel, fractional picture mixing (ffmpeg -filter_complex
"...mix...") at 120fps (or 240fps) followed by custom frame decimation. The sane way to do that is
to write a filter specific to that task -- buffer pictures modulo 4 and synthesize new pictures
modulo 5 via weighted mixing -- but I don't write 'C', so I'm trying to do the job with what ffmpeg
provides: mainly shuffleframes and/or telecine (using peculiar patterns).
For your 50fps objective, the common-framerate modulos are much larger but they still involve a
basic 4:5 fractional picture synthesis, so what I'm doing is applicable to what you want to do.
The approach is conceptually simple, and it should be much quicker while still producing very good
motion vector compression in the encoder (and consequently, small output sizes). Though I have the
fractional picture synthesis working, I'm finding that shuffleframes has undocumented PTS quirks
that screw up the final cadence. So, I'm currently exhaustively testing shuffleframes to determine
its quirks (and/or other methods to control PTSs). For some reason, the ffmpeg developers object to
this approach, so they've not been forthcoming.
I hope to post a working mixer filter complex that synthesizes 60fps from FILM in a few days. Stay
tuned.
Regards,
Mark.
More information about the ffmpeg-user
mailing list