On Wednesday, February 27, 2019 4:48:04 PM CET Neven Sajko via arch-general wrote:
I am designing a digital microphone that should send PCM (LPCM) data to a PC, and I am new to electronics.
Sounds like a standard thing. I'm not aware of your restrictions but I would actually suggest looking into some pre-made Texas Instruments ADC/DAC->USB ICs which are widely in use in existing products.
My first thought for the connection type to interface with the PC was of course USB, but then I figured that HDMI is an alternative more suited to digital audio data, and maybe simpler to work with.
USB is sufficient, for LPCM (assuming 16bit stereo 48kHz) requires 1.47Mbit/s whereas USB2.0 is already 480Mbit/s. HDMI generally only carries audio from a video source (PC) to a monitor, it can optionally carry audio back through ARC (Audio Return Channel), which is used by TVs that are connected to a HDMI receiver (those fancy 5.1, 7.1 amplifiers that switch HDMI), adding the ability to route TV audio back to the receiver even though the receiver generally only sends video to the TV over this cable.
I have not seen graphics cards that support ARC, HDMI is kinda an interersting thing because the cable physically allows two graphics cards to be connected, but it has little meaning. This can cause a bit of confusion as to what's possible.
But how to get at audio data through HDMI on a Linux system, if it is even possible? I do not mind writing a kernel module if it would not be too complicated.
Well, I don't see the possibility as you are bound by what the graphics card support and as far as I'm aware, there's no feature to receive audio while sending video. It could be possible with a capture card, but then you essentially throw away a big chunk of the abilities of the HDMI cable (video).
My CPU is i5-8300H with Intel® UHD Graphics 630.
I hope this gives some pointers, but like I said at the top, without knowing your boundaries, it's hard to suggest some things.