[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