Opened 8 years ago

Closed 8 years ago

#5627 closed defect (fixed)

Artifacts when encoding to dv file with telecine filter enabled

Reported by: RaljOneed Owned by:
Priority: important Component: avcodec
Version: git-master Keywords: regression
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Summary of the bug:

Encoding to dv file with telecine filter enabled causes blocking artifacts in output video.
Problem disappears when -threads 1 option is added.

How to reproduce:

ffmpeg started on 2016-06-09 at 18:50:48
Report written to "ffmpeg-20160609-185048.log"
Command line:
./ffmpeg-N-80237-g9d8664d -report -i swamp.2.mkv -vf "telecine=first_field=b:pattern=112222" swamp.2.dv
ffmpeg version N-80237-g9d8664d Copyright (c) 2000-2016 the FFmpeg developers
  built with gcc 5.3.1 (Ubuntu 5.3.1-14ubuntu2.1) 20160413
  configuration: --prefix=/home/xxxxxx/Programy/ffmpeg/ffmpeg_build --pkg-config-flags=--static --extra-cflags=-I/home/xxxxxx/Programy/ffmpeg/ffmpeg_build/include --extra-ldflags=-L/home/xxxxxx/Programy/ffmpeg/ffmpeg_build/lib --bindir=/home/xxxxxx/Programy/ffmpeg/bin --enable-gpl --enable-libass --enable-libfreetype --enable-libopus --enable-libvorbis --enable-nonfree --enable-x11grab --enable-libsoxr --disable-ffserver --disable-ffplay --disable-ffprobe
  libavutil      55. 24.100 / 55. 24.100
  libavcodec     57. 45.100 / 57. 45.100
  libavformat    57. 37.101 / 57. 37.101
  libavdevice    57.  0.101 / 57.  0.101
  libavfilter     6. 46.101 /  6. 46.101
  libswscale      4.  1.100 /  4.  1.100
  libswresample   2.  0.101 /  2.  0.101
  libpostproc    54.  0.100 / 54.  0.100
Splitting the commandline.
Reading option '-report' ... matched as option 'report' (generate a report) with argument '1'.
Reading option '-i' ... matched as input file with argument 'swamp.2.mkv'.
Reading option '-vf' ... matched as option 'vf' (set video filters) with argument 'telecine=first_field=b:pattern=112222'.
Reading option 'swamp.2.dv' ... matched as output file.
Finished splitting the commandline.
Parsing a group of options: global .
Applying option report (generate a report) with argument 1.
Successfully parsed a group of options.
Parsing a group of options: input file swamp.2.mkv.
Successfully parsed a group of options.
Opening an input file: swamp.2.mkv.
[file @ 0x3f01b60] Setting default whitelist 'file,crypto'
[matroska,webm @ 0x3f013c0] Format matroska,webm probed with size=2048 and score=100
st:0 removing common factor 1000000 from timebase
[matroska,webm @ 0x3f013c0] Before avformat_find_stream_info() pos: 937 bytes read:32768 seeks:0
[matroska,webm @ 0x3f013c0] parser not found for codec ffv1, packets or times may be invalid.
[matroska,webm @ 0x3f013c0] parser not found for codec ffv1, packets or times may be invalid.
[matroska,webm @ 0x3f013c0] All info found
[matroska,webm @ 0x3f013c0] After avformat_find_stream_info() pos: 57101 bytes read:65536 seeks:0 frames:1
Input #0, matroska,webm, from 'swamp.2.mkv':
  Metadata:
    ENCODER         : Lavf57.25.100
  Duration: 00:00:04.00, start: 0.000000, bitrate: 15126 kb/s
    Stream #0:0, 1, 1/1000: Video: ffv1 (FFV1 / 0x31564646), yuv420p, 720x576, SAR 64:45 DAR 16:9, 30 fps, 30 tbr, 1k tbn, 1k tbc (default)
    Metadata:
      ENCODER         : Lavc57.24.102 ffv1
      DURATION        : 00:00:04.000000000
Successfully opened the file.
Parsing a group of options: output file swamp.2.dv.
Applying option vf (set video filters) with argument telecine=first_field=b:pattern=112222.
Successfully parsed a group of options.
Opening an output file: swamp.2.dv.
[file @ 0x3f06f20] Setting default whitelist 'file,crypto'
Successfully opened the file.
detected 4 logical cores
[Parsed_telecine_0 @ 0x3f07e00] Setting 'first_field' to value 'b'
[Parsed_telecine_0 @ 0x3f07e00] Setting 'pattern' to value '112222'
[Parsed_telecine_0 @ 0x3f07e00] Telecine pattern 112222 yields up to 1 frames per frame, pts advance factor: 12/10
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'video_size' to value '720x576'
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'pix_fmt' to value '0'
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'time_base' to value '1/1000'
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'pixel_aspect' to value '64/45'
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'sws_param' to value 'flags=2'
[graph 0 input from stream 0:0 @ 0x3f074a0] Setting 'frame_rate' to value '30/1'
[graph 0 input from stream 0:0 @ 0x3f074a0] w:720 h:576 pixfmt:yuv420p tb:1/1000 fr:30/1 sar:64/45 sws_param:flags=2
[format @ 0x3f089e0] compat: called with args=[yuv411p|yuv422p|yuv420p]
[format @ 0x3f089e0] Setting 'pix_fmts' to value 'yuv411p|yuv422p|yuv420p'
[AVFilterGraph @ 0x3f073c0] query_formats: 4 queried, 3 merged, 0 already done, 0 delayed
[Parsed_telecine_0 @ 0x3f07e00] FPS: 30/1 -> 25/1
[Parsed_telecine_0 @ 0x3f07e00] TB: 1/1000 -> 3/2500
[dv @ 0x3f05900] Using AVStream.codec to pass codec parameters to muxers is deprecated, use AVStream.codecpar instead.
Output #0, dv, to 'swamp.2.dv':
  Metadata:
    encoder         : Lavf57.37.101
    Stream #0:0, 0, 1/25: Video: dvvideo, yuv420p, 720x576 [SAR 64:45 DAR 16:9], q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc (default)
    Metadata:
      DURATION        : 00:00:04.000000000
      encoder         : Lavc57.45.100 dvvideo
Stream mapping:
  Stream #0:0 -> #0:0 (ffv1 (native) -> dvvideo (native))
Press [q] to stop, [?] for help
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.000008
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.009987
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
cur_dts is invalid (this is harmless if it occurs once at the start per stream)
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
frame=   80 fps=0.0 q=-0.0 size=   10828kB time=00:00:03.08 bitrate=28800.0kbits/s speed=6.16x    
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
Clipping frame in rate conversion by 0.009987
[output stream 0:0 @ 0x3f08680] EOF on sink link output stream 0:0:default.
No more output streams to write to, finishing.
frame=  100 fps=0.0 q=-0.0 Lsize=   14062kB time=00:00:04.00 bitrate=28800.0kbits/s speed= 6.2x    
video:14062kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.000000%
Input file #0 (swamp.2.mkv):
  Input stream #0:0 (video): 120 packets read (7556965 bytes); 120 frames decoded; 
  Total: 120 packets (7556965 bytes) demuxed
Output file #0 (swamp.2.dv):
  Output stream #0:0 (video): 100 frames encoded; 100 packets muxed (14400000 bytes); 
  Total: 100 packets (14400000 bytes) muxed
120 frames successfully decoded, 0 decoding errors
[AVIOContext @ 0x3f06fc0] Statistics: 0 seeks, 500 writeouts
[AVIOContext @ 0x3f09f00] Statistics: 7563052 bytes read, 0 seeks

Patches should be submitted to the ffmpeg-devel mailing list and not this bug tracker.

Change History (2)

comment:1 by Carl Eugen Hoyos, 8 years ago

Component: undeterminedavcodec
Keywords: regression added
Priority: normalimportant
Reproduced by developer: set
Status: newopen
Version: unspecifiedgit-master

comment:2 by Michael Niedermayer, 8 years ago

Resolution: fixed
Status: openclosed
Note: See TracTickets for help on using tickets.