Udostępnij przez


Kompletne i częściowe typy multimediów

W tym temacie opisano różnicę między kompletnymi typami multimediów a częściowymi typami multimediów.

Kompletne typy multimediów

kompletny typ nośnika to taki, który w pełni definiuje format strumienia multimediów. Biorąc pod uwagę pełny typ nośnika, składnik potoku może analizować dane strumienia skojarzone z typem nośnika bez niejednoznaczności.

W przypadku nieskompresowanych formatów następujące tematy definiują atrybuty wymagane dla kompletnego typu nośnika:

W przypadku strumieni skompresowanych (lub zakodowanych) definicja kompletnego typu nośnika jest definiowana przez koder. Jeśli jednak jakiekolwiek atrybuty typu nieskompresowanego są znane ze skompresowanego strumienia, te wartości powinny być uwzględniane w typie nośnika dla skompresowanego strumienia. Jeśli na przykład rozmiar ramki jest znany, ustaw atrybut MF_MT_FRAME_SIZE na typ nośnika, mimo że technicznie skompresowany strumień nie ma rozmiaru ramki.

Częściowe typy multimediów

Typ nośnika częściowego nie zawiera co najmniej jednego atrybutu wymaganego dla kompletnego typu nośnika. Podczas wyliczania możliwych typów multimediów składnik programu Microsoft Media Foundation może pozostawić wartość niezastawioną, aby wskazać, że może obsłużyć dowolną wartość. Na przykład procesor wideo może pozostawić atrybut MF_MT_FRAME_RATE niezastawiony, aby wskazać, że może obsłużyć dowolną szybkość klatek i wykona konwersję współczynnika klatek w razie potrzeby.

Jeśli tworzysz typ nośnika częściowego, nadal należy uwzględnić tyle informacji, ile wiesz. Jednak typ nośnika nie może zawierać informacji, które są niepewne. Lepiej jest, aby brakuje informacji niż źle.

Co najmniej częściowy typ nośnika powinien zawierać tylko dwa atrybuty: MF_MT_MAJOR_TYPE i MF_MT_SUBTYPE.

Czasami składniki programu Media Foundation muszą dostarczać kompletne typy multimediów:

  • Źródła multimediów muszą dostarczać kompletne typy danych wyjściowych.
  • Dekodatory muszą podać kompletne typy danych wyjściowych po ustawieniu typu danych wejściowych. Przed ustawieniem typu wejściowego dekoder może dostarczyć częściowego typu danych wyjściowych.
  • Kodery muszą podać pełne typy danych wejściowych po ustawieniu typu danych wyjściowych. Przed ustawieniem typu danych wyjściowych koder może dostarczyć częściowego typu danych wejściowych.

typy multimediów