Opened 12 years ago

Last modified 12 years ago

#1601 open enhancement

msmpeg4 reencode MB as intra or picture with higher quantizer if syntax limits are hit

Reported by: ami_stuff Owned by:
Priority: normal Component: avcodec
Version: git-master Keywords: msmpeg4 qscale
Cc: Blocked By:
Blocking: Reproduced by developer: yes
Analyzed by developer: yes

Description

there is visible a blinking square in the output video at the bottom-right corner

does not happen with removed "-b:v 1000k" from the command line

http://www.datafilehost.com/download-d92d34d7.html

C:\>ffmpeg -i mpeg1.mpg -r 25 -s 312x310 -vcodec msmpeg4v2 -an -b:v 1000k out.wmv
ffmpeg version N-43160-g752344d Copyright (c) 2000-2012 the FFmpeg developers
  built on Aug  3 2012 02:38:06 with gcc 4.5.0 (GCC) 20100414 (Fedora MinGW 4.5.
0-1.fc14)
  configuration: --prefix=/var/www/users/research/ffmpeg/snapshots/build --arch=
x86 --target-os=mingw32 --cross-prefix=i686-pc-mingw32- --cc='ccache i686-pc-min
gw32-gcc' --enable-w32threads --enable-memalign-hack --enable-runtime-cpudetect
--enable-cross-compile --enable-static --disable-shared --extra-libs='-lws2_32 -
lwinmm -lpthread' --extra-cflags='--static -I/var/www/users/research/ffmpeg/snap
shots/build/include' --extra-ldflags='-static -L/var/www/users/research/ffmpeg/s
napshots/build/lib' --enable-bzlib --enable-zlib --enable-gpl --enable-version3
--enable-nonfree --enable-libx264 --enable-libspeex --enable-libtheora --enable-
libvorbis --enable-libfaac --enable-libxvid --enable-libopencore-amrnb --enable-
libopencore-amrwb --enable-libmp3lame --enable-libvpx --disable-decoder=libvpx
  libavutil      51. 66.100 / 51. 66.100
  libavcodec     54. 48.100 / 54. 48.100
  libavformat    54. 22.100 / 54. 22.100
  libavdevice    54.  2.100 / 54.  2.100
  libavfilter     3.  5.101 /  3.  5.101
  libswscale      2.  1.100 /  2.  1.100
  libswresample   0. 15.100 /  0. 15.100
  libpostproc    52.  0.100 / 52.  0.100
[mpeg @ 0x1eacee0] max_analyze_duration 5000000 reached at 5005000
Input #0, mpeg, from 'mpeg1.mpg':
  Duration: 00:00:12.61, start: 0.825933, bitrate: 1317 kb/s
    Stream #0:0[0x1e0]: Video: mpeg1video, yuv420p, 320x240 [SAR 178:163 DAR 712
:489], 1150 kb/s, 29.97 fps, 29.97 tbr, 90k tbn, 29.97 tbc
    Stream #0:1[0x1c0]: Audio: mp2, 44100 Hz, stereo, s16, 128 kb/s
Output #0, asf, to 'out.wmv':
  Metadata:
    WM/EncodingSettings: Lavf54.22.100
    Stream #0:0: Video: msmpeg4v2 (MP42 / 0x3234504D), yuv420p, 312x310 [SAR 275
90:19071 DAR 712:489], q=2-31, 1000 kb/s, 1k tbn, 25 tbc
Stream mapping:
  Stream #0:0 -> #0:0 (mpeg1video -> msmpeg4v2)
Press [q] to stop, [?] for help
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 17 times
frame=   46 fps=0.0 q=2.0 size=     257kB time=00:00:01.84 bitrate=1143.2kbits/s
warning, clipping 1 dct coefficients to -127..127
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 38 times
frame=  103 fps=0.0 q=2.4 size=     588kB time=00:00:04.12 bitrate=1169.2kbits/s
warning, clipping 1 dct coefficients to -127..127
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 12 times
frame=  158 fps=105 q=2.5 size=     872kB time=00:00:06.32 bitrate=1130.8kbits/s
warning, clipping 1 dct coefficients to -127..127
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 8 times
frame=  212 fps=106 q=2.5 size=    1129kB time=00:00:08.48 bitrate=1090.3kbits/s
warning, clipping 1 dct coefficients to -127..127
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 28 times
frame=  259 fps=104 q=2.0 size=    1326kB time=00:00:10.36 bitrate=1048.1kbits/s
warning, clipping 1 dct coefficients to -127..127
[msmpeg4v2 @ 0x1fa2c40] warning, clipping 1 dct coefficients to -127..127
    Last message repeated 26 times
[mpeg1video @ 0x1ead840] ac-tex damaged at 19 14
[mpeg1video @ 0x1ead840] Warning MVs not available
[mpeg1video @ 0x1ead840] concealing 20 DC, 20 AC, 20 MV errors in B frame
frame=  318 fps=105 q=2.0 Lsize=    1501kB time=00:00:12.72 bitrate= 966.5kbits/
s dup=0 drop=61
video:1479kB audio:0kB subtitle:0 global headers:0kB muxing overhead 1.442929%

Change History (1)

comment:1 by Michael Niedermayer, 12 years ago

Analyzed by developer: set
Component: undeterminedavcodec
Keywords: msmpeg4 qscale added
Reproduced by developer: set
Status: newopen
Summary: msmpeg4v2 enc: blinking square at the bottom-right corner of the videomsmpeg4 reencode MB as intra or picture with higher quantizer if syntax limits are hit
Type: defectenhancement
Version: unspecifiedgit-master

This is a sideeffect of the motion estimation, bitrate and limitations of msmpeg4.
You can workaround the issue by using -mbd 2.

Its a bit borderline but i think this is a feature request not so much a bug. The bug is in the way msmpeg4v2 was designed. MS made a mistake there in the range that is needed to store coefficients.

Note: See TracTickets for help on using tickets.