2010-04-30 11 views

Respuesta

46

Agregue un punto y coma al final de la solicitud http. ES el protocolo establecido por shoutcast para anular su detección de navegador. De esta manera:

<audio controls src="http://shoutcast.internet-radio.org.uk:10272/;"></audio> 
+2

+1 ¡Buena solución, no estaba al tanto de esto! – bobince

3

Sí. Sin embargo, su único trabajo en Safari

<!DOCTYPE html> 
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/"></audio> 

Causa Opera y Firefox no apoyaron códecs no clasificado

+0

¿Sería también trabajar en Chrome? –

18

No es un gran problema con SHOUTcast, que sospecho es responsable de ella no funciona incluso en Chrome, que se supone que es compatible con MP3.

SHOUTcast puede servir tres diferentes tipos de respuesta:

  • un SHOUTcast nativo de protocolo “ICY” streaming de audio respuesta. Decide hacer esto si el jugador que accede a la secuencia incluye un encabezado icy-metadata: 1.

  • una respuesta de audio HTTP sin interrupciones, sin metadatos adicionales, para reproductores de medios sin soporte ICY.

  • el "SHOUTcast D.N.A.S. Página de estado y otras páginas en la interfaz web.

¿Cómo decide si se publica una página web en lugar de una transmisión de audio? Adivina si estás usando un navegador web. Al observar si el encabezado User-Agent comienza con Mozilla/.... Porque todos los navegadores web son Mozilla, ¿verdad? Por Dios, SHOUTcast.

Entonces, cuando Chrome intenta buscar la transmisión de audio para reproducir, SHOUTcast piensa que es un navegador web (bueno ... lo es) y se niega a darle la transmisión de audio para poner la etiqueta de audio. En cambio, obtiene la página web de administración.

(Supongo que Safari está pasando el encabezado icy-metadata para evitar el problema, ya que tiene soporte específico para SHOUTcast. No puedo probarlo en este momento ya que Safari no reproduce audio o video. Tal vez quiera que lo instale QuickTime para eso. Tal vez se puede rellenar.)

Así que probablemente necesites agregar un reproductor de audio Flash como respaldo.

+0

Muy interesante. – jayarjo

+0

muchas gracias por no solo decir que no está funcionando sino también explicar por qué! – leemes

4
<audio src="http://85.25.108.20:8090/;" controls autoplay></audio> 

Esto debería funcionar bien, pero asegúrese de /; es allí después de la URL de la transmisión y el puerto. Si no necesita la reproducción automática, elimine la etiqueta "autoplay".

+0

Lo edité ligeramente, intente utilizar la gramática adecuada cuando publique en Desbordamiento de pila. ¡Aparte de eso, buen trabajo! – Nathan2055

Cuestiones relacionadas