Можно ли воспроизводить потоки интернет-радио с помощью html5?

StackOverflow https://stackoverflow.com/questions/2229118

Вопрос

Можно ли воспроизводить потоки интернет-радио (или некоторых других) с помощью html5?

Итак, у меня есть следующий код:

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

Я сохраняю его как HTML-страницу и запускаю браузер (Google Chrome 4.0.249.78, Safari или FF).

Но он не играет/работает!(

И оно не воспроизводится ни с одним другим интернет-радио, которое я пытался воспроизвести!(

Почему!?!Что я делаю не так?

кстати:от HTML5 (включая дополнения следующего поколения, все еще находящиеся в разработке) 2.6.1 Концепции протоколаПользовательские агенты могут реализовывать различные протоколы передачи, но эта спецификация в основном определяет поведение с точки зрения HTTP.[HTTP]

Метод HTTP GET эквивалентен действию протокола по извлечению по умолчанию.Например, RETR в FTP.Такие действия идемпотентны и безопасны в терминах HTTP.

Коды ответов HTTP эквивалентны статусам в других протоколах, имеющих то же основное значение.Например, ошибка «файл не найден» эквивалентна коду 404, ошибка сервера эквивалентна коду 5xx и так далее.

Заголовки HTTP эквивалентны полям в других протоколах, которые имеют то же основное значение.Например, заголовки аутентификации HTTP эквивалентны аспектам аутентификации протокола FTP.

Это было полезно?

Решение

Вы не можете сделать это с помощью ShoutCast, но с помощью Icecast и клиента edcast вы можете транслировать живую трансляцию vorbis через HTML5. <audio> ярлык.Просто укажите на это http://your-url.com:port/stream.ogg :п

Другие советы

Добавьте точку с запятой в конце http запрос.Это протокол, установленный Shoutcast для отмены обнаружения браузера.Как в этом примере:

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

HTML5 не определяет, какие аудиоформаты (прогрессивные или потоковые) должен поддерживать проигрыватель.Это должен определить браузер в зависимости от спроса и возможности реализации.В более ранних проектах мы пытались указать несколько базовых кодеков и форматов, которые должны поддерживать все браузеры, но каждый из возможных форматов приводил к тому, что некоторые поставщики браузеров отказывались его реализовывать.

Похоже, что следующее работает в Safari (4.0.4, WebKit nightly 6531.21.10, r54538, Mac OS X 10.6.2), но не в Chrome или Firefox:

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

(Обратите внимание, что <audio> требуется конечный тег в сериализации HTML, он не может использовать самозакрывающийся тег в стиле XML, и мне нужно включить controls или autoplay чтобы действительно запустить звук)

Вероятно, это связано с тем, что Safari получает поддержку Shoutcast «бесплатно», поскольку он просто использует QuickTime для обработки любых предоставленных URL-адресов аудио и видео, а QuickTime уже поддерживает Shoutcast.Это также может привести к некоторым странным ошибкам, поскольку реализация HTTP в QuickTime, ну, причудливый, мягко говоря.

Я бы предложил сообщать об ошибках с просьбой о поддержке Shoutcast в браузерах, которые его не поддерживают.Вот трекеры ошибок для Firefox (Гекко/Mozilla), Хром (Хром), и Сафари (если вдруг не работает в Windows или что-то в этом роде).

ну, я проверил станции ogg_vorbis.Я скачал плейлист, открыл его в блокноте и скопировал URL-адрес потока.Так что, если вы хотите протестировать это, просто скопируйте это в пустой файл и назовите его что-нибудь.html.

<!DOCTYPE html>
    <html>
    <head>
    <title>audio testing live stream!</title>
    </head>
    <body>
    <audio controls="controls" autoplay="autoplay" src="http://oggvorbis.tb-stream.net:80/technobase.ogg">
    </audio>
    </body>
</html>

вот и все!

ББ

<!DOCTYPE html>
<audio controls src="http://baldyradio.com:8010/;"></audio>

Это работает в релизной версии IE9. К сожалению, этого нельзя сказать о FireFox 4!

чтение спецификации аудио HTML 5 (http://www.w3schools.com/html5/html5_audio.asp). W3C определяет, какие форматы (MP3 или OGG) поддерживаются какими браузерами.

Я бы сделал, чтобы сервер Icecast (не ShoutCast) транслировал потоки MP3 и OGG.

с помощью javascript определите тип браузера - http://www.javascripter.net/faq/browsern.htm

if (браузер не поддерживает HTML5) {распечатать сообщение - используйте новый браузер}

if (браузер поддерживает потоковую передачу HTML5 и OGG (используйте список из W3C)) {Используйте поток OGG с сервера ICECAST в теге SRC}

if (браузер поддерживает потоковую передачу HTML5 MP3 (использование списка из W3C)) {Использование потока mp3 с сервера ICECAST в теге SRC}

Я думаю, что это охватит все основные браузеры и решит большинство проблем народов, которые вы, вероятно, найдете в будущем, это будет излишним, поскольку больше браузеров поддерживает

<audio controls src="http://example.com:8000/mountpath;"></audio>

Сообщения выше дают правильный ответ, хотя в них не упоминается использование косая черта.Убеждаться /; находится после URL-адреса потока и порта.

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

Ну, Firefox и Opera не поддерживают несвободные кодеки, такие как mp3 (как в случае с альфа-версией Opera 10.5, FF 3.5 и более поздние версии поддерживают только PCM wav и Ogg Vorbis для аудио).Однако я считаю, что Chrome и Safari поддерживают MP3.

Следующая проблема заключается в том, что ваш URL-адрес указывает на веб-страницу с описанием потока, а не на сам поток.

Наконец, насколько мне известно, никто не реализовал анализатор плейлиста для элемента audio (в спецификации упоминаются только аудиофайлы, а не плейлисты), что здесь является проблемой, поскольку даже когда вы нажимаете «прослушать», вы получаете скорее плейлист. чем сырой поток.

Да, вы можете играть в ShoutCast2. Я использую его вот так.

<audio preload="none" autoplay="autoplay" controls="controls">
    <source src="http://178.32.62.172:9079/stream" type="audio/mpeg">
    Your browser does not support this player, please update the version
</audio>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top