मुझे लगता है कि वेबआरटीसी एक एपीआई है जो ऑडियो और वीडियो को डीकोड/एन्कोड करता है, हालांकि सर्वर और क्लाइंट के बीच संचार वेब सॉकेट या कुछ अन्य नेटवर्क प्रोटोकॉल के माध्यम से किया जाता है? मैं थोड़ा उलझन में हूँ। क्या वेबआरटीसी का अपना संचार प्रोटोकॉल है?वेबआरटीसी और वेबसाइट्सकेट्स। क्या कोई अंतर
उत्तर
वेबआरटीसी के दो पक्ष हैं।
- जावास्क्रिप्ट एपीआई (
getUserMedia
) जो ऐप को कैमरा और माइक्रोफ़ोन हार्डवेयर तक पहुंचने की अनुमति देता है। आप आसानी से स्ट्रीम को प्रदर्शित करने के लिए इस एक्सेस का उपयोग कर सकते हैं (शायद applying effects), या नेटवर्क पर स्ट्रीम भेजें। आप डेटा को अपने सर्वर पर भेज सकते हैं, या आप इसका उपयोग कर सकते हैं ... PeerConnection
, एक एपीआई जो ब्राउज़र को प्रत्यक्ष पीयर-टू-पीयर सॉकेट कनेक्शन स्थापित करने की अनुमति देता है। आप किसी और के ब्राउज़र पर सीधे कनेक्शन स्थापित कर सकते हैं और सीधे डेटा का आदान-प्रदान कर सकते हैं। यह वीडियो जैसे उच्च बैंडविड्थ डेटा के लिए बहुत उपयोगी है, जहां आप नहीं चाहते हैं कि आपके सर्वर को बड़ी मात्रा में डेटा रिले करने के साथ सौदा करना पड़े।
वेबआरटीसी के दोनों हिस्सों को कार्रवाई में देखने के लिए the demos पर एक नज़र डालें।
तो संक्षेप में:
- WebSockets एक ब्राउज़र और वेब सर्वर के बीच पूर्ण द्वैध संचार की अनुमति।
- वेबआरटीसी का
PeerConnection
दो ब्राउज़रों के बीच पूर्ण-डुप्लेक्स संचार की अनुमति देता है।
वेबआरटीसी मीडिया परिवहन के लिए आरटीपी (एक यूडीपी आधारित प्रोटोकॉल) का उपयोग करता है, लेकिन संचार स्थापित करने के लिए आउट-ऑफ-बैंड सिग्नलिंग चैनल की आवश्यकता होती है। सिग्नलिंग चैनल के लिए एक विकल्प वेबसॉकेट है।
peerConnection
के बजाय आप वेबआरटीसी डेटा चैनल ड्राफ्ट को भी देख सकते हैं: http://tools.ietf.org/html/draft-jesup-rtcweb-data-protocol-00 जो मूल रूप से द्विपक्षीय udp है। जो WebSockets के लिए वास्तव में मूल्यवान विकल्प हो सकता है क्योंकि टीसीपी कनेक्शन के "नकारात्मक" पक्ष नहीं हैं।
क्या यह किसी भी ब्राउज़र द्वारा लागू किया गया है? क्या कोई उदाहरण है? – appsthatmatter
@ jjoe64 peerConnection क्रोम और फ़ायरफ़ॉक्स में पहले ही लागू किया गया है उदाहरण: http://mozilla.github.com/webrtc-landing/ – spicyramen
ब्राउज़र और सर्वर (node.js) के बीच कनेक्शन करने की आवश्यकता है। पी 2 पी – appsthatmatter
नहीं, सिग्नलिंग वेबआरटीसी द्वारा परिभाषित नहीं है। http://www.ietf.org/mail-archive/web/rtcweb/current/msg01143.html
इसका मतलब है कि आप चुन करने के लिए कैसे आप नेटवर्क जानकारी का आदान स्वतंत्र हैं:
यहाँ कारण है कि यह नहीं है जो यह बहुत अच्छा बताते IETF द्वारा एक पोस्ट है। अर्थात। आप websockets, HTTP और यहां तक कि ईमेल का उपयोग कर सकते हैं, लेकिन यह एक संघर्ष का थोड़ा सा होगा :)
वाह ... संभवतः सबसे संक्षिप्त उत्तर के लिए धन्यवाद जो मैं कभी उम्मीद कर सकता हूं। * तो पीयरकनेक्शन एक पी 2 पी कनेक्शन है, क्या हैंडशेकिंग चरण में मिश्रण में सर्वर की आवश्यकता होती है? एक सर्वर पीयरकनेक्शन एपीआई के लिए आवश्यक है? – AndrewMcLagan
'हैंडशेकिंग चरण में मिश्रण में सर्वर की आवश्यकता होती है?' हाँ। वेबआरटीसी को जेएसईपी आर्किटेक्चर का उपयोग करके कार्यान्वित किया गया है, जिसका अर्थ है कि उपयोगकर्ता की खोज और सिग्नलिंग एक अलग संचार चैनल के माध्यम से की जाती है (उदाहरण के लिए, वेबसॉकेट या एक्सएचआर और डेटा चैनल एपीआई का उपयोग करके)। Http://apprtc.appspot.com उदाहरण देखें या (स्वयं पदोन्नति के लिए क्षमा करें) http://www.html5rocks.com/en/tutorials/webrtc/basics/#toc-signalling –
@ josh3736 जब आप कहते हैं "प्रत्यक्ष सहकर्मी -to-peer सॉकेट "और" फुल-डुप्लेक्स संचार "का अर्थ यह है कि किसी ने पी 2 पी संचार के लिए यूडीपी प्रोटोकॉल के शीर्ष पर विश्वसनीय, पैकेट-ऑर्डर और त्रुटि जांच समाधान बनाया है (टीसीपी नहीं, लेकिन ऐसा कुछ)?मैं इस धारणा के तहत हूं कि वेबआरटीसी पी 2 पी टीसीपी कनेक्शन का समर्थन नहीं करता है। –