Skip to content

Instantly share code, notes, and snippets.

@yoshimin
Created April 26, 2013 03:21
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save yoshimin/5464865 to your computer and use it in GitHub Desktop.
Save yoshimin/5464865 to your computer and use it in GitHub Desktop.
イヤホンジャックに指している状態でスピーカーから音を鳴らす
//セッションの初期化と割り込みコールバックの登録
//デフォルト実行ループを使う場合はNULLを指定
AudioSessionInitialize(NULL,
//デフォルトの実行ループモードを使う場合はNULLを指定
NULL,
//割り込みコールバック関数への参照
NULL,
//割り込みコールバック関数に渡すためのデータ
NULL);
//出力オーディオをリダイレクトしたままの状態にしたい(出力経路を下のスピーカーにしておきたい)場合は、デフォルトの出力を変更する。
//デフォルトの出力オーディオ経路を変更する
UInt32 doChangeDefaultRoute = 1;
//設定対象となるオーディオセッションプロパティのキー
AudioSessionSetProperty (kAudioSessionProperty_OverrideCategoryDefaultToSpeaker,
//設定するプロパティ値のデータサイズ
sizeof (doChangeDefaultRoute),
//オーディオセッションのカテゴリに適用したいオーディオ経路オーバーライドの値
&doChangeDefaultRoute);
//出力オーディオ経路のオーバーライド
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,
sizeof (audioRouteOverride),
&audioRouteOverride);
//再生を再開する直前に、オーディオセッションをアクティブにする
AudioSessionSetActive(YES);
//音声の再生
NSString *path = [[NSBundle mainBundle] pathForResource:@"sound" ofType:@"wav"];
NSURL *url = [NSURL URLWithString:path];
_player = [[AVAudioPlayer alloc] initWithContentsOfURL:url error:nil];
[_player play];
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment