2008-12-22 2 views
1

내 응용 프로그램에서 일부 오디오 파일을 재생해야하며 iPod 사운드가 페이드 아웃되고 파일을 재생 한 다음 오디오가 페이드 인 상태로 다시 재생되는 즉시 iPod touch에서 음악을 수신하는 것처럼)에서 제공애플 리케이션이 페이드 아웃 한 후에 iPod의 오디오가 왜 사라지지 않습니까?

내가 kAudioSessionCategory_MediaPlayback 다음 내가 AudioSessionSetActive 전화 내 파일을 재생하기 직전에 (참) 로 내 응용 프로그램의 오디오 세션을 설정하고있어

다음 내 파일 I()가 false

AudioSessionSetActive를 호출 재생 종료 될 때 iPodSudio가 AudioSessionSetActive (true) 호출로 페이드 아웃되지만 AudioSessionSetActive (false)를 호출 한 후에 다시 페이드 인하지 않습니다.

AVPoundation 클래스를 사용하여 오디오를 재생하고 있으며, 위임 메서드에서 audioPlayerDidFinishPlaying을 사용하고 있는데 AudioSessionSetActive (false)를 호출합니다.

무엇이 여기에 있습니까? 오디오 세션을 비활성화 할 때 iPod이 왜 사라지지 않습니까? 이를 위해 잘못된 오디오 세션 범주가 있습니까?

답변

2

나는 이것에 관해 애플로부터 대답을 얻었다. 안타깝게도 SDK 2.2에서는 불가능합니다. 기능 요청을 제출 했으므로 나중에이 기능을 추가 할 수 있습니다.

4

좋아, 이거 멋지다. iPhone OS3의 경우 AddMusic 예제를 참조하십시오.

본질적으로, 당신은이 작업을 수행 :

#import <MediaPlayer/MediaPlayer.h> 
... 
[[MPMusicPlayerController iPodMusicPlayer] pause] 
...(play your audio, with AmbientSound category) 
[[MPMusicPlayerController iPodMusicPlayer] play] 

이 기본이다. 볼륨 변경 등을 반복하여 페이드 아웃을 추가 할 수도 있습니다.

관련 문제