IP कैमरे अलग-अलग गुणवत्ता के हैं, कुछ मेरे अनुभव में गलत व्यवहार कर रहे हैं। उनके आरटीएसपी धाराओं से निपटने के लिए दोष-सहिष्णुता की खुराक की आवश्यकता होती है।
Live555 प्रोजेक्ट CLTS के माध्यम से RTSP ऑडियो / वीडियो स्ट्रीम खींचने के लिए अपेक्षाकृत गलत सहिष्णु RTSP क्लाइंट कार्यान्वयन, OpenRTSP प्रदान करता है: http://www.live555.com/openRTSP/
उदाहरण के लिए, एक कैमरे के आरटीएसपी ऑडियो / वीडियो को क्विकटाइम फॉर्मेट में फाइल (AVI और MP4 भी उपलब्ध) को सेव करने के लिए, एक फाइल को 15 मिनट के लिए रखें:
$ openRTSP -D 1 -c -B 10000000 -b 10000000 -q -Q -F cam_eight -d 28800 -P 900 -t -u admin 123456 rtsp://192.168.1.108:554/11
इन विकल्पों का मतलब है:
-D 1 # Quit if no packets for 1 second or more
-c # Continuously record, after completion of -d timeframe
-B 10000000 # Input buffer of 10 MB
-b 10000000 # Output buffer 10MB (to file)
-q # Produce files in QuickTime format
-Q # Display QOS statistics
-F cam_eight # Prefix output filenames with this text
-d 28800 # Run openRTSP this many seconds
-P 900 # Start a new output file every -P seconds
-t # Request camera end stream over TCP, not UDP
-u admin 123456 # Username and password expected by camera
rtsp://192.168.1.108:554/11 # Camera's RTSP URL
-T विकल्प को हटाने से OpenRTSP के बजाय UDP डिफ़ॉल्ट हो जाता है, जो नेटवर्क ट्रैफ़िक को थोड़ा कम कर सकता है। आपको उस संयोजन को खोजने के लिए विकल्पों के साथ खेलना होगा जो आपको सूट करता है।
सच कहूँ तो, कैमरे खुद कभी-कभी अविश्वसनीय होते हैं, या बस सॉकेट को अप्रत्याशित रूप से बंद करने के लिए अलग - अलग तरह से लागू किया जाता है, यह सब असामान्य नहीं है।
कभी-कभी ओपनआरटीएसपी क्लाइंट इन ग्लिट्स को नहीं पकड़ता है। इसलिए मैंने पायथन में एक नियंत्रक को 'सबप्रोसेस' मॉड्यूल का उपयोग करने और प्रत्येक ओपनआरटीएसपी ग्राहक उदाहरण के स्टडआउट को मॉनिटर करने और मॉनिटर करने का विकल्प चुना है, और यह भी जांचा कि फाइलें आकार में बढ़ रही हैं।
ऐसा प्रतीत होता है कि मानकों के साथ तेज और ढीले खेलने वाले सीसीटीवी उद्योग के कम-अंत के साथ-साथ RTSP और ONVIF दो सबसे अधिक गाली दी जा रही है।
सौभाग्य से, आप आमतौर पर इन समस्याओं के आसपास काम कर सकते हैं। जब तक आपके आईपी कैमरे और नियंत्रक सभी एक साथ अच्छी तरह से खेलने के लिए डिज़ाइन नहीं किए जाते हैं, केवल एक बार की खोज और सेटिंग्स प्रबंधन के लिए केवल ओएनवीआईएफ का उपयोग करें।
मैं कुछ रास्पबेरी पाई B + रनिंग रास्पियन पर OpenRTSP का उपयोग करता हूं। प्रत्येक 1280x1024 स्ट्रीम सीपीयू के समय के 8-10% के आसपास रहती है, और मैं सफलतापूर्वक आरएसआई प्रति आठ कैमरों तक चला रहा हूं, एनएएस स्टोरेज को फाइलें लिख रहा हूं। एक और आरपीआई प्रक्रिया ने ffmpeg के साथ फाइलें पूरी कीं, गति की खोज की और उन फ्रेमों के सूचकांक पीएनजी का उत्पादन किया, जिससे ब्रेक-इन को खोल दिया गया।
ज़ोनमाइंडर नामक एक ओपन-सोर्स प्रयास है जो इस उत्तरार्द्ध को करता है, लेकिन मैं इसे अपने कैमरों के साथ काम करने में असमर्थ था। ONMIF का समर्थन ZM में नया और नवजात है, और यह $ 100 आईपी कैमरों के मेरे menagerie द्वारा निर्मित धब्बेदार RTSP धाराओं के साथ अच्छी तरह से मुकाबला नहीं करता है।