Знающие коллеги, просветите меня, пожалуйста.
Вот есть у меня машинка, а в ней есть девайс для воспроизведения звука. Скажем, звуковая карта, которая умеет выдавать в свой аналоговый выход звук, который откуда-то получает.
И другой девайс, который умеет этот самый звук производить. Пусть для определенности это будет FM-тюнер.
В общем случае связать аналоговым проводочком нельзя. Например, если оба девайса USBшные.

Соответственно, кто-то должен брать звуковой поток из одной карты и запихивать его в другую.

Собственно, вопрос: а кто это делает? Сама прикладная программа, которая умеет работать с тюнером, прокачивает звук через себя, или она только настраивает тюнер и сообщает двум драйверам в ядре, что они отныне должны между собой обмениваться данными, или еще как?
Одинаково ли эта архитектура устроена в windows, linux'е, BSD и прочих юниксах?
Где про это почитать?

P.S. Есть ли среди читателей несчастные, пытавшиеся запустить AVerTV Hybrid+FM Volar aka A828 под линуксом?