[FFmpeg-trac] #1040(avfilter:open): yadif filter with movie source causes assertion failure
FFmpeg
trac at avcodec.org
Thu Mar 8 23:28:38 CET 2012
#1040: yadif filter with movie source causes assertion failure
------------------------------------+------------------------------------
Reporter: ls | Owner:
Type: defect | Status: open
Priority: normal | Component: avfilter
Version: git-master | Resolution:
Keywords: yadif | Blocked By:
Blocking: | Reproduced by developer: 1
Analyzed by developer: 0 |
------------------------------------+------------------------------------
Comment (by ls):
Ok I tried various combinations of movie and yadif. The behavior looks
good to me if I do not use lavfi.
Example 1:
{{{
ffmpeg -i 00001.MTS -vf movie=00001.MTS,yadif=1,setpts=PTS-
STARTPTS,scale=1280:720[mov],[in]yadif=1,setpts=PTS-
STARTPTS,[mov]overlay=0:0 -y out.mp4
}}}
Example 2:
{{{
ffmpeg -i 00001.MTS -vf movie=00001.MTS,yadif=1,setpts=PTS-
STARTPTS,scale=1280:720[mov],[in]setpts=PTS-STARTPTS,[mov]overlay=0:0 -y
out.mp4
}}}
In example 2 the overlay is slow motion, which makes sense to me.
In case of using lavfi strange error messages appear. It does not matter
if the patches are applied or not. The resulting file seems to have only
key frames encoded: frame rate 1fps
{{{
$ ffmpeg -f lavfi -i
'movie=00001.MTS,scale=1280:720[mov];movie=00001.MTS,[mov]overlay=0:0' -y
out.mp4
ffmpeg version N-32897-g12c65ef Copyright (c) 2000-2012 the FFmpeg
developers
built on Mar 8 2012 21:52:52 with gcc 4.6.1
configuration: --prefix=/home/ls/ffmpeg --enable-shared --disable-static
--enable-gpl --enable-nonfree --enable-libme --enable-libx264 --enable-
libxvid --enable-sram --cpu=core2 --enable-hwaccel=h264_vaapi --enable-
hwaccel=mpeg2_vaaenable-hwaccel=mpeg4_vaapi --enable-libfaac --enable-
x11grab --disable-ffserver --enable-libvpx --enable-libvorbis --e-libass
--enable-libfreetype
libavutil 51. 42.100 / 51. 42.100
libavcodec 54. 10.100 / 54. 10.100
libavformat 54. 2.100 / 54. 2.100
libavdevice 53. 4.100 / 53. 4.100
libavfilter 2. 63.100 / 2. 63.100
libswscale 2. 1.100 / 2. 1.100
libswresample 0. 7.100 / 0. 7.100
libpostproc 52. 0.100 / 52. 0.100
[h264 @ 0x17893a0] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x17893a0] Increasing reorder buffer to 1
[movie @ 0x17850a0] seek_point:0 format_name:(null) file_name:00001.MTS
stream_index:0
[h264 @ 0x183e400] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x183e400] Increasing reorder buffer to 1
[movie @ 0x181a4a0] seek_point:0 format_name:(null) file_name:00001.MTS
stream_index:0
[scale @ 0x1819bc0] w:1920 h:1080 fmt:yuv420p -> w:1280 h:720 fmt:yuva420p
flags:0x2
[overlay @ 0x1821280] main w:1920 h:1080 fmt:yuv420p overlay x:0 y:0
w:1280 h:720 fmt:yuva420p
[overlay @ 0x1821280] main_tb:1/90000 overlay_tb:1/90000 -> tb:1/90000
exact:1
[h264 @ 0x1822700] mmco: unref short failure
Last message repeated 1 times
[h264 @ 0x178b0a0] mmco: unref short failure
Last message repeated 1 times
[lavfi @ 0x17843e0] Estimating duration from bitrate, this may be
inaccurate
Input #0, lavfi, from
'movie=00001.MTS,scale=1280:720[mov];movie=00001.MTS,[mov]overlay=0:0':
Duration: N/A, start: 2637.561589, bitrate: N/A
Stream #0:0: Video: rawvideo (I420 / 0x30323449), yuv420p, 1920x1080
[SAR 1:1 DAR 16:9], 1 tbr, 90k tbn, 90k
[buffer @ 0x7f3d08b3db80] w:1920 h:1080 pixfmt:yuv420p tb:1/1000000
sar:1/1 sws_param:
[libx264 @ 0x7f3d086a2a00] using SAR=1/1
[libx264 @ 0x7f3d086a2a00] using cpu capabilities: MMX2 SSE2Fast SSSE3
FastShuffle SSE4.2
[libx264 @ 0x7f3d086a2a00] profile High, level 4.0
[libx264 @ 0x7f3d086a2a00] 264 - core 120 r0+2 01f7a33 - H.264/MPEG-4 AVC
codec - Copyleft 2003-2012 - http://www.vid.org/x264.html - options:
cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1
psy_rd=1.00:0.00 mixed_rme_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0
deadzone=21,11 fast_pskip=1 chroma_qp_offset=-2 threads=6 sliced_thr0 nr=0
decimate=1 interlaced=0 bluray_compat=0 constrained_intra=0 bframes=3
b_pyramid=2 b_adapt=1 b_bias=0 direct=1 tb=1 open_gop=0 weightp=2
keyint=250 keyint_min=1 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf
mbtree=1 crf=23.mp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'out.mp4':
Metadata:
encoder : Lavf54.2.100
Stream #0:0: Video: h264 (![0][0][0] / 0x0021), yuv420p, 1920x1080
[SAR 1:1 DAR 16:9], q=-1--1,
Stream mapping:
Stream #0:0 -> #0:0 (rawvideo -> libx264)
Press [q] to stop, [?] for help
DTS 14400, next:2120000 st:0 invalid droping
DTS 108000, next:3120000 st:0 invalid droping
DTS 21600, next:4120000 st:0 invalid droping
DTS 115200, next:5120000 st:0 invalid droping
DTS 28800, next:6120000 st:0 invalid droping
DTS 122400, next:7120000 st:0 invalid droping
DTS 36000, next:8120000 st:0 invalid droping
DTS 129600, next:9120000 st:0 invalid droping
DTS 43200, next:10120000 st:0 invalid dropinge=00:00:00.00 bitrate=
0.0kbits/s dup=0 drop=1
DTS 136800, next:11120000 st:0 invalid droping
DTS 50400, next:12120000 st:0 invalid droping
DTS 144000, next:13120000 st:0 invalid droping
}}}
If the video is scaled down further than in the example above things work:
{{{
ffmpeg -f lavfi -i 'movie=00001.MTS,yadif=1,scale=1700:-1' out.mp4
}}}
It seems to be an issue with the lavfi input device, since the following
call does not produce correct results either:
{{{
ffmpeg -f lavfi -i 'movie=00001.MTS' out.mp4
}}}
Without using lavfi things work:
{{{
ffmpeg -i 00001.MTS -vf 'yadif=1,scale=1750:-1' out.mp4
}}}
Probably this is another issue but it blocks answering your second
question.
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/1040#comment:6>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list