इस प्रोजेक्ट के बारे में

ReactPlayer एक React कंपोनेंट है जो एक ही इंटरफ़ेस का उपयोग करके विभिन्न स्रोतों से मीडिया प्लेबैक एम्बेड करने के लिए बनाया गया है। यह मीडिया URL स्वीकार करता है और उसमें प्ले करने के लिए उपयुक्त मार्कअप या बाहरी SDK को स्वचालित रूप से लोड कर देता है। समर्थित स्रोतों में मानक HTML5 वीडियो और ऑडियो फ़ाइल पथ, hls.js के माध्यम से HLS स्ट्रीम, dash.js के माध्यम से DASH स्ट्रीम, mux-player तत्व के माध्यम से Mux वीडियो, YouTube iFrame Player API के माध्यम से YouTube, Vimeo Player API के माध्यम से Vimeo और Wistia Player API के माध्यम से Wistia शामिल हैं। इस कंपोनेंट में प्लेबैक को नियंत्रित करने के लिए एक समृद्ध सेट प्रॉप्स प्रकट करता है, जैसे src, playing, loop, controls, volume, muted, playbackRate, width, height, preload, playsInline, crossOrigin, disableRemotePlayback और जहाँ उपलब्ध हो picture-in-picture सपोर्ट। इसमें common प्लेयर ईवेंट के लिए कॉलबैक प्रॉप्स भी प्रदान करता है, जिनमें onReady, onStart, onPlay, onPlaying, onProgress, onTimeUpdate, onDurationChange, onPause, onWaiting, onSeeking, onSeeked, onRateChange, onEnded, onError और picture-in-picture enter/leave ईवेंट शामिल हैं। एक config प्रॉप्स YouTube, Vimeo और HLS के लिए स्रोत-विशिष्ट सेटिंग्स की अनुमति देता है। ReactPlayer में canPlay जैसे स्थैतिक हेल्पर शामिल हैं जो यह परीक्षण करने के लिए उपयोग किए जा सकते हैं कि कोई URL संभवतः चलाया जा सकता है या नहीं, साथ ही addCustomPlayer और removeCustomPlayers custom प्लेयर कार्यान्वयनों को रजिस्टर करने के लिए हैं। ref के माध्यम से पहुंचने वाले इंस्टेंस मेथड HTMLMediaElement इंटरफ़ेस के साथ संगत होने का लक्ष्य रखते हैं। प्रदर्शन के लिए, कंपोनेंट डायनामिक इम्पोर्ट का समर्थन करता है जब बिल्ड सिस्टम समर्थन करता है, जिससे प्रमुख बंडल साइज़ कम होती है क्योंकि केवल दिए गए स्रोत के लिए आवश्यक प्लेयर को लोड किया जाता है। अतिरिक्त फ़ीचर्स में एक लाइट मोड शामिल है जो पहले थंबनेल दिखाता है और पूर्ण प्लेयर को उपयोगकर्ता की क्रिया के बाद ही लोड करता है, कस्टम थंबनेल्स का सपोर्ट, width, height और aspect-ratio स्टाइल्स के माध्यम से रिस्पॉन्सिव साइज़िंग, और Media Chrome जैसे कस्टम कंट्रोल UI के साथ संगतता। संस्करण 3 से, ReactPlayer में मूल HTML वीडियो और ऑडियो तत्वों की तरह कई स्रोत और ट्रैक_children_ का समर्थन भी मिलता है, जिससे वैकल्पिक फ़ॉर्मेट और सबटाइटल ट्रैक संभव होते हैं। README में नोट किया गया है कि संस्करण 3 एक महत्वपूर्ण आर्किटेक्चरल अपडेट है और संस्करण 2 के साथ बैकवर्ड कॉम्पैटिबिलिटी नहीं रखता है, और रखरखाव अब Mux द्वारा संचालित होता रहता है जबकि खुला स्रोत बना रहता है।