सादा रियलटाइम सर्वर (एसआरएस) फॉर आरटीएमपी स्ट्रीमिंग | मूल, AI द्वारा अनुवादित

Home PDF

SRS (Simple Realtime Server) का उपयोग करके RTMP स्ट्रीमिंग के लिए एक एज सर्वर डिप्लॉय करने में डाइव करें, जिसमें rtmp.conf फ़ाइल को समझने और इसे प्रभावी रूप से कॉन्फ़िगर करने पर ध्यान केंद्रित किया गया है। SRS एक शक्तिशाली, उच्च प्रदर्शन मीडिया सर्वर है जो वास्तविक समय स्ट्रीमिंग प्रोटोकॉल जैसे RTMP, HLS और HTTP-FLV के लिए डिज़ाइन किया गया है। यह विशेष रूप से स्केलेबिलिटी की आवश्यकता वाले सीनारियो के लिए उपयुक्त है, जैसे कि कंटेंट डिलीवरी नेटवर्क (CDNs), जहां एक एज सर्वर स्ट्रीम्स को कई क्लाइंट्स तक प्रभावी रूप से वितरित कर सकता है जबकि कंटेंट को एक ऑरिजिन सर्वर से फेट्च करता है। मैं आपको कदम-दर-कदम प्रक्रिया के साथ ले जाऊंगा, एज डिप्लॉयमेंट की अवधारणा को समझाऊंगा और rtmp.conf जैसे कॉन्फ़िगरेशन के साथ काम करने की स्पष्टता लाऊंगा।

SRS और एज डिप्लॉयमेंट क्या है?

SRS एक ओपन-सोर्स सर्वर है जो वास्तविक समय मीडिया स्ट्रीमिंग के लिए बनाया गया है, जिसमें सरलता और दक्षता पर ध्यान केंद्रित किया गया है। यह RTMP (Real-Time Messaging Protocol) के लिए निम्न लैटेंसी लाइव स्ट्रीमिंग का समर्थन करता है, साथ ही अन्य प्रोटोकॉल जैसे HLS और WebRTC भी। SRS में, एक “एज” सर्वर क्लाइंट्स (दर्शकों या प्रकाशकों) और एक “ऑरिजिन” सर्वर (जहां स्ट्रीम उत्पन्न होता है) के बीच एक मध्यस्थ के रूप में कार्य करता है। एज केवल क्लाइंट्स द्वारा अनुरोध किए जाने पर ऑरिजिन से स्ट्रीम्स को फेट्च करता है, जिससे ऑरिजिन पर लोड कम हो जाता है और स्केलेबिल वितरण को संभव बनाता है—इसको लाइव स्ट्रीम्स के लिए एक CDN की कैशिंग लेयर के रूप में सोचें।

SRS का उपयोग करके एक एज सर्वर डिप्लॉय करने में तब उपयोगी है जब आपको:

कदम-दर-कदम: SRS के साथ RTMP के लिए एज सर्वर डिप्लॉय करना

यहाँ SRS को एक एज सर्वर के रूप में RTMP स्ट्रीमिंग के लिए सेटअप करने का तरीका है। मैं मानता हूँ कि आप एक लिनक्स सिस्टम (जैसे Ubuntu) पर काम कर रहे हैं, क्योंकि SRS को ऐसे वातावरणों के लिए ऑप्टिमाइज़ किया गया है।

1. SRS इंस्टॉल करें

पहले, आपको अपने मशीन पर SRS चलाना होगा:

2. एज अवधारणा को समझें

SRS में, एक एज सर्वर “रिमोट” मोड में कार्य करता है, अर्थात् यह स्वयं स्ट्रीम्स नहीं बनाता है, बल्कि जब एक क्लाइंट अनुरोध करता है तो ऑरिजिन सर्वर से उन्हें फेट्च करता है (प्लेबैक के लिए) या स्ट्रीम्स को ऑरिजिन पर पुश करता है (पब्लिशिंग के लिए)। यह ऑन-डिमांड फेट्चिंग ही है जो एज सर्वरों को RTMP वितरण को स्केल करने में दक्ष बनाता है।

इस उदाहरण के लिए, मान लीजिए कि आपके पास एक ऑरिजिन सर्वर पहले से ही SRS पर चल रहा है 192.168.1.100:1935 (इसको अपने वास्तविक ऑरिजिन IP से बदलें).

3. एज सर्वर को कॉन्फ़िगर करें

SRS कॉन्फ़िगरेशन फ़ाइलों का उपयोग करता है अपनी व्यवहार को परिभाषित करने के लिए। डिफ़ॉल्ट srs.conf एक अच्छा शुरुआती बिंदु है, लेकिन एज डिप्लॉयमेंट के लिए, आप एक विशेष कॉन्फ़िग बनाएँगे—इसको edge.conf कहें। यहाँ यह कैसे सेटअप किया जाता है:

4. एज सर्वर को शुरू करें

अपने एज कॉन्फ़िग के साथ SRS चलाएं:

./objs/srs -c conf/edge.conf

लॉग (./objs/edge.log) को चेक करें ताकि यह चल रहा है और ऑरिजिन से कनेक्ट है।

5. सेटअप को टेस्ट करें

6. rtmp.conf का अन्वेषण

SRS डिफ़ॉल्ट रूप से एक rtmp.conf फ़ाइल के साथ नहीं आता, लेकिन आप ट्यूटोरियल या कस्टम सेटअप में इसके संदर्भों से मिल सकते हैं। यह एक नामकरण परंपरा है एक RTMP-विशिष्ट कॉन्फ़िगरेशन फ़ाइल के लिए। उदाहरण के लिए, SRS दस्तावेज़ (ossrs.net) एक सैंपल rtmp.conf प्रदान करता है वास्तविक समय RTMP स्ट्रीमिंग के लिए:

listen              1935;
max_connections     1000;
vhost __defaultVhost__ {
    tcp_nodelay     on;
    min_latency     on;
    play {
        gop_cache   off;
        queue_length 10;
    }
    publish {
        mr          off;
    }
}

एक एज के लिए, आप इसे cluster सेटिंग्स के साथ मिलाकर उपयोग करेंगे, नहीं इसे अकेले।

और समझाने: एज मैकेनिक्स और RTMP

टिप्स और ट्रबलशूटिंग

समापन

SRS एज सर्वर के साथ RTMP डिप्लॉय करना एक बार आप ऑरिजिन-एज संबंध को समझ लेते हैं, सरल है। edge.conf एज को स्ट्रीम्स को डायनामिक रूप से फेट्च या पुश करने के लिए सेटअप करता है, जबकि एक rtmp.conf-शैली कॉन्फ़िगरेशन RTMP प्रदर्शन को फाइन-ट्यून करने के लिए आवश्यक हो सकता है। इस सेटअप के साथ, आप लाइव स्ट्रीमिंग को प्रभावी रूप से स्केल करने के लिए तैयार हैं—कुछ दर्शकों या एक वैश्विक दर्शकों के लिए। इसे और अधिक ट्यून करना चाहते हैं या HLS को RTMP के साथ एकीकृत करना चाहते हैं? बस मुझे बताएं!


Back 2025.04.02 Donate