OpenAL why is there no group working on it?

Started by
29 comments, last by Krohm 11 years ago

I guess to cut down on a bit of the latency but still allow for GPGPU acceleration, we need to convince AMD/nVidia to start shipping GPUs that have audio connectors on the back, just like they currently have video connectors?

On that note, HDMI actually is an audio connector.... I wonder how the transfer of audio to the GPU for HDMI currently works?

So I just figured out that my nVidia card actually has HDMI (and I was still using DVI because that's what I've always used...) and that there's this mysterious sound driver that you can optionally install with the display driver (which I never did of course, not seeing any reason for that).

Turns out if you plug in a HDMI cable and install that driver, it works just fine indeed. No extra cable, sound comes out of HDMI (actually, that's not very surprising, but... duh me). Don't ask me how it works, but it works really well.

There are no big DSP effects to tweak (or I haven't found them), just volume and balance, and you can select the sample rate (44.1kHz/48kHz). But... sound comes out when it's supposed to (no noticeable lag whatsoever), and quality is excellent.

So my guess would be that the driver probably just does the bare minimum as to qualify as "sound device" to Windows, and uploads the samples via PCIe, and then the display controller just mixes them into HDMI. Or something. From the available features, it doesn't look like there's some hefty GPGPU sound processing going on, anyway.

Advertisement

Not long ago, you had to connect an extra little cable from your motherboard to the GPU to get HDMI sound.

Nowadays, it's transfered by PCIe, but I'm pretty sure it's still the sound chip that produce the sound.

I would expect the GPU itself has very little control over this stream, i think it's just routed through PCIe for convenience.

Not long ago, you had to connect an extra little cable from your motherboard to the GPU to get HDMI sound.

Nowadays, it's transfered by PCIe, but I'm pretty sure it's still the sound chip that produce the sound.
I would expect the GPU itself has very little control over this stream, i think it's just routed through PCIe for convenience.

the sound going over HDMI is digital, so the sound-chip would be in the TV/monitor.

the video card basically presents a sound-device to the OS, so that the OS can send it audio, which is then fed over the HDMI cable along with all the video data.

basically, the HDMI cable is an STP-type cable (shielded twisted pair), with each pair and also the ground/shielding for each pair having a pin.

the data sent is basically as a continuous stream of packets, which may contain pixel data, audio data, or other data (apparently including Ethernet traffic...). video data is apparently sent mostly as raw RGB or YUV (at 24 or 48 bits) and audio uses PCM. apparently, it will mostly send all the video data, and then typically all the audio and other data after the video frame has been sent (in the time between video frames). (apparently the packets are fixed-size, apparently 32 bytes, each with a type-tag and some ECC data, and some payload).

I wonder how the transfer of audio to the GPU for HDMI currently works?

That's a very interesting question! I was thinking about this some time ago. Perhaps it should be possible to have explicit sync points? I'm far more geared towards lowering latency... but going back to original question, considering GPUs have become the real deal when it comes to multimedia processing for PC I'd wish there could be more interaction between graphics and audio.

Previously "Krohm"

This topic is closed to new replies.

Advertisement