Condividi tramite


Metodo IMFASFSplitter::P arseData (wmcontainer.h)

Invia i dati ASF (Advanced Systems Format) in pacchetti al componente di divisione ASF per l'elaborazione.

Sintassi

HRESULT ParseData(
  [in] IMFMediaBuffer *pIBuffer,
  [in] DWORD          cbBufferOffset,
  [in] DWORD          cbLength
);

Parametri

[in] pIBuffer

Puntatore all'interfaccia IMFMediaBuffer di un oggetto buffer contenente dati da analizzare.

[in] cbBufferOffset

Offset nel buffer di dati in cui deve iniziare l'analisi del separatore. Questo valore è in genere impostato su 0.

[in] cbLength

Lunghezza, in byte, dei dati da analizzare. Questo valore viene misurato dall'offset specificato da cbBufferOffset. Impostare su 0 per l'elaborazione alla fine del buffer.

Valore restituito

Il metodo restituisce un valore HRESULT. I valori possibili includono, ma non sono limitati a, quelli indicati nella tabella seguente.

Codice restituito Descrizione
S_OK
Il metodo è riuscito.
E_INVALIDARG
Il parametro pIBuffer è NULL.

Il valore di offset specificato in cbBufferOffset è maggiore della lunghezza del buffer.

Il valore totale di cbBufferOffset e cbLength è maggiore della lunghezza del buffer.

MF_E_NOT_INITIALIZED
Il metodo IMFASFSplitter::Initialize non è stato chiamato o la chiamata non è riuscita.
MF_E_NOTACCEPTING
Il componente di divisione non può elaborare più input in questo momento.

Commenti

Dopo aver usato questo metodo per analizzare i dati, è necessario chiamare IMFASFSplitter::GetNextSample per recuperare esempi di supporti analizzati.

Se i dati ASF contengono pacchetti di dimensioni variabili, è necessario impostare l'attributo MFASFSPLITTER_PACKET_BOUNDARY sui buffer per indicare i limiti di esempio e i buffer non possono estendersi su più pacchetti.

Se il metodo restituisce ME_E_NOTACCEPTING, chiamare GetNextSample per ottenere gli esempi di output o chiamare IMFASFSplitter::Flush per cancellare il separatore.

Il separatore potrebbe contenere un conteggio dei riferimenti nel buffer di input. Pertanto, non scrivere sui dati validi nel buffer dopo aver chiamato questo metodo.

Requisiti

Requisito Valore
Client minimo supportato Windows Vista [solo app desktop]
Server minimo supportato Windows Server 2008 [solo app desktop]
Piattaforma di destinazione Windows
Intestazione wmcontainer.h
Libreria Mfuuid.lib

Vedi anche

Barra di divisione ASF

IMFASFSplitter