問題タブ [avaudiosession]

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 に答える
237 参照

iphone - AVAssestReader 停止オーディオ コールバック

だから私はオーディオセッションをセットアップします

次に、AudioQueue または RemoteIO セットアップをセットアップして、ファイルからオーディオを直接再生します。

オーディオが再生されると、アプリのステータス バーに「再生アイコン」が表示されます。次に AVAssetReader をセットアップします。

[reader startReading] を呼び出すと、Audio の再生が停止します。RemoteIO と AudioQueue の両方のケースで、コールバックが呼び出されなくなります。

混合オプションを追加すると:

その後、AudioQueueStart の後のオーディオが呼び出されたときに、「再生アイコン」が表示されなくなりました。電話は私を主要なオーディオ ソースとして認識しないため、他の機能もロックアウトされています。

AVAssetReader を使用してプライマリ オーディオ ソースのままにする方法を知っている人はいますか?

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

ios4 - iPodMusicPlayerを使う

アプリケーションがバックグラウンドで iPod の代わりに歌うようにする方法。MPMediaItem に対して NSURL を実行し、iPodMusicPlayer で再生する必要があると思います。これどうやってするの?

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

iphone - iOS 5では、カテゴリが変更された後、「AudioQueueStart」は3〜5秒で録音を開始しました

AudioSessionのカテゴリをからに変更した後kAudioSessionCategory_MediaPlaybackkAudioSessionCategory_PlayAndRecord録音AudioQueueStartを開始するためにメソッドが約3〜5秒ハングしました。

この問題は、iOS 5を実行しているiOSデバイスでのみ発生し、シミュレーター、またはiOS4またはiOS3を実行しているデバイスでは発生しません。

これが私が試したことです:

カテゴリを変更せずに常に使用する場合はkAudioSessionCategory_PlayAndRecord、すべてが正常に機能します。AudioQueueStart約0.01秒で録音を開始します。でも、デバイスのスピーカーから音を出して欲しいので、いつも使えませんkAudioSessionCategory_PlayAndRecord

使用するkAudioSessionOverrideAudioRoute_SpeakerkAudioSessionCategory_PlayAndRecord同時に、それは良い考えですが、そうする場合はkAudioSessionProperty_AudioRouteChange、ユーザーがヘッドフォンを接続または取り外したり、Bluetoothヘッドセットを接続したりするなど、多くの状況にも対処する必要があります。複雑すぎます。

任意のアドバイスや解決策をいただければ幸いです。

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

iphone - ヘッドセットを使用してユーザー入力を検出する

iPhoneに接続されたヘッドホンでユーザー入力(クリック)を検出しようとしています。これまでのところ、AVAudioSessionを使用して中断を検出する方法しか見つけていません。AVAudioSessionは正しいですか、それとも別の方法がありますか?どうやって?

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

iphone - 録音しながら音を鳴らす

録音中の音をライブで再生することはできますか?

AVAudioSession でサウンドを録音する方法を示すこの質問/回答を見つけました。

もしそうなら、私は何を見ているべきですか?AVAudioSession はサウンドも再生できますか?

(基本的にはアンプのように、入ってきた音をそのまま出力します)

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

ios - HDMI アクセサリが接続されている場合でも、AVAudioSession を強制的にヘッドフォン ジャックに出力することはできますか?

HDMI アダプタが接続されている場合でも、ヘッドフォン ジャックからオーディオを強制的に出力することはできますか?

iOS 5.0 には、複数のオーディオ ルート用の定数が含まれるようになりました。

また、iOS 5.0 は、読み取り/書き込み可能な kAudioSessionProperty_OutputDestination という新しいプロパティをサポートしていることもわかりました。

質問:

  1. プロパティは、出力ルートを強制できるように設計されていますか?
  2. ドキュメントには、USB オーディオ アクセサリが記載されています。アクセサリが接続されていない場合、または HDMI ケーブルが接続されている場合に機能しますか?
  3. このプロパティを正しく設定する方法を示すサンプル コードはありますか?

ありがとう!

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

ios - iOS / AudioSessions: 外部ヘッドセット マイクが存在する場合、内部マイクを介してオーディオをルーティングしますか?

缶に書かれているとおり:

外部ヘッドセット マイクが存在する場合、内部マイクを介してオーディオ入力をルーティングできますか?

もしそうなら、どのように?

編集:

私はこれを見つけました:

http://developer.apple.com/library/ios/documentation/AudioToolbox/Reference/AudioSessionServicesReference/AudioSessionServicesReference.pdf

p.18 ここに画像の説明を入力

そのため、内蔵スピーカーを使用するようにオーバーライドすると、内蔵マイクの使用に自動的に切り替わります。

しかし、明示的にそれを行う方法がわかりません。

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

iphone - AVAudioSessionCategoryPlayAndRecord がミュート スイッチを検出しない

AVAudioSessionCategoryPlayAndRecord を使用して、他のサウンドを再生し続けたいので、ユーザーがマイクに吹き込んでいるのを検出しています。ただし、ミュート スイッチがオンの場合、オーディオを再生したくありませんが、録音したいです。

明らかに、ミュート スイッチがオンの場合、いくつかの IF-THEN ロジックを使用して AVAudioSessionCategoryRecord に変更できますが、それを検出するのに問題があります (別のユーザーの外見から、以前は機能していたソリューションが機能していないようです) iOS5)。

したがって、私の質問には2つの部分があります。

  1. iOS 5 でミュート スイッチを検出する方法を見つけた人はいますか?

  2. そうでない場合、AVAudioSessionCategoryPlayAndRecord を操作してミュート スイッチを検出する方法はありますか ( Apple によると、AVAudioSessionCategoryPlayAndRecord はミュート スイッチの影響を受けません)。

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

iphone - 中断が発生したときにオーディオ アプリをバックグラウンドでアクティブにしておくにはどうすればよいですか?

AVAudioSession と AVAudioPlayer およびオーディオ バックグラウンド モードを使用して、アプリをバックグラウンドでアクティブにしようとしています。割り込みが来なければ正常に動作します。しかし、audioPlayerBeginInterruption メッセージを受信すると、backgroundTask を起動し、audioPlayerEndInterruption メッセージを待ってから、オーディオ セッションを再起動します。

(私は、audioPlayerBeginInterruption アプリがまだアクティブな後、プレーヤーが一時停止していることに気付きましたが、audioPlayerEndInterruption アプリが中断された後)

問題 1 : audioPlayerEndInterruption メッセージが 10 分後に到着した場合、バックグラウンド タスクが強制終了され、アプリケーションが中断され、オーディオ セッションを再開できません

問題 2 : いくつかのアプリ/ゲームで、audioPlayerBeginInterruption メッセージを受け取りましたが、audioPlayerEndInterruption を受け取りませんでした。

アプリケーションを常にアクティブにするにはどうすればよいですか?

すべての回答とアドバイスに感謝します