AMD Releases UVD Engine Source Code 79
An anonymous reader writes "Years of desire by AMD Linux users to have open source video playback support by their graphics driver is now over. AMD has released open-source UVD support for their Linux driver so users can have hardware-accelerated video playback of H.264, VC-1, and MPEG video formats. UVD support on years old graphics cards was delayed because AMD feared open-source support could kill their Digital Rights Management abilities for other platforms."
Re:Yay? (Score:4, Informative)
Re:Yay? (Score:2, Informative)
Well, this is huge for laptop platforms, as the power efficiency of UVD vs. processor decoding is much much better. Regardless, while a modern cpu can decode 1080p fine in general, it will be more power effecient, reduce the load on your system, and generally smoother playback to use UVD.
Someone explain this to me (Score:4, Informative)
So the article links "The code just arrived" to a folder with .bin firmware files and this license:
Did AMD actually release any source as the title suggests? Where is it? Or did they just make using/redistributing their firmware legal?
Nope, no source code. Just binary blobbage. (Score:4, Informative)
linky http://lists.freedesktop.org/archives/dri-devel/2013-April/036766.html [freedesktop.org] leads to
linky http://people.freedesktop.org/~agd5f/radeon_ucode/ [freedesktop.org]
which is a directory full of
A comment on their discussion page is more insightful and likely to be right:
So it looks like that comment is right: everything's hidden in a binary blob and there is no source code released at all at this time.
Re:Someone explain this to me (Score:5, Informative)
Did AMD actually release any source as the title suggests? Where is it? Or did they just make using/redistributing their firmware legal?
There's three parts:
1. Microcode update (not open source, never was)
2. Kernel patches (open source)
3. Mesa patches (open source)
The first post leads to an email, but if you go to thread mode you'll see 10 kernel patches following it and the mesa patches are in the other link in the Phoronix article. This is a real open source driver, as open source as the rest of their driver. I must honestly say I'd given up hope that this would ever get released, but fantastic that it has. This has literally been years in the works, but now that the hurdles have been crossed hopefully this support is here to stay for future generations of cards as well.
Re:Nope, no source code. Just binary blobbage. (Score:5, Informative)
The question is - the driver (the part that Linux runs) is open sourced. It just interfaces with parts that aren't (the firmware).
A modern graphics card is programmable - they run various programs (and you know them for doing stuff like GPGPU and CUDA, and even LLVM). So the firmware files are there to load the hardware decoder blocks onto the GPU.
For AMD cards, the card does the whole video decode chain - you feed it in h.264 or VC-1, and it parses the stream, decodes it and renders it all on the chip. nVidia cards require CPU assistance - they do the IDCTs and YUV transforms and other acceleration, but not the entire stream on card.
So they open-sourced the part your CPU runs, while the GPU part is still a binary blob that the driver loads onto the GPU so it can start feeding it the encoded stream and have the GPU decode and display it.
There's not much else to it - they could open source the firmware, but that's often highly proprietary and may contain licensed code from elsewhere. Plus, there may be a bunch of other technologies involved (i.e. the compiler) that they can't open-source. And most people won't have use for that code anyhow - it's firmware. It's just like the firmware that runs your WiFi card, your NIC, etc. - they often make the interface public and leave the rest of it proprietary.
Re:Nope, no source code. Just binary blobbage. (Score:4, Informative)
Nope, no source code. Just binary blobbage.
Then what the hell is all this:
http://lists.freedesktop.org/archives/mesa-dev/2013-April/037049.html
Re:Yay? (Score:5, Informative)
Re:Silly AMD (Score:2, Informative)
Uh, no. For example, AMD's compiler is open source (a fork of GCC, actually). Intel's is proprietary, and also used to screw over all non-Intel CPUs by deliberately using inefficient codepaths.
Now, Intel is hardly as bad as Nvidia with regards to open source, but they're still jerks.