iOS 5.0에서 바뀐 H.264 동영상 재생 규격 (수정)


작년 이맘때 아이폰4에서 재생 가능한 비디오 규격에 관련된 글을 포스팅했다.
그 때의 iOS는 4.2.1이었는데, 이후 5.0이 출시되면서 재생 가능한 동영상 규격이 약간 바뀌었다.

공식적인 스펙은 전혀 바뀐 내용 없음


1. Level

iOS 4.x에서는 H.264 level 3.1까지 업로드/재생이 가능했는데, 5.0에서는 4.1까지 업로드/재생이 가능하게 바뀌었다.
홈페이지에는 3.1이라고 되어있지만, 실제 업로드 해보면 4.1까지 올라간다.

그리고, 5.2까지도 level을 속이면 재생이 가능하다. 5.2 High Profile의 H.264 동영상도 3.1로 속이면 무난히 재생된다.


2. Reference Frames

인코딩 시 최대 참조 프레임 수를 지정할 수 있게 되어있다.
그런데, 이 숫자의 한계에 대해선 따로 언급되어 있지 않다.
일일이 확인해본 결과 최대 15개 까지의 H.264 동영상을 재생할 수 있었다.
즉, level 3.1이라도 참조 프레임 수를 16개로 지정하면 재생되지 않는다.

Reference Frames 수를 16으로 지정하면 이렇게 재생이 불가능함



3. 해상도

H.264의 level을 따로 확인하지는 않지만, 재생 가능한 해상도는 level 3.1의 해상도를 그대로 따른다.

즉, 30fps 이하의 동영상은 1280x720 까지만 재생/업로드 된다.