Metodo IMFDeviceTransform::SetOutputStreamState (mftransform.h)
Il metodo SetOutputStreamState imposta lo stato del flusso di output MFT del dispositivo e il tipo di supporto.
Sintassi
HRESULT SetOutputStreamState(
[in] DWORD dwStreamID,
[in] IMFMediaType *pMediaType,
[in] DeviceStreamState value,
[in] DWORD dwFlags
);
Parametri
[in] dwStreamID
ID flusso del flusso di input in cui è necessario modificare lo stato e il tipo di supporto.
[in] pMediaType
Il tipo di supporto preferito per il flusso di input viene passato tramite questo parametro. Il dispositivo MFT deve modificare il tipo di supporto solo se il tipo di supporto in ingresso è diverso dal tipo di supporto corrente.
[in] value
Specifica DeviceStreamState a cui deve passare il flusso di input.
[in] dwFlags
Deve essere zero.
Valore restituito
Il metodo restituisce un valore HRESULT. I valori possibili includono, a titolo esemplificativo, i valori specificati nella tabella seguente.
Codice restituito | Descrizione |
---|---|
|
Transizione dello stato del flusso completata. |
|
Il dispositivo MFT non è riuscito a supportare la richiesta in questo momento. |
|
È stato passato un ID flusso non valido. |
|
La transizione del flusso richiesta non è possibile. |
Commenti
Questo metodo di interfaccia consente di eseguire la transizione del flusso di output a uno stato specificato con il tipo di supporto specificato impostato nel flusso di output. Questo verrà usato dal DTM quando l'origine del dispositivo richiede la modifica dello stato e del tipo di supporto di un flusso di output specifico. Il dispositivo MFT deve modificare il tipo di supporto e lo stato del flusso di output specificati nel tipo di supporto richiesto.
Se il tipo di supporto in ingresso e lo stato del flusso sono uguali al tipo di supporto corrente e allo stato del flusso, il metodo restituisce S_OK.
Se il tipo di supporto in ingresso e il tipo di supporto corrente del flusso sono uguali, Device MFT deve modificare lo stato del flusso sul valore richiesto e restituire il valore HRESULT appropriato.
Quando una modifica nel tipo di supporto del flusso di output richiede una modifica corrispondente nell'input, Device MFT deve pubblicare l'evento METransformInputStreamStateChanged in DTM per modificare il flusso di input pertinente. La chiamata deve restituire solo dopo aver modificato il tipo di supporto del flusso di input e il valore HRESULT appropriato.
Si consideri ad esempio un oggetto Device MFT con due flussi di input e tre flussi di output. Consentire l'output 1 e l'output 2 di origine dall'input 1 e dal flusso a 720p. Si supponga ora che il tipo di supporto di Output 2 cambi a 1080p. Per soddisfare questa richiesta, Device MFT deve modificare il tipo di supporto Input 1 impostandolo su 1080p, pubblicando l'evento METransformInputStreamStateChanged nel DTM. DTM chiamerebbe SetInputStreamState per modificare il tipo di supporto e lo stato del flusso di input. Dopo questa chiamata, è necessario restituire l'oggetto SetOutputStreamState .
Requisiti
Client minimo supportato | Windows 10 versione 1703 |
Piattaforma di destinazione | Windows |
Intestazione | mftransform.h |