問題タブ [audioqueueservices]
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.
iphone - AudioQueueServices を使用して mp3 ファイルのデュレーションを抽出する
NSURLConnection 経由で mp3 をダウンロードする AudioQueueServices を使用して、ストリーミング mp3 プレーヤーを実装しました。再生、一時停止、シークはうまく機能しますが、ダウンロード中に mp3 ファイルからオーディオの長さを抽出する方法がわかりません。id3 タグから情報を取得できるようにしたいのですが、その方法がわかりません。何かご意見は?
iphone - iPhone SDKにFSRefはありますか、それともFSRefの代わりになるものはありますか?
質問はばかげているように聞こえるかもしれませんが、これは次のとおりです。オーディオキューの使用方法を学んでいます。最近、aqtestがiPhone用ではないことがわかるまで、私が取った例(aqtest)は私にとって良いガイドでした。 。(私は愚かです)私はインターネットの周りでサービスを提供し、iPhone用のFSRefがないことを知りました。
可能であれば、FSRefの問題を回避する方法を見つけたいと思います。そこで、ここに質問があります。iPhoneSDKに存在するFSRefの代わりに他のものを使用できますか?それとも私は何かが足りないのですか?
iphone - iPhoneのリソースのファイルシステムパスを取得するにはどうすればよいですか?
iPhoneでは、リソースのパスを取得する必要があります。OK、それはできましたが、CFURLCreateFromFileSystemRepresentationのことになると、これを解決する方法がわかりません。このエラーが発生するのはなぜですか?任意の解決策または回避策をいただければ幸いです。前もって感謝します。
iPhoneでAudioQueueを使用してオーディオを再生するために、SpeakHere、AudioQueueTools(SimpleSDKディレクトリから)およびAudioQueueTestの例を見てみました。パズルを組み立てようとして、これとあれをやってみました。今、私はこれで立ち往生しています。上記のsndFileからスローされた例外が原因で、プログラムがクラッシュしました。
私はAVAudioPlayerを使用してiPhoneゲームのすべてのサウンドを再生しています。実際のiPhoneデバイスでは、サウンドを再生するときに非常に時間がかかることが判明したため、AudioQueueを使用する必要があると判断しました。
objective-c - AudioQueue でファイルを作成するときにチャンクが見つからない
したがって、.wav ファイルにはいくつかの標準チャンクがあります。私が扱うほとんどのファイルでは、「RIFF」チャンクが最初で、次に「fmt」チャンク、次に「DATA」チャンクです。AVAudioRecorder を使用して録音すると、これらのチャンクが作成されます (ただし、「DATA」チャンクの前に余分な「FLLR」が作成されます)。
AudioQueue でファイルを作成する場合、これらの標準チャンクは作成されません。代わりに、AudioQueue は順番に「caff」、「desc」、「lpcm」、「free」、「data」チャンクを作成します。
どうしたの?「RIFF」と「fmt」チャンクは必要ではないですか? これらのチャンクを強制的に含めるにはどうすればよいですか?
次の方法でファイルを作成しています。
AudioFileCreateWithURL(URL, kAudioFileCAFType, &inputDataFormat, kAudioFileFlags_EraseFile, &AudioFile);
inputDataFormat は、完全なプロパティを持つ AudioStreamBasicDescription です。
では、少なくとも、「RIFF」チャンクと「fmt」チャンクを AudioQueue でどのように記述するのでしょうか?
ありがとう。
iphone - AudioQueue を使用したオーディオ バッファ データの読み取り
AudioQueue 経由でオーディオ データを読み込もうとしています。そうすると、ファイルのビット深度が 16 ビットであることを確認できます。しかし、実際のサンプル データを取得すると、-128 から 128 までの値しか表示されません。しかし、インターリーブされた不審なデータも表示されるため、データを正しく読み取っていないことがわかります。
まず、ソース ファイルが 44100、16 ビット、モノ wav ファイルであることを確認できます。
私のバッファは次のように割り当てられます:
関連するすべての値が設定され、以下で使用されます。
テストとして、取得したデータを確認できるように、次を実行します。
これで、ソース ファイルがいたるところでピークに達していることがわかりましたが、表示される値は -128 と 128 の最大値しかありません。これは 16 ビット ファイルであるため、値は -32768 から 32768 になると予想されます。
また、データには2パターンあるようです。返されるデータの例を次に示します。
次に、2 行目 (-13) から 1 行おきに見ていきます。均等にではなく、少なくともスムーズに増加する様子をご覧ください。奇数行はそれほど滑らかではありません。
私の最初の考えでは、これはインターリーブされたステレオ データですが、いや、それは 1 つのチャンネルだけなので、インターリーブはありませんよね?
私の推測では、データを間違って読み取っているだけなので、サンプル データは 2 つのリターンにまたがっています。正しく読む方法はありますか?
質問全体を読んでくれてありがとう、そしてあなたが提供できる洞察をありがとう。
iphone - audioqueue を使用してオーディオをストリーミングします。再生が終了する前にオーディオファイルの長さを取得する方法は?
プレーヤーの実装はすでに完了しています。プログレスバーを実装したい。でも、音楽をストリーミングしているので、それができるのだろうか. 事前に曲の長さが提供されていない限り。
どうか、これについてあなたのアドバイスが必要です。
iphone - 空のデータを返す AudioQueueOfflineRender
AudioQueueOfflineRender を使用して AAC データをデコードする際に問題が発生しています。
呼び出し後にバッファを調べると、常に空のデータで満たされています。入力バッファが有効で、パケットの説明が提供されていることを確認しました。
検索したところ、他にも同じ問題がいくつかあることがわかりました: http://lists.apple.com/archives/Coreaudio-api/2008/Jul/msg00119.html
また、 inTimestamp 引数は意味がありません。バッファの先頭がオーディオのどこに対応するかをレンダラーが気にする必要があるのはなぜですか? NULL を渡すと関数がエラーをスローするので、とにかくタイムスタンプを渡します。
iphone - より良い位置オーディオの構築[AudioQueue操作]
私は、両耳間時間差(ITD)のモデリングのレベルまで、非常に正確な位置オーディオを必要とするアプリを構築しています。これは、リスナーに対するサウンドの位置によって変化するステレオチャネル間のわずかな遅延差です。残念ながら、iPhoneのOpenALの実装にはこの機能がなく、SDKで遅延オーディオユニットが提供されていません。
少し読んだ後、この問題に取り組む最善の方法は、AudioQueueを操作して自分の遅延を実装することであると判断しました(将来、このようなことを学ぶ必要があるプロジェクトもいくつか見られるので、これは次のようになります学ぶための良い言い訳)。ただし、低レベルのオーディオプログラミングの経験はまったくなく、AudioQueueの経験もありません。両方を学ぼうとしています:
a)オーディオ処理の一般理論
と
b)AudioQueueがその理論を実装する方法の詳細
一度にすべてを取り込むにはあまりにも多くを証明しています:(
だから、私の質問は次のとおりです。
1)DSPと、オーディオの生成と処理が一般的にどのように機能するか(オーディオデータがメモリ内でどのように構造化されているか、ミキシングがどのように機能するかなど)について学び始めるのに適した場所はどこですか?
2)AudioQueueがこれをどのように行うかを理解するための良い方法は何ですか?AudioFileReadPackets
AppleのSpeakHereの例のように、ファイルのビットをオンデマンドでフェッチするのではなく、生成されたリングバッファから読み取る方法の良い例はありますか?
最も重要な
3)私が見落としていたこれを行うためのより簡単な方法はありますか?
iphone - iPhoneのsdk Audioqueueで音を下げるには?
私は Aran Mulhollan の RemoteIOPlayer を使用しており、SDK iphone で audioqueues を使用しています。問題なくできます: - 2 つの信号を追加してサウンドをミックスする - wav ファイルから取得した UInt32 を掛けて音量を上げる
しかし、他のすべての操作では、歪んで歪んだサウンドが得られ、特に信号を分割できません。私は自分が間違っていることを理解できないようです.除算の実際の結果は問題ないようです; サウンド/信号処理のいくつかの側面は、明らかに私を逃れているに違いありません:)
どんな助けでも大歓迎です!