rtsp кэширование

125 views
Skip to first unread message

Kef Risen

unread,
Aug 29, 2014, 7:03:48 AM8/29/14
to avreg...@googlegroups.com
Здравствуйте!

Скажите пожалуйста, возможни ли в AvReg включить кеширование rtsp потока?

У меня при захвате видео с IP камері через rtsp смазывается нижняя часть картинки, а при простмотре rtsp через vlc плеер с включенным кэшированием все впорядке.
http://store.internetdevels.com/i/1f25504dff/747x474-Selection_29_08_2014_002.png
Или возможно есть какое-нибуть решение даной проблемы?
Камеры подключены к 100МБ портам, регистратор к 1Гб, понижение качества уменьшает свазивание но не устраняет его, да и качество уменьшать не хочется.

Спасибо!

Andrey Nikitin

unread,
Aug 29, 2014, 7:54:18 AM8/29/14
to avreg...@googlegroups.com
Kef Risen писал(а):
> У меня при захвате видео с IP камері через rtsp смазывается нижняя часть
> картинки, а при простмотре rtsp через vlc плеер с включенным кэшированием
> все впорядке.
> http://store.internetdevels.com/i/1f25504dff/747x474-Selection_29_08_2014_002.png
> Или возможно есть какое-нибуть решение даной проблемы?
> Камеры подключены к 100МБ портам, регистратор к 1Гб, понижение качества
> уменьшает свазивание но не устраняет его, да и качество уменьшать не
> хочется.

Ваша ситуация похожа на другие обычные ситуации с бюджетными камерами.
Заключается она в следующем: если при захвате по TCP (rtp over tcp)
скорость приёма (программы) меньше скорости передатчика (битрейт потока
с камеры), то большинство камер начинает лажать с потоком.

Когда вы запускаете VLC, скорость приёма ограничивает лишь
декодирование и видеовывод. Поэтому с проверкой VLC у всех обычно
хорошо.

В AVReg-е обычно захват происходит сразу много камер, по которым часто
используется декодирование + худший вариант (а у вас именно так) -
кодирование для записи (зачем - мне совершенно непонятно).

Если предположить, что возможности систем I/O (коммутатор, сетевая
сервера, дисковая подсистема) безграничны, то обычно тормозящим
фактором является CPU.

Для нормальной работы нужно сконфигурировать систему согласно задаче,
но при этом так, чтобы %CPU на _каждом_ ядре сервера держался менее 75%
и LA < 2.

На стороне сервера это достигается (без изменения железа сервера):
[1] http://avreg.net/manual_applications_smp.html
[2] http://avreg.net/manual_applications_multi-stream.html

На стороне камеры - снижением:
[1] разрешения
[2] framerate

В редких ситуациях помогает переключение захвата на UDP
(rtsp_transport=udp).

Andrey Nikitin

unread,
Aug 29, 2014, 8:19:39 AM8/29/14
to avreg...@googlegroups.com

Да, в контексте сравнения с VLC, на котором всё хорошо,
простой тест аврегом для камеры с номером X:

Захват:
decode_video = Выкл.

Запись:
rec_mode = Всё подряд.
rec_fmt = <пусто>
Видео:
rec_vcodec = <пусто>

$ sudo service avreg stop
$ sudo avreg-supervisor
$ sudo avregd -dX -v
^ - номер камеры
20-30 сек.
$ sudo killall avreg
$ sudo killall avreg-supervisor

и смотрите запись на предмет артефактов.


100% тест с VLC:

Захват:
decode_video = Вкл.

Запись:
rec_mode = Выкл.

Наблюдение:
allow_local = Вкл.
Локальное:
v4l_pipe = /dev/videoY (!!! нужно установить v4loop-dkms)

Настраиваете раскладку для просмотра avreg-mon-ом (!!! установить avreg-mon) одной камеры
выполняете команды выше и смотрите avreg-mon-ом.

1 в 1 с точки зрения затрат будет как при просмотре VLC.





Andrey Nikitin

unread,
Aug 29, 2014, 8:56:18 AM8/29/14
to avreg...@googlegroups.com
Andrey Nikitin писал(а):
> используется декодирование + худший вариант (а у вас именно так) -
> кодирование для записи (зачем - мне совершенно непонятно).

про кодирование при записи у вас - не уверен, не могу сказать точно

k...@internetdevels.com

unread,
Aug 29, 2014, 9:25:45 AM8/29/14
to avreg...@googlegroups.com
> Да, в контексте сравнения с VLC, на котором всё хорошо, 
> простой тест аврегом для камеры с номером X: 

Действительно все хорошо, даже на высоком качестве, но в случае decode_video = Выкл прямую трансляцию в браузере посмотреть нельзя.
Возможно ли что-нибуть сделать с этим?
Загрузка CPU < 80%, LA < 2

И еще вы написали "худший вариант (а у вас именно так) - 
кодирование для записи (зачем - мне совершенно непонятно).",
но я так и не нашел как выключить кодирование для запими не подскажите как это сделать? 

Kef Risen

unread,
Aug 29, 2014, 9:30:32 AM8/29/14
to avreg...@googlegroups.com
Да, в контексте сравнения с VLC, на котором всё хорошо, 
простой тест аврегом для камеры с номером X: 

Захват: 
        decode_video = Выкл. 

Запись: 
        rec_mode = Всё подряд. 
        rec_fmt = <пусто> 
        Видео: 
                rec_vcodec = <пусто> 

$ sudo service avreg stop 
$ sudo avreg-supervisor 
$ sudo avregd -dX -v 
                ^ - номер камеры 
20-30 сек. 
$ sudo killall avreg 
$ sudo killall avreg-supervisor 

и смотрите запись на предмет артефактов. 

Действительно в даном случае на записи все хорошо, но с выключенным декодированием нельзя смотреть прямую трансляцию в браузере

Загрузка CPU < 80%, LA < 2
Возможно ли что-нибуть сделать?

 + худший вариант (а у вас именно так) - 
кодирование для записи (зачем - мне совершенно непонятно)
не подскажите где его можно выключить? ато я так и не нашел 

Andrey Nikitin

unread,
Aug 29, 2014, 10:14:30 AM8/29/14
to avreg...@googlegroups.com
Kef Risen писал(а):
> Действительно в даном случае на записи все хорошо, но с выключенным
> декодированием нельзя смотреть прямую трансляцию в браузере
> Загрузка CPU < 80%, LA < 2
> Возможно ли что-нибуть сделать?

Пришлите файл со страницы 'Сообщить об ошибке',
но получить его нужно в момент когда браузером видео с AVReg кто-нибудь
смотрит. Посмотрим что можно сделать.

> + худший вариант (а у вас именно так) -
> кодирование для записи (зачем - мне совершенно непонятно)
> не подскажите где его можно выключить? ато я так и не нашел
Я уже писал что не уверен что у вас перекод на записи.
Думаю ничего не нужно делать, с дефолтными настройками аврег будет
писать в файл исходный поток с камеры.

Kef Risen

unread,
Aug 29, 2014, 10:55:12 AM8/29/14
to avreg...@googlegroups.com
Спасибо, уже разобрался
Стрим идет с сабпотока низкого качества, а запись с основного

Andrey Nikitin

unread,
Sep 2, 2014, 1:23:09 AM9/2/14
to avreg...@googlegroups.com
k...@internetdevels.com писал(а):
> Действительно все хорошо, даже на высоком качестве, но в случае
> decode_video = Выкл прямую трансляцию в браузере посмотреть нельзя.
> Возможно ли что-нибуть сделать с этим?
> Загрузка CPU < 80%, LA < 2
http://avreg.net/manual_applications_multi-stream.html

> И еще вы написали "худший вариант (а у вас именно так) -
> кодирование для записи (зачем - мне совершенно непонятно).",
> но я так и не нашел как выключить кодирование для запими не подскажите как
> это сделать?
Оставить пустыми rec_fmt и rec_vcodec.
Reply all
Reply to author
Forward
0 new messages