동영상 정보 얻는 과정
미디어 플레이어 6은 미디어 파일을 불러오게 되면 전체 재생 시간, 이미지 크기 등의 필요한 정보를 모두 얻을 수 있다. 그러나 미디어 플레이어 7에서는 미디어 파일을 불러온 다음 Play 함수를 호출해 재생을 시킨 후, Open State Change 이벤트 중 13번 MediaOpen 이벤트가 호출될 때까지 대기하다가, MediaOpen 이벤트가 호출되면 Stop 함수를 호출해 재생 작업을 중지하고 난 뒤에서야 전체 재생 시간이나 이미지의 크기 등의 필요한 정보를 얻을 수 있다.
미디어 플레이어의 상태
미디어 플레이어 6은 미디어 플레이어가 세 가지의 상태로 동작한다. 세 가지란 Play, Open, Readye로 각 상태마다 고유한 상태 값을 가지게 된다. 상태 값을 약간만 보여주면 다음과 같다.
- Open State
0 : Closed
1 : LoadingASX
2 : LoadingNSC
3 : Locating
4 : Connecting
5 : Opening
6 : Open
- Play State
1 : Stopped
2 : Paused
3 : Playing
4 : Waiting
5 : ScanForward
6 : ScanReverse
7 : SkipForward
8 : SkipReverse
9 : Closed
- Ready State
0 : ReadyStateUninitialized
1 : ReadyStateLoading
2 : ReadyStateInteractive
3 : ReadyStateComplete
그러나 미디어 플레이어 7은 Play와 Open의 두 가지의 상태만을 갖고 있다. 또한, 각 상태마다 갖게 되는 상태 값도 전혀 다르다.
버퍼링
미디어 플레이어 6과 미디어 플레이어 7의 버퍼링과 관련된 내부 동작 순서는 전혀 다르다. 미디어 플레이어 6에서는 BufferingState라는 함수로 버퍼링의 시작과 중지 시에 BOOL 변수로 이벤트가 날아오지만, 미디어 플레이어 7에서는 PlayState의 버퍼링 신호가 시작 시에 한번 들어오게 된다. 조금 더 자세하게 설명하면 미디어 플레이어 6의 경우에는 다음과 같은 순서로 진행된다.