問題タブ [audioqueue]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1475 参照

iphone - オーディオ ユニット、セット フォーマットが -10581 で失敗する

以下が OSStatus -10851 を返す理由がわかりません。

シミュレーターでは動作しますが、デバイスでは動作しません。

残りのコードは次のとおりです。

0 投票する
2 に答える
522 参照

core-audio - オーディオのチャンクをすばやくループし、Core Audio でサンプル値 (振幅/パワー レベルなど) を決定するにはどうすればよいですか?

私が達成しようとしていることは、基本的に次のとおりです。

  1. ファイルを開き、その期間に基づいて必要な「サンプル」の数を決定します
  2. ファイルを x サンプルに分割します。各サンプルの(平均)パワーレベル/振幅を決定します。
  3. これらのサンプル値を使用して、オーディオを表す波形の描画に進みます (これらのガイドラインに従ってください)。

私は約 3 日間オンライン フォーラム、本、API を綿密に検索しましたが、役に立ちませんでした。私は最も重要なステップで立ち往生しています->オーディオのチャンク(バッファ)のパワーレベルを決定しています。

Core Audio bookのほとんどを読んで、AudioQueues、Audio Units、そしてある程度 OpenAL の低レベル環境に慣れてきました。ただし、私が見たすべての例と説明 (この本と Web 上の他の場所) はすべて、オーディオ ファイルの再生中または録音中に (つまり、リアルタイムで) 電力レベル値を決定することを扱っています。

ただし、私の目的は、リアルタイムで再生することなく、ディスク上の特定のファイルのこれらの値を迅速かつ効率的に決定することです。どのライブラリ、機能を調べる必要があるかについてのガイダンスは大歓迎です。

ありがとう。

0 投票する
3 に答える
3962 参照

iphone - iOSでAudioQueueを使用してspeexをエンコード/デコードする方法

AudioQueue で Speex オーディオ形式をエンコード/デコードした経験がある人はいますか?

SpeakHere サンプルを編集して実装してみました。しかし成功しない!

Apple API ドキュメントから、AudioQueue はコーデックをサポートできますが、サンプルが見つかりません。誰か私に提案をしてもらえますか?XCode 4 のプロジェクトで、すでに Speex コーデックを正常にコンパイルしました。

0 投票する
1 に答える
954 参照

ios - iOS での圧縮オーディオの複数ストリームのミキシングとイコライジング

私がやろうとしていることは、まさにタイトルが言うように、複数の圧縮されたオーディオ ストリーム/ファイルをデコードすることです。これは、変更された MP4 ファイルから抽出されます。リアルタイムで同時に EQ を実行します。

私はAppleのドキュメントのほとんどを読みました。

私はAudioQueuesを試しましたが、圧縮されたオーディオが入ってくると出てこないので、イコライズを行うことはできません...だから私はそれを操作することはできません.

Audio Units には、AAC と MP3 の圧縮解除を処理するコンポーネントがないようです。私が正しければ、コンバーターは LPCM フォーマットから別の LPCM フォーマットへの変換のみを処理します。

私は今、約1か月半の間、オンとオフの解決策を考え出そうとしています.

私は今、サードパーティのデコーダーを使用することを考えています(神様助けてください。それらの使用方法がわからない、ソースコードはギリシャ語です。ああ、お勧めはありますか?:x)。次に、デコードされた LPCM をコールバックで EQ を実行する AudioQueues。

多分私はここで何かを逃しています。提案?:(

0 投票する
1 に答える
2873 参照

objective-c - AMR ファイルを iPhone に記録する

AVAudioRecorder を使用して iPhone でオーディオを録音していますが、ファイルが大きすぎて EDGE ネットワーク上のサーバーにアップロードできません。オーディオを AMR 形式に圧縮できれば、元の PCM オーディオ ファイルに比べてサイズが大幅に縮小されることがわかりました。

Pure C で書かれた AMR エンコーディング & デコーディング ライブラリ (3GPP AMR Floating-point Speech Codec) を見つけました。現在、このライブラリを使用して WAVE を AMR に変換できますが、iPhone ではエンコーディング プロセスが長すぎます。1 分間の Wave ファイルをエンコードするのに 22 秒待たなければなりません。

エンコードの待機をなくすには、エンコードと一緒に録音する必要がありますが、AVAudioRecorder は、新しいファイルを作成することによってのみ録音機能を提供します。これを行う唯一の方法は、メモリ バッファを介して録音を提供する AudioQueue を使用することです。

問題は、Audio Queue と AMR ライブラリの 2 つを統合する方法がわからないことです。誰か助けてくれませんか?

0 投票する
1 に答える
774 参照

iphone - 複数の曲をストリーミングするiosAudioQueue

私はAudioQueueを使用して任意のソースからオーディオをストリーミングしています(クラスは基本的にパケットを提供するデリゲートが必要です)、Callを呼び出すことができるすべての機能をラップするクラスを作成しましたAudioQueueClass、私はこのクラスを使用して多くを再生しています曲、各曲の間にクラスをリリースし、次の曲を再生するために新しいAudioQueueClassインスタンスを作成します。原因を特定できなかった2つの問題が発生しています。おそらく、これらの問題に遭遇し、解決できる可能性があります。その上に光

1-時々、AudioQueueは前の曲の数秒を再生してから現在の曲に戻ります。曲ごとに新しいキューを作成しているときに、なぜこれが発生する可能性があるのか​​わかりません。適切にキューに入れる-従うべきいくつかのコード

2-これはさらに悪いことです。3番目または4番目の曲に入ると、オーディオキューの再生が停止することがあります...問題は、AudioQueueInputCallback inCallbackProcの呼び出しが停止することだと思います。これは、キューの再生と処理が停止したためだと思います。パケットですが、理由がわかりません...これは、外部ソースからデバイスにストリーミングする場合にのみ発生します。ファイルデータをローカルで取得し、それをパケットとして使用すると、「スタッター」が聞こえます。音楽ですが、回復して正常に再生されますが、ストリーミングの場合は音が止まります(かなり奇妙です)

これが私がオーディオキューを破棄するために使用しているコードです。投稿する関連部分がわからないため、これ以上投稿しません。コードのいずれかを表示して、投稿しない場合はお知らせください。

0 投票する
2 に答える
2317 参照

iphone - キューに入れられたデータの再生長を確認する方法

AudioQueueを使用して曲をストリーミングしていますが、質問は、すでにキューに入れられているバッファの再生の長さをどのように確認できるかということです。一度に2秒のデータをストリーミングしたいのですが、私が抱えている問題は、実際に2秒の音楽に対応するバイト数をどのように知るかです(したがって、常に2秒先に進むことができます)。

ありがとう

ダニエル

0 投票する
1 に答える
2186 参照

iphone - AudioQueueRefを使用せずにAudioQueueで音量を設定するにはどうすればよいですか?

AudioQueueRefを使用せずにAudioQueueで音量を設定するにはどうすればよいですか?

Stack Overflowでこれに関する多くの質問を参照しましたが、それらはすべてAudioQueueRefオブジェクトを使用しています。

AudioQueueRefを使用せずにそうすることは可能ですか?

0 投票する
1 に答える
418 参照

iphone - AudioQueueをキャプチャしてさまざまなバッファサイズを返す

私はAudioQueueベースのアプリケーションがほぼ完全に機能しています。しかし、私は問題を抱えています。AudioQueueAllocateBufferを呼び出すとき、特に512のバッファーサイズを要求します(データに対してFFTを実行しているため)。ただし、コールバックが発生すると、512未満のバッファサイズが発生することがあります。

これは腹立たしいです。これらの問題をスムーズにするために、着信データのある種の内部バッファリングを設定する唯一の解決策はありますか?割り当てバッファに値を指定すると、iPhoneが異なる数のサンプルを返すのはなぜですか?

私はもうすぐ怒ってしまうので、どんな助けでも大歓迎です。

乾杯!

オスカー

0 投票する
1 に答える
893 参照

objective-c - AudioFileOpenURL の後にオーディオを追加する際の問題

オーディオ データに余分な録音を追加した後、オーディオ データの再生に問題があります。エラーを返さないイベントの一般的なシーケンスは次のとおりです。

キューを開始および停止して記録を追加できますが、うまく機能します。オーディオは完全に追加され、期待どおりに再生できます。ファイルを再度開いて追加しようとすると、問題が発生します。

オーディオの最後のパケットから録音を再開するように注意しています。実際、ファイル サイズが大きくなっているため、データがファイルに追加されています。ただし、ファイルを再生すると、追加されたオーディオが聞こえません。元の音声が再生されますが、追加の音声が聞こえる前に停止します。

AudioFileOptimize を移動して魔法の Cookie をリセットするさまざまな組み合わせを試しましたが、役に立ちませんでした。

私が使用しているオーディオ形式は次のとおりです。

ここで何が起こっているのですか?AudioFileID を再度開いた後、追加されたオーディオが再生されないのはなぜですか?