MDAT

2014-02-17 11 views
0

퀵타임 문서는 키 프레임을 발견하기 위해 다음과 같은 방법을 권장 키 프레임을 찾는 :MDAT

약간 더 영화에 지정된 시간 동안 키 프레임을 찾기 키 프레임

입니다 찾기 복잡 지정된 시간 동안 견본을 찾는 것보다. 미디어 핸들러는 키 프레임을 찾기 위해 sync 샘플 아톰과 time-to-sample 아톰 을 함께 사용해야합니다.

매체 처리기는 다음 단계를 수행

  1. 지정된 시간에 대한 데이터를 포함하는 샘플 수를 결정하는 시간 - 대 - 샘플 원자를 조사한다.
  2. 1 단계에서 선택한 샘플 번호 앞에 오는 키 프레임을 찾기 위해 동기화 샘플 아톰을 검색합니다.
  3. 샘플 대 청크 원자를 스캔하여 키 프레임이 포함 된 청크를 검색합니다.
  4. 청크 오프셋 원자에서 청크에 대한 오프셋을 추출합니다.
  5. 샘플 크기 원자를 사용하여 청크 내에서 오프셋과 샘플 크기를 찾습니다.

소스 : https://developer.apple.com/library/mac/documentation/QuickTime/qtff/QTFFChap2/qtff2.html

이 매우 혼란, 여러 트랙 ("TRAK"원자) 다른 오프셋을 얻을 것이기 때문이다. 예를 들어, 비디오 트랙의 keyframe-sample-chunk-offset 값은 하나의 값이되고 오디오는 다른 값이됩니다.

위의 지침을 파일 (또는 mdat 아톰)의 위치로 변환하는 방법은 무엇입니까?

답변

0

키 프레임에만 국한되지 않습니다. 일반적으로 서로 다른 트랙의 샘플이 파일에서 서로 가깝다는 것을 보장 할 수 없습니다. 과도한 검색없이 동영상을 재생할 수 있도록 오디오 및 비디오가 인터리브되기를 희망하지만 파일을 만든 소프트웨어의 책임입니다. 각 트랙에는 자체 샘플 테이블과 샘플이 파일에있는 위치를 알려주는 청크 아톰이 있으며 어디에도있을 수 있습니다. (참조 파일은 현재 사용되지 않지만 다른 파일에도있을 수 있으므로 무시해도 좋습니다.)

+0

감사합니다. 비디오 트랙의 샘플에 대한 키 프레임은 iframe (예 : ffprobe를 사용하여 찾으십시오)? – davidkomer