Mediasoup-client अपने प्रोजेक्ट में इंस्टॉल और कॉन्फ़िगर करने के लिए, इन चरणों का पालन करें:
Node.js स्थापित करें
सबसे पहले, आपको अपने कंप्यूटर पर Node.js इंस्टॉल करना होगा। Node.js एक सर्वर-साइड जावास्क्रिप्ट रनटाइम वातावरण है। आधिकारिक Node.js वेबसाइट( https://nodejs.org ) पर जाएं और अपने ऑपरेटिंग सिस्टम के लिए उपयुक्त संस्करण डाउनलोड करें। एक बार इंस्टॉलेशन पूरा हो जाने पर, आप टर्मिनल खोलकर और निम्न कमांड चलाकर इंस्टॉल किए गए Node.js संस्करण की जांच कर सकते हैं:
node -v
प्रोजेक्ट प्रारंभ करें और इंस्टॉल करें Mediasoup-client
अपने प्रोजेक्ट के लिए एक नई निर्देशिका बनाएं और उस निर्देशिका में एक टर्मिनल खोलें। एक नया Node.js प्रोजेक्ट आरंभ करने और एक package.json फ़ाइल बनाने के लिए निम्नलिखित कमांड चलाएँ:
npm init -y
इसके बाद, Mediasoup-client निम्न कमांड चलाकर अपने प्रोजेक्ट में इंस्टॉल करें:
npm install mediasoup-client
आयात करें और कॉन्फ़िगर करें Mediasoup-client
अपने प्रोजेक्ट की स्रोत कोड फ़ाइल में, आयात करने के लिए निम्न पंक्ति जोड़ें Mediasoup-client
const mediasoupClient = require('mediasoup-client');
कॉन्फ़िगर करने के लिए, आपको एक ऑब्जेक्ट Mediasoup-client बनाना होगा । Device
यह ऑब्जेक्ट क्लाइंट डिवाइस का प्रतिनिधित्व करता है और इसका उपयोग Mediasoup सर्वर के साथ मीडिया कनेक्शन बनाने और प्रबंधित करने के लिए किया जाएगा। Device
आप निम्नलिखित सिंटैक्स का उपयोग करके एक ऑब्जेक्ट बना सकते हैं:
const device = new mediasoupClient.Device();
इसके बाद, आपको Mediasoup सर्वर से "राउटर आरटीपी क्षमताओं" की जानकारी प्राप्त करनी होगी। राउटर आरटीपी क्षमताओं में समर्थित कोडेक्स, सर्वर समर्थन और संबंधित मीडिया प्रबंधन पैरामीटर जैसे तकनीकी पैरामीटर शामिल हैं। आप इस जानकारी को HTTP API के माध्यम से या सीधे Mediasoup सर्वर से संचार करके पुनः प्राप्त कर सकते हैं।
राउटर आरटीपी क्षमताएं प्राप्त करने के बाद, device.load()
इस जानकारी को Device
ऑब्जेक्ट में लोड करने के लिए विधि का उपयोग करें।
उदाहरण के लिए:
const routerRtpCapabilities = await fetchRouterRtpCapabilities(); // Function to fetch Router RTP Capabilities from the Mediasoup server
await device.load({ routerRtpCapabilities });
ट्रांसपोर्ट बनाएं और उपयोग करें
मीडिया स्ट्रीम भेजने और प्राप्त करने के लिए, आपको एक Transport
ऑब्जेक्ट बनाना और उसका उपयोग करना होगा। प्रत्येक Transport
ऑब्जेक्ट Mediasoup सर्वर के साथ एक अद्वितीय मीडिया कनेक्शन का प्रतिनिधित्व करता है। आप या विधियों का Transport
उपयोग करके एक ऑब्जेक्ट बना सकते हैं । device.createSendTransport()
device.createRecvTransport()
उदाहरण के लिए:
const transport = await device.createSendTransport({
// Transport configuration
});
ट्रांसपोर्ट बनाते समय, आप सर्वर यूआरएल और कनेक्शन पोर्ट जैसे कॉन्फ़िगरेशन पैरामीटर प्रदान कर सकते हैं। Transport
इसके अतिरिक्त, आप संबंधित मीडिया इंटरैक्शन को संभालने के लिए ऑब्जेक्ट पर 'कनेक्ट' या 'प्रोड्यूस' जैसी घटनाओं को सुन सकते हैं।
निर्माता और उपभोक्ता बनाएं और उपयोग करें
मीडिया स्ट्रीम भेजने और प्राप्त करने के लिए, आपको ऑब्जेक्ट बनाने Producer
और उपयोग करने की आवश्यकता है। Consumer
A Producer
क्लाइंट से सर्वर पर भेजे गए मीडिया स्रोत का प्रतिनिधित्व करता है, जबकि a Consumer
सर्वर से क्लाइंट तक प्राप्त मीडिया स्रोत का प्रतिनिधित्व करता है। आप विधि का Producer
उपयोग करके एक बना सकते हैं transport.produce()
, और विधि का Consumer
उपयोग करके एक बना सकते हैं। transport.consume()
उदाहरण के लिए:
// Create Producer
const producer = await transport.produce({
kind: 'video',
// Producer configuration
});
// Create Consumer
const consumer = await transport.consume({
// Consumer configuration
});
// Use Producer and Consumer to send and receive media streams
// ...
Producer
आप मीडिया ट्रांसमिशन को नियंत्रित करने के लिए और ऑब्जेक्ट पर उपलब्ध तरीकों और घटनाओं का उपयोग कर सकते हैं Consumer
, जैसे डेटा भेजना, मीडिया स्ट्रीम को चालू/बंद करना, या संबंधित मीडिया घटनाओं को संभालना।
संसाधन जारी करें
जब आप का उपयोग समाप्त कर लें Mediasoup-client, तो मेमोरी लीक और सिस्टम संसाधन समस्याओं से बचने के लिए संसाधनों को जारी करना सुनिश्चित करें। ट्रांसपोर्ट को बंद करें और transport.close()
और device.unload()
विधियों का उपयोग करके डिवाइस को अनलोड करें।
transport.close();
device.unload();
Mediasoup-client ये आपके प्रोजेक्ट में स्थापित करने, कॉन्फ़िगर करने और उपयोग करने के बुनियादी चरण हैं । Mediasoup-client इसकी शक्तिशाली विशेषताओं और क्षमताओं के बारे में अधिक जानने के लिए दस्तावेज़ और अतिरिक्त विस्तृत उदाहरण देखें ।