LINUX.ORG.RU
ФорумAdmin

Потоковое вещание Видео в сеть.

 , вещание в сеть


0

1

Здравствуйте уважаемые!
Хотелось бы узнать у Вас по теме следующего:
Поднимал ли кто-нибудь сервер видеовещания в сеть? Если да, то какой софт порекомендуете?
Стоит задача, забрать видеопоток с ipcam (желательно mpeg2 mpeg4) и подмонтировать его в какое-нибудь подобие icecast. Потом отдать его в flash плеер на сайт. Чтоб клиенты грузили трафиком не саму камеру, а сервер вещания.
Простыми словами: Создать трансляцию с камеры на сайт.
Примерные схемы:
1) Ipcam--->(инет 5mbit либо локалка)-->Сервер вещания(прим Icecast)-->>Инет(~mbit)->>клиенты.
2) Ipcam>>(инет5мб либо локаль)>>Какой-то софт чтоб забирать поток с камеры и монтировать в сервер>>>Сервер>Клиенты.
Естественно все это нужно сделать на Linux. Мб частично в промежутке использовать оффтопик.


Ответ на: комментарий от svm

Согласен, ну раз уж других вариантов не было озвучено, буду поднимать VLC.
Спасибо!

CeMKa
() автор топика

у меня реализавана такая штука. 1. сервер потокового вещания сделан на vlc. 2. vlc забирает трафик с камеры по 554 порту. (это секьюрно) 3. vlc в реалтайме перекодирует видео в flv. 4. на сайте вставил ссылку на flv файл и все работает.

код: файл transcode.sh

cvlc rtsp://хх.хх.хх.хх:554/snl/live/1/1 --no-sout-audio --loop --sout '#transcode{vcodec-FLV1,vb=1024,fps=15,sfilter=logo}:std{access=http{mime=video/x-flv},dst=:13280/view01.flv,mux=ffmpeg{mux=flv}}' --extraintf logger --logfile /var/log/vlc.log --logo-file /root/vlc/logo.png --logo-position=6 --logo-opacity=100

в нем идет перекодировка забранного видео и выдача на нестандартный порт 13280.
вставляешь ссылку http://твойip:13280/view01.flv и будет видео.
для того что бы при выходе из сеанса не сбрасывалась перекодировка сделал скрипт запуска

файл ipcam1.sh

#!/bin/sh
SCREENDIR=/root/tmp
case $1 in
        start)
                export SCREENDIR=/home/maxim/tmp
                cd /home/maxim/vlc
                screen -dmS ipcam1 ./transcode.sh
                sleep 5
                ;;
        stop)
                killall -9 vlc
                sleep 2
                ;;
        restart)
                killall -9 vlc
                sleep 5
                export SCREENDIR=/home/maxim/tmp
                cd /home/maxim/vlc
                screen -dmS ipcam1 ./transcode.sh
                sleep 5
                ;;
esac

на будущее два совета: 1. запустить перекодировку двух вайлов через одни транскоде не получиться. придется писать скрипт запуска и перекодировки отдельно на каждый файл. 2. перекодировка под root не работает. поэтому в коде стоит домашняя директория пользователя. из под него и запускаю скрипты в /etc/init.d/

mustwin
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.