Opened 12 years ago

Closed 12 years ago

#957 closed defect (fixed)

can't decode MJPEG avi

Reported by: sebastien wybo Owned by:
Priority: normal Component: undetermined
Version: git-master Keywords: mjpeg avi
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

Trying to decode video encoded with MJPEG codec will fail if video contains delta frames => only first image will be decoded

reproduced with ffmpeg, ffplay

Windows 7 64bits, ffmpeg 0.10

Attachments (1)

ffmpeg-20120130-122028.log (6.7 KB ) - added by sebastien wybo 12 years ago.
output report

Download all attachments as: .zip

Change History (10)

comment:1 by Carl Eugen Hoyos, 12 years ago

Component: FFmpegundetermined
Keywords: mjpeg added
Priority: importantnormal

To make this a valid ticket, please add

  • a failing ffmpeg command line together with
  • complete, uncut console output and
  • a sample

by sebastien wybo, 12 years ago

Attachment: ffmpeg-20120130-122028.log added

output report

comment:2 by sebastien wybo, 12 years ago

Sorry about that...
Complete command line that generated the report file:

ffmpeg -v 9 -loglevel 99 -i MJPEGVideoWithDFrames.avi output.avi -report

Last edited 12 years ago by sebastien wybo (previous) (diff)

comment:3 by sebastien wybo, 12 years ago

Sample video file is currently uploaded to upload.ffmpeg.org/incoming/MJPEGVideoWithDFrames.avi

comment:4 by reimar, 12 years ago

This has nothing to do with "delta frames" (no idea what it is but I don't think it is even used here) and nothing with the (M)JPEG decoder.
MPlayer can play it fine using FFmpeg's decoder.
It plays only one frame when using -demuxer lavf though.
ffprobe -show_packets confirms FFmpeg sees only a single video frame.
This should be a bug in the AVI demuxer.

comment:5 by sebastien wybo, 12 years ago

That's my point actually, if you check the avi file in virtual dub you'll see D frames (delta frames) every 3 frames with no data in it. This is caused by a badly functionning encoder actually but VLC or virtual dub can read all frames in the video whereas ffplay, ffmpeg... can't find any frame other than the first one

I thought this indicated some kind of issue in the AVI demuxer

comment:6 by Carl Eugen Hoyos, 12 years ago

Reproduced by developer: set
Status: newopen
Version: 0.10git-master

comment:7 by Carl Eugen Hoyos, 12 years ago

Summary: can't decode MJPEG video with delta framescan't decode MJPEG avi

comment:8 by Carl Eugen Hoyos, 12 years ago

Keywords: avi added

comment:9 by reimar, 12 years ago

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