Перейти в хранилище документации
Обратиться в техническую поддержку
Внимание!
Получение звука возможно только с 64-битного Сервера.
Передача звука в формате MJPEG невозможна.
GET http://IP-адрес:порт/префикс/live/media/{VIDEOSOURCEID}
{VIDEOSOURCEID} − трехкомпонентный идентификатор endpoint-а источника (см. Получение списка источников видео (камер)). Например, "SERVER1/DeviceIpint.3/SourceEndpoint.video:0:0".
Внимание!
Если в запросе не заданы параметры, то видео будет получено в формате MJPEG.
Параметр | Обязательный | Описание |
---|---|---|
format | Нет | Возможные значения: "hls", "mp4". По протоколу HLS видео можно получать в исходном формате без рекомпрессии. При этом протокол HLS поддерживает только формат H.264 Плеер "mp4" позволяет получить исходное видеоизображение в форматах H.264 и H.265. Во всех других случаях сервер производит рекомпрессию в формат MJPEG. Внимание! Если запрашивается видео в формате, отличном от исходного, то будет произведена рекомпрессия, что приведет к увеличению загрузки Сервера. |
w, h | Нет | w – значение ширины кадра; h – значение высоты кадра. Примечание Если значения параметров h и w больше размеров оригинального видео, видео будет получено с оригинальными размерами. Уменьшение ширины и высоты возможно только дискретно − в 2, 4, 8 и т. д. раз. Если указаны размеры, не соответствующие 1/2, 1/4 и т. д. размеров оригинального видео, то видео будет получено с размерами, кратными размерам оригинального видео, наиболее близкими к указанным. Внимание! Передача видео в формате mp4 осуществляется без масштабирования. |
fr | Нет | Значение частоты кадров. Внимание! Данный параметр актуален только для видео в формате MJPEG. |
enable_token_auth | Нет | Получение авторизованных и подписанных ссылок на видеопотоки. enable_token_auth − включить авторизацию по токену = 1. valid_token_hours − время действительности подписи в часах. Максимальное значение − неделя. Значение по умолчанию 12 часов. |
valid_token_hours | Нет |
Пример запроса:
GET http://127.0.0.1:80/live/media/Server1/DeviceIpint.23/SourceEndpoint.video:0:0?w=640&h=480&enable_token_auth=1&valid_token_hours=1
Видео по протоколу HLS можно получать только в исходном формате. При получении видео по протоколу HLS также используются дополнительные параметры.
Параметр | Обязательный | Описание |
---|---|---|
keep_alive | Нет | Время в секундах, через которое необходимо продлевать поток. |
hls_time | Нет | Длина сегмента в секундах. |
hls_list_size | Нет | Максимальное количество записей списка воспроизведения. Если задано значение 0, список будет содержать все сегменты. |
hls_wrap | Нет | Порядковый номер сегмента, после которого счётчик обнулится. Если задано значение 0, то счётчик не обнуляется. |
Пример запроса:
GET http://127.0.0.1:80/live/media/HOSTNAME/DeviceIpint.23/SourceEndpoint.video:0:0?format=hls&keep_alive=60
Пример ответа:
{ "keep_alive_seconds": 60, "keep_alive_url": "/live/media/hls/keep?stream_id=7e9d8c93-80e2-4521-9a54-cb854fe3cd2d", "stop_url": "/live/media/hls/stop?stream_id=7e9d8c93-80e2-4521-9a54-cb854fe3cd2d", "stream_url": "/hls/7e9d8c93-80e2-4521-9a54-cb854fe3cd2d/playout.m3u8" }
Параметр | Описание параметра |
---|---|
keep_alive_seconds | Время в секундах, через которое будет продлеваться поток. |
keep_alive_url | Cсылка для продления жизни потока. |
stop_url | Cсылка для остановки видеопотока. |
stream_url | Cсылка по-которой будет доступен список сегментов. |
Внимание!
Видео по протоколу HLS будет доступно с некоторой задержкой (около 20 секунд). Задержка связана с особенностью протокола HLS: после получения ссылки он формирует буфер из нескольких сегментов видео, и только после этого оно транслируется.
Для проигрывания видео по протоколу HLS необходимо использовать параметр stream_url из ответа следующим образом:
ffplay "http://root:root@10.0.12.65:80/hls/c83b48d5-2ab7-49eb-91ef-593f808d4e51/playout.m3u8"
Видео по протоколу RTSP передается только в оригинальном формате.
Запрос на получение структуры RTSP-ссылки: http://логин:пароль@IP-адрес:Порт/live/media/Server1/DeviceIpint.23/SourceEndpoint.video:0:0?format=rtsp
Пример ответа:
{ "http": { "description": "RTP/RTSP/HTTP/TCP", "path": "hosts/Server1/DeviceIpint.23/SourceEndpoint.video:0:0", "port": "8554" }, "rtsp": { "description": "RTP/UDP or RTP/RTSP/TCP", "path": "hosts/Server1/DeviceIpint.23/SourceEndpoint.video:0:0", "port": "554" } }
Запрос на получение видео: GET rtsp://логин:пароль@IP-адрес:554/hosts/Server1/DeviceIpint.23/SourceEndpoint.video:0:0
Внимание!
В некоторых случаях видео по протоколу RTSP может транслироваться с артефактами. Для исправления данной ошибки необходимо изменить настройки TCP/IP с помощью данного reg-файла.
Информация о транслируемых потоках RTSP:
http://IP-адрес:порт/префикс/rtsp/stat
ffplay.exe -v debug "http://логин:пароль@IP-адрес:8001/live/media/Server1/DeviceIpint.23/SourceEndpoint.video:0:0?w=1600&h=0"
Внимание!
HTTP передает видео только в формате mjpeg, задание параметров w и h обязательно.
см. Настройка туннелирование RTSP по HTTP в VLC
Видео через туннель передается только в оригинальном формате.
Примеры:
ffplay -rtsp_transport http "rtsp://логин:пароль@IP-адреc:80/rtspproxy/hosts/Server1/DeviceIpint.23/SourceEndpoint.video:0:0"
GET Для VLC: rtsp://логин:пароль@IP-адреc:80/rtspproxy/hosts/Server1/DeviceIpint.23/SourceEndpoint.video:0:0
Для получения живого видео в оригинальном форматах H.264 и H.265 необходимо использовать формат "mp4".
Пример:
ffplay.exe "http://root:root@192.168.25.112:8001/live/media/Server1/DeviceIpint.61/SourceEndpoint.video:0:0?format=mp4"