私はサーバーからストリーミングPCMデータを再生するアプリを開発しようとしています。iOSでサーバからストリーミングPCMデータを再生する方法は?
私はAudioQueueを使用しましたが、うまくいきません。
PCM(サーバからの)データ形式:
Sample rate = 48000, num of channel = 2, Bit per sample = 16
そして、サーバはクライアントに固定されたバイトをストリーミングしていません。
(ストリーミング変数バイト例:30848、128、2764、...バイト)
私のソースコード:ここで
、私は&をsettedたものASBD構造は、オーディオキューオブジェクト を作成します(言語:スウィフト)
// Create ASBD structure & set properties.
var streamFormat = AudioStreamBasicDescription()
streamFormat.mSampleRate = 48000
streamFormat.mFormatID = kAudioFormatLinearPCM
streamFormat.mFormatFlags = kLinearPCMFormatFlagIsSignedInteger | kAudioFormatFlagIsPacked
streamFormat.mFramesPerPacket = 1
streamFormat.mChannelsPerFrame = 2
streamFormat.mBitsPerChannel = 16
streamFormat.mBytesPerFrame = (streamFormat.mBitsPerChannel/8) * streamFormat.mChannelsPerFrame
streamFormat.mBytesPerPacket = streamFormat.mBytesPerFrame
streamFormat.mReserved = 0
// Create AudioQueue for playing PCM streaming data.
var err = AudioQueueNewOutput(&streamFormat, self.queueCallbackProc, nil, nil, nil, 0, &aq)
...
私は、上記のようなAudioQueueオブジェクトを作成し& ASBD構造をsettedています。
AudioQueueプレイは、数秒間、非常によく
をPCMデータをストリーミングが、すぐに再生しているサウンドはオンとオフです。私に何ができる?
(まだストリーミング、およびAudioQueueキューイング)
私に任意のアイデアを教えてください。
帯域幅の小さいフォーマットは機能しますか? –
Pardon?あなたの言うことはよく分かりません。 – user6081283
mp3のようなよりコンパクトなフォーマットを試してみるとうまくいくのですか? –