slight lightening of tint when converting .avi to .mpg
I'm a programmer, a new user on this forum and I think ffmpeg is just amazing. I do have a question: When I convert an avi to an mpg, the quality is fine except that the colors in the new mpg are a bit lighter in tint than the original.
I've tried different options using -pix_fmt to correct this but so far no luck. Is this something that I'll just have to live with? Thanks in advance and I'm glad to be on this forum. Fingal McGinnis
Late reply, but you need to actually show your command, the complete console output, and provide any required input files so we can attempt to duplicate the issue.
Thank you very much for responding.
The command that I've been using is: ffmpeg -f image2 -i c:\temp25\test%d.bmp -r 24 c:\temp17\test1.mpg
I would normally use this command to make a movie from hundreds of .bmps but for the purpose of your testing convenience I tried to upload a single .bmp that you could duplicate and number to get an idea of what constitutes my input.
Unfortunately, the window that this forum uses to accept uploads gave me a message that said my file type was not supported, though I tried using .bmp, .png, .gif and .jpg formats. None were accepted. I also tried to upload an .mpg but no luck there either. This may or may not be because I don't have Java installed on my FireFox browser but I don't want to bother with that right now.
If you can, give me an address and I'll send you the .bmp and the .mpg movie as attachments on an e-mail.
Take my word for it, the .mpgs are coming out too light.
The command I used makes an excellent .avi that has no color changes but as you know, .avis are quite large and I would rather make an .mpg.
The console output follows this note.
Any tips you could give me will be much appreciated.
ffmpeg -f image2 -i c:\temp25\test%d.bmp -r 24 c:\temp17\test1.mpg
ffmpeg version git-N-30610-g1929807, Copyright (c) 2000-2011 the FFmpeg develope
built on Jun 7 2011 15:55:06 with gcc 4.5.3
configuration: --enable-gpl --enable-version3 --enable-memalign-hack --enable-
runtime-cpudetect --enable-avisynth --enable-bzlib --enable-frei0r --enable-libo
pencore-amrnb --enable-libopencore-amrwb --enable-libfreetype --enable-libgsm --
enable-libmp3lame --enable-libopenjpeg --enable-librtmp --enable-libschroedinger
--enable-libspeex --enable-libtheora --enable-libvorbis --enable-libvpx --enabl
e-libx264 --enable-libxavs --enable-libxvid --enable-zlib --disable-outdev=sdl -
libavutil 51. 6. 1 / 51. 6. 1
libavcodec 53. 6. 1 / 53. 6. 1
libavformat 53. 2. 0 / 53. 2. 0
libavdevice 53. 1. 1 / 53. 1. 1
libavfilter 2. 14. 0 / 2. 14. 0
libswscale 0. 14. 1 / 0. 14. 1
libpostproc 51. 2. 0 / 51. 2. 0
Input #0, image2, from 'c:\temp25\test%d.bmp':
Duration: 00:00:00.12, start: 0.000000, bitrate: N/A
Stream #0.0: Video: bmp, bgr24, 240x180, 25 fps, 25 tbr, 25 tbn, 25 tbc
Incompatible pixel format 'bgr24' for codec 'mpeg1video', auto-selecting format
[buffer @ 01DDD640] w:240 h:180 pixfmt:bgr24 tb:1/1000000 sar:0/1 sws_param:
[ffsink @ 01DD9B40] auto-inserting filter 'auto-inserted scaler 0' between the f
ilter 'src' and the filter 'out'
[scale @ 01DDC420] w:240 h:180 fmt:bgr24 -> w:240 h:180 fmt:yuv420p flags:0x4
[mpeg @ 01DDB920] VBV buffer size not set, muxing may fail
Output #0, mpeg, to 'c:\temp17\test1.mpg':
encoder : Lavf53.2.0
Stream #0.0: Video: mpeg1video, yuv420p, 240x180, q=2-31, 200 kb/s, 90k tbn,
Stream #0.0 -> #0.0
Press [q] to stop, [?] for help
frame= 3 fps= 0 q=2.0 Lsize= 12kB time=00:00:00.08 bitrate=1179.7kbits/
video:11kB audio:0kB global headers:0kB muxing overhead 11.759891%
[Fingal McGinnis] "When I convert an avi to an mpg, the quality is fine except that the colors in the new mpg are a bit lighter in tint than the original."
This is probably due to the conversion from bgr24 to yuv420p.
[Fingal McGinnis] "ffmpeg version git-N-30610-g1929807, Copyright (c) 2000-2011 the FFmpeg developers"
This is elderly, and it's not worth your time to use such an old version. There have been at least 41763 updates to FFmpeg since your version. Development is very active and you should use a recent version when possible. Using a static build of ffmpeg is an easy option.
[Fingal McGinnis] "Stream #0.0: Video: mpeg1video, yuv420p, 240x180, q=2-31, 200 kb/s, 90k tbn, 24 tbc"
Are you sure you want to use mpeg1video? What about mpeg2video?
[Fingal McGinnis] "I would rather make an .mpg."
Why do you need this format?
Please use the code button to format your commands and outputs. It makes it easier to read.
I've used a lot of formats, including MPEG-2 but so far I haven't seen any quality difference and I like MPEG-1 because it's so universally accepted. The example I showed was just a sample of whatever I was doing at the time. The reason I'm using such an old version of FFmpeg is because of file size concerns. My program will use FFmpeg as one of its external engines and my program is already quite large. I'll step up if I have to but I want to use the smallest file (FFmpeg) that will do the job and I've used a number of different versions of FFmpeg.
I really appreciate the fact that you are taking the time to help me. Up to now I've always found a way around or through any problem but this lightening problem just won't go away. By the way, this problem happens whether I make an .mpg from still frames or from .avis. The same problem happens even when I make .wmvs with FFmpeg and Windows Movie Maker!
Can you suggest any specific commands or use of filters that I might try? I've searched everywhere for months and have tried everything that I could think of but I've never been able to keep my .mpgs from being washed out. It's not a bad wash out but it is noticable. I love FFmpeg and I very much want to use .mpgs since they are so much smaller and less troublesome than .avis. Thanks again.
Well, In my continuing and never-ending quest to solve the color "lightening" problem, I was able to successfully downloaded and unzip ffmpeg-20150531-git-11aa050-win32-static.7z but when I tried to run it all I got was an error message that said: "The procedure entry point_wfopen_s could not be located in the dynamic link library msvcrt.dll," so I then downloaded ffmpeg-latest-win32-static.7z but got the same message when I tried to run it. Maybe some one out there knows exactly what that error message means but it's just Greek to me. I then did the "easy" option of downloading ffmpeg-2.6.3.tar.bz2 but that was no help either. I guess that I'll just have to use one of the "elderly" versions. At least they function.
[Fingal McGinnis] "but when I tried to run it all I got was an error message that said: "The procedure entry point_wfopen_s could not be located in the dynamic link library msvcrt.dll"
I believe that's a problem with Zeranoe's builds that has manifested recently. I don't think the issue originated from FFmpeg, but I am not much of a Windows user.
[Fingal McGinnis] "I guess that I'll just have to use one of the "elderly" versions. At least they function."
That's a bad idea and a waste of time. Other users (still using Windows XP!) with the same issue stated that ffmpeg-20150525-git-8ce564e-win32-static.7z is their last working version.
I was never able to use the newest version of FFmpeg but I was finally able to use ffmpeg-20150523-git-02cf59f-win32-static.7z, which is one of the newer versions. It seems to be working out okay. It looks like it's going to enable me to fix the "wash out" problem and to at least improve the color shifting issue. It also fixed some other problems that I was having that involved large .avi files.
I now think that all this is worth adding about 15Mb to the size of my program. Thank you very much for your responses and help. FFmpeg is really a great program. Fingal McGinnis