FORUMS: list search recent posts

mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.

COW Forums : Compression Techniques

<< PREVIOUS   •   VIEW ALL   •   PRINT   •   NEXT >>
Larry Little
mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 11, 2010 at 6:31:42 am

I'm trying to find out more information about the issue of h.264 mp4s looking very different depending on what player is used. I've done quite a bit of searching and reading on this, but I'm finding it difficult to come to some real-world conclusions on this subject. I've generally just used Quicktime for mp4 playback up to now, but I recently tried using VLC (and WMP) to play the same mp4s, and discovered that the video looks considerably darker when played back compared to the lighter output I see with QT.

My process up to now has been to use the original QTRef file -- played back in QT -- as a "reference point," and create an mp4 that matches this look when also played in QT. I make adjustments in the encoder (most recently with Squeeze/Mainconcept, and before with Procoder), until the mp4 looks as close as I can get to the QTRef file. This of course works fine until I look at the same file in VLC, where it is displayed too dark.

What I'm not sure about is what to "do" about this. In other words, which playback do I use as the reference for how it should look? Do I just assume that the QT player is the most common player and continue to use it as the basis for my output decisions? Or do I instead use VLC as my reference point for how the file is "supposed" to look? If I do this, I'll of course still be using the QTRef file (an .mov file) as the reference point, so it seems odd to purposely make the file look "too light" in QT when it's QT that I'm using to give me the reference point. Also, I don't think the "general public" uses VLC, so it seems odd to use this to judge the output.

How do others deal with the discrepancy in luminance between QT and VLC playback? As I mentioned, I've done a lot of reading on this (and will continue to do so), but I was hoping I could get some current, direct feedback in this thread as well.

Thanks for any feedback on this,

Larry



Return to posts index

Chris Blair
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 12, 2010 at 1:50:31 pm

It's not clear from your post what specific codec you're using. Apple's H264 codec is the only H264 codec that I'm aware of that has a gamma problem. So if you're using Main Concept (or another codec besides Apple's) to encode your files, you shouldn't make any adjustments to your final output.

If you ARE using Apple's H264 codec for final output, most people will tell you: DON'T. It will look washed out on all other players.

So if your original video has correct color/luminance values (as judged on a waveform/vectorscope and not by eye or on your monitor), then encoding it with Main Concept's H264 shouldn't necessitate any adjustments in color. That resulting encode will probably look different when played with Quicktime than it will when played with all other media players. But it also won't look exactly the same from say VLC to Zoom Player or Mplayer or Gzine or Real Player or half a dozen other media players.

Our policy is to test final output on the media player the video is most likely to be played on, which if it's for the web, is typically flash player. We usually test files on several PCs as well just to see how it looks on various monitors and OS, including LCD and CRT monitors, because LCD monitors have different default gamma output compared to CRT monitors.

So the bottom line is your file is never going to look exactly the same on every media player or monitor. You can only control it to the extent that you test it on the most likely player and end user hardware setup.

Chris Blair
Magnetic Image, Inc.
Evansville, IN
http://www.videomi.com


Return to posts index

Larry Little
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 12, 2010 at 8:45:15 pm

It's not clear from your post what specific codec you're using.


I use the MainConcept codec in Squeeze, but just to troubleshoot I also did tests with the Apple and Sorenson h.264 codecs and saw the same issue with the file looking significantly different with different players.

So if you're using Main Concept (or another codec besides Apple's) to encode your files, you shouldn't make any adjustments to your final output.


I can't say that it's specifically the MainConcept encoder, but I CAN say that when used in Squeeze, there is absolutely a significant shift that requires adjustment in order to make the image match the original QTRef file. In other words, when using Squeeze to encode h.264 mp4s using the MainConcept h.264 encoder, I have to make significant adjustments in order to get the output to match the input. There are actually other posts talking about this issue both on Cow and other forums.

That, however, is actually a separate issue than what I'm talking about in this thread, which is that there is ALSO a significant difference in the resulting image when played with different players, and that this is regardless of what codec I use. I tried using the Apple codec, the MainConcept codec, and the Sorenson codec. In every case, the file looks substantially different depending on the player I use. The difference is not just with luminance, but with color as well. VLC, for example, looks a lot darker and more green than when the same file is played in Quicktime. For bright scenes the difference is annoying, but for particularly dark scenes it can be a real problem due to details getting lost.

I guess this comes down to the fact that I'm surprised at just how MUCH variation I'm seeing here. I always thought that monitor calibration differences -- along with many aspects of the NTSC system in general -- were bad enough in this regard, but those differences pale in comparison to the differences I'm seeing just from one mp4 player to the next on the SAME monitor and system. In other words, regardless of how careful you are to calibrate the computer monitor, a different player can completely change the look anyway. Doesn't this just throw the whole concept of "calibration" right out the window?

Is there something fundamental I'm missing here, or is the whole system of playing back videos on a computer pretty much an utter mess at this time?

I guess the question comes down to which player is the most common one to view mp4 files. Is it QT? You said you used a flash player, but does this include mp4 files, or are you talking about using h.264 with flv files?

Thanks again for the feedback,

Larry



Return to posts index


Chris Blair
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 12, 2010 at 10:03:59 pm

Again...it comes down to how you're comparing the QTref file with the encoded file. Are you playing the original file and the encoded file on the same media player on the same monitor?

If so, then I cannot explain the differences you're seeing with the Main Concept codec. Maybe it's something specific to squeeze? Also, what codec does the original file use?

We see differences in our files from media player to media player and from monitor to monitor, but not as significant as you're reporting. And we encode video from ALL sorts of source material, from Quicktime using a variety of Quicktime codecs (including Apple's H264) to AVIs using all kinds of different codecs all the way to half a dozen flavors of MPEG2, WMV, P2/MXF and codecs I've never heard of.

There is not surefire way to "calibrate" a computer monitor (that I'm aware of) for video playback. From my knowledge, all you can do is test it on as many configurations as possible and feasible given the time and budget, and limit the number of encodes to as few as possible to get to your final output version.

I guess the question comes down to which player is the most common one to view mp4 files. Is it QT? You said you used a flash player, but does this include mp4 files, or are you talking about using h.264 with flv files?

We use both, but primarily we use mp4 using the Main Concept H264 codec. But we've also used the X264 (open source) codec as well. FLV files can look very good too, but you typically have to up the data rate some to get them to match the quality of H264. The only advantage that I'm aware flv files have is they'll often playback on older hardware, whereas H264 tends to choke on older computers. As an example, I have a 12 year old Win98 computer in my kitchen that's only used for internet and word processing. It will play flv files of any kind smoothly from the internet, but can only play H264 files at a frame rate of about 1 every 2 seconds..so they look like bad slide shows.

Daniel Low from this list might have some additional info he could give you as to reasons for what you see.

Chris Blair
Magnetic Image, Inc.
Evansville, IN
http://www.videomi.com


Return to posts index

Chris Blair
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 12, 2010 at 10:27:47 pm

I should clarify that the H264 files that I have trouble playing on older hardware are using Flash Player.

Those same H264 files will indeed play on the old PC if I load them into VLC or (another media player like gzine) that can pseudo-stream from a website or FTP. So the problem isn't specifically the H264/mp4 file but the combination of using Flash and H264. Older hardware just can't handle the processing needed to run both Flash and decode the H264.

So I guess you could deduce that flv files must require less processing from a flash player than H264 files. That's generally the conclusion of most compression pundits, but there have been tests that Jan Ozer has done with HD encoded files that show the opposite depending on the platform (Mac or Windows) used to playback the files.

Chris Blair
Magnetic Image, Inc.
Evansville, IN
http://www.videomi.com


Return to posts index

Larry Little
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 12, 2010 at 11:02:20 pm

Again...it comes down to how you're comparing the QTref file with the encoded file. Are you playing the original file and the encoded file on the same media player on the same monitor?


I'm comparing it both to what I see in Avid, as well as to the QTRef file (output as RGB for computer playback) that I create with Avid and play back using Quicktime (which looks like what I see in Avid.) Yes -- every comparison I've referred to is on the same system and monitor.

If so, then I cannot explain the differences you're seeing with the Main Concept codec. Maybe it's something specific to squeeze? Also, what codec does the original file use?


The original codec I use in Avid is the Avid DV codec (i.e. I check the "Use Avid DV codec" box.) I'm going to try outputting a QTRef without checking this box just to see what happens, but I've read and been told by multiple sources that the "user Avid DV codec" box should be used due to potential gamma issues when it's not used. I'll report back if this makes a difference to Squeeze.

The bottom line is that there is absolutely a shift when using Squeeze's MainConcept h.264 encoder to create mp4 files when starting with an Avid QTRef file that used the Avid DV codec. The output is expanded (i.e. as if it's doing something similar to a 601 to RGB shift) and the gamma is off as well. As I mentioned, others have reported this, but the only "solutions" I've seen are to manually adjust the output using the Squeeze controls in order to compensate for the shift.

There is a thread on this forum that talks about this, including a few posts of mine that discuss the specific differences needed to create output that gives the desired result (i.e. that matches the original):

http://forums.creativecow.net/readpost/20/865046

We see differences in our files from media player to media player and from monitor to monitor, but not as significant as you're reporting.


I'm definitely not talking about monitor to monitor differences. I'm talking about differences from one player to another, such as the QT player vs the VLC player. In this particular case, however, I traced at least a good portion of the problem to the fact that the VLC player is NOT effected by my monitor calibration. I use a Huey Pro to calibrate my monitor. When I turn the correction on and off, I can see the color on the screen shift, but the actual VLC screen is exempt from the shift. In other words, the QT and WMP screens both apply the Huey Pro correction, but the VLC screen does not. Only the actual border of the VLC player is effected by the calibration -- the video playback remains unchanged. Apparently, the VLC screen is "outside" of the Huey Pro correction for some reason. I've never seen this before -- I always thought that the entire screen was effected by the calibration regardless of what was being displayed.

The end result is that since QT (and WMP) are both effected by the monitor calibration but VLC is not, the VLC screen is showing me the image without the monitor calibration, which causes a significant color shift. If I turn off the Huey Pro monitor calibration, the shift is far less significant.

The new question is what to do about this. Why is VLC "outside" of the Huey Pro correction, and is there any way to get it to be effected by the color changes made by the monitor calibration?

Thanks again,

Larry



Return to posts index


Chris Blair
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 13, 2010 at 2:05:42 am

The new question is what to do about this. Why is VLC "outside" of the Huey Pro correction, and is there any way to get it to be effected by the color changes made by the monitor calibration?

I don't know that you can or that it's worth spending the time trying. But every media player is going to show some differences in the resulting file, because every media player will use a different method of decoding the file. I'd just worry about which media player your end file will most likely be played on.

One question I have is if the Avid DV codec has the option of adding 7.5% setup or keeping it at 0? Some DV codecs work in the 0-255 range, meaning black is 0% black. If you're working in NTSC land, a codec might change that to the NTSC equivalent, which I believe is 15-235 or something thereabout.

You'll drive yourself crazy trying to make your file look the same on every media player. I don't think it'll happen.

Chris Blair
Magnetic Image, Inc.
Evansville, IN
http://www.videomi.com


Return to posts index

Larry Little
Re: mp4 h.264 playback -- video looks quite different in Quicktime player vs VLC.
on Apr 13, 2010 at 7:06:25 am

One question I have is if the Avid DV codec has the option of adding 7.5% setup or keeping it at 0? Some DV codecs work in the 0-255 range, meaning black is 0% black. If you're working in NTSC land, a codec might change that to the NTSC equivalent, which I believe is 15-235 or something thereabout.


Basically, you have the option of outputting 601 (16-235) or RGB (0-255) levels regardless of whether or not you use the Avid DV codec. In other words, there is no specific 'setup' setting connected to the Avid DV codec -- it's simply a setting in the Quicktime Reference output options when you export from Avid. You select RGB or 601, and you ALSO have the option of checking the "Use Avid DV codec" box. If you don't check this box, my understanding is that it uses the Apple DV codec.

Regarding the issue of VLC being unaffected by the monitor calibration (and therefore creating VASTLY different color than other players), it looks like I'll have to disregard the VLC player for now because of this issue. I don't really have the time to try and track this one down, but I did do some quick searching and found another reference to this on the videolan (maker of VLC) forum. Here is the link if anyone is interested:

http://forum.videolan.org/viewtopic.php?f=7&t=64718

Since QT and WMP don't exhibit this issue, it looks like I'll just have to use them instead.

Following up on my earlier post, I did get a chance to test the non-Avid DV codec. I output a QTRef file from Avid WITHOUT checking the "use Avid DV codec" box, and I got the same basic issue with Squeeze -- i.e. when creating an mp4 using the MainConcept h.264 encoder in Squeeze, the resulting file was darker by what I would call a "significant" amount.

I also did tests with bars (both color and black and white) and can confirm that the results I get with Squeeze are definitely "wrong" if I don't do any correction in Squeeze. By this I mean that when I view the encoded file using the same monitor I used to create the content, the resulting mp4 has blacks that are completely clipped. The bottom line is that there is definitely SOMETHING going on with the Squeeze implementation of the MainConcept mp4 encoder. You can work around it, but it's definitely there.

One other note: When I use Quicktime Pro to encode the same QTRef file as an mov and play it back with Quicktime, the result is VERY close to the original in terms of color and luminance. In other words, the Apple encoding engine does NOT exhibit the shift that the Squeeze MainConcept encoder does.

Thanks again for the help here,

Larry



Return to posts index

<< PREVIOUS   •   VIEW ALL   •   PRINT   •   NEXT >>
© 2017 CreativeCOW.net All Rights Reserved
[TOP]