[FFmpeg-trac] #2082(undetermined:new): mjpeg: low quality + restart (and grayscale) = lower quality than libjpeg
FFmpeg
trac at avcodec.org
Sun Dec 30 16:20:34 CET 2012
#2082: mjpeg: low quality + restart (and grayscale) = lower quality than libjpeg
-------------------------------------+-------------------------------------
Reporter: ami_stuff | Owner:
Type: defect | Status: new
Priority: normal | Component:
Version: | undetermined
unspecified | Keywords:
Blocked By: | Blocking:
Reproduced by developer: 0 | Analyzed by developer: 0
-------------------------------------+-------------------------------------
{{{
cjpeg -targa -quality 15 -progressive -restart 17 -grayscale test.tga
>q15r17.jpg
}}}
{{{
cjpeg -targa -quality 5 -progressive -restart 17 -grayscale test.tga
>q5r17.jpg
}}}
{{{
cjpeg -targa -quality 1 -progressive -restart 17 -grayscale test.tga
>q1r17.jpg
}}}
Please decode attached samples with ffmpeg and djpeg. The output from
djpeg looks less blocky
The problem is most visible with q1r17.jpg when we compare output from
ffmpeg and djpeg.
This is related to restart option, for example there is no problem while
decoding:
{{{
cjpeg -targa -quality 1 -progressive -restart 0 -grayscale test.tga
>q1r0.jpg
}}}
with ffmpeg (ffmpeg and djpeg output matches).
{{{
C:\>ffmpeg -i q1r17.jpg out.bmp
ffmpeg version N-48239-g69db85c Copyright (c) 2000-2012 the FFmpeg
developers
built on Dec 28 2012 02:20:50 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 52. 12.100 / 52. 12.100
libavcodec 54. 81.100 / 54. 81.100
libavformat 54. 50.102 / 54. 50.102
libavdevice 54. 3.102 / 54. 3.102
libavfilter 3. 30.101 / 3. 30.101
libswscale 2. 1.103 / 2. 1.103
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 2.100 / 52. 2.100
Input #0, image2, from 'q1r17.jpg':
Duration: 00:00:00.04, start: 0.000000, bitrate: N/A
Stream #0:0: Video: mjpeg, gray, 1024x768 [SAR 1:1 DAR 4:3], 25 tbr,
25 tbn,
25 tbc
Output #0, image2, to 'out.bmp':
Metadata:
encoder : Lavf54.50.102
Stream #0:0: Video: bmp, gray, 1024x768 [SAR 1:1 DAR 4:3], q=2-31, 200
kb/s,
90k tbn, 25 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg -> bmp)
Press [q] to stop, [?] for help
frame= 1 fps=0.0 q=0.0 Lsize=N/A time=00:00:00.04 bitrate=N/A
video:769kB audio:0kB subtitle:0 global headers:0kB muxing overhead
-100.002794%
}}}
--
Ticket URL: <https://ffmpeg.org/trac/ffmpeg/ticket/2082>
FFmpeg <http://ffmpeg.org>
FFmpeg issue tracker
More information about the FFmpeg-trac
mailing list