Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ did ΠΊΠ°ΠΌΠ΅ΡΡ
ΠΡΠ΅ ΡΠ°Π· ΠΎ Π²ΠΈΠ΄Π΅ΠΎΠ½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΠΈ, ΠΊΠ°ΠΌΠ΅ΡΠ°Ρ , RTSP, onvif. Π Β«Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄Β»!
Non-Interleaved Mode.
RTSP ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠ²ΡΠ·Ρ ΠΈ ΠΏΠ΅ΡΠ΅Π΄Π°Π΅Ρ Π² ΠΊΠ°ΠΌΠ΅ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΠΎ ΡΠΎΠΌ Β«ΠΊΡΠ΄Π° ΡΠ»Π°ΡΡΒ» Π΄Π°Π½Π½ΡΠ΅ (UDP ΠΏΠΎΡΡΡ).
ΠΡΠΈΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ RTSP
ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ
Transport: RTP/AVP;unicast;destination=10.112.28.33;source=10.112.28.231;client_port=49501-49502;server_port=6970-6971
Interleaved Mode.
Π Π°Π·Π½ΠΈΡΠ° Ρ Non-Interleaved Mode Π² ΡΠΎΠΌ ΡΡΠΎ Π²ΡΠ΅ ΠΏΠ°ΠΊΠ΅ΡΡ Π±ΡΠ΄ΡΡ ΡΡΠΏΠ°ΡΡΡΡ Π² ΡΡΠΎΡ ΠΆΠ΅ ΠΏΠΎΡΡ.
ΠΡΠΈΠΌΠ΅Ρ:
ΠΠ°ΠΏΠΎΠΌΠΈΠ½Π°Π΅ΠΌ
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΌΠΎΡΡΠΈΠΌ ΡΡΠΎ ΠΈ ΠΊΠ°ΠΊ.
ΠΠ°ΠΌΠ΅ΡΡ ΡΠ»ΡΡ Π²ΠΈΠ΄Π΅ΠΎ ΠΈ Π°ΡΠ΄ΠΈΠΎ Π² ΡΠ°Π·Π½ΡΠ΅ RTP ΠΏΠΎΡΠΎΠΊΠΈ. 2n ΠΏΠΎΡΠΎΠΊ β Π΄Π°Π½Π½ΡΠ΅, 2n+1 ΠΏΠΎΡΠΎΠΊ β RTCP.
ΠΠ° Π²ΠΈΠ΄Π΅ΠΎ Π½Π°ΠΌ ΠΈΠ΄Π΅Ρ 0 ΠΈ 1 ΠΊΠ°Π½Π°Π», Π½Π° Π°ΡΠ΄ΠΈΠΎ 2 ΠΈ 3 ΠΊΠ°Π½Π°Π».
Π’Π΅ΠΏΠ΅ΡΡ ΡΠΌΠΎΡΡΠΈΠΌ
Transport: RTP/AVP;unicast;destination=10.112.28.33;source=10.112.28.231;client_port=49501-49502;server_port=6970-6971
Transport: RTP/AVP/TCP;unicast;interleaved=0-1
Π ΠΏΠ΅ΡΠ²ΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ ΡΠΊΠ°Π·Π°Π½Ρ ΠΏΠΎΡΡΡ, Π²ΠΎ Π²ΡΠΎΡΠΎΠΌ ΠΊΠ°Π½Π°Π»Ρ.
Π‘ Ρ Non-Interleaved Mode Π²ΡΡ ΠΏΠΎΠ½ΡΡΠ½ΠΎ. ΠΡΠΎΡΡΠΎ RTP ΠΏΠ°ΠΊΠ΅ΡΡ ΡΡΠΏΡΡΡΡ Π² ΠΏΠΎΡΡΡ ΠΈ ΠΈΡ
ΠΌΠΎΠΆΠ½ΠΎ ΡΠΈΡΠ°ΡΡ ΠΊΠ°ΠΊ ΡΠΎ ΡΠ°ΠΊ:
DatagramPacket packet = new DatagramPacket(buffer, buffer.length);
s.receive(packet);
ΠΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ Ρ Interleaved mode.
ΠΠΎ ΡΠ°ΠΊΡΡ Π½ΠΈ ΠΊΠ°ΠΊΠΈΡ
ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π±ΡΡΡ Π½Π΅ Π΄ΠΎΠ»ΠΆΠ½ΠΎ. ΠΠΎ RFC ΠΌΡ ΠΈΡΠ΅ΠΌ magic char «$», ΡΠ»Π΅Π΄ΡΡΡΠΈΠΉ Π±Π°ΠΉΡ β ΠΊΠ°Π½Π°Π» (ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ Π² ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ 0-4 Ρ Π½Π°Ρ) ΠΈ 2 Π±Π°ΠΉΡΠ° Length. ΠΡΠ΅Π³ΠΎ 4 Π±Π°ΠΉΡΠ°.
ΠΠΎ Π΅ΡΡΡ Π½Π΅ Π½ΠΎΡΠΌΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠ°ΠΌΠ΅ΡΡ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ D-ling DCS-2103 Β«ΠΠΎΡΡΠΏΠ°Π΅ΡΒ» ΠΊΠ°ΠΊΠΈΠ΅ ΡΠΎ Π΄Π°Π½Π½ΡΠ΅ ΠΏΠΎΡΠ»Π΅ rtp ΠΏΠ°ΠΊΠ΅ΡΠ°. frame Π΄Π°Π΅Ρ ΡΠ°Π·ΠΌΠ΅Ρ 1448,
ΡΠ»Π΅Ρ 1448 ΡΡΠ΅ΠΉΠΌΠ°, ΠΈ ΠΏΠΎΡΠ»Π΅ 827 Π±Π°ΠΉΡ ΠΊΠ°ΠΊΠΎΠ³ΠΎ ΡΠΎ ΠΌΡΡΠΎΡΠ°. (Π’Π°ΠΊ Π΄Π΅Π»Π°Π΅Ρ Dlink DCS-2103 ΠΏΡΠΎΡΠΈΠ²ΠΊΠ° 1.00 ΠΈ 1.20)
Π ΡΠ°ΠΊΠΎΠ΅ Ρ Β«Π½ΠΈΡ
Β» ΠΏΡΠΎΠΈΡΡ
ΠΎΠ΄ΠΈΡ ΠΏΠΎΡΡΠΎΡΠ½Π½ΠΎ. ΠΡΠΈΠΌ ΡΠ°ΡΡΠ΅Π½ΡΠΊΠΎ ΡΡΡΠ°Π΄Π°ΡΡ ΠΊΠΈΡΠ°ΠΉΡΠΊΠΈΠ΅ ΠΊΠ°ΠΌΠ΅ΡΡ. Qihan (356) ΡΡΠΈΠΌ Π½Π΅ ΡΡΡΠ°Π΄Π°Π»ΠΈ.
ΠΡΠΎΠΌΠ΅ ΠΊΠ°ΠΊ ΠΏΡΠΎΠΏΡΡΠΊΠ°ΡΡ ΡΡΠΎΡ ΠΌΡΡΠΎΡ ΠΈΠ΄Π΅ΠΉ Π±ΠΎΠ»ΡΡΠ΅ Π½Π΅Ρ.
Π RTP ΡΡΠΏΡΡΡΡ ΠΏΠΎΠ»Π΅Π·Π½ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅. ΠΡΠΈ DESCRIBE RTSP Π²ΠΎΠ·Π²ΡΠ°ΡΠ°Π΅ΡΡΡ SDP ΠΏΠ°ΠΊΠ΅Ρ
ΠΡΠΈΠΌΠ΅ΡΡ SDP (h264, mjpeg, mpeg4):
ΠΡΠΎΡΠΈΡΠ°ΡΡ ΠΏΡΠΎ SDP
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠΎΠ΄Π° Π±ΡΠ»Π° mjpeg ΠΈ ΡΠ΅ΠΊΡΡΠ°Ρ Π½Π° h264, ΡΠΎ ΡΠ°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΈΡ
.
Π‘ MJpeg Π²ΡΡ ΠΏΡΠ΅Π΄Π΅Π»ΡΠ½ΠΎ ΡΡΠ½ΠΎ. Π Π²ΠΎΡ Ρ H264 Π½Π°ΡΠΈΠ½Π°ΡΡΡΡ ΡΠ°Π·Π»ΠΈΡΠΈΡ Π² ΠΊΠ°ΠΌΠ΅ΡΠ°Ρ
.
Π€ΠΎΡΠΌΠ°Ρ h264 ΡΠΎΡΡΠΎΠΈΡ ΠΈΠ· Π±Π»ΠΎΠΊΠΎΠ² Ρ NAL Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°ΠΌΠΈ (7.4.1 NAL unit semantics).
Π§ΡΠΎΠ±Ρ ΠΌΠΎΠΆΠ½ΠΎ Π±ΡΠ»ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ h264 Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌΠΎ ΠΏΠΎΠΌΠΈΠΌΠΎ Π΄Π°Π½Π½ΡΡ
ΡΠ°ΠΌΠΎΠ³ΠΎ h264 ΠΈΠΌΠ΅ΡΡ Π΄Π°Π½Π½ΡΠ΅ SPS (Sequence parameter set) ΠΈ PPS(Picture parameter set). ΠΠ΅ΡΠ²ΡΠΉ ΠΎΠΏΠΈΡΡΠ²Π°Π΅Ρ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΡ, Π²ΡΠΎΡΠΎΠΉ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ ΠΊΠ°ΡΡΠΈΠ½ΠΊΠΈ. Π’Π°ΠΊ ΠΊΠ°ΠΊ ΡΠ°ΠΌ ΠΊΠΎΠ΄Π΅ΠΊ h264 Π·Π½Π°Ρ ΠΎΡΠ΅Π½Ρ ΠΏΠ»ΠΎΡ
ΠΎ, ΡΠΎ Π±ΠΎΠ»ΡΡΠ΅Π³ΠΎ ΠΎΠΏΠΈΡΠ°Π½ΠΈΡ Π½Π΅ Π±ΡΠ΄Π΅Ρ. SPS ΠΈΠΌΠ΅Π΅Ρ ΡΠΈΠΏ 7, PPS 8. ΠΠ΅Π· Π½ΠΈΡ
Π½Π΅Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ h264.
Π‘Π°ΠΌΠΎΠ΅ ΠΈΠ½ΡΠ΅ΡΠ΅ΡΠ½ΠΎΠ΅ β Qihan ΡΠ»Π΅Ρ SPS ΠΈ PPS ΠΏΡΡΠΌ Π² RTP ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
, Dlink Π½Π΅ ΡΠ»Π΅Ρ ΠΈΡ
Π² RTP ΠΏΠ°ΠΊΠ΅ΡΠ°Ρ
. ΠΠΎ SPS ΠΈ PPS ΡΠ»Π΅ΡΡΡ Π² SDP ΠΏΠ°ΠΊΠ΅ΡΠ΅ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ sprop-parameter-sets Π² ΠΊΠΎΠ΄ΠΈΡΠΎΠ²ΠΊΠ΅ base64.
sprop-parameter-sets=Z2QAKK2EBUViuKxUdCAqKxXFYqOhAVFYrisVHQgKisVxWKjoQFRWK4rFR0ICorFcVio6ECSFITk8nyfk/k/J8nm5s00IEkKQnJ5Pk/J/J+T5PNzZprQCgDLSpAAAAwHgAAAu4YEAAPQkAABEqjve+F4RCNQ=,aO48sA==
Π¨Π»ΡΡΡΡ ΠΎΠ½ΠΈ ΡΠ΅ΡΠ΅Π· Π·Π°ΠΏΡΡΡΡ
ΠΠ°ΡΠΈΠ°Π½Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ.
Π’Π°ΠΊ ΠΊΠ°ΠΊ ΠΊΠ°ΠΌΠ΅ΡΡ 720p ΠΈΠ»ΠΈ 1080p, ΡΠΎ Π² 1 RTP ΠΏΠ°ΠΊΠ΅Ρ Π½ΠΈ jpeg ΡΡΠ΅ΠΉΠΌ, Π½ΠΈ h264 ΡΡΠ΅ΠΉΠΌ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΡΠΈΡΡΡ, ΡΠΎ ΠΎΠ½ΠΈ ΡΠ΅ΠΆΡΡΡΡ Π½Π° ΠΏΠ°ΠΊΠ΅ΡΡ.
RTP Payload Format for JPEG-compressed Video
RTP Payload Format for H.264 Video
JPEG
RTP ΠΏΠ°ΠΊΠ΅Ρ ΡΠΎΠ΄Π΅ΡΠΆΠΈΡ main JPEG header
Π° Π΄Π°Π»ΡΡΠ΅ ΠΌΠΎΠΆΠ΅Ρ Π²Π°ΡΡΠΈΡΠΎΠ²Π°ΡΡΡΡ ΠΎΡ Type ΠΈ Q
ΠΠ»Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ jpeg Π½ΡΠΆΠ½ΠΎ Π·Π½Π°ΡΡ ΠΈΠ»ΠΈ Π²ΡΡΠΈΡΠ»ΠΈΡΡ quantization tables.
Π ΠΌΠΎΠΈΡ
ΠΊΠ°ΠΌΠ΅ΡΠ°Ρ
quantization tables ΡΠ»ΠΈ Π² ΡΡΠ°ΡΡΠΎΠ²ΠΎΠΌ ΠΏΠ°ΠΊΠ΅ΡΠ΅ Jpeg, ΠΏΠΎ ΡΡΠΎΠΌΡ ΠΎΠ½ΠΈ ΠΏΡΠΎΡΡΠΎ Π±ΡΠ°Π»ΠΈΡΡ ΠΎΡΡΡΠ΄Π°.
ΠΡΠ΅ Π²ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π΅ΡΡΡ Π² RFC.
ΠΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ΅ΠΉΠΌΠ° Π²ΡΡΠΈΡΠ»ΡΠ΅ΡΡΡ ΠΏΠΎ RTP header Marker bit. ΠΡΠ»ΠΈ ΠΎΠ½ 1, ΡΠΎ ΡΡΠΎ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΉ ΠΏΠ°ΠΊΠ΅Ρ ΡΡΠ΅ΠΉΠΌΠ°.
Single NAL Unit Packet
ΠΡΠΎ ΠΊΠ°ΠΊ ΡΠ°Π· SPS ΠΈ PPS. Type=7 ΠΈΠ»ΠΈ Type=8
ΠΡΠ»ΠΈ ΡΡΠ΅ΠΉΠΌ h264 Π½Π΅ Π²Π»Π΅Π·Π°Π΅Ρ Π² RTP ΠΏΠ°ΠΊΠ΅Ρ (1448 Π±Π°ΠΉΡ), ΡΠΎ ΡΡΠ΅ΠΉΠΌ ΡΠ΅ΠΆΠ΅ΡΡΡ Π½Π° ΡΡΠ°Π³ΠΌΠ΅Π½ΡΡ. (5.8. Fragmentation Units (FUs))
Type = 28
ΠΡΠΈ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΡΠ»Π΅Π΄ΡΡΡ ΡΡΠ°Π·Ρ ΠΏΠΎΡΠ»Π΅ RTP Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠ°
ΠΠ»Ρ Π΄Π΅ΠΊΠΎΠ΄Π΅ΡΠ° h264 NAL β Π½ΡΠΆΠ½Π°Ρ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ. ΠΡΠ»ΠΈ ΠΈΠ΄Π΅Ρ ΡΡΠ°Π³ΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΡΡΠ΅ΠΉΠΌΠ°, ΡΠΎ NAL Π½ΡΠΆΠ½ΠΎ Π²ΠΎΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°ΡΡ. (FU)
Π½ΡΠΆΠ½ΠΎ Π²Π·ΡΡΡ ΠΏΠ΅ΡΠ²ΡΠ΅ 3 Π±ΠΈΡΠ° ΠΈΠ· FU indicator ΠΈ ΡΠ»ΠΈΡΡ ΠΈΡ
Ρ 5 ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠΌΠΈ FU header.
Π’Π΅ΠΏΠ΅ΡΡ ΡΠ°ΠΌΠΎΠ΅ Π³Π»Π°Π²Π½ΠΎΠ΅ β ΡΠΎΡ
ΡΠ°Π½ΡΠ΅ΠΌ ΠΏΠΎΡΠΎΠΊ.
Jpeg
NON_IDR_PICTURE β Π½Π΅ΠΎΠ±Ρ
ΠΎΠ΄ΠΈΠΌ Π΄Π»Ρ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°Π½ΠΈΡ, Β«ΡΠ°Π·Π΄Π΅Π»ΡΠ΅ΠΌΒ» ΡΡΠ΅ΠΉΠΌΡ. (h264) Π’ΡΡ Π½ΡΠΆΠ½ΠΎ ΠΌΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ°Π²ΠΈΡΡ, ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΡΠΎ ΠΏΡΠΎΡΡΠΎ Β«ΠΊΠΎΡΡΡΠ»ΡΒ» ΠΈ ΠΎΠ±ΠΎΡΠ½ΠΎΠ²Π°Π½ΠΈΠΉ ΠΏΠΎΠΊΠ° Π½Π΅Ρ. ΠΡΠΎΡΡΠΎ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ.
ΠΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ°ΠΊΠΎΠΉ ΠΏΠΎΡΠΎΠΊ: 00000001 + SPS + 00000001 + PPS + 00000001 + NALβ¦
erlyvideo: 0,0,0,1 β ΡΡΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡ AnnexB Π·Π°ΠΏΠΈΡΠΈ H264. ΠΡΠΎ Π½Π΅ ΡΠ°ΡΡΡ H264 NAL-ΡΠ½ΠΈΡΠ°, Π° ΡΠ°Π·Π΄Π΅Π»ΠΈΡΠ΅Π»Ρ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠ½ΠΈΡΠ°ΠΌΠΈ.
Π½Ρ ΠΈ ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΠ° Β«Π²ΡΠ΅Π³ΠΎΒ» ΡΡΠΎΠ³ΠΎ
Π² 2Ρ ΡΠ»ΠΎΠ²Π°Ρ . ΠΠΎΠ»ΡΡΠ°Π΅ΠΌ RTSP Interleaved Frame (Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Channel: 0x00, 1448 bytes), ΡΠΈΡΠ°Π΅ΠΌ 1448 Π±Π°ΠΉΡ, Π΄Π΅Π»Π°Π΅ΠΌ writeRawToStream, ΠΏΠΎΠ»ΠΈΠΌΠΎΡΡΠΈΠ·ΠΌ Π΄Π΅Π»Π°Π΅Ρ ΡΠ²ΠΎΠ΅ Π΄Π΅Π»ΠΎ.
ΠΠ°Π»ΡΡΠ΅ ΡΡΠΎ Π½ΡΠΆΠ½ΠΎ ΠΎΠ±ΠΊΠ°ΡΠ°ΡΡ.
ΠΠ°Π·Π°Π»ΠΎΡΡ Π±Ρ ΡΡΠΎ Π΄Π»Ρ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠ°Π½ΠΈΡ ΠΏΠΎΡΠΎΠΊΠ° RTSP Π½ΡΠΆΠ½ΠΎ Π΄Π΅Π»Π°ΡΡ RTCP ΠΎΡΡΠ΅ΡΡ, Π½ΠΎ Π½Π΅Ρ, Π²ΡΡ ΠΎΠΊΠ°Π·Π°Π»ΠΎΡΡ ΠΏΡΠΎΡΠ΅
Dlink, Qihan, VLC ΠΏΡΠΎΡΡΠΎ Β«Π΅Π΄ΡΡΒ» GET_PARAMETER:
ΡΠ»Π΅ΠΌ Π΅Π³ΠΎ ΡΠ°Π· Π² 55 ΡΠ΅ΠΊΡΠ½Π΄ ΠΈ Π²ΡΡ.
ΠΡΠΈ ΠΏΡΠΎΡΡΠΎΠΌ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ Π³Π΅Π½Π΅ΡΠΈΡΡΠ΅ΡΡΡ m3u ΡΠ°ΠΉΠ» ΠΈ ΠΊΠΎΡΠΌΠΈΡΡΡ Π² VLC
4
ΠΡΠΈ ΡΠΊΠ»Π΅ΠΈΠ²Π°Π½ΠΈΠΈ ffmpeg ΠΊΠ»Π΅ΠΈΡ, ΠΏΠΎΡΠ»Π΅ Π·Π°ΠΏΡΡΠΊΠ°Π΅ΡΡΡ VLC
5
ΠΡΠΎΠ³ΡΠ°ΠΌΠΌΠ° Π½Π°ΡΠ΅Π·Π°Π΅Ρ ΠΏΠΎΡΠΎΠΊ Π½Π° ΡΠ°ΠΉΠ»Ρ, ΠΈΠ½ΡΠ΅ΡΠ²Π°Π» Π·Π°Π΄Π°Π΅ΡΡΡ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ
Π§ΡΠΎ Π΄Π΅Π»Π°Π΅Ρ ffmpeg:
ΠΠ»Π΅ΠΈΡ
Β«ΠΠΎΡΠΌΠ°Π»ΠΈΠ·ΡΠ΅ΡΒ» (ΠΏΡΠΎΡΡΠΈΡΡΠ²Π°Π΅Ρ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΊΠΈ ΠΈ Ρ.Π΄.)
ΠΠ° Π²ΡΡ
ΠΎΠ΄Π΅ ΠΊΡΡΠ° ΡΠ°ΠΉΠ»ΠΎΠ²
6
ΠΠΎ Ρ
ΠΎΡΠΎΡΠ΅ΠΌΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΈΡΠ°ΡΡ Π² Π»ΡΠ±ΠΎΠΉ OutputStream
Git hub
ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ΅ΠΉ ΠΆΠΈΠ·Π½ΠΈ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ ΠΌΠΎΠΆΠ΅Ρ ΠΈ Π½Π΅ Π±ΡΡΡ. ΠΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ Π΄ΠΎΠΏΠΈΡΡ ΠΊΠΎΠ³Π΄Π° Π½ΠΈΠ±ΡΠ΄Ρ RTP ΠΊΠ»Π°ΡΡΡ Π΄Π»Ρ Π·Π²ΡΠΊΠ°. (ΡΠ°ΠΊ ΠΊΠ°ΠΊ ΡΠ²Π»Π΅ΠΊΠ°ΡΡΡ Π΄ΠΎ ΡΠΈΡ
ΠΏΠΎΡ SIP)
ΠΡ ΠΈ ΡΠ°ΠΌΠΎΠ΅ Π²ΠΊΡΡΠ½ΠΎΠ΅.
ΠΡΡΡ ΡΡΠ°Π½Π΄Π°ΡΡ Π²ΠΈΠ΄Π΅ΠΎ Π½Π°Π±Π»ΡΠ΄Π΅Π½ΠΈΡ ONVIF
ΠΡΡΡ ΠΏΡΠΎΡΠ΅ΡΡΠΈΠΎΠ½Π°Π»ΡΠ½ΡΠ΅ ΠΆΠ΅Π»Π΅Π·ΠΊΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ ΠΊΠ°ΠΌΠ΅ΡΠ°ΠΌΠΈ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΡΠΎΠ»ΡΠΊΠΎ ΠΏΠΎ Π½Π΅ΠΌΡ.
ΠΡΡΡ ΠΊΠ°ΠΌΠ΅ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΏΠΎ Π½Π΅ΠΌΡ (Qihan, ΠΎΠ½ ΠΆΠ΅ Proline), Π° ΡΡΡΠ»ΠΊΠΈ rtsp ΠΏΡΠΈΡ
ΠΎΠ΄ΠΈΡΡΡ Π³ΡΠ³Π»ΠΈΡΡ.
ΠΡΡΡ ΠΎΠΏΠ΅Π½ΡΠΎΡΡΠ½ΡΠΉ ΠΏΡΠΎΠ΄ΡΠΊΡ Onvif device manager Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ ΠΏΠΎΠ΄ΠΎΠ±Π½ΡΠΌΠΈ ΠΆΠ΅Π»Π΅Π·ΡΠΊΠ°ΠΌΠΈ.
Π― ΠΆΠ΅ Π² ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΡ Π΄ΠΎΠ±Π°Π²ΠΈΠ» ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ onvif Π±Π΅Π· Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈ Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ.
7
Git hub
ΠΡΠ»ΠΈ ΠΏΡΠΎΠΉΡΠΈΡΡ ΠΏΠΎ ΡΡΡΠ»ΠΊΠ°ΠΌ Π²ΡΡΠ΅, ΡΠΎ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΠ»ΡΡΠΈΡΡ Π²ΡΡ Π΄ΠΎΠΊΡΠΌΠ΅Π½ΡΠ°ΡΠΈΡ ΠΏΠΎ Onvif.
ΠΡΠ²Π΅Ρ:
ΠΠ°Π»ΡΠ½Π΅ΠΉΡΠ΅Π΅ ΠΎΠ±ΡΠ΅Π½ΠΈΠ΅ ΠΏΠΎ onvif Π±Π΅Π· Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΠΈΠ΄Π΅Ρ Π² ΡΡΠΎΠΌ ΠΆΠ΅ ΠΊΠ»ΡΡΠ΅.
Π Π²ΠΎΡ ΠΏΡΠΈΠΌΠ΅Ρ ΠΎΠ±ΡΠ΅Π½ΠΈΡ Π½ΠΎ ΡΠΆΠ΅ Ρ Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠ΅ΠΉ
Π’.Π΅. Π½ΡΠΆΠ½ΠΎ ΡΠ»Π°ΡΡ Π·Π°Π³ΠΎΠ»ΠΎΠ²ΠΎΠΊ. (ΡΠ΅ΡΡΠΈΠ»ΠΎΡΡ Π½Π° D-link DCS-2103, ΠΎΡΡΠ°Π»ΡΠ½ΡΠ΅ ΠΊΠ°ΠΌΠ΅ΡΡ Π±Π΅Π· Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΠΈ ΡΠ°Π±ΠΎΡΠ°Π»ΠΈ, ΠΊΠΈΡΠ°ΠΉ).
ΠΈ ΠΏΠ°ΡΠΎΠ»Ρ (Password_Digest = Base64 ( SHA-1 ( nonce + created + password ) ))
ΠΡΡ Π±ΡΠ»ΠΎ ΡΠ΄Π΅Π»Π°Π½ΠΎ Π² ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΡΡ
ΡΠ΅Π»ΡΡ
. ΠΡΠ»ΠΈ Π΅ΡΡΡ Π²ΠΎΠΏΡΠΎΡΡ ΠΈ Π²Π΄ΡΡΠ³ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡΡ Π±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎΠ΅ ΠΎΠΏΠΈΡΠ°Π½ΠΈΠ΅ ΡΠ΅Π³ΠΎ Π»ΠΈΠ±ΠΎ β ΠΏΠΈΡΠΈΡΠ΅.
ΠΠ°Π΄Π΅ΡΡΡ ΠΊΠΎΠΌΡ Π½ΠΈΠ±ΡΠ΄Ρ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡ.
PS ΠΠ΅ Π½Π°Π΄ΠΎ ΠΏΠΈΡΠ°ΡΡ Π² ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΡΡ
ΠΏΡΠΎ ΠΎΡΠ³Π°Π½ΠΈΠ·Π°ΡΠΈΡ Π½Π° Π±ΠΎΠ»ΡΡΡΡ Π±ΡΠΊΠ²Ρ Β«IΒ». ΠΡ
Server ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ SQLite, SSL, avcodec (ffmpeg), Π° Π² ΠΏΠ°ΠΏΠΊΠ΅ \Resources Π΅ΡΡΡ Π±ΠΎΠΆΠ΅ΡΡΠ²Π΅Π½Π½ΡΠΉ ΡΠ°ΠΉΠ»ΠΈΠΊ Ρ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ camera_list.json, Π½ΠΎ ΠΌΠΎΡ Π½Π°Π³Π»ΠΎΡΡΡ Π½Π΅ ΠΏΠΎΠ·Π²ΠΎΠ»ΠΈΠ»Π° Π΅Π³ΠΎ ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΠΊ ΡΠ²ΠΎΠ΅ΠΉ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ π ΠΠΎ Ρ Π½Π΅ Π²ΠΈΠ΄Π΅Π» Ρ Π½ΠΈΡ
ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ Onvif, Π²ΠΈΠ΄ΠΈΠΌΠΎ ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΎΠ½ΠΈ Π²ΡΠΏΡΡΠΊΠ°ΡΡ Β«ΡΠ²ΠΎΠΈΒ» ΠΊΠ°ΠΌΠ΅ΡΡ. UPDATED: ΡΠΌ ΠΊΠΎΠΌΠΌΠ΅Π½ΡΠ°ΡΠΈΠΈ ΠΎΡ ivideon
ΠΡΠ»ΠΈ ΠΏΡΠΈΠΊΡΡΡΠΈΡΡ ΠΊ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ΅ OpenVPN ΠΈ OpenCV, ΡΠΎ Π±ΡΠ΄Π΅Ρ Π·Π°Π±Π°Π²Π½ΠΎΠ΅ ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ ΠΈ Β«Π²Π΅Π»ΠΎΡΠΈΠΏΠ΅Π΄Β»
ΠΡ ΠΈ Π²ΠΎΡ Π²Π°ΠΌ ΠΏΠΎΠ»Π΅Π·Π½Π°Ρ ΡΡΡΠ»ΠΊΠ° Π½Π° Π±Π°Π·Ρ ΡΡΡΠ»ΠΎΠΊ ΠΏΠΎΡΠΎΠΊΠΎΠ² ΠΊΠ°ΠΌΠ΅Ρ
Π Π΅ΡΡ ΠΏΡΠΎ Β«Π΄ΠΎΠΌΠ°ΡΠ½ΠΈΠΉΒ» Asterisk
ΠΡΠΎΡΠΈΡΠ°Π² ΡΡΠΎΡ ΠΏΠΎΡΡ, ΡΠ΅ΡΠΈΠ» ΠΏΠΎΠ΄Π΅Π»ΠΈΡΡΡΡ ΠΈ ΡΠ²ΠΎΠΈΠΌ ΠΎΠΏΡΡΠΎΠΌ.
ΠΡΠ±ΠΈΡΠ°Π΅ΠΌ DID number
ΠΡΡ Π½Π°ΡΠΈΠ½Π°Π΅ΡΡΡ Ρ Π½ΠΎΠΌΠ΅ΡΠ° ΡΠ΅Π»Π΅ΡΠΎΠ½Π°, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π±ΡΠ΄ΡΡ Π·Π²ΠΎΠ½ΠΈΡΡ, ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΠΎΠ΅ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ β Direct Inward Dialing (DID) number.
Π‘Π°ΠΌΠΎΠ΅ Π΄Π΅ΡΡΠ²ΠΎΠ΅ ΠΏΡΠ΅Π΄Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Ρ ΠΏΡΡΠΌΡΠΌ ΠΌΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΌ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ β Β«ΠΠ°zΠ°Β» (ΠΏΡΠ΅Π΄ΠΎΡΡΠ°Π²Π»ΡΠ΅ΡΡΡ Π¦Π΅Π½ΡΡΠ°Π»ΡΠ½ΡΠΌ Π’Π΅Π»Π΅Π³ΡΠ°ΡΠΎΠΌ). ΠΠ° ΠΌΠΎΠΌΠ΅Π½Ρ Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΡ ΠΏΠΎΡΡΠ° ΡΠ°ΠΌΡΠΉ Π΄Π΅ΡΡΠ²ΡΠΉ ΡΠ°ΡΠΈΡ ΡΡΠΎΠΈΡ 250 ΡΡΠ±/ΠΌΠ΅Ρ, ΠΏΠ»ΡΡ ΡΠ°Π·ΠΎΠ²Π°Ρ ΠΎΠΏΠ»Π°ΡΠ° Π·Π° ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ Π½ΠΎΠΌΠ΅ΡΠ° Π² ΠΊΠΎΠ΄Π΅ 499 ΠΈΠ»ΠΈ 495, Π½Π° Π²ΡΠ±ΠΎΡ. ΠΡΠΈ ΠΏΠΎΠ΄ΠΏΠΈΡΠ°Π½ΠΈΠΈ Π΄ΠΎΠ³ΠΎΠ²ΠΎΡΠ° Π»ΡΡΡΠ΅ ΡΡΠ°Π·Ρ ΠΏΠΎΠΏΡΠΎΡΠΈΡΡ, ΡΡΠΎΠ±Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΠ»ΠΈ ΠΏΠ΅ΡΠ΅Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΡ Π½Π° SIP ΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ (Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½Π°Ρ ΡΡΠ»ΡΠ³Π° Β«ΠΠ°zΠ°-IPΒ», ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠ΅ ΠΎΠΏΠ»Π°ΡΠΈΠ²Π°Π΅ΡΡΡ ΡΠ°Π·ΠΎΠ²ΠΎ). ΠΠ΅ΡΠ΅Π°Π΄ΡΠ΅ΡΠ°ΡΠΈΡ Π½Π° SIP Π±Π΅ΡΠΏΠ»Π°ΡΠ½Π°Ρ. ΠΡΠΎ ΠΌΠΎΠΉ Π²ΡΠ±ΠΎΡ.
ΠΡΠ»ΠΈ Π²Π°ΠΌ Π½Π°Π΄ΠΎ ΡΠΎΠ²ΡΠ΅ΠΌ Π΄ΡΡΠ΅Π²ΠΎ ΠΈ ΡΠ΅ΡΠ΄ΠΈΡΠΎ, Π΅ΡΡΡ mango-office, ΠΌΠΎΡΠΊΠΎΠ²ΡΠΊΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ Ρ ΡΠΎΠ½ΠΎΠ²ΡΠΌ Π΄ΠΎΠ½Π°Π±ΠΎΡΠΎΠΌ Π·Π° 30 ΡΡΠ±/ΠΌΠ΅Ρ π Π― ΡΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ Π½Π΅ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π».
Π£ Localphone ΠΌΠΎΠΆΠ½ΠΎ ΠΊΡΠΏΠΈΡΡ DID Π½ΠΎΠΌΠ΅Ρ Π² 49 ΡΡΡΠ°Π½Π°Ρ ΠΌΠΈΡΠ° (Π ΠΎΡΡΠΈΠΈ Π² ΡΠΏΠΈΡΠΊΠ΅ Π½Π΅Ρ) Ρ ΠΎΠΏΠ»Π°ΡΠΎΠΉ ΠΎΡ Β£0.75 (β37 ΡΡΠ±) Π² ΠΌΠ΅ΡΡΡ. ΠΡΠΎΡ Π²Π°ΡΠΈΠ°Π½Ρ Ρ ΡΠΎΠΆΠ΅ ΠΏΠΎΠΊΠ° Π½Π΅ ΠΏΡΠΎΠ±ΠΎΠ²Π°Π», Π½ΠΎ ΠΏΠ»Π°Π½ΠΈΡΡΡ π ΠΠΎΠΌΠ΅Ρ Π² ΠΠΎΠ½Π΄ΠΎΠ½Π΅ ΠΈΠ»ΠΈ ΠΡΡ-ΠΠΎΡΠΊΠ΅ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ³ΠΎΠ΄ΠΈΡΡΡΡ.
ΠΠ°ΡΡΡΠ°ΠΈΠ²Π°Π΅ΠΌ Β«ΠΠ°zΡΒ»
ΠΠ° ΡΡΠΎΠΌ ΠΌΠΈΠ½ΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°ΡΡΡΠΎΠΉΠΊΠΈ Π·Π°ΠΊΠΎΠ½ΡΠ΅Π½Ρ.
Π‘Π΅ΡΠ²Π΅Ρ Π΄Π»Ρ VoIP
ΠΠ»Ρ Asterisk Π±ΡΠ» Π²ΡΠ±ΡΠ°Π½ Π΄Π΅ΡΡΠ²ΡΠΉ Π²ΠΈΡΡΡΠ°Π»ΡΠ½ΡΠΉ ΡΠ΅ΡΠ²Π΅Ρ Π² ΠΠ΅ΡΠΌΠ°Π½ΠΈΠΈ Π½Π° ΡΠ΅Ρ Π½ΠΎΠ»ΠΎΠ³ΠΈΠΈ Xen Π·Π° β¬3/ΠΌΠ΅Ρ: 128Mb RAM, 256Mb swap, 10Gb disk, ΠΠ‘ Debian stable. ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΡΡΠΎΠ³ΠΎ Π±ΠΎΠ»Π΅Π΅ ΡΠ΅ΠΌ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ.
Π‘ΠΎΠ΅Π΄ΠΈΠ½ΡΠ΅ΠΌ Β«ΠΠ°zΡΒ» ΠΈ Asterisk
[baza]
secret = ***
defaultuser = 849********
trunkname = baza
callerid =
hasexten = no
hassip = yes
hasiax = no
host = qwerty.cnt.ru
context = from-baza
insecure = invite
fromuser = 849********
fromdomain = qwerty.cnt.ru
type = friend
callbackextension = 111
disallow = all
allow = alaw
allow = ulaw
allow = g729
nat = no
canreinvite = nonat
dtmfmode = rfc2833
Π ΡΠΎΠ·Π΄Π°ΡΠΌ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Β«from-bazaΒ» Π² ΠΏΠ»Π°Π½Π΅ Π½ΡΠΌΠ΅ΡΠ°ΡΠΈΠΈ Ρ ΠΎΠ΄Π½ΠΈΠΌ Π΅Π΄ΠΈΠ½ΡΡΠ²Π΅Π½Π½ΡΠΌ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ» ΡΠΊΠ°Π·Π°Π½ Π²ΡΡΠ΅ Π² ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠ΅ callbackextension. Π‘Π°ΠΌΡΠΉ ΠΏΡΠΎΡΡΠΎΠΉ Π²Π°ΡΠΈΠ°Π½Ρ, Π² /etc/asterisk/extensions.conf:
[inc-redirect-to-me]
Exten => 111, 1, Dial(SIP/terrasip/79*********&SIP/112,60)
Exten => 111, n, Hangup()
ΠΠ²ΠΎΠ½ΠΈΠΌ ΠΎΠ΄Π½ΠΎΠ²ΡΠ΅ΠΌΠ΅Π½Π½ΠΎ Π½Π° ΠΌΠΎΠ±ΠΈΠ»ΡΠ½ΡΠΉ ΡΠ΅Π»Π΅ΡΠΎΠ½ ΡΠ΅ΡΠ΅Π· ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° TerraSIP ΠΈ Π½Π° ΡΡΠΎΡΡΠΈΠΉ Π½Π° ΡΡΠΎΠ»Π΅ SIP ΡΠ΅Π»Π΅ΡΠΎΠ½. ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ Π½Π΅ Π±ΡΠ΄Ρ β Π²ΡΡ ΡΡΠ°Π½Π΄Π°ΡΡΠ½ΠΎ.
ΠΡΠ±ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° Π΄Π»Ρ ΡΠ΅ΡΠΌΠΈΠ½Π°ΡΠΈΠΈ VoIP ΡΡΠ°ΡΠΈΠΊΠ°
Π’ΡΡ Π½Π΅ ΠΎΠ±ΠΎΡΠ»ΠΎΡΡ Π±Π΅Π· ΠΏΡΠΈΠΊΠ»ΡΡΠ΅Π½ΠΈΠΉ.
ΠΠ½Π°ΡΠ°Π»Π΅ Π²ΡΠ±ΠΎΡ ΠΊΠ°Π·Π°Π»ΡΡ ΠΎΡΠ΅Π²ΠΈΠ΄Π½ΡΠΌ β Betamax. ΠΡΠΎ Π½Π΅ΠΌΠ΅ΡΠΊΠΈΠΉ VoIP ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ Ρ ΠΎΡΠ΅Π½Ρ Π²ΠΊΡΡΠ½ΡΠΌΠΈ ΡΠ°ΡΠΈΡΠ°ΠΌΠΈ ΠΈ, Π²ΠΌΠ΅ΡΡΠ΅ Ρ ΡΡΠΈΠΌ, Ρ ΠΎΡΠΎΡΠΈΠΌ ΠΊΠ°ΡΠ΅ΡΡΠ²ΠΎΠΌ ΡΠ²ΡΠ·ΠΈ. ΠΠ½ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ ΡΠ΅ΡΠ΅Π· Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π΄Π΅ΡΡΡΠΊΠΎΠ² ΡΠ²ΠΎΠΈΡ ΡΠ΅ΡΠ΅Π»Π»Π΅ΡΠΎΠ², ΠΏΠΎΡΡΠΎΠΌΡ Π²Π½Π°ΡΠ°Π»Π΅ ΡΠΌΠΎΡΡΠΈΠΌ ΡΠ°ΡΠΈΡΡ Π² ΡΠ²ΠΎΠ΄Π½ΠΎΠΉ ΡΠ°Π±Π»ΠΈΡΠ΅, Π·Π°ΡΠ΅ΠΌ ΡΠ΅Π³ΠΈΡΡΡΠΈΡΡΠ΅ΠΌΡΡ Ρ ΡΠ΅ΡΠ΅Π»Π»Π΅ΡΠ° Ρ ΡΠ°ΠΌΡΠΌΠΈ Π²ΡΠ³ΠΎΠ΄Π½ΡΠΌΠΈ ΡΠ°ΡΡΠ΅Π½ΠΊΠ°ΠΌΠΈ ΠΈ Π½Π°ΡΠ»Π°ΠΆΠ΄Π°Π΅ΠΌΡΡ ΠΆΠΈΠ·Π½ΡΡ π Π― ΡΠ°ΠΊ ΠΈ ΡΠ΄Π΅Π»Π°Π».
Π Π²ΡΠ΅ΡΠ° Π²ΡΡ ΠΏΠ΅ΡΠ΅ΡΡΠ°Π»ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ. Π‘Π΅ΡΠ²Π΅ΡΠ° Betamax ΡΡΠ°Π±ΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠ΄Π°ΡΡ ΠΌΠΎΠ΅ΠΌΡ Π°ΡΡΠ΅ΡΠΈΡΠΊΡ ΡΠΎΠΎΠ±ΡΠ΅Π½ΠΈΠ΅: Β«SIP/2.0 503 For wholesale traffic, check www.voicetrading.comΒ».
Π Π΅Π·ΡΠΌΠ΅: Betamax Π½Π΅ΠΏΡΠΈΠ³ΠΎΠ΄Π΅Π½ Π΄Π»Ρ ΠΌΠΎΠΈΡ ΡΠ΅Π»Π΅ΠΉ, ΠΊΠ°ΠΊ ΡΡΠΎ Π½ΠΈ ΠΏΠ΅ΡΠ°Π»ΡΠ½ΠΎ Π·Π²ΡΡΠΈΡ.
Π‘Π΅ΠΉΡΠ°Ρ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° TerraSip. Π’Π°ΡΠΈΡΡ ΡΡΡ Π½Π΅ΠΌΠ½ΠΎΠ³ΠΎ Π²ΡΡΠ΅, ΡΠ΅ΠΌ Ρ Betamax ΠΈ, Π³Π»Π°Π²Π½ΠΎΠ΅, Π½Π΅Ρ Π±Π΅ΡΠΏΠ»Π°ΡΠ½ΡΡ ΠΌΠΈΠ½ΡΡ, ΠΊΠ°ΠΊ Ρ ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅Π³ΠΎ. ΠΠ°ΡΡΡΠΎΠΉΠΊΠΈ Asterisk Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ Ρ TerraSip ΡΠ°ΠΊΠΆΠ΅ ΠΏΡΠΈΠ²ΠΎΠ΄ΠΈΡΡ Π½Π΅ Π±ΡΠ΄Ρ β Π½Π° ΠΈΡ ΡΠ°ΠΉΡΠ΅ Π²ΡΡ ΠΏΠΎΠ΄ΡΠΎΠ±Π½ΠΎ ΡΠ°ΡΡΠΊΠ°Π·Π°Π½ΠΎ.
ΠΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΡΠΎΡΠΌΠ°ΡΠ° DIDΠ° ΠΈ CIDΠ°
Π§Π°ΡΡΠΎ Π±ΡΠ²Π°Π΅Ρ, ΡΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΈΡΡΠ»Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ Π·Π²ΠΎΠ½ΡΡΠ΅Π³ΠΎ Π² Π½Π΅ΡΠ΄ΠΎΠ±Π½ΠΎΠΌ ΡΠΎΡΠΌΠ°ΡΠ΅, Π° ΡΠ°ΠΊ ΠΆΠ΅ Π½Π΅ ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ ΡΠΊΠ°Π·ΡΠ²Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ DID. Π Π°ΡΡΠΌΠΎΡΡΠΈΠΌ ΠΊΠ°ΠΊ ΠΏΠΎΠΏΡΠ°Π²ΠΈΡΡ ΡΡΡ ΡΠΈΡΡΠ°ΡΠΈΡ.
ΠΠ»Ρ Π½Π°ΡΠ°Π»Π° ΡΠ°Π·Π±Π΅ΡΠ΅ΠΌΡΡ Ρ ΠΏΠΎΠ½ΡΡΠΈΡΠΌΠΈ:
DID (Direct Inward Dialing) β Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΠ’Π‘ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Π½Π΅ΡΠΊΠΎΠ»ΡΠΊΠΎ Π³ΠΎΡΠΎΠ΄ΡΠΊΠΈΡ Π½ΠΎΠΌΠ΅ΡΠΎΠ² Π΄Π»Ρ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΠΈ Π²Ρ ΠΎΠ΄ΡΡΠΈΡ Π²ΡΠ·ΠΎΠ²ΠΎΠ². ΠΠΎΠΏΡΠΎΡΡΡ Π³ΠΎΠ²ΠΎΡΡ, ΡΡΠΎ Π²Π°Ρ Π²Π½Π΅ΡΠ½ΠΈΠΉ Π½ΠΎΠΌΠ΅Ρ, Π½Π° ΠΊΠΎΡΠΎΡΡΠΉ Π²Π°ΠΌ Π·Π²ΠΎΠ½ΡΡ ΠΊΠ»ΠΈΠ΅Π½ΡΡ
CID (Caller ID) β Π½ΠΎΠΌΠ΅Ρ Π²ΡΠ·ΡΠ²Π°ΡΡΠ΅Π³ΠΎ Π°Π±ΠΎΠ½Π΅Π½ΡΠ°.
Π ΡΠ°ΠΊ, ΠΏΡΠΎΠ²Π°ΠΉΠ΄Π΅Ρ ΠΏΡΠΈΡΡΠ»Π°Π΅Ρ CID Π² ΡΠΎΡΠΌΠ°ΡΠ΅ +7XXXXXXXXX ΠΈΠ»ΠΈ 7XXXXXXXXXX Π° ΠΌΡ Ρ ΠΎΡΠΈΠΌ 8XXXXXXXXXX (ΠΡΠΈΡΠΈΠ½ ΡΠΎΠΌΡ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΌΠ½ΠΎΠ³ΠΎ: Π½Π°ΠΏΡΠΈΠΌΠ΅Ρ Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π·Π²ΠΎΠ½ΠΈΡΡ Π°Π±ΠΎΠ½Π΅Π½ΡΡ Π½Π°ΠΆΠ°ΡΠΈΠ΅ΠΌ ΠΎΠ΄Π½ΠΎΠΉ ΠΊΠ½ΠΎΠΏΠΊΠΈ Π½Π° ΡΠ΅Π»Π΅ΡΠΎΠ½Π΅, ΠΈΠ»ΠΈ ΡΠΏΠ΅ΡΠΈΡΠΈΠΊΠ° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅ΠΌΠΎΠΉ crm ΡΠΈΡΡΠ΅ΠΌΡ ΠΈ Ρ.Π΄.)
ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π΄Π°Π½Π½ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ Π²Π·ΡΡΡ ΠΏΠΎΡΠ»Π΅Π΄Π½ΠΈΠ΅ Π΄Π΅ΡΡΡΡ ΡΠΈΠΌΠ²ΠΎΠ»ΠΎΠ² ΠΈΠ· CIDΠ° ΠΈ Π΄ΠΎΠ±Π°Π²ΠΈΡΡ ΠΊ Π½ΠΈΠΌ 8. ΠΠ΅Π»Π°Π΅ΡΡΡ ΡΡΠΎ ΠΏΡΡΠ΅ΠΌ ΡΠΎΠ·Π΄Π°Π½ΠΈΡ ΡΠ²ΠΎΠ΅Π³ΠΎ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡΠ°, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΌΡ ΠΏΠ΅ΡΠ²ΠΈΡΠ½ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΡΠ΅ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΡΠ΅ Π½Π°ΠΌ Π΄Π°Π½Π½ΡΠ΅ Π° ΠΏΠΎΡΠΎΠΌ Π΄Π°Π»ΡΡΠ΅ Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π²ΠΎ from-trunk. Π‘ΠΎΠΎΡΠ²Π΅ΡΡΡΠ²Π΅Π½Π½ΠΎ Π² Π½Π°ΡΡΡΠΎΠΉΠΊΠ°Ρ Π½ΡΠΆΠ½ΠΎΠ³ΠΎ ΡΡΠ°Π½ΠΊΠ° ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π½ΡΠΆΠ½ΠΎ ΡΠΊΠ°Π·Π°ΡΡ Π½Π°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΠΉ (context=from-operator)
[from-operator]
exten => _.,1,Set(CALLERID(all)=8$
exten => _.,2,Set(CALLERID(ANI-all)=$
exten => _.,3,Goto(from-trunk,$
ΠΡΠΎΡΠΎΠΉ ΡΠ»ΡΡΠ°ΠΉ Π±ΡΠ²Π°Π΅Ρ Π³ΠΎΡΠ°Π·Π΄ΠΎ ΡΠ΅ΠΆΠ΅, ΡΡΠΎ ΠΊΠΎΠ³Π΄Π° ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΈΡΡΠ»Π°Π΅Ρ DID Π² ΠΊΠ°ΠΊΠΎΠΌ-Π½ΠΈΠ±ΡΠ΄Ρ ΠΊΠΎΡΠΎΡΠΊΠΎΠΌ Π²ΠΈΠ΄Π΅ ΡΠΈΠΏΠ° 687 ΠΊΠΎΡΠΎΡΡΠΉ Π½ΠΈΠΊΠ°ΠΊ Π½Π΅ ΡΠ²ΡΠ·Π°Π½ Ρ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ. ΠΠ° ΡΠΊΡΠΈΠ½ΡΠΎΡΠ΅ Π½ΠΈΠΆΠ΅ Π²ΠΈΠ΄Π½ΠΎ ΠΊΠ°ΠΊ Π°ΡΡΠ΅ΡΠΈΡΠΊ ΠΏΡΠΈΠ½ΠΈΠΌΠ°Π΅Ρ ΠΎΡ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡΠ° DID Ρ Π½ΠΎΠΌΠ΅ΡΠΎΠΌ 687
Π’Π°ΠΊ ΠΆΠ΅ ΠΌΡ Π²ΠΈΠ΄ΠΈΠΌ ΡΡΠΎ Π°ΡΡΠ΅ΡΠΈΡΠΊ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ CID Π·Π²ΠΎΠ½ΡΡΠ΅Π³ΠΎ, Π²Π΅ΡΠ½Π΅Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅Ρ (Π΅ΡΠ»ΠΈ ΠΏΡΠΎΡΠΌΠΎΡΡΠ΅ΡΡ SIP Π΄Π΅Π±Π°Π³ΠΈ ΡΠΎ ΠΎΠΏΠ΅ΡΠ°ΡΠΎΡ ΠΏΡΠΈΡΡΠ»Π°Π΅Ρ Π½ΠΎΠΌΠ΅Ρ Π·Π²ΠΎΠ½ΡΡΠ΅Π³ΠΎ Π² Π³ΡΠ°ΡΠ΅ CALLERID(name)), Π° ΡΡΠΎ ΡΠΆΠ΅ ΡΡΠ΅ΡΠΈΠΉ ΡΠ»ΡΡΠ°ΠΉ ΠΊΠΎΡΠΎΡΡΠΉ Π²ΡΡΡΠ΅ΡΠ°Π΅ΡΡΡ ΠΎΡΠ΅Π½Ρ ΡΠ΅Π΄ΠΊΠΎ.
ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ²ΠΎΠΉ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Π½Π°ΠΌ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΡΠ°ΠΊ ΠΆΠ΅ ΡΠΎΠ·Π΄Π°ΡΡ ΡΠ²ΠΎΠΉ ΠΊΠΎΠ½ΡΠ΅ΠΊΡΡ Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΏΡΠΈΠ½ΡΠ΄ΠΈΡΠ΅Π»ΡΠ½ΠΎ Π½Π°ΠΏΡΠ°Π²ΠΈΡΡ Π²ΡΠ·ΠΎΠ² Π½Π° ΡΠΊΡΡΠ΅Π½ΡΠ½ (Π½ΠΎΠΌΠ΅Ρ) ΠΊΠΎΡΠΎΡΠΎΠΉ Π±ΡΠ΄Π΅Ρ ΡΠ°Π²Π΅Π½ Π²Π°ΡΠ΅ΠΌΡ DID (Π²Π½Π΅ΡΠ½Π΅ΠΌΡ Π½ΠΎΠΌΠ΅ΡΡ)
ΠΠ»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ ΠΏΡΠΎΠ±Π»Π΅ΠΌΡ Ρ CID Π½Π°ΠΌ Π½ΡΠΆΠ½ΠΎ CallerID Π·Π²ΠΎΠ½ΡΡΠ΅Π³ΠΎ Π±ΡΠ°ΡΡ ΠΈΠ· CALLERID(name)
[from-operator]
exten => _.,1,Set(CALLERID(all)=8$
exten => _.,2,Set(CALLERID(ANI-all)=$
exten => _.,3,Goto(from-trunk,4952326666) ; Π½Π°ΠΏΡΠ°Π²Π»ΡΠ΅ΠΌ Π²ΡΠ·ΠΎΠ² Π΄Π°Π»ΡΡΠ΅ Π² ΠΎΠ±ΡΠ°Π±ΠΎΡΠΊΡ Π²ΠΎ from-trunk Π½Π° ΡΠΊΡΡΠ΅Π½ΡΠ½ ΡΠ°Π²Π½ΡΠΉ Π½ΡΠΆΠ½ΠΎΠΌΡ Π½ΠΎΠΌΠ΅ΡΡ Π²Π°ΡΠ΅Π³ΠΎ DID
ΠΡΠ»ΠΈ Π²ΡΠ΅ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠΎ Π²ΠΈΠ΄ΠΈΠΌ ΠΈ CallerID Π·Π²ΠΎΠ½ΡΡΠ΅Π³ΠΎ ΠΈ Π½ΡΠΆΠ½ΡΠΉ DID
Π’ΠΎΠ»ΡΠΊΠΎ Π½Π΅ Π·Π°Π±ΡΠ²Π°Π΅ΠΌ Π½Π°ΡΡΡΠΎΠΈΡΡ Π²Ρ ΠΎΠ΄ΡΡΡΡ ΠΌΠ°ΡΡΡΡΡΠΈΠ·Π°ΡΠΈΡ, ΠΊΠ°ΠΊ ΡΡΠΎ ΡΠ΄Π΅Π»Π°ΡΡ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎΡΠΌΠΎΡΡΠ΅ΡΡ ΡΡΡ
ΠΠ°ΠΊ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ IP ΠΊΠ°ΠΌΠ΅ΡΡ ΠΏΠΎ Onvif ΠΈΠ»ΠΈ RTSP?
1. ONVIF 
ΠΠ°ΡΠ½Π΅ΠΌ Ρ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ONVIF (Open Network Video Interface Forum).
ONVIF β ΡΡΠΎ ΠΎΠ±ΡΠ΅ΠΏΡΠΈΠ½ΡΡΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» Π΄Π»Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠ½ΠΎΠΉ ΡΠ°Π±ΠΎΡΡ IP-ΠΊΠ°ΠΌΠ΅Ρ, Π²ΠΈΠ΄Π΅ΠΎΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΠΎΠ² NVR, ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠ½ΠΎΠ³ΠΎ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠ΅Π½ΠΈΡ, Π½Π° ΡΠ»ΡΡΠ°ΠΉ, Π΅ΡΠ»ΠΈ Π²ΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΡΠ°Π·Π½ΡΡ
ΠΏΡΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡΠ΅Π»Π΅ΠΉ.
Π£Π±Π΅Π΄ΠΈΡΠ΅ΡΡ, ΡΡΠΎ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ°Π΅ΠΌΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΠΌΠ΅ΡΡ ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΊΡ ONVIF, Π½Π° Π½Π΅ΠΊΠΎΡΠΎΡΡΡ
ΡΡΡΡΠΎΠΉΡΡΠ²Π°Ρ
ONVIF ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ Π²ΡΠΊΠ»ΡΡΠ΅Π½ ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ.
ΠΠΈΠ±ΠΎ ΠΌΠΎΠΆΠ΅Ρ Π±ΡΡΡ ΠΎΡΠΊΠ»ΡΡΠ΅Π½Π° Π°Π²ΡΠΎΡΠΈΠ·Π°ΡΠΈΡ ΠΏΠΎ ONVIF ΡΡΠΎ Π·Π½Π°ΡΠΈΡ, ΡΡΠΎ Π»ΠΎΠ³ΠΈΠ½/ΠΏΠ°ΡΠΎΠ»Ρ Π±ΡΠ΄Π΅Ρ Π²ΡΠ΅Π³Π΄Π° ΠΏΠΎ ΡΠΌΠΎΠ»ΡΠ°Π½ΠΈΡ Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎ ΠΎΡ Π»ΠΎΠ³ΠΈΠ½Π°/ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ WEB.
Π’Π°ΠΊΠΆΠ΅ ΡΡΠΎΠΈΡ ΠΎΡΠΌΠ΅ΡΠΈΡΡ, ΡΡΠΎ Π½Π΅ΠΊΠΎΡΠΎΡΡΠ΅ ΡΡΡΡΠΎΠΉΡΡΠ²Π° ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ΠΎΡΠ΄Π΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΡ Π΄Π»Ρ ΡΠ°Π±ΠΎΡΡ ΠΏΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Ρ ONVIF. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ONVIF-ΠΏΠ°ΡΠΎΠ»Ρ ΠΌΠΎΠΆΠ΅Ρ ΠΎΡΠ»ΠΈΡΠ°ΡΡΡΡ ΠΎΡ ΠΏΠ°ΡΠΎΠ»Ρ Π΄Π»Ρ WEB-Π΄ΠΎΡΡΡΠΏΠ°.
Π§ΡΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎ ONVIF?
ΠΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΡ Π·Π°Π²ΠΈΡΡΡ ΠΎΡ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ Π²Π΅ΡΡΠΈΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ONVIF. Π Π½Π΅ΠΊΠΎΡΠΎΡΡΡ ΡΠ»ΡΡΠ°ΡΡ ΡΠ°ΡΡΡ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π½Π΅Π΄ΠΎΡΡΡΠΏΠ½Π° ΠΈΠ»ΠΈ ΡΠ°Π±ΠΎΡΠ°Π΅Ρ Π½Π΅ΠΊΠΎΡΡΠ΅ΠΊΡΠ½ΠΎ.
Π Π°Π·Π±Π΅ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΊ Π²ΠΈΠ΄Π΅ΠΎΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΡ OMNY Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ONVIF:
ΠΠ°ΠΌΠ΅ΡΡ OMNY PRO ΠΈ OMNY Base ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡΡ ONVIF—ΠΏΠΎΡΡ 80, Π² ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΠ΅ ΠΎΠ½ ΡΠΊΠ°Π·ΡΠ²Π°Π΅ΡΡΡ ΠΊΠ°ΠΊ ΠΠΎΡΡ ΡΡΡΡΠΎΠΉΡΡΠ²Π°/HTTP-ΠΏΠΎΡΡ (ΠΠ° ΠΌΠΎΠ΄Π΅Π»ΡΡ
OMNY PRO Π΄ΠΎ 2017 Π³ΠΎΠ΄Π° ONVIF-ΠΏΠΎΡΡ 8080).
TCP β ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρ ΠΎΡΠΏΡΠ°Π²ΠΈΡΠ΅Π»Π΅ΠΌ ΠΈ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Π΅ΠΌ, ΡΠ»Π΅Π΄ΠΈΡ Π·Π° ΡΠ΅ΠΌ, ΡΡΠΎΠ±Ρ Π²ΡΠ΅ Π΄Π°Π½Π½ΡΠ΅ Π΄ΠΎΡΠ»ΠΈ Π΄ΠΎ Π°Π΄ΡΠ΅ΡΠ°ΡΠ° Π±Π΅Π· ΠΈΠ·ΠΌΠ΅Π½Π΅Π½ΠΈΠΉ ΠΈ Π² Π½ΡΠΆΠ½ΠΎΠΉ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°ΡΠ΅Π»ΡΠ½ΠΎΡΡΠΈ, ΡΠ°ΠΊΠΆΠ΅ ΡΠ΅Π³ΡΠ»ΠΈΡΡΠ΅Ρ ΡΠΊΠΎΡΠΎΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ.
Π ΠΎΡΠ»ΠΈΡΠΈΠ΅ ΠΎΡ TCP, UDP Π½Π΅ ΡΡΡΠ°Π½Π°Π²Π»ΠΈΠ²Π°Π΅Ρ ΠΏΡΠ΅Π΄Π²Π°ΡΠΈΡΠ΅Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ΅Π΄ΠΈΠ½Π΅Π½ΠΈΡ, Π° Π²ΠΌΠ΅ΡΡΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΡΠΎ Π½Π°ΡΠΈΠ½Π°Π΅Ρ ΠΏΠ΅ΡΠ΅Π΄Π°Π²Π°ΡΡ Π΄Π°Π½Π½ΡΠ΅. UDP Π½Π΅ ΡΠ»Π΅Π΄ΠΈΡ ΡΡΠΎΠ±Ρ Π΄Π°Π½Π½ΡΠ΅ Π±ΡΠ»ΠΈ ΠΏΠΎΠ»ΡΡΠ΅Π½Ρ, ΠΈ Π½Π΅ Π΄ΡΠ±Π»ΠΈΡΡΠ΅Ρ ΠΈΡ
Π² ΡΠ»ΡΡΠ°Π΅ ΠΏΠΎΡΠ΅ΡΡ ΠΈΠ»ΠΈ ΠΎΡΠΈΠ±ΠΎΠΊ.
UDP ΠΌΠ΅Π½Π΅Π΅ Π½Π°Π΄Π΅ΠΆΠ΅Π½, ΡΠ΅ΠΌ TCP. ΠΠΎ Ρ Π΄ΡΡΠ³ΠΎΠΉ ΡΡΠΎΡΠΎΠ½Ρ, ΠΎΠ½ ΠΎΠ±Π΅ΡΠΏΠ΅ΡΠΈΠ²Π°Π΅Ρ Π±ΠΎΠ»Π΅Π΅ Π±ΡΡΡΡΡΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΡ ΠΏΠΎΡΠΎΠΊΠΎΠ² Π±Π»Π°Π³ΠΎΠ΄Π°ΡΡ ΠΎΡΡΡΡΡΡΠ²ΠΈΡ ΠΏΠΎΠ²ΡΠΎΡΠ΅Π½ΠΈΡ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ ΠΏΠΎΡΠ΅ΡΡΠ½Π½ΡΡ
ΠΏΠ°ΠΊΠ΅ΡΠΎΠ².
ΠΡΠΎΡΠΎΠΉ ΡΠΏΠΎΡΠΎΠ± ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ β ΡΡΠΎ RTSP (Real Time Streaming Protocol).
RTSP-ΠΏΠΎΡΠΎΠΊΠΎΠ²ΡΠΉ ΠΏΡΠΎΡΠΎΠΊΠΎΠ» ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ, Π² ΠΊΠΎΡΠΎΡΠΎΠΌ ΠΎΠΏΠΈΡΠ°Π½Ρ ΠΊΠΎΠΌΠ°Π½Π΄Ρ Π΄Π»Ρ ΡΠΏΡΠ°Π²Π»Π΅Π½ΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡΠΎΠΊΠΎΠΌ. Π‘ ΠΏΠΎΠΌΠΎΡΡΡ ΡΡΠΈΡ ΠΊΠΎΠΌΠ°Π½Π΄ ΠΏΡΠΎΠΈΡΡ ΠΎΠ΄ΠΈΡ ΡΡΠ°Π½ΡΠ»ΡΡΠΈΡ Π²ΠΈΠ΄Π΅ΠΎΠΏΠΎΡΠΎΠΊΠ° ΠΎΡ ΠΈΡΡΠΎΡΠ½ΠΈΠΊΠ° ΠΊ ΠΏΠΎΠ»ΡΡΠ°ΡΠ΅Π»Ρ. ΠΠ°ΠΏΡΠΈΠΌΠ΅Ρ, ΠΎΡ IP-ΠΊΠ°ΠΌΠ΅ΡΡ ΠΊ Π²ΠΈΠ΄Π΅ΠΎΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΡ ΠΈΠ»ΠΈ ΡΠ΅ΡΠ²Π΅ΡΡ.
Π§ΡΠΎ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ ΠΏΡΠΈ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΠΈ ΠΏΠΎ RTSP?
ΠΡΠ΅ΠΈΠΌΡΡΠ΅ΡΡΠ²ΠΎ ΡΡΠΎΠ³ΠΎ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΎΠ½ Π½Π΅ ΡΡΠ΅Π±ΡΠ΅Ρ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠΎΡΡΠΈ ΠΏΠΎ Π²Π΅ΡΡΠΈΡΠΌ. ΠΠ° ΡΠ΅Π³ΠΎΠ΄Π½ΡΡΠ½ΠΈΠΉ Π΄Π΅Π½Ρ RTSP ΠΏΠΎΠ΄Π΄Π΅ΡΠΆΠΈΠ²Π°ΡΡ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ Π²ΡΠ΅ IP-ΠΊΠ°ΠΌΠ΅ΡΡ ΠΈ NVR.
ΠΠ΅Π΄ΠΎΡΡΠ°ΡΠΊΠΈ ΠΏΡΠΎΡΠΎΠΊΠΎΠ»Π° Π² ΡΠΎΠΌ, ΡΡΠΎ ΠΊΡΠΎΠΌΠ΅ ΠΏΠ΅ΡΠ΅Π΄Π°ΡΠΈ Π²ΠΈΠ΄Π΅ΠΎ- ΠΈ Π°ΡΠ΄ΠΈΠΎΠ΄Π°Π½Π½ΡΡ
Π±ΠΎΠ»ΡΡΠ΅ Π½ΠΈΡΠ΅Π³ΠΎ Π½Π΅ Π΄ΠΎΡΡΡΠΏΠ½ΠΎ.
Π Π°Π·Π±Π΅ΡΠ΅ΠΌ ΠΏΡΠΈΠΌΠ΅Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΊ Π²ΠΈΠ΄Π΅ΠΎΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΡ OMNY Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ RTSP:
ΠΡΠΈΠΌΠ΅Ρ Π·Π°ΠΏΡΠΎΡΠ° Π΄Π»Ρ OMNY BASE:
ΠΠ°ΡΠ΅ΠΌ Π½ΡΠΆΠ΅Π½ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ?
ΠΠ° Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΌ ΠΌΠΎΠ½ΠΈΡΠΎΡΠ΅, ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½Π½ΠΎΠΌ ΠΊ ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡΡ Π² ΠΌΡΠ»ΡΡΠΈ-ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ΅, ΡΠ΅Π³ΠΈΡΡΡΠ°ΡΠΎΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΠ΅Ρ Π΄ΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΡΠΉ ΠΏΠΎΡΠΎΠΊ Π΄Π»Ρ ΡΠΊΠΎΠ½ΠΎΠΌΠΈΠΈ ΡΠ΅ΡΡΡΡΠΎΠ². Π ΠΏΡΠΈΠΌΠ΅ΡΡ, Π² ΠΌΠ°Π»Π΅Π½ΡΠΊΠΈΡ
ΠΊΠ°ΡΡΠΈΠ½ΠΊΠ°Ρ
ΠΏΠΎ 16 ΠΎΠΊΠΎΠ½ ΡΠΎΠ²ΡΠ΅ΠΌ Π½Π΅ ΠΎΠ±ΡΠ·Π°ΡΠ΅Π»ΡΠ½ΠΎ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΠΎΠ²Π°ΡΡ Full HD ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅, Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ D1.
ΠΡ Π° Π΅ΡΠ»ΠΈ ΠΡ ΠΎΡΠΊΡΡΠ»ΠΈ 1/4/8 ΠΎΠΊΠΎΠ½, ΡΠΎ Π² ΡΡΠΎΠΌ ΡΠ»ΡΡΠ°Π΅ Π΄Π΅ΠΊΠΎΠ΄ΠΈΡΡΠ΅ΡΡΡ ΠΎΡΠ½ΠΎΠ²Π½ΠΎΠΉ ΠΏΠΎΡΠΎΠΊ Ρ Π²ΡΡΠΎΠΊΠΈΠΌ ΡΠ°Π·ΡΠ΅ΡΠ΅Π½ΠΈΠ΅ΠΌ.
3. ΠΠ΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ ΠΏΠΎ ONVIF
ΠΡΠ»ΠΈ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠΈΡΡ IP ΠΊΠ°ΠΌΠ΅ΡΡ Π² ΠΠ ΠΈΠ»ΠΈ NVR ΠΏΠΎ ONVIF, Π½ΡΠΆΠ½ΠΎ ΡΠ±Π΅Π΄ΠΈΡΡΡΡ:
ONVIF Device Manager
ΠΡΠΎΠ²Π΅ΡΠΈΡΡ ΡΠ°Π±ΠΎΡΠΎΡΠΏΠΎΡΠΎΠ±Π½ΠΎΡΡΡ ONVIF Π² ΠΊΠ°ΠΌΠ΅ΡΠ΅, Π²Ρ ΠΌΠΎΠΆΠ΅ΡΠ΅ ΡΠ΅ΡΠ΅Π· Π½Π΅Π·Π°Π²ΠΈΡΠΈΠΌΠΎΠ΅ ΠΠ ONVIF Device Manager. ΠΠ»Ρ ΠΏΡΠΎΠ²Π΅ΡΠΊΠΈ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎΡΡΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² ONVIF Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ODM Π² Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎΠΉ ΡΠ΅ΡΠΈ, ΠΈΡΠΊΠ»ΡΡΠΈΠ² Π΄ΡΡΠ³ΠΈΠ΅ ΠΠ ΠΈ NVR.
Π§ΡΠΎ ΡΠ°ΠΊΠΎΠ΅ did ΠΊΠ°ΠΌΠ΅ΡΡ
ΠΠ΅ΠΊΠΎΡΠΎΡΡΠ΅ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΌΠΎΠ³ΡΡ ΡΠ°Π±ΠΎΡΠ°ΡΡ Π² ΡΠ΅ΠΆΠΈΠΌΠ΅ ΡΠΎΡΠΊΠΈ Π΄ΠΎΡΡΡΠΏΠ°, ΡΠΎΠ·Π΄Π°Π²Π°Ρ ΡΠΎΠ±ΡΡΠ²Π΅Π½Π½ΡΡ SSID. ΠΠ΄Π½Π°ΠΊΠΎ Π² ΡΠ΅Ρ ΠΊΠ°ΠΌΠ΅ΡΠ°Ρ , ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠ±ΡΠ²Π°Π»ΠΈ Ρ ΠΌΠ΅Π½Ρ, ΡΡΠΎΡ ΡΡΠ½ΠΊΡΠΈΠΎΠ½Π°Π» Π²ΡΠΏΠΈΠ»Π΅Π½.
ΠΡΠ»ΠΎΠΆΠ΅Π½Π½ΡΠ΅ Π½ΠΈΠΆΠ΅ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ ΡΠΎΡΠ½ΠΎ ΡΠ°Π±ΠΎΡΠ°ΡΡ Ρ ΡΠ°ΠΊΠΈΠΌΠΈ ΠΏΠ»Π°ΡΠ°ΠΌΠΈ
ΠΏΡΠΎ ΠΏΠ΅ΡΠ΅Ρ
ΠΎΠ΄Π½ΠΈΠΊΠΈ UART
ΠΡΠΎΡΡΠ΅ΠΉΡΠΈΠΉ ΠΏΡΠ΅ΠΎΠ±ΡΠ°Π·ΠΎΠ²Π°ΡΠ΅Π»Ρ Π‘ΠΠ-TTL
ΠΏΡΠΈΠΌΠ΅Ρ ΡΡΠΏΠΎΠ² Π΄Π»Ρ ΠΏΠΎΠ΄ΠΊΠ»ΡΡΠ΅Π½ΠΈΡ. Π΄ΠΈΠ°ΠΌΠ΅ΡΡ ΠΆΠ°Π»Π° Π΄ΠΎΠ»ΠΆΠ΅Π½ Π±ΡΡΡ Π½Π΅ Π±ΠΎΠ»Π΅Π΅ 0.5ΠΌΠΌ, ΠΈΠ½Π°ΡΠ΅ Π½Π΅ Π±ΡΠ΄ΡΡ Π΄Π΅ΡΠΆΠ°ΡΡΡΡ.
ΠΠ° Π΄Π°Π½Π½ΡΠΉ ΠΌΠΎΠΌΠ΅Π½Ρ ΠΈΠ·Π²Π΅ΡΡΠ½ΠΎ ΠΊΠ°ΠΊ ΠΌΠΈΠ½ΠΈΠΌΡΠΌ ΡΡΠΈ Π²Π°ΡΠΈΠ°Π½ΡΠ° ΠΏΡΠΎΡΠΈΠ²ΠΊΠΈ. ΠΠ²Π΅ ΠΈΠ· Π½ΠΈΡ
ΠΏΠ»ΠΎΡ
ΠΎ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΡ ΠΌΠ΅ΠΆΠ΄Ρ ΡΠΎΠ±ΠΎΠΉ, Ρ
ΠΎΡΡ ΠΈ ΠΈΠΌΠ΅ΡΡ ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΡΠΉ U-boot. Π’ΡΠ΅ΡΡΡ (Ρ Π΄Π°ΡΠΎΠΉ kernel Jun 2 12:28:35 CST 2017) Π½Π΅ ΡΠΎΠ²ΠΌΠ΅ΡΡΠΈΠΌΠ° Ρ U-boot ΠΎΡ ΠΏΡΠ΅Π΄ΡΠ΄ΡΡΠΈΡ
ΠΈ ΡΡΠ΅Π±ΡΠ΅Ρ ΠΏΡΠ°Π²ΠΊΠΈ ΠΏΠ°ΡΠ°ΠΌΠ΅ΡΡΠΎΠ² Π·Π°ΠΏΡΡΠΊΠ°. ΠΠΎ ΡΡΠΎΠΉ ΠΏΡΠΈΡΠΈΠ½Π΅ ΡΠ°Π½Π΅Π΅ ΠΎΠΏΡΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½Π½Π°Ρ Π·Π΄Π΅ΡΡ ΠΈΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ ΡΡΠ°Π»Π° Π½Π΅Π°ΠΊΡΡΠ°Π»ΡΠ½Π° ΠΈ ΠΌΠΎΠΆΠ΅Ρ ΠΏΡΠΈΠ²Π΅ΡΡΠΈ ΠΊ ΡΠ΅Π·ΡΠ»ΡΡΠ°ΡΡ, ΠΏΡΠΎΡΠΈΠ²ΠΎΠΏΠΎΠ»ΠΎΠΆΠ½ΠΎΠΌΡ ΠΎΠΆΠΈΠ΄Π°Π΅ΠΌΠΎΠΌΡ. ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΡΠΈΡΠ°Π΅ΠΌ Π²ΡΡΠ΅ ΠΈ Π½ΠΈΠΆΠ΅ ΠΏΠΎΡΡΠ° Ρ ΠΏΡΠΎΡΠΈΠ²ΠΊΠΎΠΉ. ΠΠ»Ρ ΡΠ΅Ρ
, ΠΊΡΠΎ ΡΠ°ΠΌ Ρ ΡΡΠ°ΠΌ: ΡΠ°ΡΠΏΠ°ΠΊΠΎΠ²ΡΠ²Π°Π΅ΠΌ. ΠΠ΅Π»Π°Π΅ΠΌ ΠΆΠ΅Π»Π΅Π·Π½ΡΠΉ ΡΠ΅ΡΠ΅Ρ. Π Π»ΠΎΠ³Π΅ ΠΊΠ°ΠΌΠ΅ΡΡ ΠΎΠ±ΡΡΠ½ΠΎ ΡΠΈΠΊΡΠΈΡΡΠ΅ΡΡΡ: ΠΠ»Ρ Android: DIGMA. Π Π°Π±ΠΎΡΠ°Π΅Ρ ΠΏΡΠ°ΠΊΡΠΈΡΠ΅ΡΠΊΠΈ ΡΠΎ Π²ΡΠ΅ΠΌΠΈ ΠΊΠ°ΠΌΠ΅ΡΠ°ΠΌΠΈ. ΠΠΎΠΆΠ΅Ρ ΡΠ°Π±ΠΎΡΠ°ΡΡ ΠΊΠ°ΠΊ Π»ΠΎΠΊΠ°Π»ΡΠ½ΠΎ, ΡΠ°ΠΊ ΠΈ ΡΠ΅ΡΠ΅Π· ΠΊΠΈΡΠ°ΠΉΡΠΊΠΈΠ΅ ΠΎΠ±Π»Π°ΠΊΠ° ΠΏΠΎ Π 2Π ΠΠ»ΠΈΠ΅Π½Ρ, ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡΡΠΈΠΉ ΡΠΎΡ
ΡΠ°Π½ΡΡΡ Π²ΠΈΠ΄Π΅ΠΎ ΠΊ ΡΠ΅Π±Π΅ Π½Π° ΠΊΠΎΠΌΠΏ Π² ΡΠΎΡΠΌΠ°ΡΠ΅ avi Π½Π΅ Π²ΡΠ½ΠΈΠΌΠ°Ρ ΠΊΠ°ΡΡΠΎΡΠΊΡ ΠΈΠ· ΠΊΠ°ΠΌΠ΅ΡΡ. Π ΡΠ΅ΠΌΠ΅ Π½Π΅Ρ ΠΊΡΡΠ°ΡΠΎΡΠ°. ΠΠΎ Π²ΠΎΠΏΡΠΎΡΠ°ΠΌ Π½Π°ΠΏΠΎΠ»Π½Π΅Π½ΠΈΡ ΡΠ°ΠΏΠΊΠΈ ΠΎΠ±ΡΠ°ΡΠ°ΠΉΡΠ΅ΡΡ ΠΊ ΠΌΠΎΠ΄Π΅ΡΠ°ΡΠΎΡΠ°ΠΌ ΡΠ°Π·Π΄Π΅Π»Π° ΡΠ΅ΡΠ΅Π· ΠΊΠ½ΠΎΠΏΠΊΡ
|