Skip to content

Latest commit

 

History

History
204 lines (167 loc) · 21.2 KB

README.md

File metadata and controls

204 lines (167 loc) · 21.2 KB

युएबिंग 🥮

युएबिंग हे व्हिडीओ होस्टिंग साइट्स चालवण्यासाठी ओपन सोर्स सॉफ्टवेअर आहे.

Yuebing आधुनिक फॉरमॅट वापरून स्ट्रीमिंगसाठी तुमचे स्रोत व्हिडिओ आपोआप तयार करते, कोणत्याहीवर प्ले करण्यायोग्य कोणत्याही कनेक्शनवर डिव्हाइस.

Yuebing बॅकएंड स्टोरेजसाठी Amazon S3 किंवा Backblaze B2 वापरू शकते आणि त्यात अनेक प्रगत वैशिष्ट्ये आहेत.

स्त्रोत

हे दुसऱ्या भाषेत वाचा

या README.md दस्तऐवजाचे भाषांतर hokeylisation द्वारे केले गेले आहे. अनेक भाषा.

मला खात्री आहे की ते परिपूर्ण नाही, परंतु मला आशा आहे की ते काहीही नसण्यापेक्षा चांगले आहे!

सामग्री

प्रेरणा

गेल्या वर्षी माझ्या आईने जुन्या कौटुंबिक व्हिडिओंचे संग्रहण आयोजित आणि डिजिटायझ करण्यासाठी खूप वेळ (आणि पैसा!) खर्च केला. यापैकी काही अगदी जुन्या होत्या, 1940 च्या दशकात. खरोखर सुंदर, क्लासिक सामग्री.

आम्हाला हे खाजगीरित्या कुटुंबासह सामायिक करायचे होते, परंतु मोठ्या तंत्रज्ञानासह नाही. मोठ्या प्रदात्याकडून "विनामूल्य" व्हिडिओ होस्टिंगसह जाणे टेबलच्या बाहेर होते.

आम्ही काय शोधत होतो:

  • स्वयं-होस्ट केलेले, परंतु चालविण्यासाठी आणि देखरेख करण्यासाठी पूर्णपणे हँड्स-ऑफ सोपे
  • अडॅप्टिव्ह बिटरेटसह आधुनिक व्हिडिओ फॉरमॅटमध्ये प्रवाह
  • व्हिडिओ कोणत्याही डिव्हाइसवर, डेस्कटॉपवर किंवा मोबाइलवर प्ले होतात
  • उच्च-बँडविड्थ कनेक्शनसह, व्हिडिओ गुणवत्ता छान आहे; जितका चांगला मिळेल तितका
  • खराब कनेक्शन असतानाही, प्लेबॅक चांगली गुणवत्ता आहे आणि वगळत नाही किंवा बफर करत नाही
  • एनक्रिप्टेड स्टोरेज, अशा प्रकारे काही आत्मविश्वासाने सार्वजनिक क्लाउड स्टोरेज सोल्यूशन्स वापरण्यास सक्षम
  • स्टेटलेस सर्व्हर: अत्यंत लवचिक असलेल्या स्टोरेजसाठी कोणतीही महत्त्वाची गोष्ट कायम ठेवा
  • मला बॅकअपची काळजी करायची नाही!
  • हे मिळणे खूप छान होते. असे काहीही नाही हे बाहेर वळते म्हणून. युबिंग करते!
  • सर्व काही ट्रान्सकोड करण्यासाठी एक गोमांस उदाहरण चालवल्यानंतर, ते फाडून टाका आणि दीर्घकाळासाठी काहीतरी स्वस्त चालवा
  • तुम्ही युएबिंग $10/महिन्यापेक्षा कमी किंमतीत चालवू शकता; आणि आशा आहे की आम्ही युएबिंगच्या पावलांचे ठसे ऑप्टिमाइझ करत असताना त्याहूनही कमी

तिथे काय आहे हे पाहण्यासाठी मी दोन आठवडे घेतले. मी माझ्या गरजा मोठ्या प्रमाणात शिथिल करण्यास सुरुवात केली आणि तरीही सभ्य काहीही सापडले नाही. मी अनेक ओपन सोर्स प्रकल्प पाहिले, मी ते म्हणत नाही कारण ते सर्व होते अनेक स्पष्ट दोष.

म्हणून, मी ठरवले, ते किती कठीण असू शकते? तुम्ही S3 ला ffmpeg वर वायर करा, त्यावर सभ्य आधुनिक फ्रंटएंड लावा आणि तुम्ही पूर्ण केले, बरोबर? ... बरं, अगं, मोठ्या प्रमाणात कामाला दोन महिने लागले, पण थांबण्यात खूप मजा आली! मला आशा आहे की तुम्ही देखील त्याचा आनंद घ्याल!

वैशिष्ट्ये

  • मित्र आणि कुटुंबासाठी व्हिडिओंच्या S3 (किंवा B2) बकेटचे एका खाजगी व्हिडिओ साइटमध्ये रूपांतर करा!
  • कच्च्या मीडिया फायली प्रदान करणार्‍या एक किंवा अधिक स्त्रोत बादल्या कनेक्ट करा
  • युएबिंग आपोआप स्रोत व्हिडिओंना अ‍ॅडॉप्टिव्ह बिटरेट स्ट्रीमिंग (DASH/mp4) साठी नवीनतम आणि सर्वाधिक समर्थित फॉरमॅटमध्ये ट्रान्सकोड करते.
  • सर्व डेटा गंतव्य बकेटमध्ये संग्रहित केला जातो; तुम्हाला पाहिजे तेव्हा तुम्ही सर्व्हर नष्ट करू शकता
  • प्रारंभिक ट्रान्सकोडिंगसाठी सीपीयू-ऑप्टिमाइझ केलेल्या उदाहरणावर सुरुवातीला चालण्यासाठी उपयुक्त, नंतर चालवा
    on a much cheaper instance for 24/7/365 service.
  • पूर्णपणे एनक्रिप्टेड स्टोरेजला सपोर्ट करते (अ‍ॅप-साइड एन्क्रिप्शन, फक्त तुमच्याकडे की आहे)
  • नेहमी स्रोतावरून केवळ वाचनीय, स्रोत सामग्री कधीही बदलू नका
  • नवीन मीडिया फाइल्ससाठी स्वयंचलित आणि मॅन्युअल स्कॅनिंग
  • तुम्हाला किती खाजगी किंवा सार्वजनिक गोष्टी हव्या आहेत? Yuebing समर्थन:
  • पूर्णपणे खाजगी: निनावी वापरकर्त्यांना कोणतेही मीडिया दाखवले नाही, फक्त मंजूर ईमेल पत्ते खाती तयार करू शकतात
  • अर्ध-खाजगी: निनावी वापरकर्त्यांना कोणतेही माध्यम दाखवले जात नाही, परंतु कोणीही वापरकर्ता खाते तयार करू शकतो
  • मर्यादित नोंदणीसह सार्वजनिक: माध्यम प्रत्येकाला दाखवले जाते, परंतु केवळ मंजूर ईमेल पत्ते खाती तयार करू शकतात
  • संपूर्णपणे सार्वजनिक: मीडिया प्रत्येकाला दाखवला जातो आणि कोणीही वापरकर्ता खाते तयार करू शकतो
  • पूर्णपणे आंतरराष्ट्रीयीकरण! सर्व वापरकर्ता-दृश्यमान मजकूर (आणि इतर लोकेल-विशिष्ट सामग्री) स्थानिकीकृत संसाधनांमधून येतात
  • समुदायाला मदत करा, Yuebing चे नवीन भाषांमध्ये भाषांतर करा!
  • पूर्ण वैशिष्ट्यीकृत अॅडमिन कन्सोल
  • कीवर्डद्वारे किंवा टॅग क्लाउडवरून व्हिडिओ शोधा तुमच्या पाठिंब्याने लवकरच येत आहोत :
  • अधिक मीडिया प्रकारांसाठी समर्थन (ऑडिओ, प्रतिमा इ.)
  • वापरकर्त्याने अपलोड केलेले माध्यम
  • लाईक्स, शेअर्स आणि पुश नोटिफिकेशन्स
  • नवीन "स्रोत प्रकार": आणखी एक Yuebing उदाहरण!
    • Federation between friendly instances: unified search, user accounts, etc

निनावी वापरकर्ता वैशिष्ट्य (जर साइट निनावी अभ्यागतांना परवानगी देण्यासाठी कॉन्फिगर केली असेल)

  • मीडिया ब्राउझ करा
  • मीडिया पहा!
  • खाते तयार करा (खाते नोंदणीसाठी साइट कॉन्फिगर केली असल्यास)

लॉग-इन केलेले वापरकर्ता वैशिष्ट्ये

  • मीडिया ब्राउझ करा
  • मीडिया पहा!
  • एक टिप्पणी जोडा, तुमची टिप्पणी संपादित करा, तुमची टिप्पणी हटवा!
  • मित्रांना आमंत्रित करा
  • खाते माहिती संपादित करा
  • खाते हटवा, तुमच्या सर्व टिप्पण्यांसह तुमचे सर्व काही हटवते

प्रशासन वापरकर्ता वैशिष्ट्ये

  • मीडिया मेटाडेटा संपादित करा, लघुप्रतिमा पहा, निवडलेली लघुप्रतिमा बदला
  • मीडिया ट्रान्सफॉर्म रांग आणि नोकरीची स्थिती पहा
  • स्त्रोत मीडियाचे नवीन स्कॅन आणि अनुक्रमणिका सुरू करा

सर्व्हर/बॅकएंड वैशिष्ट्ये

  • क्षणिक-अनुकूल, शून्य पर्सिस्टंट/महत्त्वाचा डेटा कंटेनरमध्ये संग्रहित केला जातो.
  • सर्व टिकाऊ डेटा गंतव्य बकेटमध्ये कायम आहे; मूलत:, आम्ही आमचा डेटाबेस म्हणून S3 वापरतो
  • नवीन मीडियासाठी स्त्रोत बकेटचे स्वयंचलित नियतकालिक स्कॅनिंग
  • मीडिया मेटाडेटा जोडा आणि बदला; संपादने गंतव्य बकेटवर संग्रहित केली जातात, स्रोत माध्यम कधीही सुधारित केले जात नाही
  • कॉन्फिगर करण्यायोग्य आउटपुट प्रोफाइल. एकाधिक उप-प्रोफाइलसह डीफॉल्ट DASH-mp4 आहे
  • वापरकर्ता खात्याची माहिती गंतव्य बकेटवर देखील संग्रहित केली जाते, वैकल्पिकरित्या एनक्रिप्टेड
  • एन्क्रिप्शन की बदलल्यास, प्रशासक वेब अॅडमिन कन्सोलसह वापरकर्त्यांना नवीन कीमध्ये स्थलांतरित करू शकतो

स्थापना

तुम्ही डॉकर, npm द्वारे किंवा थेट स्त्रोतावरून yuebing स्थापित आणि चालवू शकता.

डॉकर

तुमच्याकडे डॉकर असल्यास, तुम्ही युएबिंगसह त्वरीत सुरुवात करू शकता:

docker run -it cobbzilla/yuebing

npm पॅकेज

# install globally with npm
npm i -g yuebing

# install globally with yarn
yarn global add yuebing

# Now the 'yuebing' command should be on your PATH
yuebing

स्त्रोताकडून

स्त्रोतावरून चालवण्यासाठी, तुम्हाला nodejs v16+ आणि यार्नची आवश्यकता असेल

# Clone source and install dependencies
git clone https://github.com/cobbzilla/yuebing.git
cd yuebing
yarn install

# Use the 'yuebing' command from the git repo
./yuebing

# Or, since you have the source, run any of the `yarn` scripts
yarn docker-run-dev # Fastest build & startup, dev docker image
yarn docker-run # Faster at runtime, production docker image
yarn dev # Run yuebing locally in dev mode
yarn build # Build yuebing locally for production mode
yarn start # Start yuebing locally in production mode

अधिक माहितीसाठी डेव्हलपर डॉक्स पहा

कॉन्फिगरेशन

Yuebing सह खेळण्यासाठी, काहीही कॉन्फिगर न करता ते सुरू करणे चांगले आहे. yuebing चालवा आणि जेव्हा ते सुरू होईल तेव्हा तुम्हाला किमान कॉन्फिगरेशन प्रविष्ट करण्यास सूचित केले जाईल.

तुम्ही काही काळ युएबिंग चालवण्याचा विचार करत असल्यास, यासाठी कॉन्फिगरेशन डॉक्स पहा गोष्टी कशा सेट करायच्या याबद्दल अधिक माहिती.

nginx कॉन्फिगरेशन

Yuebing एक Nuxt अॅप आहे, आणि अपेक्षा करतो की तुम्ही nginx (किंवा इतर काही वेब सर्व्हर) मध्ये ठेवाल SSL हाताळण्यासाठी त्याच्या समोर, आवश्यक असल्यास दर मर्यादित करणे इ.

तुम्ही nginx वापरत असल्यास, येथे एक नमुना कॉन्फिगरेशन आहे तुम्ही वापरू शकता.

नाव yuebing का?

ओलोंग द ससा एक मोहक आणि प्रसिद्ध होता लवकर इंटरनेट मेम. 2003 मध्ये ओलोंग यांचे निधन झाले. दोन वर्षांपूर्वी एक विशिष्ट लोकप्रिय व्हिडिओ सेवा अस्तित्वात होती!

ओलॉन्गच्या उत्तराधिकार्‍याचे नाव युएबिंग होते. युएबिंग हे ओलॉन्ग इतके प्रसिद्ध नव्हते, पण त्यामुळे काही फरक पडला का? तरीही युएबिंगला यश आले.

कदाचित अधिक मनोरंजक गोष्ट म्हणजे, यूबिंग म्हणजे मूनकेक (चीनी: 月饼, जपानी: 月餅); मूनकेक खूप चवदार असतात आणि त्यात सापडतात विविध प्रकारचे स्वाद आणि शैली. वेळ-सन्मानित प्रादेशिक शैलीचा आनंद घ्या किंवा आधुनिक केक वापरून पहा बेकर्स जे स्वादिष्टपणे अज्ञात प्रदेश शोधत आहेत! प्रत्येकासाठी खरोखर एक yuebing आहे!