PDA

View Full Version : NVidia decodes H.264 in Hardware


Jawed
07-Jan-2006, 12:22
http://www.bit-tech.net/news/2006/01/07/nvidia_decode_h264/

GeForce 6 and 7 GPUs all have a video engine built into them. The engine, powered by the PureVideo software, will get an upgrade in ForceWare 85 that will enable the H.264 decoding. Most GPUs from the 6600GT and upwards will be able to handle full bitrate, 1080p content, according to Nvidia.

Jawed

Jawed
07-Jan-2006, 12:27
http://www.anandtech.com/tradeshows/showdoc.aspx?i=2665&p=2

Jawed

Geo
07-Jan-2006, 15:06
Still a few months behind ATI, but it'll be interesting to see if Godfrey Cheng mellows out the trash-talking on the point now (something about "putting it on a PowerPoint presentation doesn't count."). :lol:

Edit: Ahh. . .missed the 6600GT ref to 1080. Given that X1600 is currently only certified by ATI to 720. . .

trinibwoy
07-Jan-2006, 15:15
Is there even going to be widespread 1080 content early in the HD revolution? Seems like most hardware/media is on the 720 bandwagon.

Jawed
07-Jan-2006, 15:21
Yes, it makes ATI look particularly silly.

Still, we gotta see if it pans out for real.

The OpenMAX IL story doesn't seem to have gotten much attention, either:

http://www.dailytech.com/article.aspx?newsid=178

This sounds to me like it's the "wrapper" tech within which NVidia has implemented the H.264 decoding.

Or at least that the two are strongly related.

Jawed

Jawed
07-Jan-2006, 15:22
Is there even going to be widespread 1080 content early in the HD revolution? Seems like most hardware/media is on the 720 bandwagon.
I dunno - Blu Ray appears to be being marketed on the basis of 1080p - but what that amounts to is anyone's guess.

Jawed

JBark
07-Jan-2006, 16:13
Any ideas if the "broken" 6800xx AGP cards will support this? I really want to upgrade and use my 6800GT for a HTPC, but without WMV9 and H.264 support, I may just have to get a different card.

Guden Oden
07-Jan-2006, 17:11
Yes, it makes ATI look particularly silly.
How?

I'll believe NV has implemented this tech, when their MPEG2/WMV9 offloading tech starts working the way it's intended.

Besides, from what I've read, it requires MORE purchasing of shit that isn't included with an already very expensive video card, namely a DVD movie player program. No WMP10 support (or any other media player) it seems!

Kanyamagufa
07-Jan-2006, 17:23
How?

I'll believe NV has implemented this tech, when their MPEG2/WMV9 offloading tech starts working the way it's intended.

Besides, from what I've read, it requires MORE purchasing of shit that isn't included with an already very expensive video card, namely a DVD movie player program. No WMP10 support (or any other media player) it seems!

It's another marketing ploy. Just like nVidia touted SM 3.0, now they can go and pull the same stunt with 1080p support. It's almost the exact same arguement as with SM 3.0 support. It didn't matter that there weren't any games that supported it, as long as nVidia did and ATI didn't. It's stupid but so is the average consumer.

Dave Baumann
07-Jan-2006, 17:30
NVIDIA's PureVideo is a programmable engine and it was always on the cards that they were going to accelerate H.264 - they mentioned this back at the G70 Editors Days. The question is how many blocks are they offloading, hence does it have a similar CPU reduction.

Geo
08-Jan-2006, 05:21
Okay, why can't I prove for myself that h.264 is some great ogre of a cpu-eating codec?

I go to apple's hd site, and play this video in 720p: http://www.apple.com/quicktime/guide/hd/bbc-andes.html

It looks just dandy in the free QT7, and my AMD X2 ticks along in the 22-26% range. This is before I just downloaded the ati trial of the cyberlink codec, which made no difference when I went back and did it again --presumably because QT7 uses its own codec instead.

Unfortunately, the Apple site doesn't allow you with the free QT player to save the file to your hd and then play it in whatever player you'd like. Are there other sites where I can download h.264 content?

And why isn't it bringing my poor cowering CPUs to their knees?

Moloch
08-Jan-2006, 08:23
Okay, why can't I prove for myself that h.264 is some great ogre of a cpu-eating codec?

I go to apple's hd site, and play this video in 720p: http://www.apple.com/quicktime/guide/hd/bbc-andes.html

It looks just dandy in the free QT7, and my AMD X2 ticks along in the 22-26% range. This is before I just downloaded the ati trial of the cyberlink codec, which made no difference when I went back and did it again --presumably because QT7 uses its own codec instead.

Unfortunately, the Apple site doesn't allow you with the free QT player to save the file to your hd and then play it in whatever player you'd like. Are there other sites where I can download h.264 content?

And why isn't it bringing my poor cowering CPUs to their knees?
Are you being sarcastic?
You have an expensive dual core CPU...
My 2500+ stuggles just playing 720P H264 quicktime movies.
Interestingly it can play 720P wmv-hds without any hardware accel from my 6600GT.

Back to topic, so why can't ati's 1600 and lower series assist decoding 1080P while nvidis's can?

inefficient
08-Jan-2006, 08:27
Okay, why can't I prove for myself that h.264 is some great ogre of a cpu-eating codec?

I go to apple's hd site, and play this video in 720p: http://www.apple.com/quicktime/guide/hd/bbc-andes.html

It looks just dandy in the free QT7, and my AMD X2 ticks along in the 22-26% range. This is before I just downloaded the ati trial of the cyberlink codec, which made no difference when I went back and did it again --presumably because QT7 uses its own codec instead.

Unfortunately, the Apple site doesn't allow you with the free QT player to save the file to your hd and then play it in whatever player you'd like. Are there other sites where I can download h.264 content?

And why isn't it bringing my poor cowering CPUs to their knees?

Try 1080p content. Like this http://www.apple.com/trailers/fox/x3/

BTW there is a funny bug I just found in the free QT7 player that lets you save files to your disk.

If you open the file from the website, then check View->Loop then close the player - it will ask you if you want to save the file because it thinks you made a change to it.

Try it. I'm using v7.0.2 btw

Zaphod
08-Jan-2006, 10:41
Are you being sarcastic?
You have an expensive dual core CPU...
My 2500+ stuggles just playing 720P H264 quicktime movies.
Interestingly it can play 720P wmv-hds without any hardware accel from my 6600GT.Same here on a 3200+. My Turion MT-34 (Xpress 200) notebook seems to do fine, though. Strangely enough (or not) other 720P MPEG4 video work just fine through FFDSHOW on the desktop with plenty CPU to spare (vanilla 6800). Its just anything QT-HD that play like crap on the XP. Heavy SSE2 optimizations, perhaps?

Moloch
08-Jan-2006, 11:10
Same here on a 3200+. My Turion MT-34 (Xpress 200) notebook seems to do fine, though. Strangely enough (or not) other 720P MPEG4 video work just fine through FFDSHOW on the desktop with plenty CPU to spare (vanilla 6800). Its just anything QT-HD that play like crap on the XP. Heavy SSE2 optimizations, perhaps?
I think apple needs to work on their PC decoder imo and/or H264 takes even more to decode than wmv-hd.

max-pain
08-Jan-2006, 12:39
Today the fastest H.264 (MPEG-4 AVC) decoder is CoreAVC.
http://picard.exceed.hu/tcpmp/test/

Just extract the tcpmp.win32.0.71g.zip and the avc.win32.0.71g.zip files to the same folder and use the included player.

There is also a DirectShow decoder filter of CoraAVC:
http://coreavc.corecodec.org/CoreAVC20060104.7z

max-pain
08-Jan-2006, 12:50
Unfortunately, the Apple site doesn't allow you with the free QT player to save the file to your hd and then play it in whatever player you'd like.

Just copy the link of the MOV file from the HTML source and put a "h" before the 480p/720p/1080p.

Like this:
Link in the HTML source:
http://movies.apple.com/movies/fox/x-men_3/x-men_3-pre_teaser_1080p.mov
Link to the MOV file:
http://movies.apple.com/movies/fox/x-men_3/x-men_3-pre_teaser_h1080p.mov

Geo
08-Jan-2006, 13:26
Are you being sarcastic?
You have an expensive dual core CPU...
My 2500+ stuggles just playing 720P H264 quicktime movies.
Interestingly it can play 720P wmv-hds without any hardware accel from my 6600GT.

Back to topic, so why can't ati's 1600 and lower series assist decoding 1080P while nvidis's can?

No, I wasn't. I was under the impression that even the fastest cpus were supposed to struggle with this thing. And by struggle, I mean peg the cpu usage and still drop frames. Even my previous two year old p4 HT was doing it with no dropped frames. Edit: I'm thinking this is incorrect now --that what I was doing on that P4 was 1080p, but not h.264. They were .wmv files.

Hopefully ATI will get X1600 up to snuff with driver tweaks. I believe some informal testing has shown it capable of doing 1080p --but they haven't certified it.

Geo
08-Jan-2006, 13:31
Just copy the link of the MOV file from the HTML source and put a "h" before the 480p/720p/1080p.


Ah ha! Thank you. . .:smile:

chavvdarrr
08-Jan-2006, 14:21
why are we discussing ati and nvidia? Afaik both solutions will be available only for additional sum, no ?

Geo
08-Jan-2006, 14:39
why are we discussing ati and nvidia? Afaik both solutions will be available only for additional sum, no ?

"Only"? Probably not. Certainly early adopters for ATI have to shell out if they want it. It isn't clear to me the requirements on the NV side. Will the Forceware update enable this for previous owners of PureVideo, whether they bought it or received it bundled with their card?

mrcorbo
08-Jan-2006, 16:35
"Only"? Probably not. Certainly early adopters for ATI have to shell out if they want it. It isn't clear to me the requirements on the NV side. Will the Forceware update enable this for previous owners of PureVideo, whether they bought it or received it bundled with their card?

Just the capability to accelerate H.264 decode is free. You still need to purchase a decoder that is compatible with it. Like the referenced Intervideo, Cyberlink, and Nero packages. One can only hope that NVidia someday expose their VPP API so open-source developers can utilize it to come up with truly free solutions.

And as for where this technology is useful, think notebooks. Lowered CPU usage = increased battery life.

Jawed
08-Jan-2006, 16:39
One can only hope that NVidia someday expose their VPP API so open-source developers can utilize it to come up with truly free solutions.
I believe this is what OpenMAX IL is all about - whatever those letters actually stand for.

http://www.beyond3d.com/forum/showpost.php?p=667764&postcount=5

Jawed

Moloch
08-Jan-2006, 19:44
No, I wasn't. I was under the impression that even the fastest cpus were supposed to struggle with this thing. And by struggle, I mean peg the cpu usage and still drop frames. Even my previous two year old p4 HT was doing it with no dropped frames. Edit: I'm thinking this is incorrect now --that what I was doing on that P4 was 1080p, but not h.264. They were .wmv files.

Hopefully ATI will get X1600 up to snuff with driver tweaks. I believe some informal testing has shown it capable of doing 1080p --but they haven't certified it.
Well if my cpu alone can decode 720P wmv-hd. what's so much harder about decoding H264?

dskneo
08-Jan-2006, 21:12
Well if my cpu alone can decode 720P wmv-hd. what's so much harder about decoding H264?

it is...

my 2600mhz decodes wmv-hd 1080p no problem with about 40% cpu...
a 1080p h264 its like 15/20fps....

dskneo
08-Jan-2006, 21:19
Well if my cpu alone can decode 720P wmv-hd. what's so much harder about decoding H264?

it is...

my 2600mhz A64 (3000+ oced) decodes wmv-hd 1080p no problem with about 40% cpu...
a 1080p h264 its like /20fps.... just 4fps to be perfect...


edit: with the player/codec max-pain posted, its fluid :) I can officialy see h264 1080p movies in my Pc with quality :) with only 55% of cpu time

edit 2: well, i guess its the codecs fault... My laptop dothan 2.0ghz also runs it perfect now..

i guess we dont need a powerfull cpu afterall. Just a good player with good codecs

Moloch
08-Jan-2006, 21:31
it is...

my 2600mhz A64 (3000+ oced) decodes wmv-hd 1080p no problem with about 40% cpu...
a 1080p h264 its like /20fps.... just 4fps to be perfect...


edit: with the player/codec max-pain posted, its fluid :) I can officialy see h264 1080p movies in my Pc with quality :) with only 55% of cpu time

edit 2: well, i guess its the codecs fault... My laptop dothan 2.0ghz also runs it perfect now..

i guess we dont need a powerfull cpu afterall. Just a good player with good codecs
Ya I'm wondering what's so much harder about the codec that mac ******s like to spout off about since looking at trailers of wmv-hd and h264 they both appear nearly perfect block wise.

Geo
08-Jan-2006, 23:45
And yet the screenshots from the article upstream show an Intel 830 firewalled at 100%. It's a bit curious, like a fact or two is missing in putting this puzzle together.

ANova
09-Jan-2006, 01:21
The h.264 codec used in Quicktime for windows is not very well optimized. There are others that are much better.

Mariner
09-Jan-2006, 11:20
And as for where this technology is useful, think notebooks. Lowered CPU usage = increased battery life.

Assuming, of course that the CPU uses more power than the GPU! :wink:

satein
11-Jan-2006, 19:45
After reading what was posted on bit-tech here (http://www.bit-tech.net/news/2006/01/07/nvidia_decode_h264/)
The GeForce video engine GeForce 6 and 7 GPUs all have a video engine built into them. The engine, powered by the PureVideo software, will get an upgrade in ForceWare 85 that will enable the H.264 decoding. Most GPUs from the 6600GT and upwards will be able to handle full bitrate, 1080p content, according to NVIDIA.

The quality of the acceleration depends directly on the speed of the GPU. At 300MHz, the acceleration is going to be minimal. As you scale on up towards 500MHz GPU clock speed, acceleration gets to the point where less than 50% CPU is being used to deliver full speed playback.
I start having a question if the acceleration depends directly on the GPU's speed, may it be possible that the optimization not doing full decoding frame as the way NV used to optimized 3D game speed? I mean like some part or detail may be left over for the sake of FPS smoothness of the video.

trinibwoy
11-Jan-2006, 21:37
After reading what was posted on bit-tech here (http://www.bit-tech.net/news/2006/01/07/nvidia_decode_h264/)

I start having a question if the acceleration depends directly on the GPU's speed, may it be possible that the optimization not doing full decoding frame as the way NV used to optimized 3D game speed? I mean like some part or detail may be left over for the sake of FPS smoothness of the video.

That's funny, you know the same applies to ATi right, that the acceleration depends driectly on the class of GPU. But now the witch hunt will start for Nvidia "cheating" in video acceleration "benchmarks". :lol:

satein
12-Jan-2006, 21:11
That's funny, you know the same applies to ATi right, that the acceleration depends driectly on the class of GPU. But now the witch hunt will start for Nvidia "cheating" in video acceleration "benchmarks". :lol:
Yes, I agree on some of that, but if we look into what were recommended on each ATi card... it's different decode resolution on each series, not that ATi recommended that all R5xx will play 1080p. So, this would be a big different comparison to NV, if NV promised to deliver H.264 1080p video decoder on 6600GT or even lower. And yes, what kind of optimization will be used then since we never knew about it. And I didn't mean to say NV do "cheating" in Video acceleration benchmarks, but I do say what if NV did on its video acceleration since people nowaday seem to accept that "an old-day cheating" is "a good optimization" now :razz: .

trinibwoy
12-Jan-2006, 21:45
So, this would be a big different comparison to NV, if NV promised to deliver H.264 1080p video decoder on 6600GT or even lower.

I'm not entirely sure how PureVideo works but I don't think its performance is as closely aligned with pixel shader performance as is Avivo.

Bouncing Zabaglione Bros.
12-Jan-2006, 21:51
I'm not entirely sure how PureVideo works but I don't think its performance is as closely aligned with pixel shader performance as is Avivo.
Maybe that's one of the reasons why ATI is going for lots of shader power in R580? Might be especially useful when ATI shift their transcoding software into hardware.

If Nvidia has dedicated transistors to Purevideo, they won't need that pixel power for video, whereas ATI's approach can use the pixel shaders for Avivo without needing so much in the way of dedicated transistors.

DemoCoder
12-Jan-2006, 23:25
Yeah, but some features of the H.264 pipeline don't implement well as pixel shaders. That's why presumably, NVidia's scalar VP exists.

satein
13-Jan-2006, 09:44
If Nvidia has dedicated transistors to Purevideo, they won't need that pixel power for video, whereas ATI's approach can use the pixel shaders for Avivo without needing so much in the way of dedicated transistors.
But if Nvidia has dedicated transistors to Purevideo, the core would be bigger than this and it should cost more for a whole series. Also, I don't really sure that the hardware acceleration designed for MPEG2 can be suitable for H.264 decoding. Because if is can be suitable, most hardware that can run DVD smoothly should not have any problem playing 1080p H.264.

Geo
13-Jan-2006, 13:31
Also, I don't really sure that the hardware acceleration designed for MPEG2 can be suitable for H.264 decoding. Because if is can be suitable, most hardware that can run DVD smoothly should not have any problem playing 1080p H.264.

Perhaps you could put this down to the programmable nature of PV vs fixed function?

satein
13-Jan-2006, 13:39
Perhaps you could put this down to the programmable nature of PV vs fixed function?
Do you mean that it functions like FPGA? I can not say I completely understand what programmable chip thing, but at least I knew some about it :smile:. AFAKI, my friend who works on FPGA programming and chip told me that he can emulate a whole CPU on FPGA only if we don't care how slow it will be. So that why I am thinking that it might be not suitable.

Chalnoth
13-Jan-2006, 17:54
Because if is can be suitable, most hardware that can run DVD smoothly should not have any problem playing 1080p H.264.
Dude, do you have any idea how much more processing and bandwidth intensive 1080p H.264 is than normal DVD?

satein
13-Jan-2006, 20:11
Dude, do you have any idea how much more processing and bandwidth intensive 1080p H.264 is than normal DVD?
I realized that, thank you, that was why I asked it and believe it might not be suitable for 6600 hardware on running 1080p :smile:, (thinking of it might even run some game on 1600x1200 smoothly then). And if Nvidia claims that it can... it would be any kind of unknow optimization... in my believe refered to trinibwoy replied to me:razz: .
That's funny, you know the same applies to ATi right, that the acceleration depends driectly on the class of GPU. But now the witch hunt will start for Nvidia "cheating" in video acceleration "benchmarks".
Also, as ChrisRay posted explanation on Rage3d that Nvidia purevideo uses pixel shader to do de-interfacing[ChrisRay, Rage3d (http://www.rage3d.com/board/showpost.php?p=1334114595&postcount=13)].... which is one of the more more expensive effects used in decoding [ChrisRay, Rage3d (http://www.rage3d.com/board/showpost.php?p=1334114595&postcount=15)]. I do really not sure that 6600 and 6200 will be up to the task of 1080p decoding.

mrcorbo
14-Jan-2006, 18:51
I realized that, thank you, that was why I asked it and believe it might not be suitable for 6600 hardware on running 1080p :smile:, (thinking of it might even run some game on 1600x1200 smoothly then). And if Nvidia claims that it can... it would be any kind of unknow optimization... in my believe refered to trinibwoy replied to me:razz: .

Also, as ChrisRay posted explanation on Rage3d that Nvidia purevideo uses pixel shader to do de-interfacing[ChrisRay, Rage3d (http://www.rage3d.com/board/showpost.php?p=1334114595&postcount=13)].... which is one of the more more expensive effects used in decoding [ChrisRay, Rage3d (http://www.rage3d.com/board/showpost.php?p=1334114595&postcount=15)]. I do really not sure that 6600 and 6200 will be up to the task of 1080p decoding.

Think you are the victim of some sloppy terminology in your referenced post. PureVideo absolutely does NOT run on the pixel shaders and instead runs on dedicated silicon NVidia calls the "Video Processor". See Dave's excellent (as usual) explanation here. (http://www.beyond3d.com/previews/nvidia/nv40/index.php?p=13)



A Quote:

While ATI have been mapping some of their video processing over the Shader Core for some time NVIDIA have decided not to do this as they feel instructions required for video processing do not lend themselves well to the instruction set in the pixel shader pipeline; thus a dedicated unit may be more optimal for this type of work. When running video processing though the shaders this means the 3D core is active and consuming power as well, which may not be desirable in all situations, especially where mobile devices are concerned - the NV4x VP is a smaller unit dedicated to video processing so it should require less power for video processing than utilising the shader core. This is not to say, however, that NVIDIA won't utilise the shader core in conjunction with the VP in some instance, should they choose to do so.

As with most processors, the performance, and hence capabilities, of a unit such as this will be heavily dependant on clock speed. The NV4x line will span numerous parts and numerous clock speeds, yet the VP engines clock can operate at a different frequency from the rest of the chip, which may mean that the VP in the slower NV4x models could have the same performance as the high performance NV4x parts.

gunblade
15-Jan-2006, 22:17
Well, it seems like there is yet another advantage besides SM3 for 6x00s user compared to x8x0 users.

If Ati utilize shader core to do decode, I wonder why can't they support x8x0 series beside the obvious marketing reason. Maybe it is not worth the effort to support an outdated core, which may directly compete with the new X1600 series.

Dave Baumann
15-Jan-2006, 23:46
I think you will probably find that both do utilise pixel shaders for some elements of the video processing to some degree or another. However some blocks reside in fixed function hardware on ATI's chips (including elements of H.264 processing) while NVIDIA has the programmable Pure Video to perform similar functions - it is a giveaway that some processing block for H.264 are using shaders with NVIDIA by virtue of the fact that full res is only accelerated down to 6600.

Geo
16-Jan-2006, 00:27
Are we assuming that 6800GT/Ultra AGP's problems re HD decoding are going to apply to h.264 as well? (No, MuFu, you can't have a refund! :razz: )

Chalnoth
16-Jan-2006, 01:20
Are we assuming that 6800GT/Ultra AGP's problems re HD decoding are going to apply to h.264 as well? (No, MuFu, you can't have a refund! :razz: )
Yes. There was a hardware bug in the decoder unit.

mrcorbo
16-Jan-2006, 04:24
I think you will probably find that both do utilise pixel shaders for some elements of the video processing to some degree or another. However some blocks reside in fixed function hardware on ATI's chips (including elements of H.264 processing) while NVIDIA has the programmable Pure Video to perform similar functions - it is a giveaway that some processing block for H.264 are using shaders with NVIDIA by virtue of the fact that full res is only accelerated down to 6600.

That last bit seems to be contradicted by the case of the 6150 integrated chipset's broader feature set while only featuring 2 pixel pipelines vs the 4 pipe 6200 TC 128MB part. Doesn't the 6200 have better pixel shader performance than the 6150? And if PureVideo performace is dependant on PS performance shouldn't then the 6200 have the better PureVideo feature set?

Jogi
16-Jan-2006, 07:32
Okay, now some lame question, does these future ForceWare 85 drivers accelerate xvid/divx videos? All I have seen are:

"The new version of PureVideo will also hardware accelerate VC1, the codec powering Microsoft's WMV HD"

"In order to take advantage of the H.264 decode acceleration you will need two things: 1) Compliant InterVideo WinDVD, CyberLink PowerDVD or Nero software, and 2) a NVIDIA driver enabling the support."

satein
16-Jan-2006, 20:10
I think you will probably find that both do utilise pixel shaders for some elements of the video processing to some degree or another. However some blocks reside in fixed function hardware on ATI's chips (including elements of H.264 processing) while NVIDIA has the programmable Pure Video to perform similar functions - it is a giveaway that some processing block for H.264 are using shaders with NVIDIA by virtue of the fact that full res is only accelerated down to 6600.
Thank you for clearly explaination. If that is ture for NV Pure video, I would say it's great and impressive for NV to be able to design 6600 to do H.264 1080p decoding better than my Dothan 2.1GHz with Mobility 9600 (64MB) :cool: . My laptop can play HD-WMV 1080p at almost full cpu ultilization during the play, but a bit jerk on playing QT HD-MOV 1080p.