Как я могу воспроизвести поток shoutcast/icecast с помощью HTML5?
можно ли воспроизвести поток shoutcast/icecast с помощью HTML5?
Если да, то как мне реализовать это?
6 ответов
добавьте точку с запятой в конец http-запроса. Это протокол, установленный shoutcast, чтобы переопределить его обнаружение браузера. Вот так:
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/;"></audio>
есть большая проблема с SHOUTcast, который, я подозреваю, несет ответственность за то, что он не работает даже в Chrome, который должен поддерживать MP3.
SHOUTcast может служить три различных типа ответа:
родной-SHOUTcast" ледяной " протокол потокового аудио ответ. Он решает сделать это, если игрок, обращающийся к потоку, включает .
простой-HTTP потокового аудио ответ, без дополнительных метаданных, для медиаплееров без ледяной поддержки.
страница" Shoutcast D. N. A. S. Status " и другие страницы в веб-интерфейсе.
как он решает, следует ли обслуживать веб-страницу вместо аудиопотока? Он угадывает, используете ли вы веб-браузер. Глядя, чтобы увидеть, является ли User-Agent
заголовок начинается с Mozilla/...
. Потому что все веб-браузеры Mozilla, верно? Господи, Пренадлежат.
поэтому, когда Chrome пытается получить аудиопоток чтобы играть, SHOUTcast думает, что это веб-браузер (ну... это) и отказывается дать ему аудиопоток, чтобы поместить в звуковой тег. Вместо этого он получает веб-страницу администратора.
(Я бы предположил, что Safari передает icy-metadata
заголовок, чтобы избежать проблемы, имея конкретную поддержку SHOUTcast. Я не могу проверить его на данный момент, так как Safari не будет воспроизводить аудио или видео. Может быть, он хочет, чтобы я установил QuickTime для этого. Может быть, его можно набить.)
поэтому вам, вероятно, нужно добавить вспышку аудиоплеер в качестве резервного.
<audio src="http://85.25.108.20:8090/;" controls autoplay></audio>
Это должно работать нормально, но убедитесь, что /;
есть после URL и порта потока. Если вам не нужен автозапуск, удалить "автозапуск" тег.
да. Но его единственная работа в Safari
<!DOCTYPE html>
<audio controls src="http://shoutcast.internet-radio.org.uk:10272/"></audio>
причина Opera и Firefox не поддерживали несвободные кодеки
при перенаправлении проблем с <audio
> тег в браузерах попробуйте добавить "/ stream " в конце URL-адреса потока для предотвращения перенаправления.
пример:
не работает: http://live-radio01.xxxxxx.com/2TJW/mp3