2011-03-19 15 views
6

Escribí mi propia interfaz de reproductor multimedia utilizando javascript y html5. Actualmente mi deslizador de volumen se asigna al atributo de volumen del navegador 1: 1. Me gustaría ajustar esto a la cuenta perceived loudness.Volumen no lineal para HTMLMediaElement

El volume attribute section of the html5 specs dicen:

... 0.0 estar en silencio, y 1,0 siendo el valor más alto, los valores intermedios en el aumento de volumen. El rango no necesita ser lineal.

Esto parece implicar que no hay un estándar para lo que los navegadores de escala deberían usar. Me preocupa que si ajusto el volumen percibido en un navegador, es posible que otro navegador ya esté haciendo esto, lo que resultaría en una sobrecorrección.

¿Alguien sabe qué escalas de volumen usan actualmente los navegadores y si es probable que cambien en el futuro?

Respuesta

1

Suponiendo que no se puede obtener directamente la información en cada navegador, sugiero desarrollar un conjunto de pruebas empíricas. Off-hand, no me puedo imaginar a los proveedores de navegadores usando nada que no sea logarítmico o control de volumen lineal, por lo que deja solo dos resultados a tener en cuenta en sus pruebas. Una vez que se crea el flujo de prueba, puede reutilizarlo cada vez que se lanza una nueva versión del navegador.

En cuanto a las pruebas en sí mismas, podrían ser según su propia percepción (compruebe el volumen al 100% frente al 50% y calcule si el 50% realmente suena la mitad de fuerte, o solo el 75%, como fuerte); o podrían estar grabando el canal "lo que escuchas" en tu tarjeta de sonido y analizando la forma de onda en una aplicación o herramienta personalizada, esta vez buscando una disminución de .5 en amplitud pico (si es lineal simple, o una mayor que. 5 gotas si es logarítmico. Si construye su propia herramienta de análisis, los datos de forma de onda PCM no son demasiado difíciles de trabajar, suponiendo que se sienta cómodo con C/C++/C#/et.al.

+0

Lo que no me gusta especialmente es tener que almacenar una lista de cómo se comportan las versiones específicas del navegador. Siempre habrá algún navegador oscuro que no esté en la lista. Sin embargo, me has dado una idea. Si crease una prueba de percepción manual en JavaScript, los usuarios individuales podrían calibrarla no solo en su navegador, sino también en su propia percepción del sonido. – lucas

Cuestiones relacionadas