Re: [問題] Buffer沒有辦法儲存Audio data

看板MacDev作者 (暑假閒閒的大學生~~)時間14年前 (2010/10/15 10:02), 編輯推噓0(000)
留言0則, 0人參與, 最新討論串3/5 (看更多)
※ 引述《zonble (zonble)》之銘言: : 標題: Re: [問題] Buffer沒有辦法儲存Audio data : 時間: Fri Oct 15 03:58:48 2010 : : ※ 引述《ryanliang (暑假閒閒的大學生~~)》之銘言: : : - (IBAction)capture:(id)sender : : { : : } : : 不知道是不是buffer的方式用錯 : : 我這幾天找了很多的buffer都沒辦法合用 : : 不知道是甚麼原因造成這樣的結果 : : 希望版上的先進能夠幫幫我 : : 感謝!! : : 剛剛稍微看了一下。 : : 看來 QTCaptureDecompressedAudioOutput 這個 output 的假設就是 : 你要把 Audio 送到 Audio device 上面,所以傳進來的 binary 資料, : 是 PCM Audio 的 packets,每次傳進來的資料,大概在 0.01 秒左右, : 在收到這些 packets 之後,就是預期你用 CoreAudio API,像是用 : AudioQueue 之類的方式,直接把聲音播出來。 : : 我不太確定捕捉 0.01 秒左右的聲音的目的是什麼,如果想要直接把 : 聲音放出來,好像用 QTCaptureAudioPreviewOutput 會比較容易, 我已經有參考官方範例實作出即時把聲音放出來, 就是用z大說PreviewOutput方法。 : 如果是想要錄音,把聲音錄成檔案,可能把 output 換成 : QTCaptureFileOutput,也會容易許多,而不需要自己把 PCM Packets : 再透過 AudioUnit 編碼。 : : 老實說,每次看到 CoreAudio 都讓人頭大。 :/ : 感謝zonble大熬夜幫我看,謝謝!! 我主要在做的功能是擷取到linera PCM後,希望能在buffer裡留住 資料,然後再經過Codec,輸出成AAC的編碼格式,然後顯示在web上。 現在的流程大概像下面這樣:                  Video--x264 Codec  ----     / \ |iSight|-QTCaptureSession web view ---- \ / Audio--AAC Codec 從iSight經過CaptureSission將Video跟audio擷取出來, 再透過Codeo編碼輸出到web view上,大致的流程就是這樣。 目前我看文件的方法,就像z大講的放在AudioQueue裡,但是現在問 題是我要做的是即時的影音輸出,放在AudioQueue裡面會不會來不 及輸出,造成Frame跟Audio不同步的狀況? : : -- : zonble.net : cocoa.zonble.net : : -- : ※ 發信站: 批踢踢實業坊(ptt.cc) : ◆ From: 114.44.184.149 : 推 mactaris:捕捉之後丟給iPhone? 10/15 07:01 丟給MAC上的web 之後才會嘗試看看能不能丟到iPhone 現在是在寫MAC上的AP -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 61.219.177.46
文章代碼(AID): #1CjxO_aA (MacDev)
文章代碼(AID): #1CjxO_aA (MacDev)