問題タブ [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.
iphone - AVAssestReader 停止オーディオ コールバック
だから私はオーディオセッションをセットアップします
次に、AudioQueue または RemoteIO セットアップをセットアップして、ファイルからオーディオを直接再生します。
オーディオが再生されると、アプリのステータス バーに「再生アイコン」が表示されます。次に AVAssetReader をセットアップします。
[reader startReading] を呼び出すと、Audio の再生が停止します。RemoteIO と AudioQueue の両方のケースで、コールバックが呼び出されなくなります。
混合オプションを追加すると:
その後、AudioQueueStart の後のオーディオが呼び出されたときに、「再生アイコン」が表示されなくなりました。電話は私を主要なオーディオ ソースとして認識しないため、他の機能もロックアウトされています。
AVAssetReader を使用してプライマリ オーディオ ソースのままにする方法を知っている人はいますか?
ios4 - iPodMusicPlayerを使う
アプリケーションがバックグラウンドで iPod の代わりに歌うようにする方法。MPMediaItem に対して NSURL を実行し、iPodMusicPlayer で再生する必要があると思います。これどうやってするの?
iphone - iOS 5では、カテゴリが変更された後、「AudioQueueStart」は3〜5秒で録音を開始しました
AudioSessionのカテゴリをからに変更した後kAudioSessionCategory_MediaPlayback
、kAudioSessionCategory_PlayAndRecord
録音AudioQueueStart
を開始するためにメソッドが約3〜5秒ハングしました。
この問題は、iOS 5を実行しているiOSデバイスでのみ発生し、シミュレーター、またはiOS4またはiOS3を実行しているデバイスでは発生しません。
これが私が試したことです:
カテゴリを変更せずに常に使用する場合はkAudioSessionCategory_PlayAndRecord
、すべてが正常に機能します。AudioQueueStart
約0.01秒で録音を開始します。でも、デバイスのスピーカーから音を出して欲しいので、いつも使えませんkAudioSessionCategory_PlayAndRecord
。
使用するkAudioSessionOverrideAudioRoute_Speaker
とkAudioSessionCategory_PlayAndRecord
同時に、それは良い考えですが、そうする場合はkAudioSessionProperty_AudioRouteChange
、ユーザーがヘッドフォンを接続または取り外したり、Bluetoothヘッドセットを接続したりするなど、多くの状況にも対処する必要があります。複雑すぎます。
任意のアドバイスや解決策をいただければ幸いです。
iphone - ヘッドセットを使用してユーザー入力を検出する
iPhoneに接続されたヘッドホンでユーザー入力(クリック)を検出しようとしています。これまでのところ、AVAudioSessionを使用して中断を検出する方法しか見つけていません。AVAudioSessionは正しいですか、それとも別の方法がありますか?どうやって?
iphone - 録音しながら音を鳴らす
録音中の音をライブで再生することはできますか?
AVAudioSession でサウンドを録音する方法を示すこの質問/回答を見つけました。
もしそうなら、私は何を見ているべきですか?AVAudioSession はサウンドも再生できますか?
(基本的にはアンプのように、入ってきた音をそのまま出力します)
ios - HDMI アクセサリが接続されている場合でも、AVAudioSession を強制的にヘッドフォン ジャックに出力することはできますか?
HDMI アダプタが接続されている場合でも、ヘッドフォン ジャックからオーディオを強制的に出力することはできますか?
iOS 5.0 には、複数のオーディオ ルート用の定数が含まれるようになりました。
また、iOS 5.0 は、読み取り/書き込み可能な kAudioSessionProperty_OutputDestination という新しいプロパティをサポートしていることもわかりました。
質問:
- プロパティは、出力ルートを強制できるように設計されていますか?
- ドキュメントには、USB オーディオ アクセサリが記載されています。アクセサリが接続されていない場合、または HDMI ケーブルが接続されている場合に機能しますか?
- このプロパティを正しく設定する方法を示すサンプル コードはありますか?
ありがとう!
ios - iOS / AudioSessions: 外部ヘッドセット マイクが存在する場合、内部マイクを介してオーディオをルーティングしますか?
缶に書かれているとおり:
外部ヘッドセット マイクが存在する場合、内部マイクを介してオーディオ入力をルーティングできますか?
もしそうなら、どのように?
編集:
私はこれを見つけました:
p.18
そのため、内蔵スピーカーを使用するようにオーバーライドすると、内蔵マイクの使用に自動的に切り替わります。
しかし、明示的にそれを行う方法がわかりません。
iphone - AVAudioSessionCategoryPlayAndRecord がミュート スイッチを検出しない
AVAudioSessionCategoryPlayAndRecord を使用して、他のサウンドを再生し続けたいので、ユーザーがマイクに吹き込んでいるのを検出しています。ただし、ミュート スイッチがオンの場合、オーディオを再生したくありませんが、録音したいです。
明らかに、ミュート スイッチがオンの場合、いくつかの IF-THEN ロジックを使用して AVAudioSessionCategoryRecord に変更できますが、それを検出するのに問題があります (別のユーザーの外見から、以前は機能していたソリューションが機能していないようです) iOS5)。
したがって、私の質問には2つの部分があります。
iOS 5 でミュート スイッチを検出する方法を見つけた人はいますか?
そうでない場合、AVAudioSessionCategoryPlayAndRecord を操作してミュート スイッチを検出する方法はありますか ( Apple によると、AVAudioSessionCategoryPlayAndRecord はミュート スイッチの影響を受けません)。
iphone - 中断が発生したときにオーディオ アプリをバックグラウンドでアクティブにしておくにはどうすればよいですか?
AVAudioSession と AVAudioPlayer およびオーディオ バックグラウンド モードを使用して、アプリをバックグラウンドでアクティブにしようとしています。割り込みが来なければ正常に動作します。しかし、audioPlayerBeginInterruption メッセージを受信すると、backgroundTask を起動し、audioPlayerEndInterruption メッセージを待ってから、オーディオ セッションを再起動します。
(私は、audioPlayerBeginInterruption アプリがまだアクティブな後、プレーヤーが一時停止していることに気付きましたが、audioPlayerEndInterruption アプリが中断された後)
問題 1 : audioPlayerEndInterruption メッセージが 10 分後に到着した場合、バックグラウンド タスクが強制終了され、アプリケーションが中断され、オーディオ セッションを再開できません
問題 2 : いくつかのアプリ/ゲームで、audioPlayerBeginInterruption メッセージを受け取りましたが、audioPlayerEndInterruption を受け取りませんでした。
アプリケーションを常にアクティブにするにはどうすればよいですか?
すべての回答とアドバイスに感謝します