Método IMFASFContentInfo::P arseHeader (wmcontainer.h)
Analiza la información de un encabezado ASF y usa esa información para establecer valores en el objeto ContentInfo. Puede pasar todo el encabezado en un único búfer o enviarlo en varias partes.
Sintaxis
HRESULT ParseHeader(
[in] IMFMediaBuffer *pIHeaderBuffer,
[in] QWORD cbOffsetWithinHeader
);
Parámetros
[in] pIHeaderBuffer
Puntero a la interfaz IMFMediaBuffer de un objeto de búfer que contiene algunos o todos los encabezados. El búfer debe contener al menos 30 bytes, que es el tamaño del objeto header, no incluidos los objetos incluidos en el objeto header (es decir, todo hasta y incluido el campo Reserved2 en el objeto header).
[in] cbOffsetWithinHeader
Desplazamiento, en bytes, del primer byte del búfer con respecto al principio del encabezado.
Valor devuelto
El método devuelve un valor HRESULT. Entre los valores posibles se incluyen los que se indican en la tabla siguiente, entre otros.
Código devuelto | Descripción |
---|---|
|
El encabezado se analiza y valida por completo. |
|
El búfer de entrada no contiene datos ASF válidos. |
|
El búfer de entrada es demasiado pequeño. |
|
El método se realizó correctamente, pero el encabezado pasado estaba incompleto. Este es el código de retorno correcto para todas las llamadas, pero la última al pasar el encabezado en partes. |
Observaciones
Si pasa el encabezado en partes, el objeto ContentInfo mantendrá las referencias a los objetos de búfer hasta que se analice todo el encabezado. Por lo tanto, no escriba sobre los búferes pasados a este método.
El inicio del objeto Header tiene el siguiente diseño en memoria:
Nombre del campo | Tamaño en bytes |
---|---|
Identificador de objeto | 16 |
Tamaño de objeto | 8 |
Número de objetos de encabezado | 4 |
Reserved1 | 1 |
Reserved2 | 1 |
La primera llamada a ParseHeader lee todo hasta e incluye Rerserved2, por lo que requiere un mínimo de 30 bytes. (Tenga en cuenta que el método IMFASFContentInfo::GetHeaderSize solo lee los campos Id. de objeto y Tamaño de objeto, por lo que ese método requiere un mínimo de 24 bytes).
Requisitos
Cliente mínimo compatible | Windows Vista [solo aplicaciones de escritorio] |
Servidor mínimo compatible | Windows Server 2008 [solo aplicaciones de escritorio] |
Plataforma de destino | Windows |
Encabezado | wmcontainer.h |
Library | Mfuuid.lib |
Consulte también
Inicialización del objeto ContentInfo de un nuevo archivo ASF