2017-07-20 65 views
0

我已經能夠使用LineInCode,plink(Putty)和PulseAudio將輸入設備在Windows中的音頻流式傳輸到Linux機器上,但不幸的是沒有選擇Window輸出設備與LineInCode所以我決定做一個程序,它確實。從Windows輸出設備到Linux的流媒體音頻

A program開發的Matthew van Eerde已經做了大部分的工作。您可以選擇一個輸出設備並錄製一個wav文件。因此,我不應該寫入文件,而應該將它發送到stdout,plink和pacat會完成剩下的工作。用他的程序「錄製」的音頻格式是WAVE_FORMAT_EXTENSIBLE(SubFormat),它應該作爲PCM流式傳輸到pacat。所以我的問題是如何從SubFormat轉換爲PCM音頻格式?

下面是用LINCO命令:

linco.exe -B 16 -C 2 -R 44100 | plink -v 192.168.11.5 -l armbian -pw 1234 "cat - | pacat --playback" 

PS:我已經盡力做到客觀,因爲我可以,遺憾的長期職位。如果你對如何縮短它有一個想法,請告訴我如何。

遵循項目鏈接:https://github.com/rsegecin/WLStream

回答

0

記錄在窗口輸出設備的格式是PCM浮32位小端所以pacat需要被配置爲能夠以相應地接收這種格式。我在github上發佈了這個項目。還需要以二進制配置輸出數據並使用fwrite函數,因爲printf不能跟上數據輸出。

在那裏見。