Live data from Hacker News

Vulkan video extensions for accelerated H.264 and H.265 encode

khronos.org

51–60 of 110 posts

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#51
post #39

Earlier quoted context omitted.

> Firefox still has no support for hardware video decode on Linux. That's not true at all. See: https://www.omgubuntu.co.uk/2023/07/firefox-115-intel-gpu-vi... https://www.phoronix.com/news/Mozilla-Firefox-115 https://www.omglinux.com/firefox-hardware-acceleration-raspb...

Whilst Firefox may support hardware video decoding, Mesa since March 2022 disables patent encumbered codecs by default[1], and distributions such as Fedora and OpenSuse do not explicitly enable these patent encumbered codecs to avoid possible legal problems. Even Gentoo (built from source code by the user) requires the user to explicitly enable a USE flag (proprietary-codes) to use patent encumbered codecs.[2] The th…

I use the flatpak version of Firefox because my Linux machine is an immutable OS.

Hardware video decode is working for FF.

Not working for Chrome though, sadly.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#52
post #27
post #9

Earlier quoted context omitted.

VAAPI is also using the GPU. The fixed-function video decoders are on the GPUs, not the CPU. That just happens to be using the iGPU on Intel so you don't need a discreet GPU necessarily, but this is also missing if you have a CPU-only sku like the -f suffix parts The only difference is the vulkan spec is _in theory_ cross-platform. However, since MacOS doesn't support Vulkan and MoltenVK doesn't implement this extens…

Huh, I stand corrected. I always figured they stuffed it in its own little bit of silicon. Thanks for clearing it up!

Intel does do this, they call it Quick Sync Video. There's support for it in vaapi. AV1 is only if you have a Gen12 iGPU or newer, or Arc.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#53
post #8
post #6

Earlier quoted context omitted.

Why would it be a better option than VAAPI? Decoding h264/h265 in fixed (CPU) hardware is much more efficient than on the GPU. Don’t get me wrong, its still miles and miles better than software decode.

Do CPUs have fixed video decoders? I thought those were only included in GPUs, including iGPUs.

Yes, every Intel consumer CPU has included a hardware video block since Haswell, called Quick Sync Video.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#54
post #44

Earlier quoted context omitted.

> One vendor specific API, not "various OS' native APIs". Incorrect. Firefox uses Windows Media Foundation, which is cross-vendor, on Windows. It uses MediaCodec on Android which is again cross-vendor. Presumably it uses whatever iOS' equivalent is as well. It only uses VA-API on a single OS, Linux, and that's probably more a reflection on the media qualities (or lack thereof) of Linux as a whole. Maybe Vulkan video…

I'm always annoyed how any Linux media player or encoder needs to bring its own entire media operating system, down to each individual nut and bolt. On Windows there's Windows Media Foundation and DirectShow that centrally manage everything and also support the "individual nut and bolt" approach. Android has its own central thing (MediaCodec?) that must be used. MacOS and iOS presumably have their own central manager…

Yeah on UNIX side, NeXTSTEP, Irix, Solaris had their own thing, as graphical workstation UNIXes, and were great.

Ideally that kind of thing would be part of GNOME, or KDE, but then there are those that rather keep using twm like experience, making GNU/Linux really only good for headless experiences, at least the UNIX/POSIX part is always there.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#55
post #45
post #44

Earlier quoted context omitted.

I'm always annoyed how any Linux media player or encoder needs to bring its own entire media operating system, down to each individual nut and bolt. On Windows there's Windows Media Foundation and DirectShow that centrally manage everything and also support the "individual nut and bolt" approach. Android has its own central thing (MediaCodec?) that must be used. MacOS and iOS presumably have their own central manager…

You don't need to implement every nut and bolt in the application. Lot's of useful things can do the heavy lifting (Pipewire, ffmpeg, libplacebo, Mesa and so on). Linux isn't after calling it all using some uniform "DirectFoo" naming scheme, but tools are there. Comparison is also invalid. Linux as a whole (not the kernel but OS experience) isn't controlled by some Big Brother who decides what and how it's done singl…

Hence why it will never be embraced by desktop application developers, and Electron it is.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#56
post #55
post #45

Earlier quoted context omitted.

You don't need to implement every nut and bolt in the application. Lot's of useful things can do the heavy lifting (Pipewire, ffmpeg, libplacebo, Mesa and so on). Linux isn't after calling it all using some uniform "DirectFoo" naming scheme, but tools are there. Comparison is also invalid. Linux as a whole (not the kernel but OS experience) isn't controlled by some Big Brother who decides what and how it's done singl…

Hence why it will never be embraced by desktop application developers, and Electron it is.

Yeah, keep complaining about everything not being proprietary enough, while everyone who needs just makes it work (OBS, mpv, etc.).

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#57
post #56
post #55

Earlier quoted context omitted.

Hence why it will never be embraced by desktop application developers, and Electron it is.

Yeah, keep complaining about everything not being proprietary enough, while everyone who needs just makes it work (OBS, mpv, etc.).

Those 2% will appreciate their efforts.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#58
post #57
post #56

Earlier quoted context omitted.

Yeah, keep complaining about everything not being proprietary enough, while everyone who needs just makes it work (OBS, mpv, etc.).

Those 2% will appreciate their efforts.

Those who use it appreciate their efforts. You aren't using it, why are you even complaining especially with complete nonsense comments. Anti Linux shilling should be getting old.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#59
post #48

Earlier quoted context omitted.

> One vendor specific API, not "various OS' native APIs". Incorrect. Firefox uses Windows Media Foundation, which is cross-vendor, on Windows. It uses MediaCodec on Android which is again cross-vendor. Presumably it uses whatever iOS' equivalent is as well. It only uses VA-API on a single OS, Linux, and that's probably more a reflection on the media qualities (or lack thereof) of Linux as a whole. Maybe Vulkan video…

What is "incorrect"? The full sentence that you conveniently chose to cut in the middle before quoting (apparently to fit into some pessimistic forecast about the significance of Linux desktop) reads > Firefox currently supports hardware video decoding with Intel's vendor specific VA-API only on Linux , which is not supported by NVIDIA. (emphasis added) You further wrote: > Firefox uses Windows Media Foundation, whic…

> The full sentence that you conveniently chose to cut in the middle before quoting (apparently to fit into some pessimistic forecast about the significance of Linux desktop) reads

What are you talking about? They didn't quote that sentence at all, and didn't cut in the middle of the sentence they quoted.

> And? None of those APIs are cross-platform.

Your original objection, the thing that got quoted, was about whether things are cross-vendor. That question is completely unrelated to whether things are cross-platform.

Re: Vulkan video extensions for accelerated H.264 and H.265 encode

#60
post #7
post #4

Earlier quoted context omitted.

On Windows Vulkan video would work. But not on macOS (that mpv thread mentions it). On Linux it should be a better option than VAAPI once drivers will support it. Since Firefox is using ffmpeg anyway, it probably shouldn't be too hard to make it an option.

Beware on Windows, out-of-the-box Microsoft will ship e.g. nvidia drivers that have DirectX 12, but not Vulkan. This can lead to confusing user situations ('DirectX 12 games work fine.. but not Vulkan') and probably means DXVA would be a better choice if targeting Windows

> nvidia drivers that have DirectX 12, but not Vulkan

not a thing. at worst you get a situation where the ICD loader isn't installed

Post reply on HN