Created
April 26, 2013 03:21
-
-
Save yoshimin/5464865 to your computer and use it in GitHub Desktop.
イヤホンジャックに指している状態でスピーカーから音を鳴らす
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
//セッションの初期化と割り込みコールバックの登録 | |
//デフォルト実行ループを使う場合は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