прямой эфир на ipad 1 или 2 с использованием командной строки vlc и html5 с карты аналогового телевидения на Ubuntu Linux - PullRequest
0 голосов
/ 12 сентября 2011

Моя система: я запускаю Ubuntu Natty и у меня есть старая аналоговая телевизионная карта, winTV-go + FM.и vlc 1.1.9., apache2 Чего я хочу добиться: взять вывод моей старой телевизионной карты, транслировать его с помощью vlc и встроить поток на локальный сайт для отображения с помощью html5, чтобы я мог смотреть поток на моемIpad 1 или 2 Текущая ситуация: мне удалось получить потоковую передачу с работающим VLC (я не использую графический интерфейс) с различными контейнерами и кодеками.У меня есть 3 рабочие команды потока, которые включают в себя:

1: vlc -vvv v4l2:///dev/video0:width=640:height=480 :input-slave=alsa://hw:1,1 --sout '#transcode{vcodec=mp4v,acodec=mp3,vb=8000,ab=128,channels=1,samplerate=44100}:standard{access=http,mux=ts,dst=192.168.1.10:9090}'

2: vlc -vvv v4l2:///dev/video0:width=640:height=480 :input-slave=alsa://hw:1,1 --sout '#transcode{vcodec=theo,acodec=mp3,vb=8000,ab=128,channels=1,samplerate=44100}:standard{access=http,mux=ogg,dst=192.168.1.10:9080/test.ogv}'

3: vlc -v v4l2:///dev/video0:width=640:height=480 :input-slave=alsa://hw:1,1 --sout '#transcode{vcodec=h264,vb=1024,acodec=mp3,channels=1,ab=128,samplerate=44100}:standard{access=http,mux=ts,dst=192.168.1.10:9080/test.mp4}'

Я могу открыть все 3 потока на другом компьютере и воспроизвести их в vlc, Примечание на стороне: поток * .ogv, который я также могу просто ввестикак URL (http://192.168.1.10:9080/test.ogv) в Chrome, и он отображает его там как видео, остальные 2 потока он пытается загрузить в виде файла.

Пока все хорошо, теперь я перехожу к своему HTML5-коду (имелнекоторые проблемы при вставке здесь, поэтому я использовал pastebin для dsiplay кода):

pastebin html5 code

это прекрасно работает в Chrome, но, поскольку это ogv, это будетконечно, не работает на ipad, поэтому мне нужно использовать h.264 / mp4, так как он поддерживается / встроен в Safari, но при использовании потоковой команды 1 или 3, я не получаю видео, отображаемое на ipad или chrome.используя команду stream 2 (команда ogv), я настраиваю код html5 на одно из следующих (я пробовал все 3):

  <source src=http://192.168.1.10:9080/test.mp4 type=video/mp4; codecs="avc1.4D401E, mp3"'>  

или

 <source src=http://192.168.1.10:9080/test.mp4 type=video/mp4'>  

или

 <source src=http://192.168.1.10:9080/test.mp4'>  

ничего из этого не работает.

Я также добавил типы пантомимы вмой /etc/mime.types

видео / mp4 mp4 видео / quicktime qt mov видео / mp4v-es видео / ogg ogv видео / webm webm видео / x-matroska mpv mkv application / x-mpegURL m3u8 video / /MP2T ts application / x-mpegURL .m3u8

как мне указать html5-код, чтобы он правильно отображался на моем ipad?кто-нибудь понял?Кстати, я также попробовал http Apple Live Stream с использованием ffmpeg и segmenter, и я получаю, что это работает, но из-за того, что телевидение представляет собой непрерывный поток данных, он не очень хорошо работает со списком воспроизведения, поэтому я остановился через некоторое время ивам нужно перезапустить и т. д., не очень удобно, и я хочу, чтобы вышеуказанное работало, буду признателен за помощь, заранее спасибо:)

1 Ответ

1 голос
/ 26 декабря 2011

Для HTML5 и h.264 вы должны использовать AAC в качестве аудиокодека и mp4 в качестве мультиплексора, где вы в настоящее время используете mp3 для аудио и TS для мультиплексирования.Тем не менее, у меня пока нет работающей потоковой передачи VLC через видео HTML5.

зрители iPad моего живого веб-шоу смотрят через бесплатное приложение oPlayer в моем потоке h.264 / AAC / FLV, которое я такжеиспользовать для клиентов Flash, но я надеюсь, что потоковая передача HTML5 будет работать.

...