magnify
Home arrow Администрирование arrow Организация видеотрансляции на сайте
formats

Организация видеотрансляции на сайте

Опубликовано: 09.02.2009 Автор: в

В одном из моих прошлых постов для передачи потокового видео я использовал связку Motion+ffmpeg+ffserver. В принципе, это рабочий вариант, но по какой-то причине ffserver довольно «криво» работал в качестве HTTP-сервера для отдачи видео.

В этот раз мы попробуем пойти другим путем и организовать трансляцию IP-камеры на сайте с помощью VLC Media Player — кроссплатформенного видеоплеера, а также, что наиболее важно в нашем случае, сервера потокового вещания. Сразу оговорюсь, что в качестве формата трансляции был выбран Flash Video (flv). Причин несколько, но самая главная — наличие Flash-плеера в браузере у 99% процентов пользователей Интернет. Конечно, можно выбрать и другой контейнер, например ASF.

Поскольку IP-камера (AXIS), с которой предполагалось вещание выдавала видео в формате MPEG ES, то предварительно его надо было преобразовать в MPEG TS, чтобы потом его можно было транскодировать в FLV.

Общая схема трансляции показана на рисунке ниже.

Общая схема

В качестве TS Muxer, FLV Encoder и FLV Streamer и будет выступать VLC.

Технически же это будет реализовано таким образом, что TS Muxer будет посылать MPEG TS поток по HTTP на порт 8080, откуда его можно будет «забирать», транскодировать в FLV и слать по HTTP на порт 8081. Чтобы было более понятно, проиллюстрирую это примером. Предположим, что все будет происходить на одном сервере (хотя это абсолютно не обязательно). Тогда техническая реализация работы будет следующей:

Реализация

Приступим к реализации. Как обычно, детали установки приведу для Debian Etch 4.0. VLC будем собирать из исходников.

1. Подготовка:

# Устанавливаем необходимые для сборки пакеты
# !!! НЕ ЗАБУДЬТЕ ДОБАВИТЬ РЕПОЗИТОРИЙ DEBIAN-MULTIMEDIA В APT !!!
apt-get install ffmpeg libavformatcvs51 libavcodeccvs51 libavcodeccvs51-dev libavformatcvs51-dev \
libavutilcvs49-dev libavutilcvs49 libavahi-client3 libavahi-common-dev libpostproccvs51-dev  \
libswscalecvs0-dev libswscalecvs0 libxvidcore4-dev libxvidcore4 libx264-dev libx264-54 automake1.9 \
autoconf g++ gcc liba52-0.7.4-dev libdvbpsi3-dev libdvbpsi3 libfaad-dev libfaac-dev libfribidi-dev \
libgcrypt11-dev liblame-dev liblua5.1-0-dev libmad0-dev libmpeg2-4-dev libogg-dev libvorbis-dev \
zlib1g-dev libvcdinfo-dev libiso9660-dev libcddb2-dev libflac-dev

# Скачиваем и собираем LIVE555 Streaming Media
# !!! ВНИМАНИЕ !!! На 4.11.2009 vlc с последней версией live от 28.10.2009 не работает. Проверено.
# http://forum.videolan.org/viewtopic.php?f=13&t=66303
# У меня сохранилась более старая версия, поэтому загружаем отсюда:
wget http://flance.onego.ru/files/live/live.tar.gz
tar xvfz live.tar.gz
cd live
./genMakefiles linux
make

2. VLC:

# На время написания статьи самая свежая стабильная версия - 0.9.8a
wget http://download.videolan.org/pub/videolan/vlc/0.9.8a/vlc-0.9.8a.tar.bz2
bzip2 -d vlc-0.9.8a.tar.bz2
tar xvf vlc-0.9.8a.tar

3. Добавляем live555 в дерево исходных текстов VLC:

cd vlc-0.9.8a
cp -r $YOUR_LIVE555_BUILD_DIR extras

4. Собираем VLC:

# Поскольку мне не нужен был VLC с графическим интерфейсом на сервере, то использовались ключи, которые его не собирали
./configure --enable-release --enable-faad --disable-remoteosd --disable-qt4 --disable-skins2 \
--disable-activex --disable-v4l2 --disable-libv4l2 --disable-x11 --disable-xvideo --disable-glx \
--disable-opengl --disable-visual --enable-realrtsp --enable-flac --with-live555-tree=extras/live \
--disable-dbus --disable-hal > /tmp/1 2> /tmp/2
# В файле /tmp/2 можно будет смотреть ошибки и предупреждения процесса конфигурирования
# Если будет какая-нибудь ошибка, то необходимо установить соответствующий пакет Debian и
# запустить configure еще раз
make

5. Запускаем VLC TS Muxer:

./vlc -vv --no-rtsp-tcp rtsp://<URL потока> --rtsp-caching=10000 --no-sout-audio --sout \
'#std{access=http,dst=127.0.0.1:8080,mux=ts}'

6. Запускаем FLV encoder+streamer:

./vlc -vv http://127.0.0.1:8080 --loop --http-caching=10000 --sout \
'#transcode{vcodec=FLV1,vb=1024}:std{access=http{mime=video/x-flv},dst=:8081/stream.flv,mux=ffmpeg{mux=flv}}'

6. Интеграция в HTML:

# Скачиваем flash-плеер, я рекомендую JW FLV Media Player, но можно попробовать и другой
wget http://www.longtailvideo.com/jw/upload/mediaplayer.zip
# Распаковываем и кладем файлы  player.swf и swfobject.js в один каталог с предполагаемой
# HTML-страницей, где будем показывать видео

Добавляем следующий HTML-код в страницу:

<script type="text/javascript" src="swfobject.js"></script>
<div id="mplayer">this will be replaced by the SWF.</div>
<script type="text/javascript">
var so = new SWFObject('player.swf','player','459','375','9');
so.addParam('allowfullscreen','true');
so.addParam('flashvars','start=1&amp;repeat=always&amp;file=http://<адрес потока>&amp;bufferlength=0&amp;autostart=true&amp;displayclick=none&amp;mute=true');
so.write('mplayer');
</script>

Внимание! Параметры start (спасибо Кириллу) и repeat важны.
Все, можно проверять. Хочу еще отметить, что на данный момент VLC с текущей версией FFMPEG для в плане FLV кодирования не работает, поэтому я использовал пакеты Debian. Если кодек FLV1 не нужен, то можно собрать VLC и со свежими FFMPEG и X264.

04.11.2009 ОБНОВЛЕНИЕ:
Важная информация:
1. Для сборки на Debian Lenny 5.0 необходимо добавить в опции конфигурирования VLC на 4 шаге опции --disable-nls и --disable-mozilla, иначе вылезет ошибка о Buggy glibc version.
2. VLC с последней версией liveMedia не стартует. Смотрите комментарии в шаге 1.

Ссылки:

  1. http://www.videolan.org
  2. http://www.ffmpeg.org
  3. http://www.live555.com/liveMedia
  4. http://www.longtailvideo.com/players/jw-flv-player
 
Просмотров: 40 613 | 100 комментариев  comments 

100 комментариев

  1. Ivan

    lavrik@userver:~/vlc-0.9.8a$ ./configure -–enable-release -–enable-faad -–disable-remoteosd -–disable-qt4 –-disable-skins2 -–disable-activex –-disable-v4l2 -–disable-libv4l2 -–disable-x11 -–disable-xvideo -–disable-glx –-disable-opengl -–disable-visual -–enable-realrtsp -–enable-flac -–with-live555-tree=extras/live –-disable-dbus –-disable-hal
    configure: error: unrecognized option: -–enable-release
    Try `./configure —help’ for more information.

  2. ‘тире»тире’enable-release и т.д.

  3. kh

    Почему-то на сайте нет ваших координат для связи. оставляю свои-
    adv@yar-net.ru напишите пожалуйста!

  4. Внизу страницы есть ссылка «Связаться».

  5. Fargys

    поднял сие дело на slackware, работает как часы :) поток идет, замечательно ловится vlc, но не в какую не ловится адм плеером на странице.. в чем может быть проблема? пробывал уже и activex плагином vlc воспроизвести, тот же эффект, так же не получилось с момощью windows media player……

  6. flv-поток нормально воспроизводится vlc? Если да, то проверьте внимательно параметр ‘file=’ в flashvars для JW Player. Какие симптомы у плеера? File not found или индикатор загрузки вечно крутится?

  7. Fargys

    о.. неожидал быстрого ответа :)
    да, через vlc поток воспроизводится замечательно/
    параметр file, кусок скрипта… тут тоже все верно.
    repeat=always&file=http://192.168.225.212:8081/stream.flv&bufferlength=0&autostart=true
    симптомы у плеера.. молчание :) т.е. никакой реакции на происходящее
    http://www.longtailvideo.com/support/jw-player-setup-wizard
    пробывал тут запустить, вбил ссылку на свою флешку. пишет Video not found or access dinided.
    vlc запускаю следующим образом
    —loop —http-caching=10000 —sout ‘#transcode{vcodec=FLV1,vb=1048,scale=0.5,acodec=mp3,samplerate=22050}:std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=0.0.0.0:8081/stream.flv}’

  8. Я так понимаю, 192.168.225.212 — IP-адрес из локальной сети. Когда пользователь открывает браузер, именно его компьютер коннектится к этому IP через flash-плеер. Есть ли доступ до этого IP с компьютера пользователя, где запускается браузер (vlc для проверки с него запускается)? Понятное дело, что с сайта не получилось проверить.

  9. Fargys

    все.. проблема решена..
    я пытался запускать все с локального адреса C:\mediaplayer\flash.html
    стоило перенести на сервер апача… и о чудо все работает :) спасибо за отличный мануал, и простите за мою глупость :)

  10. kosmosmax

    Доброго времени суток!
    Спасибо большое за статью, очень нужное и ценное дело!
    Собственно реализовал всё под Windows, камеры выдают RTSP, ну все как выше расписано.
    Результат- здесь: http://raduga-center.com/index.php?option=com_content&view=article&id=68&Itemid=123
    Вопросы следующие, на всех камерах заметно, что изображение как бы «дышит», картинка становится хуже периодически, я правильно понимаю, что это издержки кодирования FLV? Причем, на первой слева камере(площадь перед кинотеатром) VLC кодирует VB=512, а две остальные этот параметр не стал ставить вообще, установка VB=1024 качества не прибавляет, битрейт все равно держится около 650- 750 кбит/с, кто знает, это предел качества FLV1? И ещё не очень нравится такое растранжиривание трафика, думаю, что для такого качества 700кбит/с слишком. Никто не задавался подобными вопросами? Здесь нашел http://www.fridu.org/sip-voiceip-faqs-tips-83/47-linux-mp4-quicktime-streaming если правильно понял , то можно флеш плейером, нашим любимым JW FLV Media Player подхватить Direct stream mp4, тоже вот, поподробнее может кто прокоментирует.

  11. Ivan

    Обратился, помог очень быстро и качественно. Спасибо!
    Всем рекомендую! Хороших фрилансеров сейчас сложно найти.

  12. Fargys

    доброе время суток.. снова я :) вопрос такой.. во время просмотра потока он кешируется C:\Documents and Settings\%username%\Local Settings\Temp\fla5C2.tmp
    через энное время этот файл уже занимает значительное пространство на жестких дисках, подскажите пожалуйста.. можно ли как либо заставить плеер не кешировать, ну или обнулять кеш при определенном обьеме?
    с уважением.

  13. Snaut

    День добрый. Получается, качество намного хуже исходного rtsp. В чем может быть дело?

  14. Дело в FLV-кодеке.

  15. Snaut

    Жаль. Возможно ли использовать другой кодек? просто я несколько пробовал, но не все я так понимаю flash-плееры их поддерживают. Если кто сталкивался с транслированием видео с пмощью другого кодека — расскажите?

  16. j0hn

    vlc -vvv —noaudio «rtsp://10.77.172.52:554/mpeg4/media.amp/trackID=1» —sout ‘#transcode{vcodec=H263,venc=ffmpeg{keyint=25},vb=40,width=176,height=144,fps=5}:rtp{dst=127.0.0.1,port-video=9550,sdp=file:///usr/local/share/DarwinStreamingServer/movies/s2.sdp,name=test}’

    [0x2871c7f0] main input error: open of `rtsp://10.77.172.52:554/mpeg4/media.amp/trackID=1′ failed: (null)
    [0x2871c7f0] main input error: Your input can’t be opened
    [0x2871c7f0] main input error: VLC is unable to open the MRL ‘rtsp://10.77.172.52:554/mpeg4/media.amp/trackID=1’. Check the log for details.

    [0x285efbc0] main playlist debug: nothing to play

    таже хрень при rtsp://10.77.172.52:554/mpeg4/media.amp и при rtsp://10.77.172.52:554/mpeg4/media.3gp

    камера axis 211, сервер под Freebsd 8, сборка vlc из портов

    VLC media player 1.0.3 Goldeneye
    [0x285171c0] main libvlc debug: VLC media player — version 1.0.3 Goldeneye — (c) 1996-2009 the VideoLAN team
    [0x285171c0] main libvlc debug: libvlc was configured with ./configure ‘—enable-vlc’ ‘—enable-release’ ‘—enable-avcodec’ ‘—enable-avformat’ ‘—enable-postproc’ ‘—without-dv-raw1394’ ‘—disable-dv’ ‘—disable-galaktos’ ‘—disable-glx’ ‘—disable-qt4’ ‘—enable-dbus’ ‘—disable-gnomevfs’ ‘—disable-notify’ ‘—disable-skins2’ ‘—disable-libtar’ ‘—enable-loader’ ‘—disable-jack’ ‘—disable-remoteosd’ ‘—disable-pulse’ ‘—disable-fluidsynth’ ‘—enable-zvbi’ ‘—disable-hal’ ‘—disable-arts’ ‘—enable-bonjour’ ‘—enable-vcd’ ‘—enable-libcddb’ ‘—disable-cddax’ ‘—enable-cdda’ ‘—enable-cddax’ ‘—enable-dvbpsi’ ‘—with-dvbpsi=/usr/local’ ‘—enable-dvdnav’ ‘—disable-dvdread’ ‘—disable-esd’ ‘—with-ffmpeg-faac’ ‘—enable-faad’ ‘—disable-fribidi’ ‘—enable-aa’ ‘—disable-dirac’ ‘—disable-schroedinger’ ‘—enable-x264’ ‘—enable-lua’ ‘—disable-caca’ ‘—enable-dca’ ‘—enable-ggi’ ‘—enable-mkv’ ‘—enable-a52’ ‘—enable-libmpeg2’ ‘—enable-real’ ‘—enable-realrtsp’ ‘—enable-shout’ ‘—enable-theora’ ‘—enable-live555’ ‘—with-live555-tree=/usr/local/live’ ‘—enable-taglib’ ‘—enable-mad’ ‘—with-mad=/usr/local’ ‘—enable-mod’ ‘—enable-mpc’ ‘—disable-ogg’ ‘—enable-ncurses’ ‘—enable-smb’ ‘—disable-sdl’ ‘—enable-gnutls’ ‘—enable-speex’ ‘—disable-svg’ ‘—enable-svgalib’ ‘—disable-tremor’ ‘—enable-twolame’ ‘—disable-vorbis’ ‘—disable-xosd’ ‘—enable-debug’ ‘—enable-v4l’ ‘—disable-x11’ ‘—prefix=/usr/local’ ‘—mandir=/usr/local/man’ ‘—infodir=/usr/local/info/’ ‘—build=i386-portbld-freebsd8.0’ ‘build_alias=i386-portbld-freebsd8.0’ ‘CC=cc’ ‘CFLAGS=-pipe -g’ ‘CXX=c++’ ‘CXXFLAGS=-pipe -g’ ‘LUA_CFLAGS=-I/usr/local/include/lua51’ ‘LUA_LIBS=-L/usr/local/lib/lua51 -llua’

  17. j0hn

    с компа с винды влс нормально открывается rtsp://10.77.172.52:554/mpeg4/media.amp/trackID=1

  18. j0hn

    мдааа, не получив ответа, я взял второй сервак, поставил на него фрю 7.2 и собралл из пакетов vlc.
    теперь лайфмедиа вроде нормально работает. сейчас буду пытаться постить на сайт видео

  19. anton

    У меня нужно обрабатывать mpeg-2 поток с другого сервера в flv:
    Запускаю Muxer:
    ./vlc -vv http://217.171.2.37:8080 —sout ‘#std{access=http,dst=127.0.0.1:8080,mux=ts}’
    Запускаю flv encoder+streamer:
    ./vlc -vv http://127.0.0.1:8080 —loop —http-caching=10000 —sout ‘#transcode{vcodec=FLV1,vb=1024}:std{access=http{mime=video/x-flv},dst=:8081/stream.flv,mux=ffmpeg{mux=flv}}’

    после второй команды получаю:

    [0x16b89f8] main input debug: Stream buffering done (10058 ms in 10060 ms)
    [0x16b89f8] main input debug: Decoder buffering done in 0 ms
    [0x16d1148] avformat mux debug: writing header
    flv does not support that sample rate, choose from (44100, 22050, 11025).
    [0x16d1148] avformat mux error: could not write header
    [0x2861048] libmpeg2 decoder debug: 720×576 (display 720,576), aspect 576000, sar 16:15, 25.000 fps
    [0x2861048] main decoder warning: dts != current_pts (-1971123231544)
    [0x2861048] main decoder warning: decoder synchro warning: pts != current_date (-40000)

    [0x16c7388] main encoder debug: using encoder module «avcodec»
    [0x16c7388] main encoder debug: TIMER module_need() : 4.000 ms — Total 4.000 ms / 1 intvls (Avg 4.000 ms)
    [0x16d1148] main mux error: cannot add a new stream (unsupported while muxing to this format). You can try increasing sout-mux-caching value
    [0x16c8808] stream_out_transcode stream out error: cannot add this stream

    в чем может быть проблема?

  20. А обязательно в Вашем случае запускать muxer?

  21. anton

    Описал свою проблема вам на email, буду очень благодарен за помощь

  22. Ziggy

    Спасибо за статью. Очень полезно!
    При попытке реализации (вводные примерно такие же, тоже камера AXIS) столкнулся со следующей проблемой. В общем и целом решение работает. Но на некоторых комьютерах (думаю дело в комбинации браузер/версия флеша) поток во флеш-плейере не сразу воспроизводится, а какое-то время висит на «стоп-кадре». Может минуту висеть, может несколько секунд. Часто помогает несколько раз стоп/старт нажать.

    Пока предварительно заметил, что подобное часто всплывает на опере + 10-ый флеш и на IE7-8 + 10-ый флеш. В мозилле/файрфоксе и в IE6 + 9-ый флеш вроде все сразу нормально работает.

    Плейер — JW Player 4.5.230. С 5-ым тоже пробовал — такая же картина.

    VLC использовал последний стабильный — 1.0.3 (правда не под юниксом, а под Вин2к3, но думаю это не должно повлиять).

    Муксер запускаю абсолютно так же как у вас.
    Кодировщик запускаю вот так:

    start /min /D»C:\Program Files\VideoLAN\VLC» vlc.exe -vv http://127.0.0.1:8081 —loop —http-caching=5000 —sout «#transcode{vcodec=FLV1,vb=300,fps=10,scale=0.5}:std{access=http{mime=video/x-flv},dst=172.16.16.163:8083/stream.flv,mux=ffmpeg{mux=flv}}»

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

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

  23. Попробуйте использовать JW Player версии 4.1.xx.

  24. Ziggy

    Заметил только что. VLC (тот, который уже конечный поток формирует) в логе вот такое пишет (при уровне детализации лога 1 или 2):

    stream_out_transcode debug: drift is too high, resetting master sync
    avcodec warning: almost fed libavcodec with a frame in the past (current: 1143950692235, last: 1143950696023)

    Это что значит? Может тут пролебма?

  25. Если это сообщение появляется достаточно редко, можно не обращать не него внимания,а вот если постоянно,то будут частые лаги на видео.

  26. Ziggy

    > Попробуйте использовать JW Player версии 4.1.xx.

    Спасибо! В самом деле помогло.

    А почему так получается, что более свежие версии не поддерживают такой режим работы?

    Попробовал еще с кодеком поиграться, h264 кодировать. Вот так:

    vlc -vv http://127.0.0.1:8081 —loop —http-caching=0 —sout «#transcode{vcodec=h264,vb=300,fps=10,scale=0.5,acodec=none}:std{access=http{mime=video/x-flv},dst=172.16.16.163:8084/stream.flv,mux=ffmpeg{mux=flv}}»

    Обратно странная ситуация получилась. В 5-ой версии плейера более менее нормально стало показываться в ИЕ7-8 и опере (с задержкой в несколько секунд начинает показывать, т.е. сначала черный экран — через какое-то время показывает), но в мозилле/файерфоксе либо вообще не показывает, либо после очень долгого таймаута. И проц конечно заметно больше на h264 тратится.

  27. Ziggy

    > Если это сообщение появляется достаточно редко, можно не обращать не него
    > внимания,а вот если постоянно,то будут частые лаги на видео.

    Постоянно. :-( И в самом деле на видео заметно с той же частотой некое «пульсирование».

  28. При пульсировании попробуйте добавить параметр fps=xx (кадров в сек) в transcode.

  29. Ziggy

    Я так и делал — «fps=10». Может наоборот стоит убрать? Или 25 поставить?

  30. Ziggy

    Поднял битрейт до 512, частоту кадров 12 сделал. Вроде и сообщения пропали и пульсация исчезла.

  31. Макс Лапшин

    Пример рассмотрен хороший, но только не стоит использовать VLC, как сервер вещания. Например, очень несложно с его помощью отправить видеопоток через erlyvideo клиентам по RTMP

  32. Согласен насчет RTMP. Это более правильный путь. Вообще говоря, VLC как раз и хорош в качестве сервера транскодинга+вещания, но в случае с FLV это действительно не самый лучший вариант. Мне удалось запустить трансляцию через связку vlc+red5+steamStream. Тоже неплохой вариант. В скором времени постараюсь написать об этом. Что касается erlyvideo, то спасибо за совет. Обязательно покопаю в эту сторону.

  33. Chuck Norris

    Подтверждаю, что есть проблемы с ffmpeg под FreeBSD, после установки ffmpeg-devel из портов битрейт возрос, однако Линух всеравно не догоняет. Поменял немного параметры jwplayer-а, прочитав:

    http://developer.longtailvideo.com/trac/wiki/Player5Formats#HTTPStreaming.

    В результате пропал эффект повторения видео с начала соединения при плохом коннекте, причем теперь jwplayer сам переконнекчивается при обрыве и продолжает с текущего места.

    мои параметры:
    so.addParam(‘flashvars’,’http.startparam=1&repeat=none&provider=http&file=http://x.x.x.x:x/stream.flv&bufferlength=0&autostart=false&displayclick=none&mute=false&controlbar=none’);

  34. По странному стечению обстоятельств, новый JW Player ну никак не хочет нормально у меня проигрывать поток, даже с flashvars в виде, указанном выше. Приходится использовать версию постарее.

  35. Chuck Norris

    обнаружилась некоторая странность, при первом коннекте к vlc плеер играет видео, если подождать некоторое время, то уже не играет, хотя судя по тому, что круглый значек в центре пропадает — к серверу он законнекчивается. может в переменной http.startparam дело?

  36. Chuck Norris

    и еще:
    почему то коннект к vlc какой-то рваный в начале, да и потом могут проскакивать дисконнекты, странно и что интересно, клиентская машина не нагружена, сервак тоже. проверяю top-ом. флэшплугин свежайший, только что установленый.

  37. st

    Огромное спасибо за статью!!!
    Chuck Norris
    а какая настройка jwplayer’a отвечает за авто реконнект. Кто нибудь еще сталкивался с потерей коннекта к стриму со стороны jwplayer’a и автоматическим восстановлением?
    Автор статьи не сталкивался с
    vbv buffer overflow?
    У меня параметры запуска кодировщика:
    vlc http://127.0.0.1:8080 —loop —sout ‘#transcode{vcodec=FLV1,vb=512,fps=10,scale=0.5}:std{access=http{mime=video/x-flv},dst=127.0.0.1:8081/stream.flv,mux=ffmpeg{mux=flv}
    при большем значении vb возрастает нагрузка на проц. а при отсутствие параметра маштабирования, у видео потока тремор)))
    ffmpeg версии 0.5_p20373, vlc 1.0.5

  38. Рад, что пригодилась. C vbv buffer overflow сталкивался, но эти сообщения были редки и на кач-во видео не влияли при правильно выставленном vb. Попробуйте указать параметр fps с нужным значением в параметрах transcode.

  39. Key

    добрый день,Waster
    у меня есь несколько вопросов по конфигурированию vlc
    если сможете на них ответить приватно — буду вам очень признательна

  40. Максим

    Спасибо за материал, организовал у себя на сайте трансляцию благодаря нему.
    Теперь вопрос не менее важный, трансляцию «тырят» разные быдлосайты вроде «1000 и она камера». Озаботился вопросом защиты, предлагаю на Вашем сайте это обсудить, есть кое какие мысли. Немного не хватает знаний для реализации. Если заинтересует, напишите. С ув. Максим.

  41. nemesis

    не пойму, зачем конструкция п.5?
    У меня все работает так:
    vlc -vv rtsp://адрес:порт —loop —http-caching=10000 —sout \
    ‘#transcode{vcodec=FLV1,vb=1024}:std{access=http{mime=video/x-flv},dst=:8081/stream_1.flv,mux=ffmpeg{mux=flv}}

    ubuntu 9.10

  42. 5 пункт нужен был для камеры Axis, поскольку видео-поток там в формате MPEG4-ES

  43. alex

    Тоже хотелось бы задать вопрос о защите потока. Каким образом можно организовать защиту потока по имени пользователя и паролю?

  44. Мне сложно ответить, поскольку таким вопросом не задавался. Взгляните на http://www.longtailvideo.com/support/jw-player/48/securing-content-protect-your-video

  45. Юрий

    Ребят, такой вопрос!
    для выше перечисленного обязательно нужен сервер???
    Просто у меня камера ip, в связке с 3G роутером.. с выделенным IP..
    Как мне организовать прямую трансляцию с нее?

  46. Максим

    Народ помогите!!! Всю голову сломал. Не получается вещать звук,видео вещает, а звука нет!!!
    Пример кода:
    vlc -vv —no-rtsp-tcp rtsp:///axis-media/media.amp/trackID=1 —rtsp-caching=1000 —sout ‘#std{access=http,dst=127.0.0.1:8080,mux=ts}’
    vlc -vv http://127.0.0.1:8080 —loop —http-caching=1000 —sout ‘#transcode{vcodec=FLV1, vb=1048,acodec=mp3,ab=128}:std{access=http:{mime=video/x-flv},dst=:8081/stream.flv,mux=ffmpeg{mux=flv}}

  47. artem

    Привет! Спасибо за статью!
    Но как организовать трансляцию видео с камеры dcs-2102 напрямую без участия компьютера?

  48. 9221769

    Ребята помогите реализовать вывод трансляции на сайт, какой есть способ самый простой?
    Видео поток: rtsp://XXX.XXX.XXX.XXX:XXX/cam/realmonitor?channel=6&subtype=00&authbasic=YWRtaW46YWRtaW4

    через VLC media player открывается на ура, теперь нужно эту красоту вывести на сайт.
    Спасибо, моя почта: 9221769@gmail.com

  49. clubbookers

    Пример рассмотрен хороший, но только не стоит использовать VLC, как сервер вещания. Например, очень несложно с его помощью отправить видеопоток через erlyvideo клиентам по RTMP

  50. uxytjgam

    –{Œê‚ªŠÜ禁
    http://www.ff-breitenbrunn.de/rx/purchase-amex-price-usa-tramadol http://www.ff-breitenbrunn.de/rx/low-cost-usa-pill-himcolin https://www.blenoir-bretagne.com/en/rx/effect-coupon-without-prescription-confido https://pathsinc.org/rx/buy-brand-pill-confido https://pathsinc.org/rx/buy-in-pune-ortho-tri-cyclen http://www.ff-breitenbrunn.de/rx/cheap-for-sale-torsemide https://www.soleil-cauchois.fr/rx/cheap-uk-no-prescription-precose https://pathsinc.org/rx/non-prescription-cheap-aciclovir https://www.blenoir-bretagne.com/en/rx/to-order-mylgf-tegretol https://pathsinc.org/rx/without-prescription-amex-legally-yasmin https://www.blenoir-bretagne.com/en/rx/buy-online-italia-order-minocycline https://www.blenoir-bretagne.com/en/rx/buy-cod-zetia—uk-zocor https://www.blenoir-bretagne.com/en/rx/800mg-calan-price-sr-isoptin https://www.blenoir-bretagne.com/en/rx/doctor-cash-on-delivery-arcoxia https://www.blenoir-bretagne.com/en/rx/buy-drug-tadalis https://www.soleil-cauchois.fr/rx/cheap-online-overnight-delivery-proventil https://www.blenoir-bretagne.com/en/rx/buy-online-without-perscription-asacol https://www.soleil-cauchois.fr/rx/manner-rezeptfrei-cost-usa-augmentin https://www.soleil-cauchois.fr/rx/cheap-pharmacies-in-mexico-cefixime https://pathsinc.org/rx/low-cost-cheapest-usa-remeron https://www.blenoir-bretagne.com/en/rx/order-online-vision-kytril http://www.ff-breitenbrunn.de/rx/without-prescription-tablet-vpxl https://pathsinc.org/rx/buy-online-no-rx-minomycin https://www.soleil-cauchois.fr/rx/purchase-mastercard-floxin https://pathsinc.org/rx/buy-lowest-prices-pletal https://www.blenoir-bretagne.com/en/rx/ach-find-delivery-dutas https://www.soleil-cauchois.fr/rx/buy-generic-no-prescription-sominex https://www.soleil-cauchois.fr/rx/5mg-dental-cost-share-zebeta http://www.ff-breitenbrunn.de/rx/costco-cost-3mg-yasmin https://www.soleil-cauchois.fr/rx/bill-buy-renfrewshire-prinivil https://www.soleil-cauchois.fr/rx/order-cheap-overnight-aldactone http://www.ff-breitenbrunn.de/rx/no-prescription-tablet-solihull-lozol http://www.ff-breitenbrunn.de/rx/buy-brand-online-mestinon https://pathsinc.org/rx/buy-in-northern-ireland-florinef https://www.soleil-cauchois.fr/rx/purchase-generic-in-baltimore-mestinon https://www.soleil-cauchois.fr/rx/with-cod-nasonex-nasal-spray https://www.blenoir-bretagne.com/en/rx/price-of-in-mexico-ampicillin https://www.blenoir-bretagne.com/en/rx/drug-cod-free-fedex-geriforte https://www.soleil-cauchois.fr/rx/doll-purchase-where-to-buy-without-prescription-promethazine https://www.soleil-cauchois.fr/rx/price-drug-sheffield-cytotec