전체 및 부분 미디어 유형
이 항목에서는 전체 미디어 형식과 부분 미디어 형식의 차이점에 대해 설명합니다.
전체 미디어 유형은 미디어 스트림의 형식을 완전히 정의하는 형식입니다. 전체 미디어 형식이 지정된 경우 파이프라인 구성 요소는 모호성 없이 미디어 형식과 연결된 스트림 데이터를 구문 분석할 수 있습니다.
압축되지 않은 형식의 경우 다음 topics 전체 미디어 형식에 필요한 특성을 정의합니다.
- 오디오: 압축되지 않은 오디오 미디어 유형
- 비디오: 압축되지 않은 비디오 미디어 유형
압축(또는 인코딩된) 스트림의 경우 전체 미디어 형식의 정의는 코덱에 의해 정의됩니다. 그러나 압축되지 않은 형식 특성이 압축된 스트림에 대해 알려진 경우 이러한 값은 압축된 스트림의 미디어 형식에 포함되어야 합니다. 예를 들어 프레임 크기를 알고 있는 경우 기술적으로 압축된 스트림에 프레임 크기가 없더라도 미디어 형식에서 MF_MT_FRAME_SIZE 특성을 설정합니다.
부분 미디어 형식에는 전체 미디어 형식에 필요한 특성이 하나 이상 없습니다. 가능한 미디어 형식을 열거할 때 Microsoft Media Foundation 구성 요소는 값을 설정하지 않은 상태로 두어 모든 값을 처리할 수 있음을 나타낼 수 있습니다. 예를 들어 비디오 프로세서는 프레임 속도를 처리할 수 있음을 나타내기 위해 MF_MT_FRAME_RATE 특성을 설정하지 않은 상태로 두고 필요한 경우 프레임 속도 변환을 수행할 수 있습니다.
부분 미디어 형식을 만드는 경우 알고 있는 만큼의 정보를 포함해야 합니다. 그러나 미디어 유형에는 불확실한 정보가 포함되어서는 안됩니다. 정보가 잘못된 것보다 누락되는 것이 좋습니다.
최소한 부분 미디어 형식에는 MF_MT_MAJOR_TYPE 및MF_MT_SUBTYPE 두 가지 특성만 포함되어야 합니다.
경우에 따라 Media Foundation 구성 요소는 전체 미디어 형식을 제공해야 합니다.
- 미디어 원본은 전체 출력 형식을 제공해야 합니다.
- 디코더는 입력 형식이 설정된 후 전체 출력 형식을 제공해야 합니다. 입력 형식을 설정하기 전에 디코더가 부분 출력 형식을 제공할 수 있습니다.
- 인코더는 출력 형식이 설정된 후 전체 입력 형식을 제공해야 합니다. 출력 형식을 설정하기 전에 인코더가 부분 입력 형식을 제공할 수 있습니다.