마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

Mp4 file에서 헤더 정보를 가지고 있는 바이트 배열만 가져올 수 있나요?

0 추천
스트리밍을 구현하다 보니 일부분의 파일 정보를 스트림할 때 헤더 정보도 같이 스트림 해줘야 하는 것 같습니다. 헌데 파일에서 헤더 바이트 배열만 가져오는 방법을 찾기가 어렵네요. 혹시 아시는 분은 정보 부탁드립니다.
익명사용자 님이 2018년 9월 5일 질문

1개의 답변

0 추천
 
채택된 답변
소스는 isoparser를 응용하시면 될 겁니다.

https://github.com/sannies/mp4parser/tree/master/isoparser

 

단지 구현하시려면   mp4 파일의 box 구조를 어느정도 이해 하셔야 할 듯 하네요..

https://l.web.umkc.edu/lizhu/teaching/2016sp.video-communication/ref/mp4.pdf

mp4 파일은

파일정보를 표시하는 ftyp box

코덱, 실제 컨텐츠 위치 및 사이즈(seek을 위한 정보) ,  메터 정보 등이 들어있는 moov box

실제  데이터가 들어있는 mdat box 로 이뤄져있습니다.

즉 원하시는 정보는 moov box에 있으니, 이 box의 데이터까지 전송하면 됩니다.

( mdat 뒤에 moov box가 들어가는 경우도 있으니 무조건 읽는건 안되고,  뒤에 있을 땐 mdat를 건너띄고 구하셔야 합다..)
익명사용자 님이 2018년 9월 6일 답변
...