Opened 13 years ago

Last modified 10 years ago

#845 reopened defect

Artefacts with Indeo 4

Reported by: Carl Eugen Hoyos Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: indeo4
Cc: ami_stuff@o2.pl Blocked By:
Blocking: Reproduced by developer: no
Analyzed by developer: no

Description

http://samples.mplayerhq.hu/V-codecs/IV41/indeo4-avi/volcano.avi
mplayer -vc indeo4 plays the sample without the artefacts that FFmpeg shows.

$ ffmpeg -i volcano.avi -an -f null -
ffmpeg version N-36241-g6071e4d, Copyright (c) 2000-2011 the FFmpeg developers
  built on Dec 29 2011 02:11:49 with gcc 4.5.3
  configuration: --cc='/usr/local/gcc-4.5.3/bin/gcc -m32'
  libavutil      51. 33.100 / 51. 33.100
  libavcodec     53. 49.100 / 53. 49.100
  libavformat    53. 29.100 / 53. 29.100
  libavdevice    53.  4.100 / 53.  4.100
  libavfilter     2. 55.100 /  2. 55.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0.  5.100 /  0.  5.100
Input #0, avi, from 'volcano.avi':
  Duration: 00:02:24.70, start: 0.000000, bitrate: 14 kb/s
    Stream #0:0: Video: indeo4 (IV41 / 0x31345649), yuv410p, 176x144, 14.99 tbr, 14.99 tbn, 14.99 tbc
    Stream #0:1: Audio: pcm_u8 ([1][0][0][0] / 0x0001), 11025 Hz, 1 channels, u8, 88 kb/s
[buffer @ 0x8dcdf60] w:176 h:144 pixfmt:yuv410p tb:1/1000000 sar:0/1 sws_param:
Output #0, null, to 'pipe:':
  Metadata:
    encoder         : Lavf53.29.100
    Stream #0:0: Video: rawvideo (YUV9 / 0x39565559), yuv410p, 176x144, q=2-31, 200 kb/s, 90k tbn, 14.99 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (indeo4 -> rawvideo)
Press [q] to stop, [?] for help
[indeo4 @ 0x8dcbd80] Buffer contains IP frames!
    Last message repeated 2 times
[indeo4 @ 0x8dcbd80] Corrupted tile data encountered!
[indeo4 @ 0x8dcbd80] Invalid band header sequence!
[indeo4 @ 0x8dcbd80] Error decoding band header
[indeo4 @ 0x8dcbd80] Error decoding band: 0, plane: 1
Error while decoding stream #0:0
Truncating packet of size 2626 to 2067
[indeo4 @ 0x8dcbd80] Corrupted tile data encountered!
[indeo4 @ 0x8dcbd80] Invalid band header sequence!
[indeo4 @ 0x8dcbd80] Error decoding band header
[indeo4 @ 0x8dcbd80] Error decoding band: 0, plane: 2
Error while decoding stream #0:0
frame=   67 fps=  0 q=0.0 Lsize=       0kB time=00:00:04.46 bitrate=   0.0kbits/s dup=1 drop=0
video:0kB audio:0kB global headers:0kB muxing overhead nan%

Attachments (14)

Indeo4_Q_Best.avi (328.0 KB ) - added by ami_stuff 13 years ago.
Indeo4_Q_Best_Bidirection_Prediction.avi (379.2 KB ) - added by ami_stuff 13 years ago.
Indeo4_Q_Better.avi (377.8 KB ) - added by ami_stuff 13 years ago.
Indeo4_Q_Better_Bidirection_Prediction.avi (496.7 KB ) - added by ami_stuff 13 years ago.
Indeo4_Q_Good.avi (407.4 KB ) - added by ami_stuff 13 years ago.
Indeo4_Q_Good_Bidirection_Prediction.avi (525.6 KB ) - added by ami_stuff 13 years ago.
Indeo4_Quick_Compress.avi (433.1 KB ) - added by ami_stuff 13 years ago.
Indeo4_Quick_Compress_Scalability.avi (411.3 KB ) - added by ami_stuff 13 years ago.
bidirection_key_every_1.avi (1006.4 KB ) - added by ami_stuff 12 years ago.
bidirection_key_every_2.avi (935.7 KB ) - added by ami_stuff 12 years ago.
bidirection_key_every_3.avi (947.2 KB ) - added by ami_stuff 12 years ago.
bidirection_key_every_4.avi (934.1 KB ) - added by ami_stuff 12 years ago.
out.avi (146.9 KB ) - added by ami_stuff 10 years ago.
vdub.avi (308.0 KB ) - added by ami_stuff 10 years ago.

Change History (27)

comment:1 by ami_stuff, 13 years ago

more samples

Indeo4_Quick_Compress_Scalability.avi - crashes
Indeo4_Quick_Compress.avi - decodes incorrectly
Indeo4_Q_Good_Bidirection_Prediction.avi - decodes incorrectly
Indeo4_Q_Better_Bidirection_Prediction.avi - decodes incorrectly
Indeo4_Q_Best_Bidirection_Prediction.avi - decodes incorrectly
Indeo4_Q_Good.avi - decodes incorrectly (ffplay crashes)
Indeo4_Q_Better.avi - decodes incorrectly
Indeo4_Q_Best.avi - ok

by ami_stuff, 13 years ago

Attachment: Indeo4_Q_Best.avi added

by ami_stuff, 13 years ago

Attachment: Indeo4_Q_Better.avi added

by ami_stuff, 13 years ago

Attachment: Indeo4_Q_Good.avi added

by ami_stuff, 13 years ago

Attachment: Indeo4_Quick_Compress.avi added

by ami_stuff, 13 years ago

comment:2 by Michael Niedermayer, 13 years ago

crashes fixes

comment:3 by ami_stuff, 13 years ago

Cc: ami_stuff@o2.pl added

comment:4 by ami_stuff, 13 years ago

It looks like this problem have something to do with keyframes.

VirtualDub have an option to force keyframes every x frames:

Q_Best_1.avi - keyframes every 1 frame - decodes ok
Q_Best_15.avi - keyframes every 15 frames - decodes ok
Q_Best_20.avi - keyframes every 20 frames - corruption
Q_Best_50.avi - keyframes every 50 frames - corruption

http://www.datafilehost.com/download-3fb3e7fa.html
http://www.datafilehost.com/download-b5744158.html
http://www.datafilehost.com/download-4cd9438e.html
http://www.datafilehost.com/download-6961417c.html

comment:5 by ami_stuff, 12 years ago

Q_Best_20.avi
Q_Best_50.avi

and

Indeo4_Q_Good.avi
Indeo4_Q_Better.avi

samples were fixed by the latest fix for indeo4 decoder (keyframes).

...

bidirection prediction

volcano.avi
Indeo4_Q_Good_Bidirection_Prediction.avi
Indeo4_Q_Better_Bidirection_Prediction.avi
Indeo4_Q_Best_Bidirection_Prediction.avi

and

quick compress

Indeo4_Quick_Compress_Scalability.avi
Indeo4_Quick_Compress.avi

still doesn't decode correctly.

Last edited 12 years ago by ami_stuff (previous) (diff)

in reply to:  5 comment:6 by ami_stuff, 12 years ago

bidirection prediction

volcano.avi
Indeo4_Q_Good_Bidirection_Prediction.avi
Indeo4_Q_Better_Bidirection_Prediction.avi
Indeo4_Q_Best_Bidirection_Prediction.avi

The problem with bidiretion prediction starts to happen when I force keyframes every 4 frames or more, see attached files.

by ami_stuff, 12 years ago

Attachment: bidirection_key_every_1.avi added

by ami_stuff, 12 years ago

Attachment: bidirection_key_every_2.avi added

by ami_stuff, 12 years ago

Attachment: bidirection_key_every_3.avi added

by ami_stuff, 12 years ago

Attachment: bidirection_key_every_4.avi added

comment:7 by Carl Eugen Hoyos, 12 years ago

The "Quick_Compress" samples were fixed by Kostya (e755c8a / 2cf5d29).

comment:8 by Michael Niedermayer, 11 years ago

partly fixed by Dirk Ausserhaus in 8bfb4d72dd9324fda14bb49dda3468ccba5873e2

comment:9 by Carl Eugen Hoyos, 10 years ago

Resolution: fixed
Status: newclosed

I believe the remaining issues were fixed by Dirk Ausserhaus in 357168bc / 5ec6d152

in reply to:  9 comment:10 by ami_stuff, 10 years ago

Replying to cehoyos:

I believe the remaining issues were fixed by Dirk Ausserhaus in 357168bc / 5ec6d152

There is still something wrong - plese see attached files (out.avi is output from ffmpeg, vdub.avi from virtualdub).

C:\>ffmpeg -i Indeo4_Q_Best_Bidirection_Prediction.avi -an -vcodec msmpeg4v2 -b
:v 1000k out.avi
ffmpeg version 2.2.git-b96c951 Copyright (c) 2000-2014 the FFmpeg developers
  built on Jun 27 2014 11:42:05 with gcc 4.6.2 (GCC)
  configuration: --disable-ffprobe --disable-pthreads --enable-gpl
  libavutil      52. 90.101 / 52. 90.101
  libavcodec     55. 68.100 / 55. 68.100
  libavformat    55. 44.100 / 55. 44.100
  libavdevice    55. 13.101 / 55. 13.101
  libavfilter     4.  9.100 /  4.  9.100
  libswscale      2.  6.100 /  2.  6.100
  libswresample   0. 19.100 /  0. 19.100
  libpostproc    52.  3.100 / 52.  3.100
[indeo4 @ 01e14e00] Warning: not compiled with thread support, using thread emul
ation
Input #0, avi, from 'Indeo4_Q_Best_Bidirection_Prediction.avi':
  Duration: 00:00:00.67, start: 0.000000, bitrate: 4659 kb/s
    Stream #0:0: Video: indeo4 (IV41 / 0x31345649), yuv410p, 352x288, 5064 kb/s,
 15 fps, 15 tbr, 15 tbn, 15 tbc
[msmpeg4v2 @ 01e0d460] Warning: not compiled with thread support, using thread e
mulation
[indeo4 @ 01e294e0] Warning: not compiled with thread support, using thread emul
ation
[avi @ 01e29a20] Using AVStream.codec.time_base as a timebase hint to the muxer
is deprecated. Set AVStream.time_base instead.
Output #0, avi, to 'out.avi':
  Metadata:
    ISFT            : Lavf55.44.100
    Stream #0:0: Video: msmpeg4v2 (MP42 / 0x3234504D), yuv420p, 352x288, q=2-31,
 1000 kb/s, 15 fps, 15 tbn, 15 tbc
    Metadata:
      encoder         : Lavc55.68.100 msmpeg4v2
Stream mapping:
  Stream #0:0 -> #0:0 (indeo4 (native) -> msmpeg4v2 (native))
Press [q] to stop, [?] for help
[msmpeg4v2 @ 01e0d460] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 5 times
[msmpeg4v2 @ 01e0d460] warning, clipping 2 dct coefficients to -127..127
[msmpeg4v2 @ 01e0d460] warning, clipping 1 dct coefficients to -127..127
frame=   10 fps=0.0 q=2.3 Lsize=     147kB time=00:00:00.66 bitrate=1804.8kbits/
s
video:141kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing o
verhead: 4.102383%
Last edited 10 years ago by ami_stuff (previous) (diff)

by ami_stuff, 10 years ago

Attachment: out.avi added

by ami_stuff, 10 years ago

Attachment: vdub.avi added

comment:11 by Carl Eugen Hoyos, 10 years ago

Resolution: fixed
Status: closedreopened

in reply to:  5 comment:12 by ami_stuff, 10 years ago

Replying to ami_stuff:

Q_Best_20.avi
Q_Best_50.avi

and

Indeo4_Q_Good.avi
Indeo4_Q_Better.avi

samples were fixed by the latest fix for indeo4 decoder (keyframes).

...

bidirection prediction

volcano.avi
Indeo4_Q_Good_Bidirection_Prediction.avi
Indeo4_Q_Better_Bidirection_Prediction.avi
Indeo4_Q_Best_Bidirection_Prediction.avi

and

quick compress

Indeo4_Quick_Compress_Scalability.avi
Indeo4_Quick_Compress.avi

still doesn't decode correctly.

"quick compress" samples are fixed as well since some time, so only "bidirectional prediction" decoding is buggy

in reply to:  7 comment:13 by ami_stuff, 10 years ago

Replying to cehoyos:

The "Quick_Compress" samples were fixed by Kostya (e755c8a / 2cf5d29).

Oops, I didn't notice your comment.

Note: See TracTickets for help on using tickets.