最近做一個網路廣播程式,遇到了個語音資料發送和接收速率匹配的問題,想問問大家有什么好的解決方法沒有。
需求:
做一個網路廣播程式,也就是在發送端電腦上選擇音樂檔案,在播放端機器上播放出來。
整個程序我想應該是這個樣子的:
發送端 讀取音樂檔案->網路發送
播放端 接收網路資料->存入接識訓沖區->播放
由于播放端機器是單片機,其接識訓沖區大小是有限制的,因此如果發送端發送速率過快,則接識訓沖區有可能充滿,從而語音可能出現覆寫現象,如果發送端發送速率過慢,則接識訓沖區有可能處于虧空狀態,從而語音可能出現停頓現象。
現在需要討論的是確定一個方法,使發送和接收兩端速率能夠匹配,即接識訓沖區始終不會出現虧空和溢位狀態。
希望有經驗的朋友指導一下。
uj5u.com熱心網友回復:
接收端在收到資料包后,發回一個緩沖區狀態,發送端可以根據這個狀態值來調整發送速率uj5u.com熱心網友回復:
因為服務器是一對多,如果每個客戶端都回傳狀態,處理起來會比較麻煩啊,還有沒有其它方法了
uj5u.com熱心網友回復:
在一對多廣播的情況下,如果各個客戶端性能參差不齊,只能以性能最低的客戶端為基準發送了uj5u.com熱心網友回復:
這種情況一般都是客戶端開辟一個緩沖區,緩沖一定量資料后再播放,這樣盡量匹配速度轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/156884.html
標籤:基礎類
上一篇:問個小問題
