Funzione MFCreateSinkWriterFromURL (mfreadwrite.h)
Crea il writer sink da un URL o da un flusso di byte.
Sintassi
HRESULT MFCreateSinkWriterFromURL(
[in] LPCWSTR pwszOutputURL,
[in] IMFByteStream *pByteStream,
[in] IMFAttributes *pAttributes,
[out] IMFSinkWriter **ppSinkWriter
);
Parametri
[in] pwszOutputURL
Stringa con terminazione Null contenente l'URL del file di output. Questo parametro può essere NULL.
[in] pByteStream
Puntatore all'interfaccia IMFByteStream di un flusso di byte. Questo parametro può essere NULL.
Se questo parametro è un puntatore valido, il writer sink scrive nel flusso di byte fornito. Il flusso di byte deve essere scrivibile. In caso contrario, se pByteStream è NULL, il writer sink crea un nuovo file denominato pwszOutputURL.
[in] pAttributes
Puntatore all'interfaccia IMFAttributes . È possibile usare questo parametro per configurare il writer sink. Per altre informazioni, vedere Attributi del writer sink. Questo parametro può essere NULL.
[out] ppSinkWriter
Riceve un puntatore all'interfaccia IMFSinkWriter . Il chiamante deve rilasciare l'interfaccia.
Valore restituito
Questa funzione può restituire uno di questi valori.
Codice restituito | Descrizione |
---|---|
|
Operazione completata. |
|
L'URL specificato non è stato trovato. |
Commenti
Chiama CoInitialize(Ex) e MFStartup prima di chiamare questa funzione.
I primi tre parametri per questa funzione possono essere NULL; Tuttavia, solo determinate combinazioni sono valide:
Descrizione | pwszOutputURL | pByteStream | pAttributes |
---|---|---|---|
Specificare un flusso di byte senza URL. | NULL | non NULL | Obbligatorio (non deve essere NULL). |
Specificare un URL senza flusso di byte. | not NULL | NULL | Facoltativo (può essere NULL). |
Specificare sia un URL che un flusso di byte. | non NULL | non NULL | Facoltativo (può essere NULL). |
Il parametro pAttributes è obbligatorio nel primo caso e facoltativo negli altri.
- Caso 1: specificare un flusso di byte senza UN URL. Il parametro pAttributes deve puntare a un archivio attributi che contiene l'attributo MF_TRANSCODE_CONTAINERTYPE . Il writer sink usa l'attributo MF_TRANSCODE_CONTAINERTYPE per determinare il tipo di contenitore di file da scrivere, ad esempio ASF o MP4.
- Caso 2: specificare un URL senza un flusso di byte. Il writer sink crea un nuovo file denominato pwszOutputURL. Se pAttributes specifica un archivio di attributi con l'attributo MF_TRANSCODE_CONTAINERTYPE , il writer sink usa tale attributo per determinare il tipo di contenitore di file. In caso contrario, se l'attributo MF_TRANSCODE_CONTAINERTYPE è assente o pAttributes è NULL, il writer sink usa l'estensione del nome file per selezionare il tipo di contenitore; Ad esempio, ".asf" per un file ASF.
- Caso 3: specificare sia un URL che un flusso di byte. Il writer sink scrive nel flusso di byte. L'URL fornito in pwszOutputURL è solo informativo; il writer sink non crea un nuovo file. Se pAttributes specifica un archivio di attributi con l'attributo MF_TRANSCODE_CONTAINERTYPE , il writer sink usa tale attributo per determinare il tipo di contenitore di file. In caso contrario, il writer sink usa l'estensione del nome file per selezionare il tipo di contenitore. L'attributo MF_TRANSCODE_CONTAINERTYPE esegue l'override dell'estensione del nome file URL in questo caso.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Supplemento per Windows 7, Windows Vista e Aggiornamento della piattaforma per Windows Vista [app desktop | App UWP] |
Server minimo supportato | Windows Server 2008 R2 [app desktop | App UWP] |
Piattaforma di destinazione | Windows |
Intestazione | mfreadwrite.h |
Libreria | Mfreadwrite.lib |
DLL | Mfreadwrite.dll |