[РЕШЕНО] ffserver & ffmpeg - не пишется фид на localhost,Трансляция видео в сеть

Автор Demm45, 03 июля 2014, 08:29:44

« назад - далее »

0 Пользователи и 10 гостей просматривают эту тему.

Demm45

Всем здравствуйте.
стоит Debian на домашнем файл сервере на базе старого ноута.
Система установлена из образа debian-7.5.0-amd64-netinst.iso в соответствии с инструкцией.
Графический интерфейс не ставился. Установленные компоненты: Webserver, fileserver, sshserver
Географическое положение ноута просто обязывает воткнуть в него USB-Камеру и вынести её на балкон чтоб писать и смотреть как там машина во дворе. :)

Поставил все в точном соответствии с этими рекомендациями: ТЫЦ
конфиг ffserver повторил, под спойлером (у себя просто заменил порт с 12345 на 9090):
Открыть содержимое (спойлер)

файл "/etc/ffserver.conf" :
# Порт, на котором будет работать ffserver
Port 9090
# Адрес, на котором будет работать ffserver.
# Если указать 0.0.0.0 то будут использованы все доступные адреса
BindAddress 0.0.0.0
# Максимальное количество обслуживаемых соединений
MaxHTTPConnections 2000
# Максимальное количество клиентов
MaxClients 1000
# Максимальная используемая полоса (в килобитах)
MaxBandwidth 1000
# Файл журнала. Формат подобен формату лога apache
CustomLog /var/log/ffserver-access.log
# Описываем источник
<Feed webcam.ffm>
# Временный файл для хранения промежуточных данных
File /tmp/webcam.ffm
# Максимальный размер файла с промежуточными данными
FileMaxSize 3M
# Команда для запуска источника.
# Адрес для отправки данных источником автоматически будет добавлен в конец этой строки
Launch ffmpeg -s 640x480 -f video4linux2 -i /dev/video0
# С каких адресов может обращаться источник
ACL allow 127.0.0.1
</Feed>
# Описываем первый поток. Это будет поток в формате flv
<Stream webcam.flv>
# Источник потока
Feed webcam.ffm
# Используемый формат
Format flv
# Используемый кодек
VideoCodec flv
# Частота кадров
VideoFrameRate 30
# Размер буфера
VideoBufferSize 80000
# Битрейт
VideoBitRate 200
# Минимальное и максимальное качество
VideoQMin 1
VideoQMax 5
# Размер видео. Дожно совпадать с размером видео на источнике
VideoSize 640x480
# Время ожидания перед началом отправки данных клиенту (в секундах)
PreRoll 1
# Звук мы транслировать не будем
NoAudio
</Stream>
# Второй поток. Это SWF-файл с FLV-потоком внутри
# Всё остальное по аналогии
<Stream webcam.swf>
Feed webcam.ffm
Format swf
VideoCodec flv
VideoFrameRate 30
VideoBufferSize 80000
VideoBitRate 200
VideoQMin 1
VideoQMax 5
VideoSize 640x480
PreRoll 1
NoAudio
</Stream>
# При обращении к индексной страницы ffserver будем отображать текущий статус сервера
<Stream index.html>
Format status
</Stream>

[свернуть]

Трансляции не было, просто при открытии flv или swf крутилось начало загрузки и ничего, пока не останавливал ffserver.
Камера работает точно, но всё по порядку.
В загруженном flv файле присутствовал заголовок с характеристиками потока, но самого потока не было.

Путем научного тыка нашёл, что в feed файл webcam.ffm пишется 4096байт и всё.
Запустил из командной строки
ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 /tmp/webcam.ffm
Пишется в файл изумительно. Потом свободно конвертировал этот файл, смотрел с него, изображение отлично записывается.

Но при запуске ffserver с конфигом он к команде из конфига (где не указан адрес приемника потока)
ffmpeg -s 640x480 -f video4linux2 -i /dev/video0

добавляет адрес приемника потока
http://127.0.0.1/webcam.ffm

и получается
ffmpeg -s 640x480 -f video4linux2 -i /dev/video0 http://127.0.0.1/webcam.ffm

Повторил эту команду из строки и тут то и оказалось, что в localhost ffmpeg пишет только заголовок (header) 4096Байт и писец, но при задании приемника в виде /tmp/webcam.ffm пишет отлично.

Ума не приложу почему. Гугль ничего вразумительного не ответил, или я спрашивал неправильно.

Сильно не пинайте если что не так, первый опыт с nix системами был в прошлом году, когда поставил дома Raspberry с XBIAN из готового образа, второй сейчас, когда три дня назад поставил вышеупомянутую Debian. До этого работал только на продукции мелкомягких, правда начиная с DOS (когда ещё окон не было).

Yrii

на всякий случай, посоветую эту программу - https://packages.debian.org/wheezy/motion
я с ней вполне норм настраивал трансляцию
очень широкие возможности в настройке

сама камера я так понял норм определяется? во всяких разных программах её поток можно посмотреть?

по ffserver не чего не скажу, не использовал, хотя тоже читал эту статейку, когда хотел это организовать...

Demm45

Цитата: Yrii от 03 июля 2014, 09:56:52сама камера я так понял норм определяется? во всяких разных программах её поток можно посмотреть?
Да, и система её видит отлично и фамилия с параметрами читаются, причем без всякого пиления. Подключил и заработала.

Цитата: Yrii от 03 июля 2014, 09:56:52на всякий случай, посоветую эту программу - https://packages.debian.org/wheezy/motion
Спасибо, почитаю обязательно. Лишь бы инструкция для чайников была :)
В любом случае сейчас попробую поставить.

Demm45

Цитата: Yrii от 03 июля 2014, 09:56:52на всякий случай, посоветую эту программу - https://packages.debian.org/wheezy/motion
Установил.
Пишет на 5+
На движения отлично реагирует.
Вэбинтерфейс открывается и работает.
Поток в сеть не отдает. Начинают мучить сомнения что с настройками.....
Может в этом карявка какая?
Цитата: Demm45 от 03 июля 2014, 08:29:44Установленные компоненты: Webserver

Yrii

т.е. через веб-интерфейс все норм показывает, а если цепляться, например vlc, то нет?
какие значения у этих параметрах?
webcam_port
webcam_localhost

или для простоты, залей сюда - http://paste.debian.net/ весь конфиг

Demm45

Нет, через ВЭБ только настройки. Live видео не кажет ни так ни так. Только пишет в файл.

webcam_port 9090
webcam_quality 50
webcam_motion off
webcam_maxrate 25
webcam_localhost off
webcam_limit 0


control_port 8080
control_localhost off
control_html_output on

ogost

как альтернатива:
Открыть содержимое (спойлер)
я поднял сервер записи IP камер с помощью ivideon. продукт правда вроде не открытый, но свою функцию выполняет на ура и бесплатен без подписки. записывает, транслирует в сеть. нынешняя версия не устанавливается без гуи, иксов то бишь, поэтому я пользуюсь до сих пор старой. есть deb-пакет.
[свернуть]


Demm45

Цитата: ogost от 03 июля 2014, 17:31:28как альтернатива:

Огоооо при apt-get install ivideon-video-server предлагает мне 426мБ залить. Установить 120 пакетов. Слишком тяжеловесная штука для простого файл сервера с вэбкамерой.

Но в любом случае за совет спасибо.

Malaheenee

Для чего Вам нужны компоненты "Вебсервер"? Может просто не с той стороны копаем?
Все мы где-то, когда-то и в чем-то были новичками.

Demm45

Вот и я уже задумался по поводу стороны раскопок.

Побаловаться, домашнюю страничку замутить, да может камеру ещё на нее вывести. Ну и так, всякие мысли есть. Но если это не совместимо, то снесу. Только не знаю какие пакеты, так как галочку при установке Debian поставил и все.

Может таки в настройках что нибудь.

Demm45

Eсть предположение что где то ограничивается размер приема/передачи по http для методов GET и POST

Malaheenee

Все мы где-то, когда-то и в чем-то были новичками.

Malaheenee

Сильно смущают порты. Апач очень не любит, когда у него пытаются отобрать родной 80 или 8080 :) Если попробовать остановить апач?
Все мы где-то, когда-то и в чем-то были новичками.

Demm45