問題タブ [audiosessionservices]

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

iphone - 中断後、録音時の音声ルート変更通知が遅延

私の iPhone アプリケーションでは、ユーザーがいつヘッドフォンを接続したか、または接続していないかを知る必要があります。簡単だ。kAudioSessionProperty_AudioRouteChange をリッスンするコールバックを持つ AudioSessionAddPropertyListener。

何かが起こると、NSLog でログを書きます。ユーザーはヘッドフォンを接続しますか? 通知を受け取り、gdb コンソールに行を表示します。ユーザーはヘッドフォンを取り外しましたか? 同上。

同時に、録音オーディオ キューを開始して、環境のノイズ レベルを感知しています。これもうまく機能します。マイクのノイズ レベルを取得し、オーディオ ルートの変更を問題なく聞くことができます。

私が見つけたのは、中断した後、オーディオ セッションを再アクティブ化し、オーディオ カテゴリを kAudioSessionCategory_RecordAudio に復元したところ、オーディオ ルート通知が少しおかしくなったということです。

ヘッドフォンを接続しても、通知が表示されません。ヘッドフォンのプラグを抜くと、「プラグイン」通知と「プラグ抜き」通知の両方が立て続けに表示されます。

これは、「接続された」通知が遅れ、「接続されていない」通知が到着すると、保留中の通知のキューがフラッシュされるようなものです。

私は何を間違っていますか?時間のかかる通知を受け取るためにオーディオ セッションを正しく復元するにはどうすればよいですか?

編集: iPhone 3G で動作する iPhone OS 3.1.2。3.0 SDK (XCode 3.1.2 内から) でコンパイルされたプログラムを実行しています。

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

iphone - iPhone PlayAndRecord はすべてのシステム オーディオを無音にしますか?

私の iPhone アプリでは、オーディオの録音と iPod の音楽の再生を同時に試みているので、オーディオ セッション カテゴリを kAudioSessionCategory_PlayAndRecord に設定します。しかし、これを設定すると、すべてのシステム オーディオ (バイブレーションを含む) が機能しなくなりますが、iPod オーディオは引き続き機能します。これがSDKのバグなのか、それを回避する方法なのか、誰か知っていますか? 助けてください!

前もって感謝します!

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

ios - 時間遅延後にオーディオファイルを再生する

ユーザーがいくつかのアニメーションの再生などを見た後、20秒の遅延で再生を開始したいオーディオファイルがあります...

私がこれを行う方法を知っている人はいますか?5 つのアニメーションを再生した後、オーディオ ファイルを開始したいと考えています。ユーザーがアプリを終了するまで、すべてが循環し続けます。

オーディオファイルを再生するコードは次のとおりです。ボタンが押された場合、またはviewDidLoadで再生できるようになりました。これは正常に機能します。

助けてくれてありがとう

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

objective-c - C関数でObjective Cオブジェクトが認識されない

kAudioSessionProperty_AudioRouteChange のオーディオ セッション プロパティ リスナーを追加し、コールバックで UIImagePickerController の takePicture 関数を呼び出したいと考えています。問題は、コールバックでピッカーにアクセスできないことです。

viewDidLoad でピッカーを初期化しています。ピッカーをプライベート オブジェクトとパブリック オブジェクトの両方として宣言し、ピッカーまたは self.picker でアクセスしようとしましたが、常に「宣言されていない識別子の使用」エラーが発生します。このコードを使用してリスナーを追加します。

これは私のコールバックです:

また、これが UIImagePickerController のみの問題であるかどうかを確認するために NSArray を宣言しましたが、配列でも同じエラーが発生します。

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

ios - iOS でオーディオ セッションがアクティブかどうかを確認する方法

iOS アプリで true または false に設定するためにAudioSessionSetActive(true) と(false) を使用しています。いつでも、セッションがアクティブかどうかを確認したいと考えています。それを行う方法はありますか?AudioSessionSetActiveAudioSession

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

ios - AudioSessionGetPropertyによって返されるオブジェクトを所有していますか?

メソッドの名前には「Get」が含まれており、を介して何かを返しませんreturn。たとえば、次のようにCFStringRefへのポインタを取ります。

ドキュメントには、関数が提供されたoutValueポインターに値を「コピー」すると記載されています。

つまり、これは+1の保持カウントを持つオブジェクトを作成することであり、私はそのデータを解放/解放する責任がありますか?

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

iphone - Bluetoothヘッドセットからの音声を録音し、同時にiPhoneスピーカーで再生することはできますか?

Bluetooth ヘッドセットからの音声を録音し、iPhone スピーカー (Bluetooth ヘッドセット スピーカーではなく) で再生する必要があるアプリを作成しています。私は試した:

その後、音楽ファイルを iPhone スピーカーで再生したいので、次のコードを使用しました。

ここで私のコードは機能していますが、同時にではありません。アプリでは、スピーカーが引き続き音楽を再生し、Bluetooth ヘッドセットから音声を録音する必要があります。