Opened 13 years ago

Closed 13 years ago

#70 closed defect (fixed)

PPM decoding from pipe misreads frame sizes

Reported by: nixscripter Owned by: Michael Niedermayer
Priority: normal Component: avcodec
Version: git-master Keywords: ppm
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

I am having trouble with piping PPM files to ffmpeg.

If I pipe too many PPM files, I get an error about invalid image size, which is not correct. In fact, I have isolated a small sample of 20 files, which work once, and fail when repeated 7 times (for a total of 140 frames).

With other inputs, I get more serious problems (like a crash), but this problem may be the root cause of several others, and is the easiest to isolate.

Command output:

$ cat output02*ppm output02*ppm output02*ppm output02*ppm output02*ppm output02*ppm output02*ppm | ../../ffmpeg/ffmpeg -v 9 -loglevel 99 -y -f image2pipe -vcodec ppm -i - -sameq /tmp/output.m2v
FFmpeg version git-N-29196-ge61b83d, Copyright (c) 2000-2011 the FFmpeg developers

built on Apr 19 2011 12:19:46 with gcc 4.4.3
configuration: --enable-gpl
libavutil 50. 40. 1 / 50. 40. 1
libavcodec 52.120. 0 / 52.120. 0
libavformat 52.108. 0 / 52.108. 0
libavdevice 52. 4. 0 / 52. 4. 0
libavfilter 1. 79. 1 / 1. 79. 1
libswscale 0. 13. 0 / 0. 13. 0

[image2pipe @ 0x2bd4680] Probe buffer size limit 5000000 reached
[image2pipe @ 0x2bd4680] Estimating duration from bitrate, this may be inaccurate
Input #0, image2pipe, from 'pipe:':

Duration: N/A, bitrate: N/A

Stream #0.0, 87, 1/25: Video: ppm, rgb24, 160x120, 1/25, 25 fps, 25 tbr, 25 tbn, 25 tbc

Incompatible pixel format 'rgb24' for codec 'mpeg2video', auto-selecting format 'yuv420p'
[buffer @ 0x2bdf390] w:160 h:120 pixfmt:rgb24
[ffsink @ 0x30c7d70] auto-inserting filter 'auto-inserted scaler 0' between the filter 'src' and the filter 'out'
[scale @ 0x30c8040] w:160 h:120 fmt:rgb24 -> w:160 h:120 fmt:yuv420p flags:0xa0000004
Output #0, mpeg2video, to '/tmp/output.m2v':

Metadata:

encoder : Lavf52.108.0
Stream #0.0, 0, 1/90000: Video: mpeg2video, yuv420p, 160x120, 1/25, q=2-31, 200 kb/s, 90k tbn, 25 tbc

Stream mapping:

Stream #0.0 -> #0.0

[ppm @ 0x2bdf4f0] [IMGUTILS @ 0x7fff8f08bde0] Picture size 160x0 is invalid

Last message repeated 1 times

frame= 140 fps= 0 q=0.0 Lsize= 422kB time=5.56 bitrate= 621.9kbits/s
video:422kB audio:0kB global headers:0kB muxing overhead 0.000000%

Attachments (1)

ppm_pipe_bug.zip (865.9 KB ) - added by nixscripter 13 years ago.
A set of PPM images used for testing, and the output file.

Download all attachments as: .zip

Change History (2)

by nixscripter, 13 years ago

Attachment: ppm_pipe_bug.zip added

A set of PPM images used for testing, and the output file.

comment:1 by Michael Niedermayer, 13 years ago

Component: FFmpegavcodec
Reproduced by developer: set
Resolution: fixed
Status: newclosed
Version: gitgit-master

The error message was harmless in this case, it is fixed.
If you have a crash please report it.

Note: See TracTickets for help on using tickets.