Velocidad de bits máxima del editor
Este tema incluye información detallada sobre cómo configurar la tasa de bits máxima de vídeo mediante el Client SDK del cliente de Vonage Video para Android:
- Configuración y recuperación de un preajuste
- Establecer y recuperar un valor de velocidad de bits sin procesar
- Casos especiales
Para obtener una descripción general de la API de velocidad de bits máxima del editor, consulta este tema.
Configuración y recuperación de un preajuste
El PublisherKit .VideoBitratePreset La enumeración incluye valores predefinidos:
VideoBitratePresetDefaultVideoBitratePresetBwSaverVideoBitratePresetExtraBwSaverVideoBitratePresetCustom
Véase Preajustes de velocidad de bits de vídeo para más detalles sobre estos preajustes.
Para recuperar la tasa de bits de vídeo actualmente configurada para un editor determinado, llame a la función PublisherKit.getVideoBitratePreset() método:
PublisherKit.VideoBitratePreset retrievedBitratePreset = publisherKit.getVideoBitratePreset();
System.out.println("The video bitrate preset is: " + retrievedBitratePreset);
Para configurar un preajuste, llama a la función PublisherKit.setVideoBitratePreset() método. Este método incluye un parámetro: preset — un valor de la VideoBitratePreset enum. No utilices VideoBitratePresetCustom.
Ejemplo:
PublisherKit.VideoBitratePreset bitratePreset = PublisherKit.VideoBitratePreset.VideoBitratePresetBwSaver;
publisherKit.setVideoBitratePreset(bitratePreset);
Establecer y recuperar un valor de velocidad de bits sin procesar
Si los preajustes predefinidos no son adecuados, puedes establecer manualmente un valor de tasa de bits brutos personalizado.
Para obtener la tasa de bits de vídeo máxima establecida actualmente para un editor, llame a la función PublisherKit.getMaxVideoBitrate() método. Devuelve la tasa de bits máxima establecida actualmente (en bits por segundo). Si no se establece ningún valor personalizado, el método devuelve 0.
Ejemplo:
int retrievedMaxVideoBitrate = publisherKit.getMaxVideoBitrate();
System.out.println("The maximum video bitrate is: " + retrievedMaxVideoBitrate + " kbps");
Para establecer un valor de velocidad de bits máxima personalizada (en lugar de una preajustada), utiliza la PublisherKit.setMaxVideoBitrate() método. Este método tiene un parámetro: maxVideoBitrateel bitrate máximo deseado (en bits por segundo). La dirección maxVideoBitrate debe estar comprendido entre 5.000 y 10.000.000.
Ejemplo:
int maxVideoBitrate = 300000; // 300 kbps
publisherKit.setMaxVideoBitrate(maxVideoBitrate);
Véase Ajuste de los valores de la tasa de bits bruta Para más información.
Casos especiales
Al establecer el valor de la tasa de bits bruta en 0 se elimina cualquier limitación de la tasa de bits establecida previamente, volviendo al comportamiento predeterminado.
int zeroBitrate = 0; // No limitations
int newBitrate = 300000; // 300 kbps
// Set the maximum video bitrate
publisherKit.setMaxVideoBitrate(newBitrate);
// Validate that the bitrate was set correctly
if (publisherKit.getMaxVideoBitrate() == newBitrate) {
System.out.println("Max video bitrate set successfully to: " + newBitrate);
}
// Reset the maximum video bitrate to the default behavior
publisherKit.setMaxVideoBitrate(zeroBitrate);
// Validate that the bitrate was reset to default
if (publisherKit.getMaxVideoBitrate() == zeroBitrate) {
System.out.println("Max video bitrate reset to default.");
}
Llamada al getVideoBitratePreset() después de establecer una tasa de bits personalizada devuelve VideoBitratePresetCustom.
int newBitrate = 1000000; // 1 Mbps
// Set a custom bitrate
publisherKit.setMaxVideoBitrate(newBitrate);
// Validate that the preset is set to CUSTOM
if (publisherKit.getVideoBitratePreset() == PublisherKit.VideoBitratePreset.VideoBitratePresetCustom) {
System.out.println("Video bitrate preset set to CUSTOM.");
}
// Reset bitrate to default
publisherKit.setMaxVideoBitrate(zeroBitrate);
// Validate that the preset is reset to DEFAULT
if (publisherKit.getVideoBitratePreset() == PublisherKit.VideoBitratePreset.VideoBitratePresetDefault) {
System.out.println("Video bitrate preset reset to DEFAULT.");
}
El PublisherKit.getMaxVideoBitrate() devuelve 0 cuando el editor está utilizando un preajuste.
// Get the current raw bitrate (default should be 0)
int bitrateBps = publisherKit.getMaxVideoBitrate();
assert bitrateBps == 0;
// Set the preset to BW_SAVER
publisherKit.setVideoBitratePreset(PublisherKit.VideoBitratePreset.VideoBitratePresetBwSaver);
bitrateBps = publisherKit.getMaxVideoBitrate();
assert bitrateBps == 0;
// Set the preset to EXTRA_BW_SAVER
publisherKit.setVideoBitratePreset(PublisherKit.VideoBitratePreset.VideoBitratePresetExtraBwSaver);
bitrateBps = publisherKit.getMaxVideoBitrate();
assert bitrateBps == 0;
// Set a custom bitrate
publisherKit.setMaxVideoBitrate(200000);
bitrateBps = publisherKit.getMaxVideoBitrate();
assert bitrateBps == 200000;
// Reset the preset to DEFAULT
publisherKit.setVideoBitratePreset(PublisherKit.VideoBitratePreset.VideoBitratePresetDefault);
bitrateBps = publisherKit.getMaxVideoBitrate();
assert bitrateBps == 0;