6 ms·
Wondering what the technical problems with the ATI drivers were.
by houseabsolute 16y ago
Wondering what the technical problems with the ATI drivers were.
- cookiecaper 16y agoFrom my reading, it seems that the complaint is that ATI doesn't support hardware video decoding properly.
- jbk 16y agoNo, it is doing it fine. The irony is that if you have an Intel SSE4.1 chip, you can use a special trick to work-around this "bug".
- ComputerGuru 16y agoWhere's the "irony" in that? Or did you perhaps mean something else?
- jbk 16y agoWell, those are pretty simple. For many reasons (that are debatable, but maybe this isn't the right place?), VLC can decode on the GPU and then gets the data back from the GPU to filter/restream/reencode to finally display it. Even if this isn't the fastest way, there are good reasons for it (I can explain if needed...) On ATI drivers, the data back path is slow, and you need a special GUID that ATI doesn't want/cannot to communicate. Adobe uses it, we cannot yet. I believe this will be fixed in the future.
- Zev 16y ago(I can explain if needed...) I'd personally be very interested in hearing some details about this, if you have a few moments to write something up (or even paste a few links to some mailing list posts or the like, somewhere that I can do some reading).
- jbk 16y agoWell, yes. First, remember that VLC is not a media player. It is a framework, like GStreamer, QT or DS. It works in the same way, with modules/plug-ins/objects that are loaded when needed. For the matter of GPU/DSP decoding, you have two choices: either you do a codec module abstracted and independent from the rest of the modules or you plug a special codec module to a special renderer module (and violates your clean separation, but well...) The second is faster, of course. But... But, then you cannot control anything: depending on the GPU/DSP vendor, you will have different filters (deinterlacing, noise, gradient...) that you cannot control, you have different color tones, etc... So depending on the GPU/DSP, you will not have the same experience... Also, you cannot use that method for restreaming and converting. Then, you need some hardware specific code, which, of course we want to avoid... And finally, for each 'API' we need a special renderer, and not use the normal ones. Which makes more code to maintain, and VLC's core team is hardly 5 persons.
- Zev 16y agoOuch, it sounds like GPUs are a royal pain to work with. (Also: this little bit of perspective makes what you guys do seem even more awesome). Thanks for the details!
- dandelany 16y agoUm, this is exactly the right place.