Прямая трансляция RTMP с использованием jwplayer

Я пытаюсь создать веб-сайт радио в прямом эфире для различных радиостанций. Многие радиостанции используют RTMP для своих прямых трансляций. Поэтому я использовал jwplayer в качестве проигрывателя по умолчанию. Однако, похоже, это не работает. Вот мой код:

<script type="text/javascript">
jwplayer("container").setup({
flashplayer: "jwplayer.flash",
file: "rtmp://liveRadio.onlinehorizons.net/shabawreada",
height: 270,
width: 480,
autostart: true
});
</script>

Я запутался в том, что указать в параметре файла и следует ли мне использовать параметр стримера. Приведенный выше код не работает.


person Hus    schedule 12.11.2015    source источник


Ответы (2)


Я протестировал этот поток с помощью rtmpdump и обнаружил 2 проблемы:

1) Адрес потока rtmp://liveRadio.onlinehorizons.net/shabawreada/livestream

2) Я использовал JW player только один раз, но очень сомневаюсь, что это сработает. Некоторые потоки RTMP никак не защищены, и любой может подключиться к ним по своему усмотрению, как вы пытаетесь сделать здесь. Однако другие (несколько) защищены, и это один из них.

Во время рукопожатия RTMP этот поток, как и многие другие, требует 2 дополнительных параметра. Один — это адрес SWF-плеера, с которого было инициировано RTMP-рукопожатие, другой — адрес html-страницы, на которой используется проигрыватель. К сожалению для вас, JWPlayer не позволяет устанавливать эти поля произвольно (См. "Параметры конфигурации"), что означает, что вы не можете использовать его для своих текущих целей.

Вы можете поискать проигрыватель, который поддерживает это, но я бы не стал ставить на то, что найдете его. Конечно, эту операцию можно легко выполнить с помощью настольного приложения.

person Æðelstan    schedule 18.11.2015
comment
У меня есть веб-страница, на которой он транслируется, и URL-адрес их проигрывателя. Это те параметры, о которых вы говорили? Есть ли какой-либо параметр для преобразования потока в аудио, который поддерживает только Android? - person Hus; 20.11.2015
comment
Вы говорите, что на самом деле передаете веб-страницу и URL-адрес проигрывателя в JWplayer? Так сейчас идет стрим? Что касается аудио, то это поток в формате mp3, поэтому он поддерживается Android. Однако эта страница указывает, что JWplayer только официально поддерживается в Chrome и Android 4.0+. - person Æðelstan; 20.11.2015
comment
Нет. Я пробовал, но не получилось, не знаю почему. Вот веб-страница радиостанции: egradio.eg/radio.php? PubPnt=SootArab&ChnName=4 - person Hus; 24.11.2015
comment
Я пытаюсь создать приложение радиостанции на Android, но Android не поддерживает RTMP. Есть ли альтернативное решение? Возможно преобразование ссылки в другую, поддерживаемую Android (Mp3 или AAC). - person Hus; 24.11.2015
comment
Хорошо, вы должны понять несколько вещей: 1) RTMP — это протокол TCP/IP. Он может быть реализован любым автономным приложением, которое захочет его реализовать. Следовательно, есть много приложений для Android, которые делают его реализацию, однако они не являются веб-браузерами (если только вы не установите Flash 11.1 для Android). 2) Вы не можете передать рассматриваемые аргументы в JWplayer, насколько я знаю, потому что JWPlayer не примет их. 3)RTMP — это протокол, такой как HTTP, поэтому вы не можете конвертировать в аудио формат, такой как mp3. - person Æðelstan; 24.11.2015
comment
[продолжение] На самом деле этот RTMP-поток содержит mp3. Вывод: вы должны сказать мне, действительно ли вам нужно, чтобы поток воспроизводился в браузере, или его открытие в другом приложении тоже может работать. Например, у вас может быть веб-страница (html) со ссылкой, которая откроет поток в медиаплеере (например, VLC), который может воспроизводить поток RTMP. Когда пользователь закончит, он может легко вернуться к последнему окну. Если вам приходится использовать браузер для всего, найти плеер, который это делает, может быть сложно. - person Æðelstan; 24.11.2015
comment
На самом деле я использую изобретателя приложений MIT для разработки своего приложения. RTMM не работает в компоненте проигрывателя, который у них есть. Так что я могу работать с веб-просмотром, который содержит jwplayer. Выяснилось, что Android не поддерживает автозапуск. Я пытаюсь выполнить эту работу в своем приложении, не используя другое приложение. - person Hus; 27.11.2015
comment
Почему бы просто не использовать их плеер или их страницу напрямую? Вы, вероятно, можете использовать их проигрыватель, если посмотрите их код для встраивания на их веб-страницу ИЛИ вы можете использовать iframe на своей собственной html-странице. чтобы они работали, вам, скорее всего, потребуется установить Flash 11.1 для Android. - person Æðelstan; 27.11.2015

Пытаться

flashplayer: "jwplayer.flash.swf",

вместо.

Вам также необходимо указать тип файла без расширения.

ie: type: 'flv'

ему нужно расширение .swf, и это должно работать.

person Elon Zito    schedule 09.12.2015