Последние несколько дней я возился с цифровым видеорегистратором ITX, пытаясь подключиться к его RTSP-потоку с помощью SDK, предоставляемого производителем.
Официальный синтаксис выглядит так:
PLAY rtsp://192.168.100.134/live?Live_video_channel_mask=0x0000FFFF&Live_audio_channel_mask=0
x00000000&Iframe_only=0&Stream_index=2/ RTSP/1.0\r\n
Маска видеоканала объявляет количество видеоканалов, которые один хочет видеть, например, если бы я хотел видеть канал 06, маска была бы 0x00000020 (два LSB были бы 0010 0000 = канал 6).
Я использую ffmpeg и VLC, пытаясь отобразить потоки. Мой синтаксис выглядит так:
ffplay -analyzeduration 2147483647 -probesize 2147483647 -i rtsp://ADMIN:1234@192.168.1.25:554/live?Live_video_channel_mask=0x00000020&Live_audio_channel=0x00000000/RTSP/1.0
Однако я получаю следующее сообщение:
*[rtsp @ 02a24680] UDP timeout, retrying with TCPB sq= 0B f=0/0
[rtsp @ 02a24680] method PAUSE failed: 501 Not Implemented
[rtsp @ 02a24680] Could not find codec parameters for stream 0 (Video: h264): un
specified size
Consider increasing the value for the 'analyzeduration' and 'probesize' options
rtsp://ADMIN:1234@192.168.1.25:554/live?Live_video_channel_mask=0x00000020: could not find codec parameters*
Я прослушал пакеты от WWW-интерфейса, который используется для подключения к DVR, синтаксис RTSP выглядит следующим образом:
*rtsp://192.168.1.25/live?Live_video_channel_mask=0x000000ff&Live_audio_channel_mask=0x00000001&Live_iframe_only=0&Live_stream_index=0/*
Когда я пытаюсь скопировать его в FFmpeg, DVR перезагружается.
VLC также не может правильно отображать видео - я могу видеть параметры кодека на короткое время (возможно, ОПИСАТЬ корректный запуск), но само видео не декодируется.
Я также перехватил пакеты RTSP:
https://www.dropbox.com/s/qzo7kc95mo7dq9o/RTSP_ITX.pcap
Я понятия не имею, что может быть не так с этим. Помогите кому-нибудь?