Re: [問題] 請問iPhone有辦法將接收道的聲音直接放 …

看板MacDev作者 (暑假閒閒的大學生~~)時間13年前 (2010/10/19 21:12), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串5/19 (看更多)
※ 引述《zonble (zonble)》之銘言: : ※ 引述《ryanliang (暑假閒閒的大學生~~)》之銘言: : : 只是我想請問,在您的範例中,該要怎麼確定audio streaming有成功 : : 換句話說,如何去檢查inputBuffers裡是有資料的? : 我說一下我所理解的 Audio Queue 好了。 : Audio Queue 就很像是幾個水桶(buffer)在那邊排隊。如果在處理 : 輸入的時候,首先就會準備幾個空的水桶,用來裝 streaming 進來的 : 資料,如果一個水桶裝完了,就先把這桶水拿到一個地方處理,同時 : 有另外一個水桶接上去繼續裝水。這個把裝好的水桶拿出來,處理裝 : 進來的水的工作,就是在我們所指定的 callback function 中。 : 在 callback function 中,我們可以把收到的 binary data 儲存起 : 來,或是要看看做些什麼其他的事情,像是送到某個 view 中,顯示 : 目前收到的音量、畫個條狀圖有多大之類的。做完這些事情之後,我 : 們就要把這個空水桶拿回去繼續排隊裝水,這就是 enqueue。 : 在處理輸出的時候,我們就不能夠拿空水桶,而是要準備一些裝滿水 : 的水桶,拿去輸出裝置,把水倒出來。而觸發 callback 的時機就剛 : 好與輸入相反,是一桶水被倒光了之後,會把這個空水桶拿回來,要 : 你把水裝進這個空水桶裡。 我了解zonble大的意思了,這樣解釋的真是清楚,一看就明瞭! : 我的寫法比較隨便,在裝滿水的 callback function 裡頭,直接產 : 生一個新的 buffer,然後就拿去倒水了。因為是裝滿水的 callback ^^^^^^^^^^^^^^^^^ 這邊我就有點模糊。zonble大的意思是直接產生一個"裝滿水"的 buffer?所以實際上audio data並沒有裝進水桶裡? 我想應該不是我說的意思,但是我看不大懂zonble大的意思, 可以說明一下嗎? 謝謝zonble大!! : function,如果沒有裝滿水,那應該要去回報 apple bug了吧。:p -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 114.45.208.119
文章代碼(AID): #1ClPaqOP (MacDev)
討論串 (同標題文章)
本文引述了以下文章的的內容:
以下文章回應了本文 (最舊先):
完整討論串 (本文為第 5 之 19 篇):
文章代碼(AID): #1ClPaqOP (MacDev)