Я пытаюсь встроить аудиотекст html5 на странице, чтобы можно было воспроизводить живой поток AAC +, поступающий с сервера Icecast.Как играть в потоке AAC в реальном времени на Android с аудиоэлементом html5
В соответствии с media formats developer's guide, Android поддерживает воспроизведение нескольких ароматов AAC, либо внутри контейнера MPEG-4, либо в ADTS.
Я успешно играл AAC-кодированные файлы в формате MPEG-4 контейнера, таким образом:
<audio controls="controls">
<source src="http://www.example.com/audio/program1.mp4" type="audio/mp4"/>
</audio>
Однако, я не был в состоянии играть любой AAC живой поток (который, насколько я понимаю, , выводится Icecast с использованием ADTS) со звуковым тегом. Я попытался установить разные типы (например, «audio/aac», которые, по словам игрока, могут «вероятно» играть), а также различные расширения файлов для URL-адреса потока. Ничего не работает. Игрок, между прочим, инициализируется так, как будто все в порядке, а затем при нажатии кнопки воспроизведения ничего не происходит (кроме кнопки воспроизведения, меняющейся на значок паузы).
Единственный способ, которым я смог воспроизвести поток AAC в реальном времени, - это использовать URL-адрес, указывающий на манифест .sdp, содержащий ссылку на версию потока RTSP. Затем браузер передает поток в собственный аудиоплеер или другое аудио приложение, которое воспроизводит его после короткого периода буферизации. Для нас это не вариант, поскольку мы хотели бы использовать простой сервер Icecast для нашего потока.
Есть ли способ играть в прямом эфире AAC на Android через HTTP? Кажется, iOS поддерживает его, но не Android.
Не могли бы вы проверить и убедиться, какой формат выдает AAC Icecast? – Danijel
Это руководство для разработчиков относится к использованию Android SDK (имеет собственные функции медиаплеера) и не применяется к тегу HTML-видео.Ваша личная ссылка AAC (с ADTS) работает на Android, если вы используете ** [это демо] (http://project.wnyc.org/test/issues/streamtest/#http://cdn.audiopump.co/ radioreddit/main_heaac_64k) **? Также о смене кнопки воспроизведения ... возможно ли, что вам нужно подождать немного для загрузки буфера, чтобы заполнить? И нет никаких ограничений в отношении интернет-данных (например, без массовой потоковой передачи мультимедиа)? –
@ Danijel: Вот что сообщает ffprobe для потока AAC: 'Duration: N/A, bitrate: 63 kb/s; Stream # 0: 0: Audio: aac (HE-AACv2), 44100 Гц, стерео, fltp, 63 kb/s' – EK0