Para configurar VBR sin restricciones
[La característica asociada a esta página, WINDOWS Media Format 11 SDK, es una característica heredada. Se ha reemplazado por lector de origen y escritor receptor. Lector de origen y escritor receptor se han optimizado para Windows 10 y Windows 11. Microsoft recomienda encarecidamente que el nuevo código use lector fuente y escritor receptor en lugar del SDK de Windows Media Format 11, siempre que sea posible. Microsoft sugiere que el código existente que usa las API heredadas se reescriba para usar las nuevas API si es posible.
Puede usar la codificación de velocidad de bits variable (VBR) sin restricciones en una secuencia para especificar una velocidad de bits media que se mantendrá en el contenido codificado. VBR sin restricciones difiere del CBR normal en que la varianza en la velocidad de bits a lo largo de la secuencia puede ser mayor.
La velocidad de bits de la secuencia, establecida con IWMStreamConfig::SetBitrate, se usa como velocidad de bits media deseada. Cuando se completa la codificación de la secuencia, puede usar IWMPropertyVault::GetPropertyByName para recuperar dos propiedades adicionales: g_wszVBRPeak y g_wszBufferAverage. Estas propiedades describen la velocidad de bits máxima del contenido codificado y la ventana de búfer promedio del contenido, respectivamente.
VBR sin restricciones debe usarse junto con la codificación de dos pasos. La codificación de dos pasos no está establecida en el perfil. Debe configurar el escritor para que realice un paso de preprocesamiento antes de escribir la secuencia. Para obtener más información sobre el uso de la codificación de dos pasos, vea Uso de la codificación Two-Pass.
Para configurar una secuencia en un perfil que se va a codificar con VBR sin restricciones, realice los pasos siguientes:
- Cree un objeto de administrador de perfiles llamando a la función WMCreateProfileManager .
- Abra un perfil existente al que desea agregar compatibilidad con VBR. Para obtener más información sobre cómo abrir perfiles, vea Trabajar con perfiles.
- Obtenga un objeto de configuración de flujo para la secuencia que desea usar mediante una llamada a IWMProfile::GetStream o IWMProfile::GetStreamByNumber.
- Obtenga un puntero a la interfaz IWMPropertyVault del objeto de configuración de flujo mediante una llamada a IWMStreamConfig::QueryInterface.
- Habilite la codificación de VBR para la secuencia llamando a IWMPropertyVault::SetProperty para la propiedad g_wszVBREnabled .
- Establezca g_wszVBRBitrateMax y g_wszVBRBufferWindowMax en cero con IWMPropertyVault::SetProperty.
- Guarde los cambios realizados en la secuencia llamando a IWMProfile::ReconfigStream.
- Guarde el perfil o páselo al objeto writer.
- Configure el escritor para realizar un paso de preprocesamiento.
Temas relacionados