PDA

View Full Version : Nvidia fails with WMV WVC1 playback on VMR


CruNcher
8th July 2006, 18:45
Someone expirienced the same with their latest drivers
WVC1 playback doesn't work for me correctly Main profile encoded videos are fine but with WVC1 the video flickers ? like picture,black,picture,black arghhh

bond
8th July 2006, 18:47
m$ has just released a decoder for vc-1 advanced profile and you want other companies to fully support it too at the same time? :D

zambelli
8th July 2006, 23:02
Someone expirienced the same with their latest drivers
Which operating system? Which Nvidia card? What is the exact driver version?

Unless Nvidia finally enabled DXVA decoding for Advanced Profile (WVC1) in their public drivers, there shouldn't be a difference in the way WVC1 is rendered vs WMV3.

CruNcher
9th July 2006, 00:26
OS = Windows XP Pro Sp2
GFX = 7600 GS PCI-E (G73)

i tried with the Alan Wake sample and my own Encodes both the same results it flickers when useing VMR

Driver:

nvCplUIR.dll 1.2.1.13 NVIDIA Control Panel
nvCpl.cpl 1.2.1.13 NVIDIA Control Panel Applet
nvExpBar.dll 1.2.1.13 NVIDIA Control Panel
nvCplUI.exe 1.2.1.13 NVIDIA Control Panel
nvViTvSR.dll 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
nvViTvS.dll 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
nvDispSR.dll 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
NVMCTRAY.DLL 6.14.10.9133 NVIDIA Media Center Library
NVOGLNT.DLL 6.14.10.9133 NVIDIA Compatible OpenGL ICD
nvDispS.dll 6.14.10.9133 NVIDIA Display Server
NVCPL.DLL 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
NV4_MINI.SYS 6.14.10.9133 NVIDIA Compatible Windows 2000 Miniport Driver, Version 91.33
NV4_DISP.DLL 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
nvGameSR.dll 6.14.10.9133 NVIDIA Compatible Windows 2000 Display driver, Version 91.33
nvGameS.dll 6.14.10.9133 NVIDIA 3D Settings Server

zambelli
9th July 2006, 12:15
One more thing: which WMP version do you have installed? If it's v11, can you please add the following reg value:

HKCU\Software\Microsoft\Scrunch\WMVideo
DWORD "DXVATRACE" = 1

And then play back the same WVC1 video again. A file named c:\dxva.log should get created. If it's full of logging info, then DXVA is being used for WVC1 decoding. If it's empty, DXVA is not being used.

When done, you can either set the reg value to 0 or delete it entirely.

CruNcher
9th July 2006, 14:11
i can see this also

HKCU\Software\Microsoft\Scrunch\WMVideo
DWORD "DXVAPROFILE" = 2 <- what is this for and what else settings are existing ?

here is the dxva.log result from Alan Wake (MPC VMR9 Windowed)
http://www.filefactory.com/?563af5

and i don't have WMP11 installed you don't need to have ;)

Playback in WMP10 works fine (seems to not use VMR but overlay) and for it dxva.log stays empty and 100% cpu usage so definatly no hw acceleration here

zambelli
10th July 2006, 10:03
i can see this also

HKCU\Software\Microsoft\Scrunch\WMVideo
DWORD "DXVAPROFILE" = 2 <- what is this for and what else settings are existing ?
Just another logging mechanism. "2" indicates DXVA profile B being used.

here is the dxva.log result from Alan Wake (MPC VMR9 Windowed)
http://www.filefactory.com/?563af5
and i don't have WMP11 installed you don't need to have ;)
You don't, but does Alan? I don't think this logging method existed in the v10 decoder, so if Alan was able to generate it, I'd imagine he has the v11 decoder (wmvdecod.dll).

Playback in WMP10 works fine (seems to not use VMR but overlay) and for it dxva.log stays empty and 100% cpu usage so definatly no hw acceleration here
DXVA decoding is disabled in WMP10 unless you have the QFE888656 patch installed. I think MCE R2 also includes the patch, if you're using XP MCE.
WMP10 uses overlay unless "High quality mode" is specified in Performance --> Advanced properties. Then VMR-7 in high quality mode (YUV) is used.

CruNcher
10th July 2006, 15:46
ok the Alan Wake trailer worked inside WMP10 with the High Quality mode perfectly 20% less cpu usage but no DXVA
MPC was a tick better 30% less cpu usage with it and VMR7 windowed, but definately all codecs DXVA wont't work in the old VMR7 renderer here on my machine all need VMR9 either windowed or renderless to use DXVA.
i can't find QFE888656 on Microsoft.com what was the kb article for it again ? and you mean this would make DXVA work with VMR7 then ? or do you mean this would make WMP10 use VMR9 as prefered renderer i think the second, you can talk with me a little bit more technical i understand it, anyway if this fix would make VMR9 as the prefered renderer i doubt this would fix those acelleration problems i expirience currently with WVC1 videos, because i can allready set MPC to use VMR9 and i see definately problems with DXVA and WVC1 with it :P also when the picture is displayed for every second frame it gets garbaged in the first 3 rows @ the top see screenshot.

http://www.imageup.de/img20/alanwakenvidiawvc1dxvaproblem0as.png

zambelli
11th July 2006, 00:44
ok the Alan Wake trailer worked inside WMP
I'm such an idiot - I thought Alan Wake was a person, I didn't realize you were talking about a movie. :D
10 with the High Quality mode perfectly 20% less cpu usage but no DXVA
MPC was a tick better 30% less cpu usage with it and VMR7 windowed, but definately all codecs DXVA wont't work in the old VMR7 renderer here on my machine all need VMR9 either windowed or renderless to use DXVA. i can't find QFE888656 on Microsoft.com what was the kb article for it again ? and you mean this would make DXVA work with VMR7 then ? or do you mean this would make WMP10 use VMR9 as prefered renderer i think the second, you can talk with me a little bit more technical i understand it, anyway if this fix would make VMR9 as the prefered renderer i doubt this would fix those acelleration problems i expirience currently with WVC1 videos, because i can allready set MPC to use VMR9 and i see definately problems with DXVA and WVC1 with it :P also when the picture is displayed for every second frame it gets garbaged in the first 3 rows @ the top see screenshot.
Something is not adding up right. But let's start from the beginning...

DXVA support is present in WMP10, but it's not enabled in the player by default due to bugs in A/V pipeline at the time of release. A QFE was issued subsequently that addressed those bugs - QFE 888656 (http://support.microsoft.com/kb/888656), but none of it had anything to do with VMR. All the fixes were in wmp.dll, wmvcore.dll and wmvdmod.dll. The fix enabled DXVA-WMV decoding in WMP and WMF SDK. It didn't really affect DirectShow apps, aside from the bug fixes in WMV Decoder.
VMR makes no difference in DXVA WMV playback. Both VMR-7 and VMR-9 work with DXVA. WMP uses VMR-7 or overlays - never VMR-9.

The part that's puzzling me is that you're getting dxva.log information, yet you're using WMP10. That's theoretically impossible (as the logging mechanism wasn't added until v11), so I have to ask: do you by any chance have WM Format SDK v11 installed on your machine? That would explain a lot of things.

On top of it all, I wasn't aware that Nividia had made their WVC1 decoding support publicly available yet.

CruNcher
11th July 2006, 08:07
ehh nope i don't have the SDK installed only the Windows Media Format 11 runtime that came with WMP11 not the Player my primary Player is MPC it's strange but no ISV's DXVA implementation i saw these days works under VMR7 neither Elecards Mpeg-2 Decoder nor Nvidias PureVideo Mpeg-2 Decoder also not Cyberlinks or Intervideos DXVA work when selecting the VMR7 renderer here on my Nvidia Card. And the most of them Fail with their Advanced Deinterlacing algorithms if not running in VMR9 so no Motion Adaptive Double Framerate Deinterlacing without useing VMR9. But VMR9 is definately showing the input wrong and needs to be adjusted manualy, content is displayed dull in it loses it's vibrance to Bright that's the case why Picard implemented the "Fix VMR9 color range" inside CoreAVC but i think Microsoft should fix this it's not really up to the ISV's todo that but hey it's Microsoft :P.
Now that you tell me that all of those Decoders DXVA should work with VMR7 is strange either you know very less about your own Product here (DXVA) or all the ISV's seem to not like VMR7 and so don't support it and you don't know that yet, another possibility would be that Nvidias Driver maybe doesn't like VMR7. And yes i talked the whole time about Microsoft Studios WVC1 Encode of the Alan Wake Trailer and not a Person geez. You can find that here http://download.remedygames.com/movies/alanwake_720p60_51_15mbps.wmv <- it's a 60p WVC1 Encode by you guys and i just say it doesn't play here with DXVA correct without it's ok but when useing VMR9 it's automaticly trying to use DXVA and accellerate it and then it fails and that for Nvidias Driver dunno about ATI. Slowly im getting realy tired i think i better stop this it's not my Problem i can use H.264 that works as it should (also accelleration for end customers) and is also alot faster then VC-1 dunno but it's Microsofts problem i reported this more i can't thx for listening zambelli.

zambelli
12th July 2006, 09:40
Did you write that in one breath? It sure reads like it. ;) Did you run out of punctuation? :D

ehh nope i don't have the SDK installed only the Windows Media Format 11 runtime that came with WMP11 not the Player my primary Player is MPC
Yes, that's what I meant. That explains how you're seeing c:\dxva.log. I always ask people which WMP version they have because it's typically the same version as the WMF runtime. But not in your case.

it's strange but no ISV's DXVA implementation i saw these days works under VMR7 neither Elecards Mpeg-2 Decoder nor Nvidias PureVideo Mpeg-2 Decoder also not Cyberlinks or Intervideos DXVA work when selecting the VMR7 renderer here on my Nvidia Card. And the most of them Fail with their Advanced Deinterlacing algorithms if not running in VMR9 so no Motion Adaptive Double Framerate Deinterlacing without useing VMR9.
DXVA is a fairly elaborate API - it includes support for decoding, level mixing, postprocessing, framerate conversion, deinterlacing, etc. The IHVs can pick and choose what they want to implement and to which extent. For example, DXVA WMV decoding defines four profile (A,B,C,D) and each level offloads more work on the GPU.

DXVA decoding is implemented in 3 components: decoder, DXVA runtime, and video driver. The MPEG-2 decoders you mention might specifically require VMR-7. But as a general rule, there is nothing in the DXVA architecture that prohibits DXVA from working with VMR-7.

But VMR9 is definately showing the input wrong and needs to be adjusted manualy, content is displayed dull in it loses it's vibrance to Bright that's the case why Picard implemented the "Fix VMR9 color range" inside CoreAVC but i think Microsoft should fix this it's not really up to the ISV's todo that but hey it's Microsoft :P.
I'm not familiar with the issue so you'll have to elaborate on it.

Now that you tell me that all of those Decoders DXVA should work with VMR7 is strange either you know very less about your own Product here (DXVA) or all the ISV's seem to not like VMR7 and so don't support it and you don't know that yet, another possibility would be that Nvidias Driver maybe doesn't like VMR7.
That's not what I said. I said the WMV decoder can use VMR-7 with DXVA. I know this for a fact because I test it on a regular basis via Graphedit. I can't speak for those MPEG-2 decoders - they could have their own requirements.

i just say it doesn't play here with DXVA correct without it's ok but when useing VMR9 it's automaticly trying to use DXVA and accellerate it and then it fails and that for Nvidias Driver dunno about ATI.
ATI drivers don't support WVC1 decoding at the moment. BTW, where did you get your Nvidia drivers? Their website is showing 91.31 as the latest, yet yours are versioned 91.33.

Slowly im getting realy tired i think i better stop this it's not my Problem i can use H.264 that works as it should (also accelleration for end customers) and is also alot faster then VC-1 dunno but it's Microsofts problem i reported this more i can't.
I don't think Nvidia's H.264 acceleration is implemented using DXVA API - i think they're using proprietary interfaces. Don't you need their PureVideo software to decode H.264?

Seems like there are 2 issues here:
1) You can't decode WVC1 using DXVA when VMR-7 is the video renderer.
2) When you use VMR-9, the DXVA decoded video flickers.

For more info on the 1st issue, can you try rendering the WMV file in GraphEdit using the default Video Renderer and tell me if dxva.log contains indication that DXVA is being used?

As for #2, that sounds like it's probably an Nvidia driver bug. Keep in mind that they're still developing WVC1 decoding support so things are not perfect yet. WMV9 decoding has been around for a lot longer (and MPEG-2 even longer) so it's much more stable.

CruNcher
12th July 2006, 21:13
I can see the Video with VMR7 but no DXVA is used there, so CPU is more stressed yeah i got the 91.33 from their nzone Website located here http://www.nzone.com/object/nzone_downloads_rel70betadriver.html <- and yes this indicates allready that it's buggy ;D. Ok i wrote a E-mail to Nvidia about the problem let's wait and see what they say.


But VMR9 is definately showing the input wrong and needs to be adjusted manualy, content is displayed dull in it loses it's vibrance to Bright that's the case why Picard implemented the "Fix VMR9 color range" inside CoreAVC but i think Microsoft should fix this it's not really up to the ISV's todo that but hey it's Microsoft :P.

I'm not familiar with the issue so you'll have to elaborate on it.

you kidding me right ? the problem when you loading a YV12 video into VMR9 and colors get displayed with tv levels instead off PC levels ?

geez you should really restructure Microsoft are you actually knowing what you doing together lol :P

zambelli
13th July 2006, 10:48
I can see the Video with VMR7 but no DXVA is used there, so CPU is more stressed yeah i got the 91.33 from their nzone Website located here http://www.nzone.com/object/nzone_downloads_rel70betadriver.html <- and yes this indicates allready that it's buggy ;D. Ok i wrote a E-mail to Nvidia about the problem let's wait and see what they say.
It's weird how there's no mention of WVC1 decoding support in the release notes. Hmmmm. Did they release it prematurely by mistake?

you kidding me right ? the problem when you loading a YV12 video into VMR9 and colors get displayed with tv levels instead off PC levels ?
Colors? As in chroma? TV/PC levels apply only to luma.
Anyway, I'm not sure this is a bug. Video is expected to decode according to ITU.601 standards. In a Media Center scenario, for example, where the PC is hooked up to a TV or projector, decoding to TV levels is a desired behavior. The levels adjustment can be done on so many levels (codec, color space conversion, renderer) that there's really no "one size fits all" solution for it.

geez you should really restructure Microsoft are you actually knowing what you doing together lol :P
There are about 50 people working on codecs alone. There are probably just as many (if not more) working on pipeline components such as VMR and EVR. One of the things I test is DXVA-WMV decoding, for example, and I actually very rarely interact with people working on renderers.

Wilbert
13th July 2006, 16:47
Anyway, I'm not sure this is a bug. Video is expected to decode according to ITU.601 standards. In a Media Center scenario, for example, where the PC is hooked up to a TV or projector, decoding to TV levels is a desired behavior.
As in 3.5.4 of ITU-R_BT.601-5? Sorry for asking a dumb question, but i'm a bit confused and i know nothing about digital TV. Does a digital TV always expect RGB [16,235]? And if it receives RGB [0,255] then your signal is messed up (ie. too bright)?

Wilbert
4th August 2006, 21:06
@zambelli,

Any comments?

zambelli
4th August 2006, 23:40
@zambelli,
Any comments?
I was always under the impression that digital TV expects RGB [16,235] over digital connections such as DVI and HDMI. This might be a good question to post on AVSForum.

CruNcher
2nd September 2006, 23:58
Still not Fixed with 91.47 WHQL
and my E-mail to Nvidia is also still unanswered

Edit: AHA the new Windows Media 11 Format Runtime from WMP 11 Beta 2 fixed it finaly LOL, so it was a Microsoft Bug ?

Cpu utiliaziation is arround 30-80% now with that 60 fps WVC1

hmm but compared to VMR7 windowed the kernel time is much higher and also the CPU utilization fluctuates more with VMR9 windowed DXVA, not what i hoped to see, definately different (in bad ways) then the PureVideo H.264 accelleration.