2013 이전/iOS개발

[iPhone 개발] audio 출력 변경하기

하구루 2017. 2. 25. 16:02

audio를 이용하는 앱을 만들다 보면 해당 audio를  speaker 로 출력하고 싶을 수 있을 것이다.

그때 이용하는 것이 AudioSession 이다
UInt32 audioRouteOverride = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);

다음과 같이 해당 property를 바꿔주는 방식으로 speaker로 출력을 변경할 수 있다.


다시 일반 출력으로 바꾸고 싶을때는

kAudioSessionOverrideAudioRoute_Speaker 대신에,


kAudioSessionOverrideAudioRoute_None 로 위와 같은 방식으로 property 를 새로 지정해 주면 된다.

audio player 객체와 관계 없이 어디서든 변경할 수 있다.

당연히 AVFoundation.framework 를 추가해 주어야 하고,


#import <AVFoundation/AVFoundation.h>

#import <AudioToolbox/AudioToolbox.h>

요 두가지가 import되어야 한다.

반응형