2011-10-11 12 views
7

रखना मेरे पास एक साधारण आरटीएसपी क्लाइंट है ... क्लाइंट आरटीएसपी सर्वर को आरटीएसपी सर्वर भेजता है और सर्वर से आरटीपी पैकेट प्राप्त करता है।एलीव आरटीएसपी कनेक्शन

समस्या यह है कि एक समय के बाद (लगभग 3-4 मिनट) मेरी तीसरी पार्टी आरटीएसपी मेरे आरटीएसपी क्लाइंट के साथ सर्वर ड्रॉप कनेक्शन।

मैं RTCP लागू नहीं किया है ... मैं RTSP सर्वर से आरटीपी पैकेट ले, लेकिन किसी भी RTCP पैकेट भेज नहीं करता है ...

मैं सरल खोज कर सकते हैं और लगता है कि कुछ लोगों को कुछ RTSP आदेशों का उपयोग [की तरह विकल्पों के निर्धारण के पैरामीटर-प्राप्त पैरामीटर] भी RTSP सर्वर और क्लाइंट ... के बीच लेकिन मेरे मामले में जिंदा कनेक्शन वह काम नहीं करता रखना ...

यहाँ मेरे सवालों का है:

  1. आरटीएसपी सर्वर के साथ जिंदा कनेक्शन रखने का सबसे अच्छा तरीका क्या है?
  2. क्या मुझे आरटीसीपी लागू करना है [सर्वर पर आरटीसीपी पैकेट भेजें]? कनेक्शन ड्रॉप हो सकता है क्योंकि मैं सर्वर पर आरटीसीपी पैकेट नहीं भेजता?

उत्तर

6

SETUP प्रतिक्रिया में आपको प्राप्त होने वाले टाइमआउट का मूल्य क्या है? क्या आप जीवित कार्यक्षमता को लागू करने के लिए इस मूल्य का उपयोग कर रहे हैं?

सत्र = "सत्र" ":" सत्र-आईडी [";" "समय समाप्त" "=" डेल्टा-सेकंड ]

आम तौर पर RTSP टीसीपी पर आधारित है और आरटीपी यूडीपी पर आधारित है। तो आदर्श रूप से दोनों चैनलों को जीवित कार्यक्षमता रखने की आवश्यकता होती है। यदि आरटीपी सत्र बंद है तो इसका मतलब यह नहीं है कि आरटीएसपी कनेक्शन भी टियरडाउन होना चाहिए जबकि आरटीपी चैनल आरटीएसपी चैनल टियरडाउन पर बंद होना चाहिए।

1) आरटीएसपी सर्वर के साथ जिंदा कनेक्शन रखने का सबसे अच्छा तरीका क्या है? -> SETUP प्रतिक्रिया में प्राप्त timeout मान से पहले किसी भी आरटीएसपी अनुरोध को समय-समय पर (OPTIONS, SET_PARAMETER या GET_PARAMETER) भेजें।

2) क्या मुझे आरटीसीपी लागू करना है [सर्वर पर आरटीसीपी पैकेट भेजें]? कनेक्शन ड्रॉप हो सकता है क्योंकि मैं सर्वर पर आरटीसीपी पैकेट नहीं भेजता? -> आरएफसी (आरटीएसपी या आरटीपी) आरटीपी चैनलों को जीवित रखने के लिए आरटीसीपी की आवश्यकता को जरूरी नहीं है।

+0

मेरे 3 पार्टी RTSP सर्वर सत्र समय बाहर मूल्य नहीं देता है ... हालांकि मैं विकल्प भेजने के आदेश हर 5 सेकंड में यह कनेक्शन चला जाता है (नहीं, आप सर्वर से पैकेट RTCP की जरूरत नहीं है) .. – Novalis

+0

इसका मतलब है कि आपका सर्वर आरटीसीपी पैकेट की उम्मीद कर रहा है। – Alam

+0

हां ... जब मैं आरटीसीपी पैकेट भेजता हूं तो यह कनेक्शन नहीं छोड़ता है ... लेकिन यह एक एक्स्ट्रा बैंडविड्थ "खाता है" .. – Novalis

0

एक विकल्प अनुरोध भेजना मेरे लिए काम नहीं करता था।

केवल RTSP आदेश है कि मैं कनेक्शन जीवित रखने के लिए भेज सकता है था GET_PARAMETER

मेरे टाइमआउट 60 के दशक है और मैं एक GET_PARAMETER अनुरोध हर 40

वर्क्स एक आकर्षण की तरह भेजें!

+1

पर आरटीएसपी चैनल पर जिंदा संदेश नहीं भेजा जाना चाहिए ध्यान दें कि "GET_PARAMETER" सभी आरटीएसपी सर्वरों द्वारा समर्थित नहीं है। इसे भेजने से पहले, आपको "विकल्प" के जवाब की जांच करनी चाहिए यदि इसमें "GET_PARAMETER" पैरामीटर है। – Gediminas