Q
如何使用n音訊
1
A
回答
1
有一個名爲「網絡聊天」的NAudioDemo應用程序,它從麥克風記錄了演示,用壓縮編解碼器的音頻,並通過UDP發送出去。它還從UDP接收音頻,解壓縮並播放它。所以看着that code應該指出你在正確的方向。它沒有顯示的是在UDP之上使用任何協議,所以只有原始的壓縮音頻通過網絡發送,沒有時間戳或指示正在使用哪個編解碼器。
3
n音訊擁有例子中的網絡聊天演示如果你下載的源代碼,這確實展示瞭如何實現一個非常簡單的聊天應用程序的一個好工作。
基本上儘管你希望客戶端做的是這樣的:
void Initialize()
{
waveIn = new WaveIn();
waveIn.BufferMilliseconds = 50;
waveIn.DeviceNumber = inputDeviceNumber;
waveIn.WaveFormat = codec.RecordFormat;
waveIn.DataAvailable += waveIn_DataAvailable;
waveIn.StartRecording();
...
}
void waveIn_DataAvailable(object sender, WaveInEventArgs e)
{
//Encode and send e.Buffer
}
有了這個,你得到一個字節數組每50毫秒(或然而長你設置你緩衝到),並將其發送到服務器。但是,您需要對其進行編碼,因爲發送未編碼的聲音會佔用過多的帶寬。 NAudio擁有自己的編解碼器,所以這應該不是什麼大問題。 NAudio的網絡聊天演示請參見here。
另一個要考慮的,如果你打算實現一個客戶端到客戶端的VOIP(通過P2P或通過服務器本身流)是一個很好的網絡庫來處理所有的通信。我在類似的項目上使用Lidgren,這個項目工作得很好。它是開源的,但可以輕鬆設置以滿足您的需求。
相關問題
- 1. 如何使用n音訊
- 2. 使用n音訊
- 3. 使用n音訊與SpeechSynthesizer
- 4. n音訊錄音
- 5. 與n音訊
- 6. 創建n音訊
- 7. n音訊1.7 MediaFoundationEncoder
- 8. 爲n音訊(.NET)
- 9. 如何使用PCM音頻轉換爲TRUESPEECH n音訊
- 10. 錄音講話n音訊
- 11. AcmNotPossible調用acmStreamOpen,n音訊
- 12. n音訊:使用MixingSampleProvider與VolumeSampleProvider
- 13. n音訊顯示WaveViewer
- 14. 敲定IWavePlayer n音訊C++
- 15. 團結與n音訊RadioStreaming
- 16. n音訊正弦波
- 17. n音訊ASIO混合
- 18. n音訊WasapiLoopbackCapture間歇性的聲音
- 19. n音訊串流語音聊天C#
- 20. 捕捉音頻與n音訊和播放使用javascript
- 21. n音訊疊加的波形,而
- 22. .NET 4 C++ n音訊吃內存
- 23. VB.net n音訊WaveIn流到ftp
- 24. n音訊對象序列化
- 25. 不受支持的SourceStream n音訊
- 26. 添加n音訊控件工具箱
- 27. n音訊DataAvailable編譯錯誤
- 28. n音訊演示不工作了
- 29. 獲取從攪拌機n音訊C#
- 30. 使用Vorbis和n音訊播放OGG文件