본문

MPMoviePlayerController의 Notifications목록

MPMovieDurationAvailableNotification
동영상 객체의 총 재생시간을 알아낼 경우 알림이 발생한다. 총 재생시간은 MoviePlayerController.property에 반영된다.

MPMovieMediaTypesAvailableNotification
동영상 객체의 미디어 타입이 파악된 경우 알림이 발생한다. 지원되는 미디어 타입은 MoviePlayerController.movieMediaTypes에 반영된다.

MPMovieNaturalSizeAvailableNotification
동영상 객체의 프레임 사이즈가 처음 파악된 경우, 혹은 그 후에라도 변경된 경우 알림이 발생한다. 프레임 사이즈값은 MoviePlayerController.naturalSize에 반영된다
 
MPMoviePlayerContentPreloadDidFinishNotification
observer에게 동영상이 메모리에 올라가서 재생준비가 완료되었다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 만약 로드중에 오류가 발생한다면 알림 객체의 userinfo는 "error"키에 오류를 서술하는 NSError객체를 가지게 된다 (iOS 3.2 버전부터 Deprecated되었다. 플레이어가 준비되었는지 알고 싶을 경우 이 대신 MPMoviePlayerLoadStateDidChangeNotification notificaton을 사용하라 
 
MPMoviePlayerDidEnterFullscreenNotification
observer에게 동영상 플레이어가 전체화면 모드로 재생이 된다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 사용자의 조작이 notification을 유발할 수 있다
 
MPMoviePlayerDidExitFullscreenNotification
observer에게 동영상 플레이어가 전체화면 모드에서 빠져나왔다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 사용자의 조작이 notification을 유발할 수 있다
 
MPMoviePlayerLoadStateDidChangeNotification
observer에게 네트워크 버퍼링 상태가 변했다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 현재 버퍼링 상태는 MoviePlayerController.loadState에서 확인할 수 있다
* MPMovieLoadState :
MPMovieLoadStateUnknown : 상태를 알 수 없다
MPMovieLoadStatePlayable : 충분한 버퍼가 모여서 재생할 수 있지만, 재생이 끝나기 전에 끊길 수 있다. 
MPMovieLoadStatePlaythroughOK : 충분한 버퍼가 모여서 끊김없이 재생할 수 있다
MPMovieLoadStateStalled : 아직 충분한 버퍼가 모이지 않았기 떄문에 저장된 버퍼 이후에서는 일시정지 될 수 있다.
 
MPMoviePlayerNowPlayingMovieDidChangeNotification
observer에게 재생하는 동영상이 변경되었다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 현재 재생되는 동영상의 주소는 MoviePlayerController.contentURL에서 확인할 수 있다

MPMoviePlayerPlaybackDidFinishNotification
observer에게 동영상의 재생이 끝났다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. userInfo의MPMoviePlayerPlaybackDidFinishReasonUserInfoKey키에는 동영상이 종료된 이유를 나타낸다. 이 notification은 오류로 이노하여 재생이 실패했을때에도 발생한다. 이 notification은 동영상을 전체화면으로 재생하던 중 사용자가 Done버튼을 눌렀을때에는 발생하지 않는다. Done버튼이 눌렸을경우에는 동영상 재생이 일시정지 된 상태에서 전체화면에서 빠져나오기 때문이다. 이런경우에는 MPMoviePlayerDidExitFullscreenNotification등과 같은 notification을 확인해야 한다.
 
MPMoviePlayerPlaybackStateDidChangeNotification
observer에게 동영상 재생상태가 변경되었다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 동영상의 재생상태는 사용자의 행위 혹은 프로그램 로직상에의해 변경될 수 있다. 현재 재생되는 동영상의 상태는 MoviePlayer.playbackState에서 확인할 수 있다
* MPMoviePlaybackState : 
MPMoviePlaybackStateStopped : 동영상이 정지되어있으며, 동영상의 처음부터 재생될것이다
MPMoviePlaybackStatePlaying : 현재 동영상이 재생중이다
MPMoviePlaybackStatePaused : 동영상이 일시정지되었다. 일시정지 된 시점부터 다시 재생될 것이다.
MPMoviePlaybackStateInterrupted : 동영상 재생이 일시적으로 멈추었다. 대개 동영상 버퍼가 부족한 이유이다.
MPMoviePlaybackStateSeekingForward : 동영상 끝을향해 빨리감기중이다
MPMoviePlaybackStateSeekingBackward : 동영상의 처음을 향해 빨리감기중이다.
 
MPMoviePlayerScalingModeDidChangeNotification
observer에게 동영상 플레이어의 scaling mode(화면 크기)가 변경되었다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 사용자의 조작이 notification을 유발할 수있다.
 
MPMoviePlayerThumbnailImageRequestDidFinishNotification
observer에게 동영상 섬네일 제작이 완료되었다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 이 notification에는 MPMoviePlayerThumbnailImageKey와 MPMoviePlayerThumbnailTimeKey키가 있으며, 만약 오류가 발생한 경우 MPMoviePlayerThumbnailErrorKey와 MPMoviePlayerThumbnailTimeKey키를 갖는다.
 
MPMoviePlayerWillEnterFullscreenNotification
observer에게 동영상 플레이어가 전체화면으로 들어가려 한다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 이 notification에는 전체화면으로 들어가기 위한 화면 전환 애니메이션에 대한 키를 갖는데 이 키에 대해서는 Fullscreen Notification Keys 페이지에 기록되어있다. 사용자 조작이 notification을 유발할 수 있다.
 
MPMoviePlayerWillExitFullscreenNotification
observer에게 동영상 플레이어가 전체화면에서 나오려 한다는것을 알린다. 해당 동영상 플레이어는 notification의 인자로 전달된다. 이 notification에는 전체화면에서 나오기 위한 화면 전환 애니메이션에 대한 키를 갖는데 이 키에 대해서는 Fullscreen Notification Keys 페이지에 기록되어있다. 사용자 조작이 notification을 유발할 수 있다.
 
MPMovieSourceTypeAvailableNotification
이 notification은 동영상의 원본 타입에 대해 모르고 있다가 추후에 알게되었을 경우 발생된다. 원본 타입은 MoviePlayerController.movieSource에 반영된다
* movieSource : 이 속성의 기본 값은 MPMovieSourceTypeUnknown이다. 이 속성은 동영상 재생 시스템에게 동영상을 어떻게 다운로드하고 버퍼링 할것인가에 대해서 알려준다. 만약 동영상의 원본타입을 안다면, 이 값을 동영상 재생전에 설정해 주는것이 동영상 버퍼링 시간을 단축시켜 줄 수 있다. 만약 동영상 재생전에 이 값을 직접 설정하지 않는다면 MPMoviePlayerContoller는 정보를 직접 얻어야 하며, 이는 재생시간의 지연을 일으킬 수 있다

출처 : http://developer.apple.com/library/ios/#documentation/mediaplayer/reference/MPMoviePlayerController_Class/Reference/Reference.html 

댓글

Holic Spirit :: Tistory Edition

design by tokiidesu. powerd by kakao.