[FFmpeg-user] 55-Telecine, 2020-04-26 Status Report, Part 2
Mark Filipak
markfilipak.windows+ffmpeg at gmail.com
Mon Apr 27 16:53:32 EEST 2020
55-Telecine for Blu-ray Movies.
55-Telecine works wonderfully for transcoding M2TS movies (for superior display on 60Hz TVs)
provided that the M2TS streams don't have subtitles and/or are short. I reckon that the limitations
are due to mishandling of subtitle time stamps by the 'interleave' filter -- I remember reading that
subtitle packets can span GOPs, and 'interleave' may be assigning bogus PTSs to fragments. The issue
is under investigation (https://trac.ffmpeg.org/ticket/8626 -- the ticket's title, "pp=linblenddeint
failure", is stale and no longer applies). The 'interleave' problem prevents me putting 55-telecine
into general use for Blu-ray movies.
New Information:
As an experiment, to bypass the problem in https://trac.ffmpeg.org/ticket/8626, I tested whether
extracting subtitles separately and then merging them back in would replicate the problem or do
something different. It did something different.
Step 1: Transcode to 2001av.MKV.
Step 2: Extract subtitles to 2001s.MKV.
Step 3: Merge 2001s.MKV & 2001av.MKV to 2001.MKV.
Step 4: Merge 2001s.MKV & 2001av.MKV to 2001.MKVToolNix.MKV via MKVToolNix.
Step 3 did bypass the https://trac.ffmpeg.org/ticket/8626 problem (which I will report to the trac
system). however, it did not entirely succeed. Any suggestions regarding the procedure below would
be very welcome.
Regards,
Mark.
Step 1: Transcode to 2001av.MKV.
ffmpeg -report -ss 2:57 -analyzeduration 5000000000 -probesize 5000000000 -i
"G:\BDMV\STREAM\00000.m2ts" -filter_complex
"telecine=pattern=5,split[A][B],[A]select='not(eq(mod((n+1)\,5)\,3))'[C],[B]select='eq(mod((n+1)\,5)\,3)',pp=linblenddeint[D],[C][D]interleave"
-map 0 -codec:v libx264 -crf 20 -codec:a copy -codec:a:1 pcm_s16be -sn -dn "2001av.MKV"
1 video stream
8 audio streams
349 instances of "[mpegts @ 000001e0e4df0080] DTS discontinuity in stream xx: packet xxx with DTS
xxxxxxxx, packet 5 with DTS xxxxxxxx"
Step 2: Extract subtitles to 2001s.MKV.
ffmpeg -report -ss 2:57 -analyzeduration 5000000000 -probesize 5000000000 -i
"G:\BDMV\STREAM\00000.m2ts" -map 0 -vn -an -codec:s copy -dn "2001s.MKV"
18 subtitle streams
349 instances of "[mpegts @ 000001e0e4df0080] DTS discontinuity in stream xx: packet xxx with DTS
xxxxxxxx, packet 5 with DTS xxxxxxxx"
Step 3: Merge 2001s.MKV & 2001av.MKV to 2001.MKV.
ffmpeg -report -analyzeduration 5000000000 -probesize 5000000000 -i 2001av.MKV -i 2001s.MKV -map 0
-codec:v copy -codec:a copy -map 1:s -codec:s copy 2001.2.MKV
Subtitles lead audio by 1:14.
Step 4: Merge 2001s.MKV & 2001av.MKV to 2001.MKVToolNix.MKV via MKVToolNix.
No errors or warnings.
Subtitles & audio are in sync.
More information about the ffmpeg-user
mailing list