2009-08-13 2 views

답변

0

.mov 파일을 구문 분석 할 수있는 C# 라이브러리에 대해 잘 모릅니다. 사용자 환경에서 관리되지 않는 코드를 호출 할 수 있습니까? (FullTrust 권한이 필요함)

파일을 직접 구문 분석하는 것은 어렵습니다. (우리는 DirectShow 필터에서 한 번 수행했습니다), 라이브러리를 사용하여 작업을 수행하는 것이 좋습니다. MediaInfo 또는 ffmpeg

또는 MP4 컨테이너가 .mov 파일을 매우 유사하다에서 예를 들어 봐, 그래서 당신은 또한 (시작 타임 코드에 대한 예)

+0

예, 내 환경에서 비 관리 코드를 호출 할 수 있습니다. MediaInfo 및 ffmpeg를보고 타임 코드 및 길이 속성이 표시되지 않습니다. 나는 이걸 처음 듣고 내가 뭔가 빠졌는 지 말해 줄 수 있니? 감사! –

+0

GUI 버전의 MediaInfo에서 세부 정보를 표시하도록보기를 변경할 수 있습니다. 나는 보통 '나무'보기를 사용합니다. – chris166

+0

프로그램 적으로 두 속성 (시작 타임 코드와 길이)을 가져와야하는데, MediaInfo를 사용하여이 작업을 수행 할 수 있다고 생각하십니까? TIA –

0

당신이 만약 매우 상세한 정보를 추출하는 mp4box 같은 MP4 도구를 사용할 수 있습니다 관리되지 않는 코드를 호출 할 수있는 경우 Windows 용 QuickTime을 사용하여이 정보를 얻을 수 있습니다.

실패하면 원하는 모든 정보가 동영상 헤더 아톰에 있습니다. 모든 퀵타임 무비는 시간 0에서 시작하여 (그래서 문제의 절반이 해결됩니다) 그리고 가장 긴 궤적과 동일한 지정된 지속 시간으로 끝납니다. 시간은 초당 시간 단위 수를 정의하는 영화 시간 척도에 따라 지정됩니다. 기본값은 초당 600 개입니다.

형식이 'mvhd' 인 동영상 머리글 아톰에 대한 파일을 검색 한 다음 시작 시간보다 16 바이트 뒤에있는 아톰의 시간 비율 및 기간 필드로 건너 뜁니다 원자 유형 필드 (당신이 발견 한 'mvhd'). 각각은 빅 엔디 언 4 바이트 부호없는 정수입니다.

그러나 QuickTime은 컨테이너 형식이며 모든 동영상 파일에 동영상 헤더가 포함되어있는 것은 아닙니다. 일부는 실제 영화 데이터가있는 다른 위치를 가리키는 단순한 참조 또는 스트리밍 영화입니다. 무비 헤더가 존재하더라도 실제로 파일의 데이터를 처리 할 필요는 없습니다.

QuickTime File Format Specification에서 QuickTime 파일 형식에 대해 너무 많이 읽을 수 있습니다. MPEG-4 파일 형식은 실제로 QuickTime 파일 형식을 기반으로하므로 이에 대해 알고 있으면 지식을 전송해야합니다.

관련 문제