Ticket #1321 (closed defect: fixed)

Opened 12 months ago

Last modified 9 months ago

image2pipe looses synch with a pipe of PBM images

Reported by: pisto Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: image2pipe pbm parser
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

After some frames (2000), ffmpeg outputs an error (Error while decoding stream #0:0), and goes on encoding, but subsequent output frames contain pieces of adjacent input frames, as if ffmpeg had lost track of the correct beginning of an image. The attached file is my input. Command line is

ffmpeg -f image2pipe -vcodec pbm -r 30 -i - -vcodec libx264 -threads 2 -preset medium -crf 24 -y output.mkv

Attachments

PBMs_input.zip Download (1.1 MB) - added by pisto 12 months ago.
input

Change History

Changed 12 months ago by pisto

input

comment:1 Changed 12 months ago by pisto

I ran other tests. It fails when I input more than exactly 1989 frames. Since each PBM that I stream is 80011 bytes long, that means that it fails somewhere while reading bytes from 159141879 to 159221890

comment:2 Changed 12 months ago by cehoyos

Is libx264 required to reproduce the problem? If not, please use an internal encoder to report problems.

Please provide complete, uncut console output.

comment:3 Changed 12 months ago by pisto

ffmpeg -f image2pipe -vcodec pbm -r 30 -i - -f null -
ffmpeg version N-33891-g0e82d31 Copyright (c) 2000-2012 the FFmpeg developers
  built on May 19 2012 15:17:38 with gcc 4.6.3 20120306 (Red Hat 4.6.3-2)
  configuration: --enable-gpl --enable-pic --arch=amd64 --cpu=native --enable-libvpx --enable-libx264 --enable-libv4l2 --enable-libtheora --enable-libspeex --enable-libschroedinger --enable-libpulse --enable-libmp3lame --enable-libfaac --enable-nonfree
  libavutil      51. 53.100 / 51. 53.100
  libavcodec     54. 21.101 / 54. 21.101
  libavformat    54.  5.100 / 54.  5.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 74.102 /  2. 74.102
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 12.100 /  0. 12.100
  libpostproc    52.  0.100 / 52.  0.100
[image2pipe @ 0x2dde340] Estimating duration from bitrate, this may be inaccurate
Input #0, image2pipe, from 'pipe:':
  Duration: N/A, bitrate: N/A
    Stream #0:0: Video: pbm, monow, 800x800, 30 fps, 30 tbr, 30 tbn, 30 tbc
[buffer @ 0x2e52ba0] w:800 h:800 pixfmt:monow tb:1/1000000 sar:0/1 sws_param:flags=2
[buffersink @ 0x318a5c0] No opaque field provided
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf54.5.100
    Stream #0:0: Video: rawvideo (B1W0 / 0x30573142), monow, 800x800, q=2-31, 200 kb/s, 90k tbn, 30 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (pbm -> rawvideo)
[null @ 0x3189620] Encoder did not produce proper pts, making some up.
Error while decoding stream #0:0      0kB time=00:00:58.40 bitrate=   0.0kbits/s    
Error while decoding stream #0:0      0kB time=00:01:08.83 bitrate=   0.0kbits/s    
frame= 2079 fps=133 q=0.0 Lsize=       0kB time=00:01:09.30 bitrate=   0.0kbits/s    
video:0kB audio:0kB global headers:0kB muxing overhead -nan%
Output file is empty, nothing was encoded (check -ss / -t / -frames parameters if used)

Last edited 12 months ago by pisto (previous) (diff)

comment:4 Changed 12 months ago by cehoyos

  • Status changed from new to open
  • Version changed from unspecified to git-master
  • Reproduced by developer set

comment:5 Changed 9 months ago by michael

  • Keywords parser added
  • Resolution set to fixed
  • Status changed from open to closed
  • Component changed from undetermined to avcodec
Note: See TracTickets for help on using tickets.