Introducción
El Brightcove Media Controller para TV tiene un botón de rebobinado y un botón de avance rápido. Cuando hace clic en cualquiera de estos botones, el valor predeterminado es buscar 3 segundos hacia atrás o hacia adelante.
Cuando presiona y mantiene presionado cualquiera de los botones, la posición de búsqueda se actualizará a una velocidad de 3 segundos de contenido cada 40 milisegundos. Esto significa que mantener presionado el botón de rebobinado o avance rápido cada segundo avanza la potencia de 75 segundos.
Configurar los botones de búsqueda
Los botones de rebobinado y avance rápido se pueden configurar a través del EventType.SEEK_CONTROLLER_CONFIGURATION
evento.
Para simplificar, nos referiremos a cualquiera de estos botones como el botón de búsqueda, ya que las siguientes propiedades se aplican a ambos.
Propiedad del evento | Valor por defecto | Descripción |
---|---|---|
Event.SEEK_DEFAULT |
3000 ms | El valor de búsqueda predeterminado en milisegundos que buscará el botón de búsqueda. |
Event.SEEK_RELATIVE_ENABLED |
falso | Si está habilitado, permite que el valor de búsqueda sea relativo a la duración del video establecida por el EventType.VIDEO_DURATION_CHANGED evento. El porcentaje lo establece Event.SEEK_PERCENTAGE . |
Event.SEEK_PERCENTAGE |
1% | El porcentaje relativo a la duración del video utilizado para calcular el valor de búsqueda predeterminado. |
Event.SEEK_ON_HOLD_WAIT_TIME |
500 ms | El tiempo en milisegundos que se esperará para que el evento de tecla se considere una pulsación larga en lugar de una pulsación normal. |
Event.SEEK_ON_HOLD_UPDATE_FREQ |
40 ms | El tiempo en milisegundos utilizado para enviar el EventType.SEEKBAR_DRAGGING_PROGRESS evento para actualizar la barra de búsqueda del controlador de medios. |
Personalizar las propiedades del evento
Es posible que desee propiedades de eventos adicionales a las que se enumeran en la tabla anterior. Puede hacerlo definiendo los valores esperados y emitiendo el EventType.SEEK_CONTROLLER_CONFIGURATION
evento.
Para agregar propiedades personalizadas al evento, siga estos pasos:
-
Defina sus valores personalizados.
private static final int DEFAULT_TV_SEEK_TIME = (int) TimeUnit.SECONDS.toMillis(3); private static final int DEFAULT_TV_ON_HOLD_WAIT_TIME = (int) TimeUnit.SECONDS.toMillis(1); private static final int DEFAULT_TV_SEEK_PERCENTAGE = 1; private static final int DEFAULT_TV_ON_HOLD_UPDATE_FREQUENCY_TIME = 500;
-
Incluir un método para crear el mapa de propiedades, agregar los valores deseados y emitir el
EventType.SEEK_CONTROLLER_CONFIGURATION
evento.private void setupTelevisionMode() { Map<String, Object> properties = new HashMap<>(); properties.put(Event.SEEK_DEFAULT, DEFAULT_TV_SEEK_TIME); properties.put(Event.SEEK_RELATIVE_ENABLED, true); properties.put(Event.SEEK_PERCENTAGE, DEFAULT_TV_SEEK_PERCENTAGE); properties.put(Event.SEEK_ON_HOLD_WAIT_TIME, DEFAULT_TV_ON_HOLD_WAIT_TIME); properties.put(Event.SEEK_ON_HOLD_UPDATE_FREQ, DEFAULT_TV_ON_HOLD_UPDATE_FREQUENCY_TIME); eventEmitter.emit(EventType.SEEK_CONTROLLER_CONFIGURATION, properties); }
-
Verifique si su aplicación está en modo TV para configurar la configuración del controlador de búsqueda.
if (BrightcoveMediaController.checkTvMode(mBaseVideoView.getContext())) { setupTelevisionMode(); }