[問題] QAudioInput, QAudioOutput橋接(Done)

作者: chigi (  )   2016-06-01 18:53:49
開發平台(Platform): (Ex: VC++, GCC, Linux, ...)
Qt
額外使用到的函數庫(Library Used): (Ex: OpenGL, ...)
Qt
問題(Question):
想把AudioInput(像是mic)的資料從AudioOutput輸出
但QAudioInput::Start(QIODevice *) <這是把mic資料轉到QIODevice裡
QAudioOutput::Start(QIODevice *) <這是把QIODevice的資料丟去給output
而我用QBuffer作他們中間的橋梁,
但是動不了...
餵入的資料(Input):
預期的正確結果(Expected Output):
錯誤結果(Wrong Output):
程式碼(Code):(請善用置底文網頁, 記得排版)
QByteArray buffer;
QBuffer cable(&buffer);
cable.open(QIODevice::ReadWrite);
.
. QAudioInput, QAudioOutput 宣告
.
audioInput->start(&cable);
audioOutput->start(&cable);
補充說明(Supplement):
如果把output的cable改成QFile(也是QIODevice的一種),就可以從耳機輸出聲音;
如果把input的cable改成QFile,就變成recorder的功能,這兩者看起來是正常的
但是不知道QBuffer的用法哪邊出了問題..
請各位幫忙。謝謝。
作者: bab7171   2016-06-03 08:17:00
推測因為headset是錄音放音是同個的device你這樣宣告是可以但不同裝置你這樣宣告可能不行

Links booklink

Contact Us: admin [ a t ] ucptt.com