इस प्रोजेक्ट के बारे में
polyemesis एक सेल्फ-होस्टेड रिस्ट्रीमिंग सर्वर है जिसका मुख्य अंतर प्रति-डेस्टिनेशन मल्टीचैनल ऑडियो रूटिंग है। एक सिंगल अपलोड को ऑपरेटर द्वारा कॉन्फ़िगर किए गए कई डेस्टिनेशन पर फैलाया जाता है, और प्रत्येक डेस्टिनेशन को उन ऑडियो ट्रैक्स से बना अपना स्टीरियो मिक्स प्राप्त होता है जो एनकोडर ने भेजे थे। वीडियो को री-एनकोड करने के बजाय बिना किसी बदलाव के कॉपी किया जाता है।
यह जिस यूज़ केस को टारगेट करता है वह है: स्प्लिट ऑडियो ट्रैक्स वाला एक OBS सेशन, जहाँ ट्रैक एक में कॉपीराइट संगीत सहित फुल मिक्स होता है, ट्रैक दो एक क्लीन फीड होता है, और ट्रैक तीन माइक्रोफ़ोन होता है। लाइव प्लेटफ़ॉर्म आमतौर पर एक स्टीरियो पेयर स्वीकार करते हैं, इसलिए एक सिंगल मिक्स को सभी के लिए उपयोग करना पड़ता है या कई एनकोडर्स और अपलोड्स की आवश्यकता होती है। polyemesis उपयोगकर्ता को प्रति डेस्टिनेशन यह चुनने की अनुमति देता है कि कौन से ट्रैक्स उस डेस्टिनेशन के स्टीरियो फीड में सम किए जाएं। रूटिंग को या तो प्रति-ट्रैक चेकबॉक्स वाले सिंपल मोड के रूप में या प्रति-सेल गेन के साथ चैनल-टू-आउटपुट मिक्स मैट्रिक्स के रूप में कॉन्फ़िगर किया जाता है।
इनजेस्ट SRT मल्टीट्रैक है, जिसे 32 AAC ट्रैक्स तक बताया गया है, जो एक सिंगल पोर्ट पर टोकन द्वारा एड्रेस किया जाता है, जिसमें स्ट्रीम की द्वारा एड्रेस किए गए एक पोर्ट पर सिंगल-ट्रैक फॉलबैक के रूप में RTMP उपलब्ध है। हर ट्रैक के हर चैनल के लिए लाइव ऑडियो मीटर प्रदान किए जाते हैं, जिनका उद्देश्य लाइव जाने से पहले क्लीन ट्रैक को सत्यापित करना है। वीडियो रेंडिशन्स को उन डेस्टिनेशन के बीच साझा किया जा सकता है जिन्हें निचले टियर की आवश्यकता होती है: एक एनकोड रिफ-काउंटेड होता है ताकि अप्रयुक्त टियर की कोई लागत न हो, और रेंडिशन्स केवल वीडियो को री-एनकोड करते हैं, जबकि प्रति डेस्टिनेशन ऑडियो रूटिंग को वैसा ही रहने देते हैं। रेंडिशन्स पर ओवरले में एक इमेज वॉटरमार्क और बर्न-इन टेक्स्ट की एक लाइन शामिल है, जिन्हें फ्रेम के प्रतिशत के रूप में पोजीशन और साइज किया जाता है।
डेस्टिनेशन RTMP(S), SRT या लोकल फाइल हो सकते हैं, जिनमें से प्रत्येक को स्वतंत्र रूप से शुरू किया जा सकता है, जिसमें ऑटो-रीकनेक्ट और एक्सपोनेंशियल बैकऑफ़ की सुविधा है। YouTube, Twitch, Facebook और Kick के लिए प्लेटफ़ॉर्म साइन-इन की सुविधा दी गई है, जिसमें जहाँ API अनुमति देता है वहाँ चैट और मेटाडेटा पुश, और चारों प्लेटफ़ॉर्म पर चैट मॉडरेशन (डिलीट, बैन, टाइमआउट सहित) और एक मॉडरेटर कार्ड शामिल है जो विभिन्न प्लेटफ़ॉर्म पर एक उपयोगकर्ता के संदेशों को एकत्रित करता है। अन्य ऑपरेशनल फीचर्स में स्टैंडबाय इनजेस्ट के साथ फेलओवर, एक जनरेटेड स्लेट और सोर्स सेलेक्टर; Prometheus मेट्रिक्स और वेबहुक डिलीवरी के साथ इन-प्रोसेस अलर्ट रूल्स; स्ट्रीम और डेस्टिनेशन ट्रांज़िशन पर साइन्ड लाइफसाइकिल वेबहुक्स; Home Assistant डिस्कवरी के साथ रिटेंड MQTT टेलीमेट्री; और Let's Encrypt या लोकल CA के माध्यम से सेल्फ-कॉन्फ़िगरिंग TLS शामिल हैं। एक पोस्ट-प्रोडक्शन ग्रुप में रिटेंशन के साथ सेगमेंटेड मल्टीट्रैक रिकॉर्डिंग, एक जॉब क्यू, फुल-टेक्स्ट सर्च के साथ Whisper ट्रांसक्रिप्शन और एक क्लिपर शामिल है। कई सेटिंग्स स्ट्रीम को ड्रॉप किए बिना लागू होती हैं, और सेव एक्शन यह संकेत देता है कि कौन सी सेटिंग्स प्रभावी हुईं।
सॉफ्टवेयर एक सिंगल स्टैटिक बाइनरी के रूप में आता है जिसमें UI एम्बेडेड है, प्योर-Go SQLite और कोई cgo नहीं है, जिसके लिए libsrt के साथ बिल्ट FFmpeg 6.0 या उससे नए वर्जन की आवश्यकता होती है। यह FFmpeg 6.0 से पुराने वर्जन पर शुरू होने से मना कर देता है और SRT अनुपस्थित होने पर चेतावनी देता है। एक Docker इमेज प्रकाशित की गई है। क्लोन से बिल्ड करते समय Go 1.27.0+, Node 20.19+/22.12+ और FFmpeg की आवश्यकता होती है।
README सीमाओं के बारे में स्पष्ट है: प्रोजेक्ट प्री-रिलीज़ है जिसमें एक मेंटेनर है और कोई कम्पैटिबिलिटी प्रॉमिस नहीं है; RTMP मल्टीट्रैक संचालित पथ नहीं है; कोई प्रति-सोर्स पोर्ट नहीं हैं; कोई रोल या प्रति-डेस्टिनेशन परमिशन के बिना एक सिंगल यूजर है; Instagram Live को असमर्थ बताया गया है; और सोर्स वीडियो की उपयुक्तता ऑपरेटर की जिम्मेदारी है। प्लेटफ़ॉर्म परिपक्वता अलग-अलग है, जिसमें Linux और Docker को प्राथमिक और Windows को अप्रूवन बताया गया है, जिसमें सर्विस स्टॉप पर रिकॉर्डिंग ट्रंकेशन से संबंधित एक ज्ञात अनसुलझा दोष शामिल है। तुलना तालिका इसे datarhei/Restreamer और restream.io के मुकाबले रखती है, और README बताता है कि जहाँ प्रति प्लेटफ़ॉर्म अलग ऑडियो की आवश्यकता नहीं होती, वहाँ Restreamer अधिक परिपक्व है। लाइसेंसिंग MIT है।
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.