2012-08-10 4 views
6

Smooth Streaming 서버에서 비디오 파일을 다시 작성하려고합니다. Smooth Streaming은 FTYP 나 MOOV 아톰이없는 일반 MP4 파일 인 fMP4 파일을 제공합니다.조각난 MP4 "mdat"원자에서 MP4 파일을 다시 빌드 하시겠습니까?

이러한 원자에 저장된 모든 정보는 Manifest XML 파일에 저장됩니다.

중 하나에 의해 프로그래밍 원래 MP4 파일을 다시 할 수있는 방법이 있나요 : 직선 MDAT (및 사진 형식 정보를 정기적으로)에 위치한 H264/AAC 내용에서 새 파일을 재건

  • ; 또는
  • 재건 FTYP와 MOOV 원자

아니면, fMP4을 병합 할 수있는 도구가 있습니까?

답변

3

예. 그것은 완전히 가능합니다.

FFmpeg로 할 수 있습니다. libavformat에서 mov.c [MP4 demuxer]를 공부하십시오.

fMP4에 "누락 된"모든 데이터가있는 메모리에서 MP4를 완료해야합니다. 즉, fMP4에 존재하지 않는 원자 (거의 모든 것)가 필요할 때, 하드 코드 된 모든 정보를 입력해야합니다 (그러한 정보는 대부분 매니페스트에서 나온 것입니다).

쉽지는 않지만 ... 가능합니다. 나는 혼자 다했다. 불행히도 코드는 내 재산이 아닙니다.

행운을 빈다. ;-)

UPDATE : 부산 국제 영화제 형식 사양이 매우 유용 할 것입니다 (http://go.microsoft.com/?linkid=9682897) 그래서 하나가 fMP4 이미 무엇을하지 무엇인지 이해할 수있다!

0

조각난 mp4 파일과 관련된 ism 및 ismc 파일이있는 경우 mp4 파일을 다시 작성하는 것이 간단합니다.

moov 및 ftyp 원자를 다시 작성하려면 각 트랙의 미디어 유형, 코덱 유형, 코덱 관련 데이터 및 시간 척도를 알아야합니다.

이러한 정보는 ism 및 ismc 파일에서 검색 할 수 있습니다.

ism 파일에서 각 트랙의 미디어 유형을 검색 할 수 있습니다. ismc 파일에서 각 트랙의 코덱 유형, 코덱 관련 데이터 및 시간 척도를 검색 할 수 있습니다.

간단히 말해 ism/ismc 파일은 서버 및 클라이언트에 대한 메타 데이터이므로 mp4 파일에 대한 메타 데이터 (ftyp, moov atom)를 다시 작성할 수 있습니다.

+0

ism, ismc 및 ismv (조각난 mp4 파일)가 있습니다. Ismc 파일에서 각 트랙의 코덱 유형, 코덱 관련 데이터 및 시간 척도를 얻을 수 있습니다. 또한이 정보는 http : //localhost/pp/Test.ism/Manifest와 같이 url에/Manifest를 추가하여 액세스 할 수 있습니다. 이것은 매니페스트 데이터를 반환합니다. 지금부터이 방법으로 MP4 파일을 만드는 방법을 알려주시겠습니까? 내 말은, 이것을 할 수있는 라이브러리 나 코드 스 니펫이 있는지 여부입니다. 지난 1 개월 이래로 동일한 작업을 시도 중이므로 아무런 진전이 없습니다. 제게 아이디어를주십시오. – waghekapil