Потоковое аудио HTML5 - PullRequest
       0

Потоковое аудио HTML5

7 голосов
/ 15 марта 2011

Раньше об этом говорилось о потоке стека, но на самом деле никто не ответил на этот вопрос из того, что я видел.
Я пытаюсь реализовать потоковое аудио веб-приложение. Почти идентично тому, что сделал WFMU со своим игроком (http://wfmu.org/html5/player.php).
Все, что мне удалось выяснить из их потока, это то, что они передают поток в PHP, не знают, в каком формате, а затем передают его в jPlayer для представления HTML5 клиенту.
У них это работает потрясающе, но я просто не уверен, как они подают аудио в PHP и что они делают в своем PHP, чтобы представить его в приемлемом формате для HTML5.
Любые идеи очень приветствуются.
Похоже, PHP-скрипт просто выводит аудиофайл (http://blogfiles.wfmu.org/DG/stream3.php).

1 Ответ

2 голосов
/ 15 марта 2011

Нет необходимости использовать PHP.Для клиента все, что имеет значение, это вы отправляете соответствующий тип контента и фактический контент.В этом случае audio / mpeg (MP3) или OGG для Firefox (который сейчас не работает для них, но определенно может).

Я подозреваю причину, по которой они используют PHP для передачипоток, это то, что они используют SHOUTcast в качестве сервера потоковой передачи.Поработав, я нашел это: http://mp3stream.wfmu.org:8000/

Обратите внимание, что когда вы нажимаете этот URL в вашем браузере, вы получаете страницу с основной информацией.Однако, если вы нажмете это на аудиоплеере, вы получите поток.Сервер SHOUTcast решает это на основе строки User-Agent.Если он содержит «Mozilla» где-либо в User-Agent, он возвращает эту страницу.Если это не так, то он возвращает поток.Так, для аудиоплеера HTML5 он будет использовать User-Agent браузера (который содержит Mozilla) и не сможет получить доступ к потоку.Я подозреваю, что их PHP-скрипт - это то, что решает проблему.

PHP-скрипт будет использовать cURL, подключаться к потоковому серверу с помощью собственного User-Agent (может быть любым, если это не так) Mozilla") и ретранслировать фрагмент за фрагментом в браузер, который запускает скрипт PHP.Кусочек пирога с лаймом.

...