View Full Version : XVid Decoder (Nic's and normal) Feature Request YUY2 Output!
Chibi Jasmin
12th December 2002, 12:32
Hi there!
As there are problems on certain cards in certain configurations with YV12 Overlays, it would be a very nice feature of the XVid Decoder filters to have a switch to optionally deliver YUY2 output (as DivX3 does by default, DivX5 can be configured). At the moment, the only way to get XVid decoded to YUY2 is FFDShow (or putting a filter into the chain that requests YUY2 from the decoder).
Please think this over.
Let me mention one issue, I definitely have. When using my Matrox G400 DH in DVDMax mode with RGB-cable (this does only happen with RGB-output, not with s-video or composite) for TV-Output, red colors in YV12 overlays are screwed on the TV. YUY2 works fine. I talked this over with Matrox Tech Support, they confirmed the issue, but didn't make me much hope, it will ever get fixed, as I am the first in years to complain about it. BTW: They checked it also on G450, G550 and Parhelia -> all cards have this issue.
For me it's only a problem with XVid (YUY2 output missing), as all other filters I use (MPG (Microsoft), MPG2 (Intervideo), DivX3, DivX5, FFDShow) deliver YUY2 by default or can be configured to do so...at the moment I use FFDShow for XVid decoding, which is not that bad, but it would be nice to have the YUY2 option in Nic's and the default decoder for the above reasons.
As the decoders can already deliver YUY2 on request [see below, nic's YUY2 seems buggy to me] (by following filters), all we would need is a simple switch.
Thanx for listening :D
@Nic: By requesting YUY2 output from your decoder filter (with DVobSub), I had some strange horizontally striped output...can you check, if there's some bug in your filter delivering YUY2 output? (Look for some red lights, people in red shirts etc.)
sam_b
12th December 2002, 12:58
Are you aware that if you de-select Xvid in ffdshow and select Raw Video , ffdshow can perform a colorspace conversion for you?
Didée
12th December 2002, 13:08
Hi Chibi Jasmin,
since I do have my G400DHMAX hooked by (only) composite, me too wasn't aware that problem exists. Thanks for this information - it is good to know that.
Another question, slightly OT:
Hands down, would you like to exchange your G400 with anything else, as long as we're talking about TV-out?
(Personally, I'm sometimes thinking of buying some more of those G400's, as long as they are available. Why? Just to have reserve for the future ;) )
Chibi Jasmin
12th December 2002, 13:09
Originally posted by sam_b
Are you aware that if you de-select Xvid in ffdshow and select Raw Video , ffdshow can perform a colorspace conversion for you?
Yes, I am aware of that...thanx anyway.
Problems only arise, if you want to decode a video just with XVid Decoder without any other filter doing the YUY2 conversion for you (except renderers, mixers etc.) following...then you get YV12 output...people might complain about bad xvid output on certain cards :D
There must be a reason, all others (WinDVD, DivX5 etc.) deliver YUY2 by default, when not tweaked otherwise...maybe we should even do it the other way round in XVid: Deliver YUY2 by default and YV12 by demand, which is what the others do. In any case, it would just be nice to be able to chose between YV12 and YUY2 output of the two decoders.
Chibi Jasmin
12th December 2002, 13:14
Originally posted by Didée
Hi Chibi Jasmin,
since I do have my G400DHMAX hooked by (only) composite, me too wasn't aware that problem exists. Thanks for this information - it is good to know that.
Another question, slightly OT:
Hands down, would you like to exchange your G400 with anything else, as long as we're talking about TV-out?
(Personally, I'm sometimes thinking of buying some more of those G400's, as long as they are available. Why? Just to have reserve for the future ;) )
Yeah, good to know, a pity it is even an issue on the Parhelia, but on Parhelia they don't even support RGB-output officially :-) If you want to take a look at the discussion (I also had some email exchange, sending them a clip and instructions to reproduce, but the forum thread sums it up quite good): http://forum.matrox.com/mgaforum/Forum12/HTML/004903.html
And I would not want to change my G400 for anything else. I am a bit disappointed by the YV12 bug, but now I learned they convert to RGB for image stretching anyway (see above mentioned thread), I don't care that much about YUY2 conversion before anymore. I would only think of buying more G400's :) But I have to admit I never tested any other TV-Outs on other cards, only read about them, basically convincing me Matrox is to stay for me.
BTW: You should make yourself an RGB-Scart cable, it's worth the image quality :)
UPDATE: Since it's at least a bit more clear (although a bit off-topic here): here some extract from the emails I got from Haig/Matrox:
I see the problem that you are reporting.
I'm not much of a low level guy so I'll tell you what's happening at the
high level portion of our drivers.
When the clip is using YUY2, we will convert this to RGB.
When the clip is using YV12, we will display it in YV12 on the TV. When the clip is using YV12, we will convert it to RGB on the crt.
The fact that this is proven by using an s-video proves that the high level
code is working as it should.
Since the problem is occuring when you using a scart/rgb, I think a problem
may lie on the low level part of our drivers where it's having problems
detecting what the output is.
I've entered my findings into our dbase but I don't know if it will get
much attention.
---
Yep,
it happens on all 3 cards as well.
At 06:26 PM 2002-12-11, Jasmin wrote:
>Hi again...
>
>...one more thing: Would you please check for me, if the same problem
>exists on your other cards (G450, G550 and Parhelia)?
---
Did more research and found out that we don`t support yv12 overlay when
dvdmax is enabled on a monitor. Also, when we do have to stretch the
source, we can't do a good stretch on the crt from YUY2 - YUY2. That's why
we convert to RGB.
In summary, for DVDMax point of view:
yuy2: translated in RGB for tv and monitor.
yv12: yv12 on tv only, we don`t support overlay yv12 when dvdmax is enable
on a monitor.
Regarding why it may not be addressed, I'm assuming that in 4 years, you're
the 1st person to complain about this.
---
---
Okay, enough off-topic, let's get back to the original question: What do you XVid guys think about implementing a switch in the decoder to somehow get YUY2 output?
drebel
12th December 2002, 17:35
I think force enabling DivXG400 gives always yuy2 output.Give it a shot!
regards,
reorge
Chibi Jasmin
12th December 2002, 18:09
Yeah, also thanx for that hint (I already knew). I thought I made it clear (well, maybe not), it's not that I don't know how to deal with this, I just wanted to show that without additional filters (converting to YUY2 or requesting YUY2) you won't get YUY2 output from the XVid Decoders, which I think can be a problem in certain situations...
blivit
13th December 2002, 01:23
I second the motion for defaulting to YUY2. Nvidia cards suffer YV12 issues as well. TNT2 cards suffer A LOT of issues, and I know the GeForce2 suffers from some issues too, although generally less severe than those of TNT2. Now that I know that the Matrox G400 and others in their line have problems too, I'm thinking it would be a good idea to default to YUY2. I have had several people think xvid was crap because it looked so bad on their cards before they knew about ffdshow and disabling YV12. I think there is a good reason that other codecs default to displaying YUY2.... It is stable on most cards known to man. YV12 is not. Definately leave YV12 as an option though, for faster playback on cards that do support it *correctly* (since they can gain playback speed by skipping the color conversion).
-Eric
Chibi Jasmin
13th December 2002, 02:25
This way round (YUY2 default, YV12 as option) would be the best in my opinion, too.
-h
13th December 2002, 04:17
I question the worth of slowing down decoding for everyone because of faulty drivers/hardware..
The fix is to put the YUY2 case first in dshow's GetMediaType() function, however I'd rather see this as a special build or separate option.
Oh, and the strange stripes you're seeing in YUY2 output is chroma interpolation, due to XviD assuming you're working with an interlaced source. Sounds like a mistake somewhere..
-h
Chibi Jasmin
13th December 2002, 04:46
Originally posted by -h
I question the worth of slowing down decoding for everyone because of faulty drivers/hardware..
The fix is to put the YUY2 case first in dshow's GetMediaType() function, however I'd rather see this as a special build or separate option.
Well, making YUY2 decoding an option the user can chose wouldn't hurt, would it? If you want to, you could still leave YV12 as default...special build doesn't make too much sense I think...people getting the special build as a workaround will know other workarounds as well...
Originally posted by -h
Oh, and the strange stripes you're seeing in YUY2 output is chroma interpolation, due to XviD assuming you're working with an interlaced source. Sounds like a mistake somewhere..
-h
You mean the bug I mentioned with Nic's Filter? Yeah, could be something like that...doesn't happen with normal decoder.
Nic
13th December 2002, 13:24
Hi Jasmin,
At present, the last build of filter, had problems with the new colorspace code at the time & due to work & trying to finish of dvd2avi_nic before christmas I havent looked into it enough yet...
Putting a switch or making yuy2 the preferred output when possible is easy enough, ill add that in on the next release...
Cheers,
-Nic
ps
at the time, the dshow from the cvs had the same problem, so if thats been fixed then ill be able to fix my filter easily, hopefully tuesday (if monday's christmas party doesnt kill me... ;) )
Chibi Jasmin
13th December 2002, 14:57
Great you will put that switch in or make YUY2 preferred output :-)
The CVS filter that was working was the one from Koepi 09122002 build.
Maybe someone will also put that YUY2 switch into the CVS? We'll see...
Nic
17th December 2002, 12:55
The CVS filter I just compiled still has the same complete corruption bug when outputing in yuv. Which means my filter would do, maybe I can address this bug over christmas, im not quite sure how suxen's changes effected this so badly...
-Nic
Chibi Jasmin
18th December 2002, 01:38
Well, I have no clue, why the one from Koepi 09122002 build worked :)
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.