Jump to content
Калькуляторы

Чем организовать вещание *.avi в сеть по http?

Есть несколько видеофайлов.

Нужно циклически транслировать их в сеть по HTTP для просмотра в VLC.

Чем сейчас принято делать вещание?

 

VLC не годится - съедает весь процессор, качество картинки низкое.

 

Смотрю в сторону avserver из состава ffmpeg, но в манах про него написано

"WARNING: avserver is unmaintained, largely broken and in need of a complete rewrite. It probably won't work for you. Use at your own risk."

 

Что скажет коллективный разум?

Share this post


Link to post
Share on other sites

Есть несколько видеофайлов.

Нужно циклически транслировать их в сеть по HTTP для просмотра в VLC.

 

Вроде бы у vlc есть plugin в браузер, с помощью которого можно смотреть всё что угодно и отдавайте это по http

Share this post


Link to post
Share on other sites

Ваша проблема в том, что Вам надо не только играть, но ещё и перекодировать.

Лучше слепите всё вместе и перекодируйте в один файл, который уже без перекодирования вещайте.

Share this post


Link to post
Share on other sites

Если не ошибаюсь, по http вообще транслировать невозможно. http (как и более подходящий RTSP) начнет передавать по запросу. Если нужна реальная трансляция, невзирая на запрос клиента, тогда что-то из UDPшного, вплоть до мультикаста.

Share this post


Link to post
Share on other sites

Есть несколько видеофайлов.

Нужно циклически транслировать их в сеть по HTTP для просмотра в VLC.

Чем сейчас принято делать вещание?

 

VLC не годится - съедает весь процессор, качество картинки низкое.

 

Смотрю в сторону avserver из состава ffmpeg, но в манах про него написано

"WARNING: avserver is unmaintained, largely broken and in need of a complete rewrite. It probably won't work for you. Use at your own risk."

 

Что скажет коллективный разум?

erlyvideo попробуйте, очень доволен! Спасибо Максу

Share this post


Link to post
Share on other sites

транскодить всё равно придётся.

В итоге помогла предварительная переконвертация в MPEG2:

vlc -I dummy infile.avi :sout='#transcode{vcodec=mp2v,vb=4096,acodec=mp2a,ab=192,scale=1,channels=2,deinterlace,audio-sync}:std{access=file, mux=ps,dst="outfile.mpg"}' vlc://quit

Команда взята из http://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples#HTTP_streaming

 

Вещание делается так:

vlc -I ncurses *.mpg --sout-keep --sout '#standard{access=http,mux=ts,dst=:1234}' --loop

На Athlon™ II X2 220 кушает около 2%

Команда взята из http://wiki.videolan.org/Documentation:Streaming_HowTo/Command_Line_Examples#HTTP_streaming

Методом тыка добавил --loop и --sout-keep.

mux=ogg или ts - скорее всего, без разницы.

Share this post


Link to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.