Как реализовать потоковое вещание из набора jpeg'ов

Проблемы с установкой, настройкой и работой системных и сетевых программ.

Модераторы: GRooVE, alexco

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
goshanecr
сержант
Сообщения: 252
Зарегистрирован: 2008-03-31 15:54:49
Откуда: Пермь, Екатеринбург
Контактная информация:

Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение goshanecr » 2011-03-16 9:49:11

Товарищи добрый день!
Есть заведённые под фрёй камеры при помощи webcamd+pwcview+cuse4bsd..
Наблюдение организовано следующим образом:
1. с камеры снимается картинка при помощи

Код: Выделить всё

pwcview -h -d /dev/video0 -s vga -i 100 -c -1 -o /tmp/pic_1.jpg
2. И в браузере просто скриптом эта картинка обновляется.
Это вариант наблюдения очень на скорую и корявую руку. Хотел сделать вещание при помощи ffmpeg или vlc, но устройство /dev/video0 которое создаёт webcamd под фрёй, не поддерживает какие-то там операции и работать с ним поэтому ffmpeg и vlc не хотят, так же как и skype и другие многие проги.
Поэтому хочу спросить, а можно ли как то организовать вещание при помощи ffmpeg'а или vlc чтобы они из получающихся картинок организовывали поток?
Я пробовал делать чтобы pwcview создавал картинки с именами: img_001.jpg, img_002 и т.д. а ffmpeg с них уже создавал видео поток, но проблема в том, что ffmpeg даже если ему указать fps потока, преобразует сразу все картинки какие находит и с той скоростью с какой позволяют мощности компа и останавливается после обработки всех картинок, вещая полученную видяху.
Скажите, есть ли какое-то решение этой загвоздки?
Люблю в инете шарить. И браузер мой только Opera !!!
Пользователям стараюсь ставить дистр Ubuntu. Уже 3 человека пересели.
Домашний комп FreeBSD 9.0 amd64
FreeBSD - изменим жизнь к лучшему!

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение Alex Keda » 2011-03-25 12:53:34

каким-то макаром на stdin их ему вкармливать чтоли...
Убей их всех! Бог потом рассортирует...

Аватара пользователя
goshanecr
сержант
Сообщения: 252
Зарегистрирован: 2008-03-31 15:54:49
Откуда: Пермь, Екатеринбург
Контактная информация:

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение goshanecr » 2011-03-25 15:07:59

Я уже сделал грамотней. pwcview в режиме детекта движений отдаёт сырой raw видео поток на stdout, который и скармливается тут же ffmpeg'у . Всё работает, 3 камеры и не жужжат. :)
Люблю в инете шарить. И браузер мой только Opera !!!
Пользователям стараюсь ставить дистр Ubuntu. Уже 3 человека пересели.
Домашний комп FreeBSD 9.0 amd64
FreeBSD - изменим жизнь к лучшему!

bsam
рядовой
Сообщения: 38
Зарегистрирован: 2010-06-04 14:21:16

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение bsam » 2011-06-28 22:26:42

goshanecr писал(а):Я уже сделал грамотней. pwcview в режиме детекта движений отдаёт сырой raw видео поток на stdout, который и скармливается тут же ffmpeg'у . Всё работает, 3 камеры и не жужжат. :)
А точную команду привести можно? Что-то уменя ffmpeg не работает.

k0s
рядовой
Сообщения: 18
Зарегистрирован: 2011-04-05 10:44:19

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение k0s » 2011-06-30 10:27:21

а как загрузка проца ? у меня на 98 процентов сьедает..

Аватара пользователя
goshanecr
сержант
Сообщения: 252
Зарегистрирован: 2008-03-31 15:54:49
Откуда: Пермь, Екатеринбург
Контактная информация:

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение goshanecr » 2011-06-30 10:57:17

Код: Выделить всё

pwcview -hkr -s vga -u 100 -l 50 -f ${FPS} -d ${webcam} | ffmpeg -s 640x480 -r ${FPS} -f rawvideo \
                                -pix_fmt yuv420p -i -  -re -vcodec libx264 -vpre slow -crf 22 -threads 0 -s 640x480 \
                                -r ${FPS} http://127.0.0.1:30001/websad_${count}.ffm &
Это команда для организацие потокового вещания с камеры
А по поводу загрузки проца, на пентиуме 4 3ггц , и с включенным HTT (Это наоборот плохо, но там батарейка в биосе подохла и он периодически сбрасывает настройки и HTT оказывается включенным). Без гипертрейдинга загрузка меньше.
2 камеры.

Код: Выделить всё

last pid:  8690;  load averages:  3.08,  2.85,  2.95                                                                                    up 0+05:51:41  13:55:24
52 processes:  4 running, 48 sleeping
CPU: 62.8% user,  0.0% nice, 35.3% system,  0.0% interrupt,  1.9% idle
Mem: 67M Active, 77M Inact, 75M Wired, 20K Cache, 110M Buf, 765M Free
Swap: 2048M Total, 2048M Free

  PID USERNAME    THR PRI NICE   SIZE    RES STATE   C   TIME   WCPU COMMAND                                                                                   
 1635 root          1  94    0 35240K 12912K RUN     1 256:04 76.56% ffserver
88714 root          1  87    0 15796K  3732K RUN     0  95:58 48.97% pwcview
 1649 root          1  36    0 39336K 17212K nanslp  1  81:32 24.37% ffmpeg
88715 root          1  30    0 39336K 17176K CPU0    0  34:26 15.28% ffmpeg
 1648 root          1  26    0 15796K  5704K pipdwt  1  41:50  9.18% pwcview
 1624 root          9 -51  r1F 25740K  5888K select  0  30:30  0.98% webcamd
 1607 root          9 -51  r1F 26508K  4264K select  0   8:48  0.00% webcamd
Люблю в инете шарить. И браузер мой только Opera !!!
Пользователям стараюсь ставить дистр Ubuntu. Уже 3 человека пересели.
Домашний комп FreeBSD 9.0 amd64
FreeBSD - изменим жизнь к лучшему!

k0s
рядовой
Сообщения: 18
Зарегистрирован: 2011-04-05 10:44:19

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение k0s » 2011-06-30 17:20:50

както всеравно многовато, транслирую vlc загрузка пока больше 5% не поднималась..

Аватара пользователя
goshanecr
сержант
Сообщения: 252
Зарегистрирован: 2008-03-31 15:54:49
Откуда: Пермь, Екатеринбург
Контактная информация:

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение goshanecr » 2011-06-30 21:08:50

Здесь во-первых:
  • вещание с 2-х камер
  • во-вторых: гипертрейдинг крайне негативно влияет на производительность в FreeBSD
  • в третьих транслируете vlc что? Тут pwcview снимает картинку с камеры а затем кодирует её в видео поток.
  • и к тому же во что жмёте? Кодек, параметры?
  • Железо?
Люблю в инете шарить. И браузер мой только Opera !!!
Пользователям стараюсь ставить дистр Ubuntu. Уже 3 человека пересели.
Домашний комп FreeBSD 9.0 amd64
FreeBSD - изменим жизнь к лучшему!

k0s
рядовой
Сообщения: 18
Зарегистрирован: 2011-04-05 10:44:19

Re: Как реализовать потоковое вещание из набора jpeg'ов

Непрочитанное сообщение k0s » 2011-07-01 10:01:46

motion->vlc->flv в flowplayer

Код: Выделить всё

cvlc -vv http://127.0.0.1:8081/stream.mjpeg --http-caching=10000 --sout '#transcode{vcodec=FLV1,vb=1500}:standard{mux=ffmpeg{mux=flv},access=http{mime=video/x-flv},dst=127.0.0.1:8090/stream.flv}'
Xeon E5620 гипертрейдинг тоже включен..