Opened 13 years ago

Last modified 12 years ago

#1388 open defect

rv30 decoder does not completely support resolution changes

Reported by: Carl Eugen Hoyos Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: real
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: no

Description

(bug 299)
I will attach a rv30 sample that continuously changes resolution between 354x288 and 256x208, plays fine with mplayer -vc rv3040.
FFmpeg (and mplayer -vc ffrv30) mostly manages the first change from large to small (except that the first keyframe after the change is dropped), but ignores the changes from small to large, leading to massive corruption (and messages).

$ ffmpeg -i teenagelament_cut.ram -qscale 2 -t 16 out.avi
ffmpeg version N-41200-gaac41ec Copyright (c) 2000-2012 the FFmpeg developers
  built on Jun  1 2012 10:02:11 with gcc 4.3.2
  configuration: --cc=/usr/local/gcc-4.3.2/bin/gcc --enable-gpl --enable-libopenjpeg --enable-libvorbis --enable-libspeex --enable-libmp3lame --enable-libtheora --extra-ldflags=-lm --enable-libvpx --enable-libxavs
  libavutil      51. 55.100 / 51. 55.100
  libavcodec     54. 23.100 / 54. 23.100
  libavformat    54.  6.101 / 54.  6.101
  libavdevice    54.  0.100 / 54.  0.100
  libavfilter     2. 77.100 /  2. 77.100
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
[rm @ 0x90113c0] Unsupported stream type 0000023e
Input #0, rm, from 'teenagelament_cut.ram':
  Metadata:
    title           : Teenage Lament '74
    author          :
    copyright       : �2004
    comment         :
  Duration: 00:03:08.86, start: 0.000000, bitrate: 86 kb/s
    Stream #0:0: Audio: cook (cook / 0x6B6F6F63), 44100 Hz, mono, flt, 32 kb/s
    Stream #0:1: Video: rv30 (RV30 / 0x30335652), yuv420p, 352x288, 117 kb/s, 25 fps, 25 tbr, 1k tbn, 1k tbc
    Stream #0:2: Data: none
Please use -q:a or -q:v, -qscale is ambiguous
[buffer @ 0x909b1c0] w:352 h:288 pixfmt:yuv420p tb:1/1000 sar:0/1 sws_param:flags=2
[buffersink @ 0x909b200] No opaque field provided
Output #0, avi, to 'out.avi':
  Metadata:
    INAM            : Teenage Lament '74
    author          :
    ICOP            : �2004
    ICMT            :
    ISFT            : Lavf54.6.101
    Stream #0:0: Video: mpeg4 (FMP4 / 0x34504D46), yuv420p, 352x288, q=2-31, 200 kb/s, 25 tbn, 25 tbc
    Stream #0:1: Audio: mp3 (U[0][0][0] / 0x0055), 44100 Hz, mono, flt
Stream mapping:
  Stream #0:1 -> #0:0 (rv30 -> mpeg4)
  Stream #0:0 -> #0:1 (cook -> libmp3lame)
Press [q] to stop, [?] for help
Changing dimensions to 256x208=    1281kB time=00:00:07.76 bitrate=1352.7kbits/s
[rv30 @ 0x9017ce0] warning: first frame is no keyframe
Input stream #0:1 frame changed from size:352x288 fmt:yuv420p to size:256x208 fmt:yuv420p
[buffer @ 0x9097b00] w:256 h:208 pixfmt:yuv420p tb:1/1000 sar:0/1 sws_param:flags=2
[buffersink @ 0x90dd140] No opaque field provided
[scale @ 0x909ac60] w:256 h:208 fmt:yuv420p sar:0/1 -> w:352 h:288 fmt:yuv420p sar:0/1 flags:0x4
Incorrect intra prediction mode    2186kB time=00:00:12.40 bitrate=1444.1kbits/s
[rv30 @ 0x9017ce0] concealing 208 DC, 208 AC, 208 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 208 DC, 208 AC, 208 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 208 DC, 208 AC, 208 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 208 DC, 208 AC, 208 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 114 DC, 114 AC, 114 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 114 DC, 114 AC, 114 MV errors
[rv30 @ 0x9017ce0] Incorrect intra prediction mode
[rv30 @ 0x9017ce0] concealing 163 DC, 163 AC, 163 MV errors
frame=  267 fps=138 q=2.0 Lsize=    3057kB time=00:00:16.00 bitrate=1565.2kbits/s
video:2898kB audio:125kB global headers:0kB muxing overhead 1.131454%

Attachments (1)

teenagelament_cut.ram (2.0 MB ) - added by Carl Eugen Hoyos 13 years ago.

Download all attachments as: .zip

Change History (3)

by Carl Eugen Hoyos, 13 years ago

Attachment: teenagelament_cut.ram added

comment:1 by Elon Musk, 12 years ago

Component: undeterminedavcodec
Status: newopen

comment:2 by Carl Eugen Hoyos, 12 years ago

Keywords: real added; realvideo rm removed
Note: See TracTickets for help on using tickets.