問題タブ [avaudioengine]

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 投票する
2 に答える
3989 参照

ios - Swift で Accelerate フレームワークを使用した AVAudioPCMBuffer からのスペクトログラム

AVAudioPCMBufferSwiftからスペクトログラムを生成しようとしています。にタップをインストールAVAudioMixerNodeし、オーディオ バッファでコールバックを受け取ります。[Float:Float]バッファ内の信号を、キーが周波数を表し、値が対応する周波数のオーディオの大きさを表す辞書に変換したいと思います。

Apple の Accelerate フレームワークを使用してみましたが、得られる結果は疑わしいようです。私はそれが信号を変換している方法にあると確信しています。

参考のために、とりわけこのブログ投稿を見ました。

ここに私が持っているものがあります:

私の質問は

  1. buffer.floatChannelDatatoを変換して関数UnsafePointer<DSPComplex>に渡すにはどうすればよいですか? vDSP_ctozおそらくバイパスする別の/より良い方法はありvDSP_ctozますか?
  2. バッファに複数のチャンネルからのオーディオが含まれている場合、これは異なりますか? バッファー オーディオ チャネル データがインターリーブされている場合とインターリーブされていない場合の違いは?
  3. fft配列内のインデックスを Hz 単位の周波数に変換するにはどうすればよいですか?
  4. 他に何か間違っていることがありますか?

アップデート

提案してくれてありがとう。受け入れられた回答で提案されているように、複雑な配列を埋めることになりました。値をプロットして音叉で 440 Hz の音を鳴らすと、音叉は正確な位置に登録されます。

配列を埋めるコードは次のとおりです。

配列は、各チャネルのサンプルの個別のchannelSamples配列を保持します。

マグニチュードを計算するには、これを使用しました:

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

ios - AVAudioSession を使用して音楽からボーカルを削除/音量を下げる方法

音楽の再生中にオーディオを録音する必要があるアプリを開発しています。音楽と一緒に音をうまく録音できます。しかし、音楽からボーカルを取り除くことはできません。ボーカルの立ち上がり時に音量を下げることもできれば最高です。

音楽再生中の録音にはAVAudioSession、AVAudioPlayerNodeを使用しています。

どんな助けでも感謝されます。

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

ios - AVAudioEngine で musicSequence を再生する

AVAudioEnginemusicSequence設定できるプロパティがあります。とはいえ、遊び方が分からなくて困っていませんか?使ってみstartAndReturnErrorたけどダメだった

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

ios - AVAudioUnitEffects のチェーンを正しく構成する方法

次のコードは、1 つのサウンド フォントでセットアップされたサンプラーを作成するように iOS オーディオ エンジンを構成します (説明を簡単にするため)。次に、サンプルを使用して MIDI ノートを再生すると、一連の標準エフェクト (ディストーション -> ディレイ -> リバーブ) を導入しようとするまで、すべてうまく機能します。

サンプラーの出力がオーディオ エンジンの MainMixerNode に直接接続されている場合、それは機能します。サンプラーをディストーション エフェクト (チェーンの最初のエフェクト) に接続すると、最初の MIDI ノートを再生しようとするとすぐにエラーが発生します " AVAudioUnitMIDIInstrument.mm:103: -[AVAudioUnitMIDIInstrument startNote:withVelocity:onChannel:]:エラー -10867"

注: 私は Mac で Xamarin を使用してコーディングを行っているため、次の内容は見慣れないかもしれませんが、コードが読みやすく、参考になることを願っています。

問題は、エフェクト/またはそのチェーンを初期化する際にどこが間違っているのかということです。

前もって感謝します、クリス


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

ios - AVAudioPlayerNode の音量をプログラムでフェードアウトする

バックグラウンド ミュージックを再生している AVAudioPlayerNode を使用して AVAudioEngine をセットアップしました。

ノードで 2 秒の時間枠でボリューム フェードアウトを作成する最善の方法を見つけようとしています。これを行うために CADisplayLink の使用を検討しています。誰かがこのシナリオの経験があり、彼らのアプローチについて私にアドバイスできるかどうか疑問に思っていましたか?

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

ios - テスト フライト アプリが libAVFAudio.dylib でクラッシュする: AVAE_RaiseException(NSString*, ...) + 60

App Store にアーカイブをアップロードしましたが、イントロ サウンドを再生しようとするとクラッシュします。を使っAVAudioEngineて音を鳴らしています。Xcode でコードをコンパイルして実行すると、すべて正常に動作します。TestFlight にアップロードして、アプリを内部テスターとして実行しようとすると、アプリがクラッシュします。クラッシュレポートは次のとおりです。

ここに画像の説明を入力

私がその音を再生するために使用する場合AVAudioPlayer、それは大丈夫です。の何が問題なのか理解できませんAVAudioEngine。何かアドバイスはありますか?

0 投票する
6 に答える
10549 参照

ios - AVAudioEngine Mic-Input のフォーマットを指定するにはどうすればよいですか?

AVAudioEngineユーザーのマイクを使用して音声を録音したいと思います。既に動作するサンプルがありますが、必要な出力の形式を指定する方法がわかりません...

私の要件は、AVAudioPCMBuffer私が話すように、それが現在行っていることを必要とすることです...

トランスコーディングを行う別のノードを追加する必要がありますか? その問題に関する多くのドキュメント/サンプルが見つかりません...

また、オーディオ関連の初心者でもあります。NSData最大サンプルレートが 16000 の PCM-16bit が必要であることはわかっています (8000 の方がよいでしょう)。

ここに私の作業サンプルがあります:

形式を変更して「言う」としたら

次に、サンプルレートが hwInput と同じである必要があるというエラーが生成される場合...

どんな助けでも大歓迎です!!!

編集:見つけAVAudioConverterたばかりですが、iOS8にも対応する必要があります...

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

ios - AVAudioEngine マイク Float データ

AVAudioEngineでリアルタイムマイク入力のfloatデータを取得しようとしています。fft と fft の後に特別なアルゴリズムを実行します。

コードをコンパイルすると、コンソールに次の出力が表示されます: 0x0000000000000000

私は何を間違っていますか?助けてくれてありがとう

float データを取得するコードは次のとおりです。

0 投票する
0 に答える
264 参照

ios - Tap On AudioEngine OutputNode のインストール方法

AudioEngine OutputNode処理されたオーディオをToから保存しようとしていますAVAudioFile

今まで私が知っていることは、タップを使用して実行できることですが、方法がわかりません.

Tap On のインストール方法を教えてAudioEngine OutputNodeください。