Condividi tramite


Metodo IMFSourceReaderEx::SetNativeMediaType (mfreadwrite.h)

Imposta il tipo di supporto nativo per un flusso nell'origine multimediale.

Sintassi

HRESULT SetNativeMediaType(
  [in]  DWORD        dwStreamIndex,
  [in]  IMFMediaType *pMediaType,
  [out] DWORD        *pdwStreamFlags
);

Parametri

[in] dwStreamIndex

[in] pMediaType

Puntatore all'interfaccia FMMediaType del tipo di supporto.

[out] pdwStreamFlags

Riceve un or bit per bit pari a zero o più dei flag seguenti.

Valore Significato
MF_SOURCE_READERF_ALLEFFECTSREMOVED
Tutti gli effetti sono stati rimossi dal flusso.
MF_SOURCE_READERF_CURRENTMEDIATYPECHANGED
Il tipo di output corrente è cambiato.

Valore restituito

Questo metodo può restituire uno di questi valori.

Codice restituito Descrizione
S_OK
Operazione completata.
MF_E_INVALIDREQUEST
Richiesta non valida.
MF_E_INVALIDSTREAMNUMBER
Il parametro dwStreamIndex non è valido.

Commenti

Questo metodo imposta il tipo di output prodotto dall'origine multimediale. A differenza del metodo IMFSourceReader::SetCurrentMediaType , questo metodo non inserisce decodificatori, processori video o altre trasformazioni. L'origine multimediale deve supportare il tipo di supporto specificato in modo nativo. Per ottenere un elenco di tipi supportati dall'origine multimediale, chiamare FMSourceReader::GetNativeMediaType.

In modalità asincrona questo metodo ha esito negativo se una richiesta di esempio è in sospeso. In tal caso, attendere che il callback OnReadSample venga richiamato prima di chiamare il metodo. Per altre informazioni sull'uso del lettore di origine in modalità asincrona, vedere FMSourceReader::ReadSample.

Questo metodo può attivare una modifica nel formato di output per il flusso. In tal caso, il flag di MF_SOURCE_READERF_CURRENTMEDIATYPECHANGED viene restituito nel parametro pdwStreamFlags . Il metodo potrebbe anche causare la rimozione di eventuali effetti aggiunti dal metodo IMFSourceReaderEx::AddTransformForStream . In questo caso, il flag di MF_SOURCE_READERF_ALLEFFECTSREMOVED viene restituito in pdwStreamFlags.

Questo metodo è utile con i dispositivi di acquisizione audio e video, perché un dispositivo potrebbe supportare diversi formati di output. Questo metodo consente all'applicazione di scegliere il formato del dispositivo prima che vengano aggiunte decodificatori e altre trasformazioni.

Requisiti

Requisito Valore
Client minimo supportato Windows 8 [app desktop | App UWP]
Server minimo supportato Windows Server 2012 [app desktop | App UWP]
Piattaforma di destinazione Windows
Intestazione mfreadwrite.h

Vedi anche

FMSourceReaderEx