Форум русскоязычного сообщества Ubuntu


Следите за новостями русскоязычного сообщества Ubuntu в Twitter-ленте @ubuntu_ru_loco

Автор Тема: захват стрима с D-link DCS-932L (Ip-камера)  (Прочитано 15044 раз)

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

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
захват стрима с D-link DCS-932L (Ip-камера)
« : 29 Сентября 2011, 11:38:16 »
Требуется захватить видео и аудио ряд с этой камеры. На данный момент пытаюсь сделать это mencoder'ом.
 http://ip/audio.cgi выдает отдельно видео, http://ip/mjpeg.cgi выдает видео. http://IP/video.cgi тоже выдает видео.

вот примерно так это выглядит: :(
(Нажмите, чтобы показать/скрыть)

Кто подскажет, как все-же захватить стрим (со звуком)?

Вообще, если кто подскажет нормальную систему видео-наблюдения с возможностью записи звука, буду крайне признателен. ZOneminder не умеет писать звук. avreg только с избранных видеокамер.
« Последнее редактирование: 29 Сентября 2011, 14:02:29 от stivali24 »

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #1 : 30 Сентября 2011, 12:42:08 »
тема все еще актуальна =\

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #2 : 06 Октября 2011, 09:30:00 »
ffmpeg -f mjpeg -i http://1:1@192.168.1.9/mjpeg.cgi -i http://1:1@192.168.1.9/audio.cgi -ar 16000 /home/stivali/$FILENAME.avi


сливает оба потока в один.
Почему только 32,5 секунды? =\
Потом виснет.

Оффлайн Foxcom

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #3 : 22 Ноября 2011, 22:35:06 »
Та же проблема - 32,5 иногда 32,7 сек и виснет.
Пишу через событие в motion, так он мне при наступлении события нарезает файлы по 1,4Мб и никак не хочет реагировать на параметр -t.
По началу движения стартую запись и по окончании убиваю процесс:

on_movie_start ffmpeg -f mjpeg -i http://user:pwd@192.168.0.XXX/mjpeg.cgi -i http://user:pwd@192.168.0.XXX/
/audio.cgi -ar 16000 /home/user/%Y.%m.%d-%H.%M.avi

on_movie_end killall -9 ffmpeg

но более чем 1,4Мб записи не получаю...

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #4 : 23 Ноября 2011, 06:10:36 »
Та же проблема - 32,5 иногда 32,7 сек и виснет.
Пишу через событие в motion, так он мне при наступлении события нарезает файлы по 1,4Мб и никак не хочет реагировать на параметр -t.
По началу движения стартую запись и по окончании убиваю процесс:

on_movie_start ffmpeg -f mjpeg -i http://user:pwd@192.168.0.XXX/mjpeg.cgi -i http://user:pwd@192.168.0.XXX/
/audio.cgi -ar 16000 /home/user/%Y.%m.%d-%H.%M.avi

on_movie_end killall -9 ffmpeg

но более чем 1,4Мб записи не получаю...
Ответ техпода D-Link:
DCS-932L не приспособлена для работы с плеерами. Пример работы с CGI API в аттаче, здесь поток не рвется. но что дальше с ним делать?
Если есть потребность забирать поток плеерами, то ориентируйтесь на камеры, у которых заявлена поддержка RTSP протокола.

Оффлайн aryutkiv

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #5 : 26 Февраля 2012, 13:21:24 »
stivali24,
удалось как-то решить проблему с записью звука более 30 сек.?

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #6 : 27 Февраля 2012, 06:19:18 »
Здравствуйте, техподдержка ответила мне в том духе, что запись потока с этой камеры не заявлена в спецификациях и не обязана быть предоставлена. Вот как-то так.

Оффлайн aryutkiv

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #7 : 28 Февраля 2012, 11:32:48 »
Нагородил костылей, но запись звука более 30 сек. всё-таки сделал. Пользуйтесь на здоровье! Вкратце, curl берет аудио поток с камеры, передает его дальше по трубе sox который меняет его заголовок длинны, а затем через трубу передает ffmpeg.

#!/bin/bash

HOST=$1
USER=rec
PASSWORD=$2
DURATION=00:29:59
DIRECTORY=/home/rec/cctv/$3

mkdir -p $DIRECTORY
curl -s http://$USER:$PASSWORD@$HOST/audio.cgi | sox --ignore-length - -t wav - 2>/dev/null | ffmpeg -t $DURATION -f mjpeg -r 20 -i http://$USER:$PASSWORD@$HOST/MJPEG.CGI -ar 16000 -i pipe:0 -sameq $DIRECTORY/$(date '+%F_%R').mp4 > /dev/null 2>&1

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #8 : 28 Февраля 2012, 11:34:25 »
Нагородил костылей, но запись звука более 30 сек. всё-таки сделал. Пользуйтесь на здоровье! Вкратце, curl берет аудио поток с камеры, передает его дальше по трубе sox который меняет его заголовок длинны, а затем через трубу передает ffmpeg.

#!/bin/bash

HOST=$1
USER=rec
PASSWORD=$2
DURATION=00:29:59
DIRECTORY=/home/rec/cctv/$3

mkdir -p $DIRECTORY
curl -s http://$USER:$PASSWORD@$HOST/audio.cgi | sox --ignore-length - -t wav - 2>/dev/null | ffmpeg -t $DURATION -f mjpeg -r 20 -i http://$USER:$PASSWORD@$HOST/MJPEG.CGI -ar 16000 -i pipe:0 -sameq $DIRECTORY/$(date '+%F_%R').mp4 > /dev/null 2>&1


нескоро я теперь доберусь до центрального офиса, но все же интересно - это можно как вторую звуковую дорожку прилепить?

Оффлайн aryutkiv

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #9 : 28 Февраля 2012, 11:37:41 »
Да, вполне. В качестве источника нужно указать pipe:0, это поток stdin.

Оффлайн stivali24

  • Автор темы
  • Новичок
  • *
  • Сообщений: 13
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #10 : 28 Февраля 2012, 11:38:58 »
Да, вполне. В качестве источника нужно указать pipe:0, это поток stdin.
Нет, я в том плане, что вообще не в курсе как в ffmpeg второй поток запилить.

Оффлайн aryutkiv

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #11 : 28 Февраля 2012, 11:49:39 »
Я нет, но на http://sview.ru/ru/others/ffmpeg_MKV что-то есть на эту тему.

Оффлайн altqqru

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #12 : 02 Апреля 2012, 13:57:23 »
Нагородил костылей, но запись звука более 30 сек. всё-таки сделал. Пользуйтесь на здоровье! Вкратце, curl берет аудио поток с камеры, передает его дальше по трубе sox который меняет его заголовок длинны, а затем через трубу передает ffmpeg.

#!/bin/bash

HOST=$1
USER=rec
PASSWORD=$2
DURATION=00:29:59
DIRECTORY=/home/rec/cctv/$3

mkdir -p $DIRECTORY
curl -s http://$USER:$PASSWORD@$HOST/audio.cgi | sox --ignore-length - -t wav - 2>/dev/null | ffmpeg -t $DURATION -f mjpeg -r 20 -i http://$USER:$PASSWORD@$HOST/MJPEG.CGI -ar 16000 -i pipe:0 -sameq $DIRECTORY/$(date '+%F_%R').mp4 > /dev/null 2>&1
Тоже уперся в эти 30 секунд, спасибо за скриптик, однако теперь не понимаю как все это в ffserver передать..

Оффлайн mobil1

  • Новичок
  • *
  • Сообщений: 1
    • Просмотр профиля
Re: захват стрима с D-link DCS-932L (Ip-камера)
« Ответ #13 : 24 Декабря 2012, 15:47:49 »
уже не работает или как мне загнать в сокс тока звук, видео мне ненадо...
ffmpeg -i "http://ni:nunu@95.121.154.87/audio.cgi" -t 60 -ab 128k -ac 1 -ar 16000 /tmp/audio_final.mp3
команда на вывод файла примерно такова, не хочет никак лезть в сокс

Пользователь решил продолжить мысль 25 Декабря 2012, 13:00:10:
что никто подсказать не может ? в новом sox не опции игнорирования, как поступить ?
« Последнее редактирование: 25 Декабря 2012, 13:00:10 от mobil1 »

 

Страница сгенерирована за 0.078 секунд. Запросов: 25.