Пробовал при разных конфигурациях /etc/avserver.conf. Вызывал ffmpeg так: ffmpeg -s 352x288 -r 30 -f video4linux2 -i /dev/video0 http://localhost:8090/feed.ffm В случае конфига avserver по умолчанию, получаю падение: [roman@roman ~]$ ffmpeg -s 352x288 -r 30 -f video4linux2 -i /dev/video0 http://localhost:8090/feed1.ffm ffmpeg version 0.8.1-alt0.M60P.1 (git.5effcfa7), Copyright (c) 2000-2011 the Libav developers built on Apr 30 2012 04:09:39 with gcc 4.5.3 20120111 (ALT Linux 4.5.3-alt1) This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes). [video4linux2 @ 0x8067a80] Estimating duration from bitrate, this may be inaccurate Input #0, video4linux2, from '/dev/video0': Duration: N/A, start: 2967.144422, bitrate: 36495 kb/s Stream #0.0: Video: rawvideo, yuv420p, 352x288, 36495 kb/s, 30 tbr, 1000k tbn, 30 tbc Incompatible sample format '(null)' for codec 'mp2', auto-selecting format 's16' Incompatible sample format '(null)' for codec 'libmp3lame', auto-selecting format 's16' Output #0, ffm, to 'http://localhost:8090/feed1.ffm': Stream #0.0: Video: [0][0][0][0] / 0x0000, yuv420p, q=0-0, 1000k tbn Stream #0.1: Video: [0][0][0][0] / 0x0000, rgb48be, q=88--1217438336, -1231965 kb/s, 1000k tbn, -0.01 tbc Stream #0.2: Audio: libmp3lame, 22050 Hz, 1 channels, s16, 64 kb/s Stream #0.3: Video: msmpeg4, yuv420p, 352x240, q=2-31, 256 kb/s, 1000k tbn, 15 tbc Could not find input stream matching output stream #0.2 *** glibc has detected an error in ffmpeg: free(): invalid pointer: 0x08067260 *** ======= Backtrace: ========= /lib/libc.so.6(+0x6b9da)[0xb68269da] /lib/libc.so.6(+0x6d313)[0xb6828313] /lib/libc.so.6(cfree+0x71)[0xb682b591] /usr/lib/libavutil.so.51(av_free+0x1b)[0xb696f15b] В случае кофига отсюда http://habrahabr.ru/post/78677 получаю: [roman@roman ~]$ ffmpeg -s 352x288 -r 30 -f video4linux2 -i /dev/video0 http://localhost:8090/feed.ffm ffmpeg version 0.8.1-alt0.M60P.1 (git.5effcfa7), Copyright (c) 2000-2011 the Libav developers built on Apr 30 2012 04:09:39 with gcc 4.5.3 20120111 (ALT Linux 4.5.3-alt1) This program is not developed anymore and is only provided for compatibility. Use avconv instead (see Changelog for the list of incompatible changes). [video4linux2 @ 0x8067a80] Estimating duration from bitrate, this may be inaccurate Input #0, video4linux2, from '/dev/video0': Duration: N/A, start: 3082.663825, bitrate: 36495 kb/s Stream #0.0: Video: rawvideo, yuv420p, 352x288, 36495 kb/s, 30 tbr, 1000k tbn, 30 tbc [buffer @ 0x8068380] w:352 h:288 pixfmt:yuv420p [buffer @ 0x8069be0] w:352 h:288 pixfmt:yuv420p Floating point exception P.S. Проблемы была и в ранних версиях, была надежда, что её в новой версии исправили.
Это надо на самой последней версии 0.8.2 (которая в Сизифе) проверить, воспроизводится ли там баг. Вы сможете локально пересобрать пакет с libav из Сизифа, установить и проверить?
(В ответ на комментарий №1) > Это надо на самой последней версии 0.8.2 (которая в Сизифе) проверить, > воспроизводится ли там баг. Я бы проверил если-бы сборка в Сизифе была нормальна. А так попытка установить avserver сообщает: "Зависит от: libavformat53 (= 1:0.8.2-alt1)
не надо из Сизифа ставить! Возьмите отсюда: ftp://ftp.linux.kiev.ua/pub/Linux/ALT/people/viy/libav/
(В ответ на комментарий №3) > не надо из Сизифа ставить! Возьмите отсюда: > ftp://ftp.linux.kiev.ua/pub/Linux/ALT/people/viy/libav/ Как, получилось?
> не надо из Сизифа ставить! Возьмите отсюда: Я имел в виду установку версии avserver для Сизифа на Сизифе. > > не надо из Сизифа ставить! Возьмите отсюда: > > ftp://ftp.linux.kiev.ua/pub/Linux/ALT/people/viy/libav/ > Как, получилось? Проблема присутствует в том-же объёме.
(В ответ на комментарий №5) > Проблема присутствует в том-же объёме. Спасибо большое! Получается, бакпортировать 0.8.2 не имеет смысла, Ошибка присутствует и в Сизифе. Я перевешиваю баг на Сизиф, и, когда проблема будет исправлена в Сизифе, сделаю бакпорт.
avconv -f video4linux2 -i /dev/video0 -f avi -y /dev/stdout |avplay -f avi - так видно ?
(В ответ на комментарий №7) > avconv -f video4linux2 -i /dev/video0 -f avi -y /dev/stdout |avplay -f avi - > так видно ? Видно.
я так полагаю, к avconv претензий нет. что до ffserver/avserver, то в апстриме он заброшен годами, если у кого-то получилось с его помощью что-то сделать, нуу, good for them, если же нет -- врядли мне стоит что-либо по этому поводу предпринимать. впрочем, пусть пока повисит.
(В ответ на комментарий №9) > я так полагаю, к avconv претензий нет. > что до ffserver/avserver, то в апстриме он заброшен годами Ну как-бы падает не avserver, а ffmpeg, который работает через avserver и является частью avconv. :)
"This program is not developed anymore and is only provided for compatibility. Use avconv instead" -- переводить нужно ?
(В ответ на комментарий №11) > "This program is not developed anymore and is only provided for compatibility. > Use avconv instead" -- переводить нужно ? Thanks, I am understand. Кстати там по документации ffmpeg кругом и прямо заменён на avconv. Странно тогда почему-бы не бросить прямой линк на avconv вместо ffmpeg. Запуск: avconv -s 352x288 -r 30 -f video4linux2 -i /dev/video0 Не падает и что-то на сервер шлёт, однако поток в браузерах не воспроизводится, да и проигрывание avconv на сервер через некоторое время замирает. Наверно таки с сервером проблема.
avconv больше нет