1

予期しないオーディオ動作が発生します:

問題-iPhoneデバイスの音量は非常に小さいですが、ヘッドホンを接続すると音量は完璧です

  1. まず、何も接続せずにiPhoneでアプリを起動します。
  2. オーディオは機能しますが、実際には最小音量であるかのように、非常にかすかになります。しかし、それは最大音量です。
  3. 今、私はヘッドホンを接続します。フルボリューム。すごい!
  4. ヘッドホンのプラグを抜きます。(2)に進む

ヘッドホンを接続した状態から始めるかどうかは関係ありません。無関係の問題のようです

編集:この動作は私のアプリに特有のものです。AppleのAVTouchサンプルを試しましたが、これはヘッドフォンの有無にかかわらず正しく動作します。

4

1 に答える 1

2

ウーフー!

// kAudioSessionOverrideAudioRoute_Speaker would only work once.  
// kAudioSessionProperty_OverrideCategoryDefaultToSpeaker works
//     until the session changes.
SET_PROPERTY( kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,        UInt32,   (UInt32) YES );

基本的に、iPhone には 2 つの内部スピーカーがあります。通話を受信すると耳にぶつかる「レシーバー」と、はるかに大きな外部スピーカー (これら 2 つのグリルは電源スロットの両側にあり、左側のスピーカーは外部スピーカーです。右はマイクです -- 紛らわしいです: 私は以前、iPhone をタイの修理店に持って行きました。なぜなら、'右のスピーカー' が機能していなかったからです。 ... )

とにかく、私が考えることができる正当な理由はまったくありませんが、

SET_PROPERTY( kAudioSessionProperty_AudioCategory,  UInt32,  
                 kAudioSessionCategory_PlayAndRecord );

セッションはデフォルトでレシーバーを使用するため、代わりにスピーカーを使用するように指示するだけで済みます。

于 2011-04-29T04:47:00.260 に答える