[room] video streaming many-to-many
Mykola S. Grechukh
gns на altlinux.org
Ср Мар 10 20:03:34 UTC 2010
Здравствуйте,
Я потратил целый день на ковыряние в этих ваших
flux/feng/vlc/ffmpeg/ffsever, и кажется зашёл в тупик. Может
кто-нибудь расскажет, как можно сделать или хотя бы как вообще
взаимодействуют технологии.
Идея в том, чтобы поставить видео-концентратор, на который много
разных людей будут стримить свои камеры. И можно было подключиться к
любому из потоков. Это должно быть не peer2peer, т.е. подключаться
надо не к клиентам/камерам на их айпишки, а как-то более
централизованно.
Как я себе это примерно представляю и получилось с ffserver на
centos5. На сервере описываются входные потоки vasya.ffm, petya.ffm,
vanya.ffm и соответствующие им flv стримы. Сервер слушает и отдаёт
http, НЕ лезет сам к клиентам.
ffmpeg как источник отправляет по http, примерно так:
ffmpeg -i /dev/video0 http://videoserver/vasya.ffm (или, скажем,
ffmpeg -i /mnt/cdrom/movies/Walle.2008.D.DVDRip.avi
http://videoserver/vasya.ffm).
VLC как клиент открывает url http://videoserver/vasya.flv и смотрит.
Однако, мне не удалось c нашего ffmpeg засунуть поток. VLC отлично
читает с камеры, но умеет отправлять на сервер только RTP в udp/tcp.
vlc конечно ещё умеет отдавать http, но не пушить - подключение к vlc
по http должно быть инициировано в данном случае с сервера. Я мог бы,
конечно, запустить на сервере много cvlc на разных портах, по
экземпляру для каждого клиента, и каким-то образом заставить время от
времени лазить на своих клиентов и пытаться забрать поток.
Но это как-то криво. ffserver'ный вариант с идентификатором "канала" в
url нравится больше.
Ещё есть lscube с flux который умеет слушать udp, получать от
vlc-с-камерой rdp поток и передавать через posix messaging queue в
feng, к которому далее можно обратиться по rtsp://videoserver/vasya.sd
- тоже неплохо, за исключением того что у каждого клиента должен быть
свой порт на котором слушает его личный инстанс flux. Один хрен вся
эта байда не завелась.
Доктор, я буду жить?
--
Mykola Grechukh
RISC Group IT Solutions
Подробная информация о списке рассылки smoke-room