NVIDIA Releases New Video API For Linux 176
Ashmash writes "Phoronix is reporting on a new Linux driver nVidia is about to release that brings PureVideo features to Linux. This video API will reportedly be in nVidia's 180 series driver for Linux, Solaris, and *BSD. PureVideo has been around for several nVidia product generations, but it's the first time they're bringing this feature to these non-Windows operating systems to provide an improved multimedia experience. This new API is named VDPAU, and is described as: 'The Video Decode and Presentation API for Unix (VDPAU) provides a complete solution for decoding, post-processing, compositing, and displaying compressed or uncompressed video streams. These video streams may be combined (composited) with bitmap content, to implement OSDs and other application user interfaces.'"
Documentation here (Score:5, Informative)
ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/index.html [nvidia.com]
Form follows code. (Score:3, Interesting)
Fine. Now what programs use this API?
Re:Form follows code. (Score:5, Informative)
Re:Form follows code. (Score:5, Informative)
Re:Form follows code. (Score:4, Informative)
Fine. Now what programs use this API?
mplayer (sort of, it's still pretty rough around the edges):
ftp://download.nvidia.com/XFree86/vdpau/mplayer-vdpau-3076399.tar.bz2 [nvidia.com]
It'll probably take a while before complete, stable support for all of VDPAU's features (like timestamp-based presentation) are fully supported by the common video players.
Re: (Score:2)
Hey, they just released it. Give it time and everything that plays video on Linux will support it.
ATI (Score:2)
I was this close to just building an all AMD/ATI rig in the spring. ATI was opening up their drivers. The OSS drivers were working well, and Nvidia wasn't doing anything. Nvidia addressed their horrible Linux XRender support, and now this. I may just have to stick with Nvidia in the spring.
Re:ATI (Score:5, Informative)
Re: (Score:2)
Perhaps a dumb and semi-unrelated question, but who has the better SLI/Crossfire support in their Linux drivers right now, ATI or Nvidia?
Re:ATI (Score:5, Funny)
I'm guessing ATI has better Crossfire support right now, while Nvidia has better SLI support...
Re:ATI (Score:5, Funny)
Re: (Score:2, Informative)
TRUE 2X SLI performance.... (Score:2)
could only be had back in the days of 3Dfx, where it was really ScanLine Interleave.
Today, you're NEVER getting a full 2X increase, because that type of video splitting/rendering/recombining is no longer used, even though it DID truly offer a 2x performance boost. (1024x768 was accomplished by each card rendering every other line.)
Comment removed (Score:5, Interesting)
Re: (Score:2)
Here is to hoping that Wayland addresses some of these issues.
Re: (Score:3, Insightful)
It is not yet the year of the linux desktop, we have time.
Comment removed (Score:4, Interesting)
Re: (Score:2)
> A clean new implementation of x11 would probably benefit us a lot more than another Y windows, Wayward, Aqua etc
Not really. KDrive was a clean implementation of X which had a few nice improvements. Those improvements were incorporated into Xorg and now there's just no advantage to using kdrive over xorg.
I see no evidence that Xorg would benefit from a rewrite, compared to putting that energy into working on Xorg.
Re: (Score:2)
Re: (Score:2)
Comment removed (Score:4, Interesting)
Re: (Score:2)
Re: (Score:2)
elanthis at phoronix explained how Wayland was never intended for normal desktops running Gnome/KDE:
http://www.phoronix.com/forums/showpost.php?p=51097&postcount=6 [phoronix.com]
It will take something different to replace Xorg.
Re:ATI (Score:5, Interesting)
You might want to read a blog post I wrote about why nVidia rocks when x.org does not. It's likely to give you more reasons to move over to nVidia over ATi.
I don't find your arguments compelling.
For one thing, you assert that "because of vocal powers in the foundation that demand that things should stay compliant to a specification and they should work around the architecture rather than strip out certain pieces and implement them, add proper new features (memory management and API functions to go with it)" -- yet my reading of the Xorg mailing lists suggests that is exactly what is being done with the GEM memory manager and API's [phoronix.com] previously there was the TTM memory manager, but the APIs were not satisfactory, so they ripped it out and started again.
The bulk of your argument seems to be that Nvidia's got a much more complete OpenGL implementation than does anyone else. Nevermind that almost all of it is simply code duped from their MS Windows driver, your argument is really the ages-old "if it works, then who cares if it is closed source" argument we've heard time and time again.
Of course the fallacy of that approach becomes obvious the second it stops working and you are helpless to do anything about it.
That happened to a guy I know, he spent about $600 on a pair of top-end nvidia cards a few years back. All based on nvidia's highly touted support for linux. Except the cards did not work with his IBM T220 [wikipedia.org] monitor. It wasn't anything to do with the ultra-high resolution. It was a trivial bug in the nvidia drivers - if the card could not read an EDID, the drivers assumed the card had a single-link DVI transmitter. A stupid, stupid bug because the actual nvidia chip had the DVI transmitters onboard and they were always dual-link, there was no way for any card in that generation to even be single link, and of course no matter what directives we specified in the config file, the driver "knew better."
He had to go out and spend another ~$150 for two Gefen DVI Detectives [gefen.com] just to enable the nvidia card to see an edid so that the driver would correctly turn on the chip's DVI transmitter.
Nvidia's vaunted customer support? Totally clueless and useless, they completely dropped the ball, just ignoring the issue once they realized it was more than a "did you plug in the power cord" level issue.
And don't think that problem was unique to an odd-ball monitor - the same lack of edid is an issue for anyone using unidirectional fibre DVI extender cables.
So, while it is great for you personally that Nvidia's drivers work perfectly with the hardware you own, I'm pretty sure your tune would change right quick if you had to just bend over and take it due to such a trivial bug, the kind that could easily be fixed with a single line or two of code, if you just had the source.
Re: (Score:2)
...So GEM is still alive!!! I knew it! Atari rocks!!!
Re:ATI (Score:5, Insightful)
Sorry, I don't know of any tech company that has decent support. My own experience with all companies, including AMD and ATi is similar.
Precisely. If the vendor can't fix it, they should not get in the way of you fixing it yourself, or of that smart guy who always posts to your favorite web forum.
Re: (Score:2)
No, the bulk of my argument is the fact that nVidia's driver replaces the bulk of x.org. Because what x.org provides is not good enough.
What about xorg is failing to meet expectations?
Re: (Score:2)
Re: (Score:2)
I found the post in this thread that points to your LJ entry. Are there others that are topical?
If so, can you give a guesstimate as to when they were posted?
Thanks!
Re: (Score:2)
Re: (Score:2)
I just think it's so lame of Nvidia and AMD both to keep supporting their close source drivers. The only reason doing so helps them to sell hardware is because they can artificially limit and control their cards and specific game title performance via the easily-updateable driver. They just aren't willing to lose that source of income quite yet and comp
Re:ATI (Score:5, Informative)
Ash-foxes blog post is close to being a troll.
Of course X does direct rendering. It's called Direct Rendering Interface - DRI. And the new improved DRI2 being worked on now.
His other argument is that Xorg will never be able to have a unified memory manager... which is exactly what TTM and its successor GEM do.
And noone in the Xorg team claims that indirect rendering is as fast as direct rendering.
Companies like NVidia just replace chunks of Xorg without contributing anything back. Whereas its companies like Intel that actually contribute to improving X for everything - pushing a unified memory manager (TTM/GEM) into the kernel etc.
Re: (Score:2, Interesting)
Re: (Score:2)
> It might being worked on, but the current state is that it isn't there and it isn't available right now.
You're honestly saying that Xorg doesn't support DRI? Really?
> Where did I say I talked to the Xorg team?
You state on your 'People in the opensource community claim that there is no real performance penalty because of certain accelerated features, despite the fact 3D applications are just slowed down because they have to use non/semi-accelerated indirect rendering (depends on the driver).'
> Wh
Re: (Score:2)
Re: (Score:2)
Read my journal post, DRI support is extremely limited unless you use nVidia.
Nvidia doesn't even use DRI at all; it has its own replacement for it copied over from the Windows drivers. (This has... interesting security implications.)
Re: (Score:2)
Re: (Score:2)
Secondly, some of the calls from the userland code into the driver are done via the card itself. (The userspace code writes to the card, which generates an interrupt into the kernel code). Thi
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
(a) You claim that only NVidia has direct 3D rendering. Most 3D under X.org has been via direct rendering for as long as X.org exists (and yes, this does support multiple apps using 3D at once). The reason so many people rave about AIGLX so much is because it allows things like Compiz - since the window contents are drawn by the X server, indirect rendering is the easiest way of doing a compositing window manager. The performance im
Re: (Score:2)
Re: (Score:2)
The reason so many people rave about AIGLX so much is because it allows things like Compiz - since the window contents are drawn by the X server, indirect rendering is the easiest way of doing a compositing window manager.
Easiest? I don't know. Fixing x.org instead of having to use workarounds all the time seems easier in the long term to me.
Not really. Did you see how long it took for NVidia to get compositing window managers working reliably under their driver? That's just dealing with one card, and they can do things like break their kernel ABI at will which the open-source developers try and avoid.
You may have not played games under AIGLX, but I have, and when the FPS drops by 30FPS because of indirect rendering, I don't consider that a non-issue.
Yeah, you don't want to run games through AIGLX, but you have to manually do so and I'm not aware of any reason why you'd want to. Generally, unless direct rendering isn't working at all, DRI seems to be used by default even if you're running a co
Re: (Score:2)
Re: (Score:2)
Re: (Score:2)
If I can't figure out where something breaks without the sourcecode, sourcecode is not going to be that helpful to me, is it?
Never discount the value in having source code and debugging symbols for some faulty module handy. ;)
Having said that, I doubt that even 1% of the folks on this site who bring up the debugging-enhancing power of The Source would be able to use it.
And, having said that... having the source available is an absolute *must* for any software project's long term viability. What happens when a mfgr decides that they're no longer going to support $WICKED_SICK_CLOSED_SOURCE_SOFTWARE_PROJECT ? Why, over the long term
This isn't a new nvidia driver (Score:5, Informative)
The summary confused me a little into thinking this was a new nvidia driver. It is in fact new features being added to their closed source driver.
Re: (Score:2, Informative)
Ahh. New gingerbread to get nice children all plump for the oven. The Nvidia binary installer destabilizes the X windows on Linux, because it simply replaces the Mesa libraries without telling your package manager. And it's even worse about uninstalling itself: if you use the wrong Nvidia blob's uninstaller, you blow away your Mesa libraries entirely and it won't let you re-install the newer or different NVidia installer.
Of course, this what I expect from a company too stupid to use a consistent naming sche
Re: (Score:2, Interesting)
Re: (Score:3, Interesting)
It's one thing to have a packaging standard for third-party applications which install in their own directory and require well-known libraries defined in the Linux Standard Base. I agree, there should be a cross-distro standard for installing these programs (and there is: LSB defines a package format, the only problem is getting the third-party vendors to use it). But the Nvidia drivers are not just any old application; they want to overwrite standard system files and otherwise mess around with things. I
Re: (Score:2)
I think a much better solution would be an internal packaging standard, then you wouldn't need so-called "third-party" packages, plus then they wouldn't have the problem of library overwriting, but for now that'd be better than nothing I guess. I'd really prefer it t
Re: (Score:2)
Re: (Score:2)
Indeed however the summary says,
"Phoronix is reporting on a new Linux driver nVidia is about to release"
It's not really a new one, it's the old one just updated.
Release Date (Score:2)
Re: (Score:2)
VDPAU? A new Vulcan emmisary? (Score:2, Offtopic)
I'm glad to hear this news. It will be only a matter of time before others follow suit. Time to dust off the resume.. I think soon being a Linux coder will be a useful item on that list.
Linux has suffered some lag with driver releases, and even manufacturer hostility toward Linux. This is the year that I start a side business based on Linux and support for it. Not simply because of this news, but news like this in general. I'm thoroughly impressed with Ubuntu and other distributions to get done what I want
Re: (Score:2)
Cure for Venereal Disease (Score:2)
VDPAU sounds like some sort of local hawaiian cure for venereal disease
- VD Pau! Fo wen you ala-alas stay too itchy.
Meanwhile, it is interesting that after many years, Nvidia finally starts to support video decode/playback acceleration just days after ATI ships a driver with similar hardware acceleration support. [phoronix.com] Of course neither vendor uses any sort of common standard - although ATI claims their stuff is almost identical to the Direct X Video Acceleration (DXVA) API that MS has enforced on Windows.
Re: (Score:3, Insightful)
Meanwhile, it is interesting that after many years, Nvidia finally starts to support video decode/playback acceleration just days after ATI ships a driver with similar hardware acceleration support. Of course neither vendor uses any sort of common standard - although ATI claims their stuff is almost identical to the Direct X Video Acceleration (DXVA) API that MS has enforced on Windows.
What standard would that be? VA-API that has a few headers and zero implementations? Intel doesn't even follow the DXVA specification [intel.com], and won't publish the interface or support video acceleration on XP. ATI is as you say a DXVA -> XvBA search&replace job, which might be good or just bring plenty DirectX luggage. If nVidia put some job into making a good public video acceleration interface for Linux, it might be the best of the bunch. Their implementation may be closed source but if it works well...
Re: (Score:3, Insightful)
What standard? Well, they could have done it the way the internet was built - with an RFC like approach. Coopetition and all that.
let's just say I can live very well with a 98% open source system.
Yeah, people always say that, until a show-stopper bug comes along in the 2% that's closed and they can't do a thing about it.
Re: (Score:3, Interesting)
Yeah, people always say that, until a show-stopper bug comes along in the 2% that's closed and they can't do a thing about it.
As opposed to the 100% that's closed and not nearly as terrible as you make it out to be? Reality is that most open source bugs I can't do anything with either, for practical values of "can't". I could file a bug report, been there done that and often it falls into the same black hole as closed source software. I could try to dig around the code myself, but just getting all the build requirements and trying to figure out the code base usually takes hours of time I don't want to spend. Bonus points if it's w
Re: (Score:3, Interesting)
usually takes hours of time I don't want to spend.
But at least you have the option of spending that time.
My personal example, from quite awhile ago -- Linux Kernel 2.4, which didn't have native support for AGP 3.0 / AGP 8x. No matter what I did, I couldn't force it back to an older standard, and I wouldn't have wanted to, anyway. Which was all fine -- ATI implemented AGP in their drivers to compensate, but it was broken -- detected my card as AGP2 instead of 3. So AGP didn't work -- I don't remember if this meant no hardware acceleration, or no X at all, b
Re: (Score:2)
Reality is that most open source bugs I can't do anything with either, for practical values of "can't"
Pretty much your entire argument, including your previous posting, boils down to "The freedoms of Free software don't directly benefit myself, so they are useless for everyone."
That's a terribly short-sighted viewpoint and if everyone held it, you would not have the option to run linux in the first place.
Why? (Score:3, Insightful)
Why would anyone use a proprietary video API provided by a closed source driver tied to a particular piece of hardware... on an open source platform? Huh?
Re:Why? (Score:5, Insightful)
Maybe because there isn't a better open source alternative.
Re: (Score:2)
Alternative to what? This is an API that accesses a proprietary feature of a specific video card. Nobody was asking for one. Who would use it and why? I just don't get it.
Now, if nVidia proposed an open standard video playback API, and implemented it in their video driver, and released the source - then I could see Linux devs using it.
Or did I somehow misunderstand what they did?
Re: (Score:2)
Like implementing, oh maybe XVMC (completely) or VAAPI would've been a good start at coming out with an open API that isn't 'yet another poorly supported video API from vendor X'.
Better yet, why not collaborate with all the other big fish in the pond to come out with an API that everyone is satisfied with instead of pissing on everyone requiring yet-another video API.
Re: (Score:2)
This is an API that accesses a proprietary feature of a specific video card. Nobody was asking for one.
Yes, they were. I certainly was.
It sucks to watch HD h.264 video lag, and be forced to use 720p -- even re-encode 1080p videos down to 720p, to help the issue -- knowing that there's a proprietary feature of a specific video card which I happen to own which would solve the whole issue.
Now, if nVidia proposed an open standard video playback API, and implemented it in their video driver, and released the source - then I could see Linux devs using it.
Unless they've somehow patented or restricted the API, I'm not really sure what's stopping their competitors from implementing it.
And it seems inevitable that support for this will find its way into mplayer, gstreamer, maybe e
Re: (Score:3, Informative)
From TFA:
VDPAU is an X extension, and anyone can implement it. It's a competitor to the XvBA extension being developed by AMD, only it exists now, with hardware support, and is derived from an existing technology that has been tested on other OSes.
Re: (Score:3, Interesting)
I struggled for months with ATI and cursed it every few minutes when it would screw up the text in my editor (closed source driver). By the time the open source driver came out I had already dumped the computer for one with an nVidia card because the drivers just work, out of the box. Intel wouldn't recognize the monitor, ATI would constantly screw up, if I could even configure it for the monitor, but
Re: (Score:3, Insightful)
I use whatever works. For me, the nVidia closed source driver works better than any open source driver.
I use it too. But the question wasn't about who will use the driver. The question is who will use the API. APIs are used by developers, and Linux developers don't like closed APIs or closed drivers. So I don't see them being big supporters of this.
Video API inside a single device driver? (Score:2)
So can anyone comment on whether this API is good enough to implement in other video drivers?
Or whether it's worth implementing the API in X, or even as part of Gtk/Qt/yourfavouritetoolkit, which would all seem to be more sensible places to put a video API than inside a single device driver. (â½)
Re: (Score:2)
It's an API into specific hardware features only found on nVidia graphics cards; seems to me nVidia's graphics drivers are the perfect place for it.
Aikon-
Re: (Score:2)
Re: (Score:2)
Recent PowerDVD installs an accelerated Directshow filter which offloads much of the CPU load to the GPU, which I've verified myself, but the bad side is that it replaces FFDShow in most of my pipelines, which I prefer to use simply based on the shear number of tweaks needed to get that picture 'just right'.
Now that pretty much every CPU can decode any type of HD video without needing the GPU for any co-processing, I think that all GPU vendors dropped the ball in trying to move into that fragile niche.
Re: (Score:2)
As someone who wants to build an HTPC based on a low power CPU, I can say that I am definitely interested in offloading hi-def video decoding to the GPU, being able to toss a fanless 8500 into a system with an intel atom or underclocked amd-le cpu, and knowing that 90% of the video decoding will be offloaded to the GPU certainly sets my mind at ease when I'm looking at 1080p streams.
Re: (Score:3)
Re: (Score:3, Informative)
PowerDVD/WinDVD also support Blu-ray (and HD-DVD, not like anyone still cares about that), so yes, the video codecs they install (which are usable system-wide) support VC-1 (WMV9), H.264, 1080p, etc.
PureVideo doesn't actually require the $20 NVIDIA DVD decoder (which I think they've deprecated anyway); the NVIDIA DVD decoder is just for people who want to use MCE, and don't already have an MPEG-2 decoder. PureVideo is just an umbrella name for NVIDIA's video acceleration features (with varying levels of su
Re: (Score:2)
Re: (Score:3, Funny)
For some reason I don't think they're sweating over the loss of a customer who can't even start sentences properly.
Re: (Score:2)
Yeah, the money English scholars spend is worth much more than that monopoly money spent by TheGratefulNet
Re: (Score:2)
Well, chances are the clerk that you buy the video card from has an English degree :)
Re: (Score:3, Funny)
Re: (Score:2)
'start sentences properly'?
really?
that's the best you have?
would you care to comment on the *content* of what I wrote instead of nitpicking on minutia?
with all the bad press the later chipsets are getting (and things like dell putting out a bios 'fix' that basically keeps the fan on ALL THE TIME) - I still maintain that nv chipsets in the 8's and 9's are timebombs waiting to go off. their failure rate is unacceptable and its seems to NOT be limited to just 1 or 2 production runs.
I have an 8-series card and
Re: (Score:2)
Or maybe, just maybe, an attempt to clean up what you write gives a better impression to whomever reads the post. And I'm not saying we all need to appease grammar nazis.
Re:too late, I won't buy nvidia now (Score:5, Funny)
It's grammer. Get it rite.
maybe the 'rite' didn't properly convey my intent (Score:2)
sigh.
Re: (Score:2)
Oh please. Until ATI specs are FULLY released and the open source drivers fully support 3D and are stable, it is pointless to think ATI/AMD are our new ally. Right now the open source drivers ati and radeon support 2D only (however they are 10x more stable than binary ATI drivers, any version).
Re: (Score:2)
In addition, the 8400M and 8600M are vulnerable to heating issues, and I have already lost one motherboard to this. I don't know if ATi's Mobility 3850s are better, but these nVidia chips are bad, and if I'd known this and known if the GMA X3100 had better linux dr
Re: (Score:2)
Re:XVID or DivX (Score:4, Informative)
Re: (Score:2)
It supports MPEG-1, MPEG-2, H.264, and VC-1. No MPEG-4 (aka XVID/DIVX).
ftp://download.nvidia.com/XFree86/vdpau/doxygen/html/group___vdp_decoder.html [nvidia.com]
Re: (Score:2)
Re: (Score:2)
Re: (Score:2, Interesting)
I bet we'd sent him to Gitmo.
Re: (Score:2)
Considering it's an ethical and social issue, I doubt very much that he didn't care. He just knew he couldn't say it and get away with it, I think. It's one of the few disappointing things for me about Jesus's story.
Re:Translation (Score:4, Funny)
No.
Re: (Score:2)
No. But they will suck less.
Depending on what you're doing, they already suck less than the competition.
Re: (Score:2)
So basically, NVidia wrote their own memory manager rather than working with the community. Compared to Intel which is working with the to write a memory manager (TTM) which will benefit everyone.
And somehow NVidia is better than Intel? lol
Re: (Score:2)
Current development efforts for ATI cards and the Nouveau project are going into creating some combination of GEM and TTM code that is actually useful for other hardware. I'm not sure how well this is going.