VLC refresh bug comment
Christophe Massiot
massiot at via.ecp.fr
Sun Jun 9 14:30:11 CEST 2002
Hi dude,
At 21:57 -0700 6/06/2002, Jeff Lebowski wrote :
> I wanted to follow-up on my post, which seems to have been
>misinterpreted. The video-refresh bug is NOT QuickTime 6's fault.
> This has been an error present ever since I've started using VLC on
>Mac OS X, which I believe was version 0.2.9 or 0.3.0. This occurs
>on my own computer, which has had QuickTime 6 Developer and now
>QuickTime 6 Public Preview installed, and on my girlfriend's
>computer with QuickTime 5.0.4 installed. This also has occurred in
>Mac OS X 10.1.3-10.1.5, and my computer has a 32MB GeForce 2MX-400
>while my girlfriend's has a 16MB Rage 128 Pro. The most likely
>explanation of this issue is a bug in VLC's method of rendering
>video when running in millions of colors, as no other Mac OS X
>program exhibits this behavior.
Maybe we're not talking of the same bug. I know of at least two
reported "black screen" bugs which have been fixed between 0.2.92 and
0.4.0.
The reason I don't believe this last one is VLC's fault is that it is
millions of colors-specific. VLC does *NOT* do the rendering by
itself, it's QuickTime's job, and it is done in hardware. As a
consequence there is no notion of millions of colors in VLC, since we
only work on YUV coordinates. The only part which deals with RGB
colors is after the rendering, that is in QuickTime.
When you say "no other Mac OS X program exhibits this behavior", you
shouldn't tell things you don't know.
http://www.mireth.com/pub/mxme.html
"Although I havem't tried it out yet I've received reports that our
codec also displays black under QT6. It was working fine under 5 on
OSX. The codec asks for a yuv 422 pixelmap for decompression. I'm
assuming it's a bug in QT6 at this point." --Avid Technology
> For further proof of this, I've run Quartz Debug, one of Apple's
>freely available dev tools, while playing a movie in VLC while in
>millions of colors. After setting QB to "Flash Screen Updates", it
>is quite clear that the VLC video window is not updating at all via
>Quartz. The only time it will update is
What a coincidence, we don't use Quartz. Quartz would be painfully
slow for what we do, and we use hardware acceleration provided by
QuickTime. That means that in the normal course of operations, the OS
doesn't even know a picture is displayed, it is directly written in
VRAM.
>when a dynamic Quartz element, most clearly and easily demonstrated
>by a dropshadow, is dragged over the video window, forcing Quartz to
>render the image of all elements below the dropshadow. However,
>leaving a window with dropshadow in place, motionless, over the
>video window will not result in an refresh of either the video
>window or the dropshadow. Picking the "Autoflush drawing" option in
>QB, with "flash" turned off, will allow the video to display in
>millions of colors. It also runs at a noticeably slower framerate
>than normal (perhaps 15-20 frames per second). Switching to
>thousands of colors and running
Sure, when you force the OS to do software rendering instead of
hardware rendering, it works. Of course it is much slower, that's why
we don't want to use software rendering. Oh, and your experiment only
shows there is a problem with hardware rendering, which is done by
QuickTime.
Of course the problem may be in the way VLC sends parameters to
QuickTime. I have spent many hours on this, trying everything I
could, and with the documentation I have (which is very sparse, thank
you Apple) I don't see what we could be doing wrong.
For the time being, I don't see what I can do to solve this bug, and
I won't keep fighting the wind any longer. Since QuickTime is not
open source, and its documentation is even worse than what the worse
open source project provides, I can't prove you it is a bug in
QuickTime. I have sent a mail to the quicktime-api mailing-list, I
hope Apple will confirm what I say, or tell me what's wrong with VLC.
If people want to look at the code to find a hypothetic bug in VLC,
that's fine with me. In fact I'd be very glad if the bug could be in
VLC, because that means we could fix it. However, with information I
have at hand, I'm almost convinced the issue is in QT6.
I may sound a little upset in this mail (nothing personal, be
reassured). The reason I'm currently pissed off is that OS X users,
when facing a bug involving beta, not-for-production Apple software,
and an open-source application whose bugs everyone can look for,
automatically think that Apple is right and that we, poor hackers,
are wrong. Don't people read the readme file ? QuickTime 6 Preview
*contains bugs* and *is not for production purposes*, even Apple says
it, why do people keep complaining to us, and not to Apple ?
BTW, I hope you don't mind if I Cc: to the mailing-list, as I think a
lot of information in this mail may be interesting for other OS X
users.
> On an unrelated note, I have been able to open SVCDs directly
>via the "Open Disc" command fairly reliably since some of the later
>0.3.1 builds. Why does the Read Me still state you must copy over
>the MPEG-2 files and view them from your HD? Admittedly, sometimes
>the disc won't play on the first iteration of the "Open Disc"
>command, and other times it may not start exactly from the start of
>the disc (perhaps jumping 5-30 seconds into the movie), but very
>rarely does it not work after 3 or 4 tries. The lack of consistency
>may be related the bug report I had posted a month or so ago, with
>the three or four different errors early VLC 0.3.1 builds were
>giving me.
We haven't announced SVCD support yet, because we haven't tested it
(we only have one SVCD, and this one showed significant problems).
I'm glad to hear it works for you.
--
Christophe Massiot.
--
This is the vlc mailing-list, see http://www.videolan.org/vlc/
To unsubscribe, please read http://www.videolan.org/lists.html
If you are in trouble, please contact <postmaster at videolan.org>
More information about the vlc
mailing list