Using some noname PRC made IP camera that supports RTSP and ONVIF and ...
turned off credentials check to make things simpler (same issue with credentials on)
VLC/PotPlayer.. view the rtsp stream without problem
fflplay too
so this works: ffplay rtsp://192.168.89.60/11
also using this url in vlc/potplayer works: rtsp://192.168.89.60/11
rtsp running on default 554, this url works too as expected rtsp://192.168.89.60:554/11
debug log show zero useful info even with debug level 9:
Code: Select all
08/30/18 19:51:36.556478 zmc_m2[1260].FAT-zm_remote_camera_rtsp.cpp/148 [No RTSP sources]
08/30/18 19:51:41.691199 zmc_m2[1262].INF-zmc.cpp/223 [Starting Capture version 1.31.47]
08/30/18 19:51:42.755783 zmc_m2[1263].ERR-zm_rtsp.cpp/87 [Unexpected response code 406, text is 'Not Acceptable']
08/30/18 19:51:51.697543 zmc_m2[1262].FAT-zm_remote_camera_rtsp.cpp/148 [No RTSP sources]
08/30/18 19:52:01.841411 zmc_m2[1264].INF-zmc.cpp/223 [Starting Capture version 1.31.47]
08/30/18 19:52:02.895810 zmc_m2[1265].ERR-zm_rtsp.cpp/87 [Unexpected response code 406, text is 'Not Acceptable']
...
Code: Select all
[root@gedora zoneminder]# tcpdump -n host 192.168.89.60
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp4s0, link-type EN10MB (Ethernet), capture size 262144 bytes
20:04:47.075822 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [S], seq 4173094158, win 27200, options [mss 1360,sackOK,TS val 192532742 ecr 0,nop,wscale 7], length 0
20:04:47.076380 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [S.], seq 1746096554, ack 4173094159, win 14480, options [mss 1460,sackOK,TS val 481524 ecr 192532742,nop,wscale 1], length 0
20:04:47.076407 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [.], ack 1, win 213, options [nop,nop,TS val 192532742 ecr 481524], length 0
20:04:47.076432 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [P.], seq 1:90, ack 1, win 213, options [nop,nop,TS val 192532742 ecr 481524], length 89: RTSP: OPTIONS rtsp://192.168.89.60:554/11 RTSP/1.0
20:04:47.077108 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [.], ack 90, win 7240, options [nop,nop,TS val 481524 ecr 192532742], length 0
20:04:47.193653 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [P.], seq 1:135, ack 90, win 7240, options [nop,nop,TS val 481536 ecr 192532742], length 134: RTSP: RTSP/1.0 200 OK
20:04:47.193691 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [.], ack 135, win 221, options [nop,nop,TS val 192532860 ecr 481536], length 0
20:04:47.193761 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [P.], seq 90:180, ack 135, win 221, options [nop,nop,TS val 192532860 ecr 481536], length 90: RTSP: DESCRIBE rtsp://192.168.89.60:554/11 RTSP/1.0
20:04:47.194148 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [.], ack 180, win 7240, options [nop,nop,TS val 481536 ecr 192532860], length 0
20:04:47.305694 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [P.], seq 135:741, ack 180, win 7240, options [nop,nop,TS val 481547 ecr 192532860], length 606: RTSP: RTSP/1.0 200 OK
20:04:47.346332 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [.], ack 741, win 231, options [nop,nop,TS val 192533012 ecr 481547], length 0
20:04:48.194044 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [P.], seq 180:299, ack 741, win 231, options [nop,nop,TS val 192533860 ecr 481547], length 119: RTSP: SETUP rtsp://192.168.89.60:554/11 RTSP/1.0
20:04:48.194930 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [.], ack 299, win 7240, options [nop,nop,TS val 481636 ecr 192533860], length 0
20:04:48.195978 IP 192.168.89.60.rtsp > 192.168.89.1.43398: Flags [P.], seq 741:813, ack 299, win 7240, options [nop,nop,TS val 481636 ecr 192533860], length 72: RTSP: RTSP/1.0 406 Not Acceptable
20:04:48.195986 IP 192.168.89.1.43398 > 192.168.89.60.rtsp: Flags [.], ack 813, win 231, options [nop,nop,TS val 192533862 ecr 481636], length 0
^C
15 packets captured
16 packets received by filter
on the other hand, ffplay tcpdump shows it works nicely
Code: Select all
[root@gedora zoneminder]# tcpdump -n host 192.168.89.60
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on enp4s0, link-type EN10MB (Ethernet), capture size 262144 bytes
20:21:13.909502 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [S], seq 922085818, win 27200, options [mss 1360,sackOK,TS val 193519597 ecr 0,nop,wscale 7], length 0
20:21:13.910655 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [S.], seq 181379712, ack 922085819, win 14480, options [mss 1460,sackOK,TS val 580207 ecr 193519597,nop,wscale 1], length 0
20:21:13.910673 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [.], ack 1, win 213, options [nop,nop,TS val 193519598 ecr 580207], length 0
20:21:13.910701 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [P.], seq 1:85, ack 1, win 213, options [nop,nop,TS val 193519598 ecr 580207], length 84: RTSP: OPTIONS rtsp://192.168.89.60:554/11 RTSP/1.0
20:21:13.911374 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [.], ack 85, win 7240, options [nop,nop,TS val 580207 ecr 193519598], length 0
20:21:14.024759 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [P.], seq 1:135, ack 85, win 7240, options [nop,nop,TS val 580219 ecr 193519598], length 134: RTSP: RTSP/1.0 200 OK
20:21:14.024771 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [.], ack 135, win 221, options [nop,nop,TS val 193519712 ecr 580219], length 0
20:21:14.025121 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [P.], seq 85:195, ack 135, win 221, options [nop,nop,TS val 193519713 ecr 580219], length 110: RTSP: DESCRIBE rtsp://192.168.89.60:554/11 RTSP/1.0
20:21:14.025578 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [.], ack 195, win 7240, options [nop,nop,TS val 580219 ecr 193519713], length 0
20:21:14.140012 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [P.], seq 135:741, ack 195, win 7240, options [nop,nop,TS val 580230 ecr 193519713], length 606: RTSP: RTSP/1.0 200 OK
20:21:14.140853 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [P.], seq 195:343, ack 741, win 231, options [nop,nop,TS val 193519828 ecr 580230], length 148: RTSP: SETUP rtsp://192.168.89.60:554/11/trackID=0 RTSP/1.0
20:21:14.141450 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [.], ack 343, win 7240, options [nop,nop,TS val 580230 ecr 193519828], length 0
20:21:14.245026 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [P.], seq 741:974, ack 343, win 7240, options [nop,nop,TS val 580241 ecr 193519828], length 233: RTSP: RTSP/1.0 200 OK
20:21:14.245836 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [P.], seq 343:513, ack 974, win 240, options [nop,nop,TS val 193519933 ecr 580241], length 170: RTSP: SETUP rtsp://192.168.89.60:554/11/trackID=1 RTSP/1.0
20:21:14.246263 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [.], ack 513, win 7240, options [nop,nop,TS val 580241 ecr 193519933], length 0
20:21:14.355384 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [P.], seq 974:1207, ack 513, win 7240, options [nop,nop,TS val 580252 ecr 193519933], length 233: RTSP: RTSP/1.0 200 OK
20:21:14.356066 IP 192.168.89.1.33500 > 192.168.89.60.6600: UDP, length 12
20:21:14.356082 IP 192.168.89.1.33501 > 192.168.89.60.6601: UDP, length 8
20:21:14.356135 IP 192.168.89.1.33502 > 192.168.89.60.6602: UDP, length 12
20:21:14.356149 IP 192.168.89.1.33503 > 192.168.89.60.6603: UDP, length 8
20:21:14.356164 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [P.], seq 513:636, ack 1207, win 250, options [nop,nop,TS val 193520044 ecr 580252], length 123: RTSP: PLAY rtsp://192.168.89.60:554/11/ RTSP/1.0
20:21:14.356759 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [.], ack 636, win 7240, options [nop,nop,TS val 580252 ecr 193520044], length 0
20:21:14.464854 IP 192.168.89.60.rtsp > 192.168.89.1.43464: Flags [P.], seq 1207:1395, ack 636, win 7240, options [nop,nop,TS val 580263 ecr 193520044], length 188: RTSP: RTSP/1.0 200 OK
20:21:14.505334 IP 192.168.89.1.43464 > 192.168.89.60.rtsp: Flags [.], ack 1395, win 259, options [nop,nop,TS val 193520193 ecr 580263], length 0
20:21:14.535094 IP 192.168.89.60.6602 > 192.168.89.1.33502: UDP, length 172
20:21:14.535233 IP 192.168.89.60.6602 > 192.168.89.1.33502: UDP, length 172
20:21:14.573924 IP 192.168.89.60.6600 > 192.168.89.1.33500: UDP, length 22
20:21:14.574047 IP 192.168.89.60.6600 > 192.168.89.1.33500: UDP, length 16
DESCRIBE rtsp://192.168.89.60:554/11
SETUP rtsp://192.168.89.60:554/11/trackID=0
SETUP rtsp://192.168.89.60:554/11/trackID=1
and then
PLAY rtsp://192.168.89.60:554/11/
so the /trackID=0 and /trackID=1 is added to the url ...
if I try to add this to the url directly in zoneminder path it fails bit differently:
Code: Select all
08/30/18 20:23:23.653747 zmc_m2[2077].INF-zmc.cpp/223 [Starting Capture version 1.31.47]
08/30/18 20:23:24.816489 zmc_m2[2079].WAR-zm_rtp_source.cpp/69 [The device is using a codec that may not be supported. Do not be surprised if things don't work.]
08/30/18 20:23:24.854811 zmc_m2[2077].FAT-zm_remote_camera_rtsp.cpp/188 [Unable to locate video stream]
...
Code: Select all
[root@gedora zoneminder]# ffplay rtsp://192.168.89.60:554/11
ffplay version 4.0.2 Copyright (c) 2003-2018 the FFmpeg developers
built with gcc 8 (GCC)
configuration: --prefix=/usr --bindir=/usr/bin --datadir=/usr/share/ffmpeg --docdir=/usr/share/doc/ffmpeg --incdir=/usr/include/ffmpeg --libdir=/usr/lib64 --mandir=/usr/share/man --arch=x86_64 --optflags='-O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -fexceptions -fstack-protector-strong -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection' --extra-ldflags='-Wl,-z,relro -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld ' --extra-cflags=' ' --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libvo-amrwbenc --enable-version3 --enable-bzlib --disable-crystalhd --enable-fontconfig --enable-frei0r --enable-gcrypt --enable-gnutls --enable-ladspa --enable-libass --enable-libbluray --enable-libcdio --enable-libdrm --enable-indev=jack --enable-libfreetype --enable-libfribidi --enable-libgsm --enable-libmp3lame --enable-nvenc --enable-openal --enable-opencl --enable-opengl --enable-libopenjpeg --enable-libopus --enable-libpulse --enable-librsvg --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libvorbis --enable-libv4l2 --enable-libvidstab --enable-libvpx --enable-libx264 --enable-libx265 --enable-libxvid --enable-libzvbi --enable-avfilter --enable-avresample --enable-postproc --enable-pthreads --disable-static --enable-shared --enable-gpl --disable-debug --disable-stripping --shlibdir=/usr/lib64 --enable-libmfx --enable-runtime-cpudetect
libavutil 56. 14.100 / 56. 14.100
libavcodec 58. 18.100 / 58. 18.100
libavformat 58. 12.100 / 58. 12.100
libavdevice 58. 3.100 / 58. 3.100
libavfilter 7. 16.100 / 7. 16.100
libavresample 4. 0. 0 / 4. 0. 0
libswscale 5. 1.100 / 5. 1.100
libswresample 3. 1.100 / 3. 1.100
libpostproc 55. 1.100 / 55. 1.100
Input #0, rtsp, from 'rtsp://192.168.89.60:554/11':q= 0B f=0/0
Metadata:
title : 10
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: h264 (Main), yuv420p(progressive), 1280x960, 12.50 tbr, 90k tbn, 180k tbc
Stream #0:1: Audio: pcm_alaw, 8000 Hz, 1 channels, s16, 64 kb/s
ALSA lib pulse.c:243:(pulse_connect) PulseAudio: Unable to connect: Connection refused
SDL_OpenAudio (1 channels, 8000 Hz): ALSA: Couldn't open audio device: Connection refused
No more combinations to try, audio open failed
3.40 M-V: 0.033 fd= 0 aq= 0KB vq= 485KB sq= 0B f=0/0