VideoHelp Forum




+ Reply to Thread
Results 1 to 8 of 8
  1. Member
    Join Date
    Jul 2010
    Location
    italy
    Search Comp PM
    hi everybody,
    i have a .mov file and i want to convert it in .flv / .swf format.
    using adobe media encoder or DVDvideosoft i have this problem: the color of the background (RGB white 255 255 255) becomes a very light grey (248 248 248). I don't want this to happen: how can i do?
    (additional info: also with some players i experience this thing - opening the .mov with quicktime i see a light grey background while with vlc I see a perfect white)
    (all the checks on color performed with print screen and photoshop)

    any suggestion?
    thanks!
    Quote Quote  
  2. It's the quicktime gamma shift bug, well documented. You will see 1000's of posts on this subject, just google "quicktime gamma shift bug"

    If you want it to look like what you see in VLC, you need to avoid decoding it through the quicktime API. For example you could use avisynth and ffmpegsource2() to feed into your encoder
    Quote Quote  
  3. In the world of video (YUV) full black has a digital value of 16, pure white 235. In the computer world pure black is 0 and white is 255. Most programs automatically perform this contrast stretch when converting YUV (video) to RGB (computers), or squish when converting RGB to YUV.

    You also have the issue of whether or not players are using video overlay which has its own YUV to RGB conversion hardware. It may be that the differences you are seeing are player and video overlay related, not anything to do with the videos themselves. There are also several "output devices" that a player can use and graphics card drivers can treat them differently.

    You need to examine your videos while they are in YUV form so as to avoid all those player and editor issues. The best way I know of is to use AviSynth and its Histogram() or VideoScope() filters. But that can be difficult. Sony Vegas has tools that let you examine "levels". VirtualDub has the ability to display levels but it works in RGB. You have to be careful about whether VirtualDub does the YUV to RGB conversion (which it does with the contrast stretch) or the input filter does it (which may or may not perform the stretch). You can also try using VLC but set its output device to Windows GDI. That way VLC will perform any YUV to RGB conversions. It always performs the contrast stretch (Y=15-235 to RGB=0-255).

    And yes, Quicktime should be avoided at all costs. Especially Quicktime Player under Windows.
    Quote Quote  
  4. jagabo's right - decoding though quicktime will clamp values to 16-235 , but there is also a non-linear gamma shift . Even when you correct for the levels, the image looks different because QT uses different gamma values than all other software

    Sony Vegas has tools that let you examine "levels"
    This actually is tricky to use consistently, because vegas decodes through installed quicktime as well and does YUV=>RGB conversion internally, and the results will vary upon how you have vegas set up (it decodes the image with different contrast stretch depending if you are using 8-bit or 32-bit mode, and the results vary how you have the scopes setup)
    Quote Quote  
  5. Member
    Join Date
    Jul 2010
    Location
    italy
    Search Comp PM
    thanks for your answers!
    i'm pretty sure about the video source because i generated it by myself: the color mode is HSB and the background is 0, 0, 100 (equal to RGB 255 255 255). it's a line of code in my program so i'm sure about that.
    the program i use (processing) generates java applets and has a library for movie exporting in .mov format.
    as i said, with vlc i read properly the .mov white background while quicktime shows an RGB 248 248 248 color instead of 255 255 255

    all i have to do is convert the .mov in .swf format preserving the RGB 255 255 255 white background.

    i'm not skilled with video editing, so which is the simplest tool and solution you can suggest?
    thks again for your help!
    Quote Quote  
  6. You want software that avoids decoding though quicktime, so something like mediacoder or super or format factory (which are easy to use GUI's for ffmpeg and mencoder) should be able to decode (and encode) white as 255
    Quote Quote  
  7. Member
    Join Date
    Jul 2010
    Location
    italy
    Search Comp PM
    i downloaded and installed mediacoder and it appears quite easy to use, but...
    i'm not able to generate the output file

    i add the .mov, configure the conversion options (tried both manually and with the wizard) but the result is a 0byte file or a message saying "no file is outputed". i don't understand why.

    i put flash video as format, average bit rate (1000kbps), source and encoder: autoselect, audio disabled, flv as container, autoselect multiplexer, no change on picture properties. the user interface displays: container FLV & muxer ffmpeg, video flash video & encoder ffmpeg.

    any help?

    sorry for my clumsyness
    Quote Quote  
  8. Member
    Join Date
    Jul 2010
    Location
    italy
    Search Comp PM
    probelm solved.
    with sony vegas i applied: color corrector --> studio RGB to computer RGB effect and i rescaled to RGB space from 0 to 255.
    thanks for your help!
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!