파일의 최상위 ASF 헤더 개체에는 여러 ASF 하위 헤더 개체가 포함되어 있습니다. ContentInfo 개체는 이러한 모든 헤더 개체의 정보를 저장하고 특성을 통해 특정 값을 애플리케이션에 노출합니다.
파일 속성 개체
이 헤더 개체는 모든 ASF 파일에 있습니다. 이러한 필드는 전체 프레젠테이션의 파일 수준 특성을 설명합니다. 다음 표에서는 파일 속성 개체의 필드와 해당 프레젠테이션 설명자 특성을 나열합니다.
| 파일 속성 개체 필드 | 프레젠테이션 설명자 특성 | 묘사 |
|---|---|---|
| 파일 ID | MF_PD_ASF_FILEPROPERTIES_FILE_ID | 이 파일의 고유 식별자입니다. |
| 파일 크기 | MF_PD_TOTAL_FILE_SIZE | 파일 크기(바이트)입니다. |
| 만들기 날짜 | MF_PD_ASF_FILEPROPERTIES_CREATION_TIME | 파일 생성 날짜 및 시간입니다. |
| 데이터 패킷 수 | MF_PD_ASF_FILEPROPERTIES_PACKETS | ASF 데이터 개체의 데이터 패킷 수입니다. |
| 재생 기간 | MF_PD_ASF_FILEPROPERTIES_PLAY_DURATION | 파일을 재생하는 데 필요한 시간(100나노초 단위)입니다. 이 값에는 미리 등록 시간이 포함됩니다. |
| 보내기 기간 | MF_PD_ASF_FILEPROPERTIES_SEND_DURATION | 파일을 보내는 데 필요한 시간(100나노초 단위)입니다. |
| 사전 등록 | MF_PD_ASF_FILEPROPERTIES_PREROLL | 파일을 재생하기 전에 데이터를 버퍼링하는 데 걸리는 시간(100나노초 단위)입니다. |
| 플래그 | MF_PD_ASF_FILEPROPERTIES_FLAGS | 파일이 브로드캐스트인지 검색 가능한지를 나타내는 플래그입니다. |
| 최소 데이터 패킷 크기 | MF_PD_ASF_FILEPROPERTIES_MIN_PACKET_SIZE | 파일의 데이터 패킷 최소 크기(바이트)입니다. |
| 최대 데이터 패킷 크기 | MF_PD_ASF_FILEPROPERTIES_MAX_PACKET_SIZE | 파일의 데이터 패킷 최대 크기(바이트)입니다. |
| 최대 비트 전송률 | MF_PD_ASF_FILEPROPERTIES_MAX_BITRATE | 최대 인스턴스 비트 전송률(초당 비트 수)입니다. |
Stream 속성 개체
이 헤더 개체는 ASF 파일의 스트림 속성을 설명합니다. Media Foundation에서 프로필 개체 및 스트림 구성 개체에 의해 관리됩니다. 자세한 내용은 ASF 스트림만들기 및 구성을 참조하세요.
Codec List 개체
이 헤더 개체가 있는 경우 MF_PD_ASF_CODECLIST 특성은 ASF 파일 내에서 스트림을 인코딩하는 데 사용된 코덱 목록을 제공합니다. 각 스트림에는 이 개체의 코덱 정보가 있어야 합니다.
Script Command 개체
이 헤더 개체가 있으면 ASF 파일에서 지원되는 스크립트 명령 목록을 지정합니다. 스크립트 명령은 명령 유형, 명령 이름 및 프레젠테이션 시간으로 구성됩니다. 명령 유형 및 명령 이름은 와이드 문자열입니다. 이러한 명령을 사용하여 프레젠테이션의 특정 지점에서 작업을 수행하도록 클라이언트에 알릴 수 있습니다. 예를 들어 애플리케이션은 명령 형식 "FILENAME"을 사용하여 ASF 파일의 연속 시퀀스를 재생할 수 있습니다.
스크립트 명령 목록을 얻으려면 프레젠테이션 설명자에서 MF_PD_ASF_SCRIPT 특성을 가져옵니다. 애플리케이션은 재생을 시작하기 전에 모든 스크립트 명령을 검색해야 합니다.
Marker 개체
표식은 ASF 파일 내의 책갈피입니다. 애플리케이션은 마커를 사용하여 콘텐츠 내의 다양한 지점을 검색할 수 있습니다. 각 표식은 표식 이름, 연결된 프레젠테이션 시간 및 파일 시작 부분의 오프셋으로 구성됩니다. MF_PD_ASF_MARKER 특성은 파일에 사용할 수 있는 표식 목록을 제공합니다.
Stream 비트 전송률 속성 개체
이 헤더는 ASF 파일에 있는 각 스트림의 평균 비트 속도를 저장합니다. 이 값은 MF_SD_ASF_STREAMBITRATES_BITRATE 특성의 스트림에 대한 스트림 설명자에 저장됩니다.
콘텐츠 암호화 개체
이 헤더 개체는 콘텐츠 공급자가 Microsoft Digital Rights Management를 사용하여 콘텐츠를 보호한 경우에 존재합니다. 다음 표에서는 콘텐츠 암호화 개체의 필드와 해당 프레젠테이션 설명자 특성을 나열합니다.
| 콘텐츠 암호화 개체 필드 | 프레젠테이션 설명자 특성 | 묘사 |
|---|---|---|
| 비밀 데이터 | MF_PD_ASF_CONTENTENCRYPTION_SECRET_DATA | 비밀 데이터를 포함하는 바이트 배열입니다. |
| 보호 유형 | MF_PD_ASF_CONTENTENCRYPTION_TYPE | 값이 "DRM"인 Null로 끝나는 문자열입니다. |
| 키 ID | MF_PD_ASF_CONTENTENCRYPTION_KEYID | 키 식별자를 설명하는 Null로 끝나는 문자열입니다. |
| 라이선스 URL | MF_PD_ASF_CONTENTENCRYPTION_LICENSE_URL | 콘텐츠를 사용할 라이선스를 획득할 URL이 포함된 Null로 종료된 문자열입니다. |
확장 콘텐츠 암호화 개체
이 헤더 개체는 콘텐츠 공급자가 Windows Media Rights Manager 7 SDK를 사용하여 콘텐츠를 보호한 경우에 존재합니다. MF_PD_ASF_CONTENTENCRYPTION_LICENSE_URL 특성은 헤더 개체의 데이터 필드에 해당하는 바이트 배열을 제공합니다. 이 필드는 콘텐츠를 사용하는 데 필요합니다.
확장 스트림 속성 개체
이 헤더는 헤더 확장 개체의 일부입니다. 확장 스트림 속성 개체는 스트림 속성 개체에 정의되지 않은 스트림의 속성을 제공합니다. 이러한 속성은 주로 디코더에서 사용되는 "새는 버킷" 매개 변수를 결정하는 데 사용됩니다. 이러한 속성은 데이터를 압축할 때 인코더에서도 사용됩니다. 프로필 개체 및 스트림 구성 개체에서 관리됩니다. 자세한 내용은 ASF 스트림만들기 및 구성을 참조하세요.
다음 표에서는 확장 스트림 속성 개체 필드와 해당 스트림 설명자 특성을 나열합니다.
| 확장 스트림 속성 필드 | 스트림 설명자 특성 | 묘사 |
|---|---|---|
| 데이터 비트 전송률 | MF_SD_ASF_EXTSTRMPROP_AVG_DATA_BITRATE | 평균 데이터 속도(초당 비트)입니다. |
| 버퍼 크기 | MF_SD_ASF_EXTSTRMPROP_AVG_BUFFERSIZE | 새는 버킷 크기입니다. 값은 평균 데이터 속도로 버퍼에 맞을 수 있는 데이터 수(밀리초)입니다. |
| 대체 데이터 비트 전송률 | MF_SD_ASF_EXTSTRMPROP_MAX_DATA_BITRATE | 최고 데이터 속도(초당 한 입)입니다. 최고 데이터 속도는 비트 속도가 가변적인 스트림에 사용됩니다. |
| 대체 버퍼 크기 | MF_SD_ASF_EXTSTRMPROP_MAX_BUFFERSIZE | 최대 새는 버킷 크기입니다. 값은 최대 데이터 속도로 버퍼에 맞을 수 있는 데이터 수(밀리초)입니다. |
| 스트림 언어 ID | MF_SD_ASF_EXTSTRMPROP_LANGUAGE_ID_INDEX | 언어 목록 개체의 언어 목록에 인덱스로 지정된 스트림에서 사용하는 언어입니다. |
Language List 개체
이 헤더 개체는 헤더 확장 개체의 일부입니다. 있는 경우 MF_PD_ASF_LANGLIST 특성은 파일에서 지원되는 언어 식별자 목록을 제공합니다. 식별자는 언어를 지정하기 위해 RFC 1766을 준수합니다.
상호 제외 개체
이 헤더는 스트림 그룹 및 해당 속성을 지정하며, 그 중 하나만 한 번에 배달됩니다. 자세한 내용은 ASF 스트림 상호 제외를 사용하는참조하세요.
관련 항목
-
Media Foundation ASF 지원