On 20/01/2015 17:44, Moritz Barsnick wrote:
On Tue, Jan 20, 2015 at 17:16:47 +0100, Andrea Rastelli wrote:
I'm sorry but even with your help seems impossible to properly convert
my images.
It may depend heavily on the input, but at least I can successfully
create JPEG from a TIFF, and it can be read by many programs:
$ ffmpeg -i /usr/share/doc/tesseract-3.02.02/eurotext.tif -pix_fmt yuv422p -q 1
eurotext.jpg -y
ffmpeg version 2.5.git Copyright (c) 2000-2015 the FFmpeg developers
built on Jan 11 2015 15:42:28 with icc (ICC) 14.0.3 20140422
configuration: --prefix=/usr/new/tools/video/install/ffmpeg/2015-01-10
--enable-gpl --enable-version3 --enable-nonfree --disable-shared
--enable-gnutls --enable-libcdio --enable-libfreetype --enable-libx264
--enable-libmp3lame --enable-openal --enable-libopencore-amrnb
--enable-libopencore-amrwb --enable-libopenjpeg --enable-librtmp
--enable-libass --enable-libv4l2 --enable-libvidstab --enable-libfdk-aac
--enable-libsmbclient --enable-libquvi --cc=icc --cxx=icpc
--extra-ldflags='-L/usr/new/tools/video/install/x264/current/lib
-L/usr/new/tools/video/install/fdk-aac/current/lib'
--extra-cflags='-I/usr/new/tools/video/install/x264/current/include
-I/usr/new/tools/video/install/fdk-aac/current/include'
libavutil 54. 16.100 / 54. 16.100
libavcodec 56. 20.100 / 56. 20.100
libavformat 56. 18.100 / 56. 18.100
libavdevice 56. 3.100 / 56. 3.100
libavfilter 5. 7.100 / 5. 7.100
libswscale 3. 1.101 / 3. 1.101
libswresample 1. 1.100 / 1. 1.100
libpostproc 53. 3.100 / 53. 3.100
Input #0, tiff_pipe, from '/usr/share/doc/tesseract-3.02.02/eurotext.tif':
Duration: N/A, bitrate: N/A
Stream #0:0: Video: tiff, monob, 1024x800 [SAR 1:1 DAR 32:25], 25 tbr, 25
tbn, 25 tbc
Incompatible pixel format 'yuv422p' for codec 'mjpeg', auto-selecting format
'yuvj422p'
[swscaler @ 0xb6962c0] deprecated pixel format used, make sure you did set
range correctly
Output #0, image2, to 'eurotext.jpg':
Metadata:
encoder : Lavf56.18.100
Stream #0:0: Video: mjpeg, yuvj422p(pc), 1024x800 [SAR 1:1 DAR 32:25],
q=2-31, 200 kb/s, 25 fps, 25 tbn, 25 tbc
Metadata:
encoder : Lavc56.20.100 mjpeg
Stream mapping:
Stream #0:0 -> #0:0 (tiff (native) -> mjpeg (native))
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:180kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing
overhead: unknown
Note the warning about the pixel format.
Moritz
Actually the problem is not in the creation of the JPEG itself, but in
the resulting chroma subsampling that (apparently) is not stored in the
FFmpeg resulting image.
With ImageMagick, when I set -sampling-factor 4:4:4 or 4:2:2 a tool like
"mediainfo" shows the exact subsampling. With ffmpeg this information is
not set nor visible.
Also, ImageMagick produce a bigger file (1.4Mb) than ffmpeg (0.1Mb).
Some image comparation tool (or simple a "difference" color blending
mode in photoshop) between ffmpeg and imagemagick results, shows HUGE
differences in image production (with the same parameters: 4:4:4 and
maximum quality):
ffmpeg => blocky, blurred
IM => sharp and more "like" the original
For this specific task I need the IM results because an image sequence
in TIFF can fill my RAM to be previewed as video, instead the same image
sequence in JPEG is more manageable, and the IM result produce each
image in a "comparable" way with the TIFF source (for each color and
sharpness).
The FFmpeg image sequence looks A LOT lighter than IM, but each image is
(a lot) worse than the original, and can't be used for my comparation
purpose.
If, with FFMpeg, exists some parameter that produce the same result that
I have obtained with ImageMagick will be prefect (because, now, I have
two different tools to manage in my scripts)
_______________________________________________
ffmpeg-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user