Madsonic: एक रास्पबेरी पाई पर संगीत स्ट्रीमिंग सर्वर स्थापित करें

इस ट्यूटोरियल में मैं बताऊंगा कि म्यूजिक स्ट्रीमिंग सर्वर कैसे स्थापित करें (पागल) में रास्पबेरी पाई साथ आर्क लिनक्स एआरएम.
कैसे स्थापित करने के लिए एक ट्यूटोरियल देखने के लिए आर्क लिनक्स रास्पबेरी पाई पर आप इसे देख सकते हैं पद.

यह रास्पबेरी पाई पर ग्राफिकल वातावरण स्थापित नहीं करने की सिफारिश की जाती है, क्योंकि यह बहुत अधिक मेमोरी का उपयोग करता है। इसके बजाय, ssh कनेक्शन का उपयोग करके हमेशा काम करना बेहतर होता है।

पागल की मुख्य विशेषताएं निम्नलिखित हैं:

  • सहज ज्ञान युक्त वेब इंटरफ़ेस
  • विभिन्न स्वरूपों में ट्रांसकोडिंग का समर्थन करता है (उदाहरण। FLAC> mp3)
  • इसमें एंड्रॉइड और iOS के लिए क्लाइंट हैं

GPU और स्वैप क्षेत्र निर्माण के लिए RAM सीमित करें (SWAP)

निम्न चरण वैकल्पिक हैं, लेकिन मैं उन्हें रैम पर कम चलने वाले रास्पबेरी से बचने की सलाह देता हूं।

मैडिसोनिक सर्वर जावा के तहत चलता है, इसलिए 256MB रैम रास्पबेरी पाई पर यह लगभग 50% रैम का उपयोग करता है। इस मामले में मैं एक बनाने की सलाह देता हूं विनिमय क्षेत्र (स्वैप) रास्पबेरी पाई को स्मृति से बाहर जाने से रोकने के लिए।

1. हम एक फ़ाइल बनाते हैं जिसका उपयोग फ़ाइल विनिमय क्षेत्र के रूप में किया जाएगा और इसे 512 एमबी का स्थान आवंटित किया जाएगा

# फैलोकलेट -l 512M / स्वैफाइल

2. हम फ़ाइल को पढ़ने और लिखने की अनुमति देते हैं।

# चामोद 600 / स्वैफाइल

3. हम स्वैप के रूप में प्रारूपित करते हैं

# mkswap / swapfile

3. हम स्वैप को सक्रिय करते हैं

# स्वपन / स्वेपफल

4. हम फ़ाइल में निम्नलिखित पंक्ति जोड़ते हैं / Etc / fstab स्वचालित रूप से स्वैप माउंट करने के लिए।

/ अदला-बदली कोई भी नहीं चूक चूक 0 0

5. हम फ़ाइल को संशोधित करते हैं /etc/sysctl.d/99-sysctl.conf ताकि स्वैप में लेखन केवल उस स्थिति में किया जाए जब हमारे पास कम रैम उपलब्ध हो। हम निम्नलिखित पंक्ति को जोड़ते हैं

vm.swappiness = 10

6. आदेश का उपयोग करना मुक्त -ह हम राम की मात्रा की जांच करते हैं।
स्ट्रीमिंग राम


7. हम फ़ाइल को संशोधित करते हैं /बूट/config.txt रास्पबेरी पाई मॉडल के आधार पर, हमारे पास ग्राफिक्स को आवंटित रैम की मात्रा को सीमित करने के लिए।

ध्यान रहे! यदि हम GPU के लिए बहुत कम रैम लगाते हैं, तो रास्पबेरी शुरू नहीं होगी और हमें फाइल को ठीक करने के लिए एसडी कार्ड को कंप्यूटर से परिचित कराना होगा। /बूट/config.txt

हम ग्राफिक्स के लिए 64MB RAM आवंटित करेंगे।

  • रास्पबेरी पाई मॉडल ए (256 एमबी रैम के साथ) के लिए हम लाइन को संशोधित करते हैं gpu_mem_256 = 128 द्वारा gpu_mem_256 = 64
  • रास्पबेरी पाई मॉडल बी (512 एमबी रैम के साथ) के लिए हम लाइन को संशोधित करते हैं gpu_mem_512 = 316 द्वारा gpu_mem_512 = 64

ओवरक्लॉकिंग (वैकल्पिक)

मैं रास्पबेरी को गर्म करने से रोकने के लिए शीतलन स्रोत का उपयोग करने की सलाह देता हूं

हम फ़ाइल को संपादित करेंगे /बूट/config.txt और हम फ़ाइल के अंत में पाए गए ओवरक्लॉक विकल्पों में से कुछ को अनइंस्टॉल करेंगे।

##Modest
arm_freq=800
core_freq=300
sdram_freq=400
over_voltage=0
##Medium
#arm_freq=900
#core_freq=333
#sdram_freq=450
#over_voltage=2
##High
#arm_freq=950
#core_freq=450
#sdram_freq=450
#over_voltage=6
##Turbo
#arm_freq=1000
#core_freq=500
#sdram_freq=500
#over_voltage=6

मैंने मामूली विकल्प (800 गति) का उपयोग किया, इस गति के साथ मेरी रास्पबेरी पाई यह अच्छा काम करता है।

Madsonic स्थापना

मैडिसोनिक में है आर्क लिनक्स यूजर रिपॉजिटरी (AUR), इसलिए हमें AUR कार्यक्रमों को संकलित करने में सक्षम होने के लिए बेस-डेवेल पैकेज की आवश्यकता है।

हम आवश्यक पैकेज स्थापित करते हैं:

# pacman -S wget कर्ल बेस-डेवेल yajl जावा-रनटाइम कामेच्छा

हम संकलन के लिए एक निर्देशिका बनाते हैं और इससे मैड्सनिक डाउनलोड करते हैं AUR.

$ mkdir बिल्ड $ cd बिल्ड $ wget https://aur.archlinux.org/packages/ma/madsonic/madsonic.tar.gz

हम फाइलें निकालते हैं और फाइल को एडिट करते हैं पीकेजीबीयूल्ड एआरएम प्रोसेसर के लिए समर्थन जोड़ने के लिए। हम लाइन की तलाश करते हैं मेहराब = ('i686' 'x86_64') और हम जोड़ते हैं
'आर्मव 6 एच'.

$ tar zxf madsonic.tar.gz $ cd madsonic $ nano PKGBUILD ... कट्टर = ('i686' 'x86_64' 'armv6h')

हम कमांड का उपयोग करते हैं मेकप डाउनलोड करने और पागल कोड संकलित करने के लिए। इसमें लंबा समय लग सकता है। धैर्य रखें।

$ मेकपग-जी >> पीकेजीबीयूएल $ मेकपग

आज्ञा मेकप यह एक .xz एक्सटेंशन के साथ एक फ़ाइल उत्पन्न करेगा, इस फ़ाइल को पैक्मैन का उपयोग करके स्थापित किया जा सकता है।

# पैक्मैन-यू मैडिकनिक-5.0.3860-1-armv6h.pkg.tar.xz

ARM के लिए Java Oracle इंस्टॉल करना

पागलखाना स्थापित करने के बाद मैंने उस पर ध्यान दिया है Openjdk लगभग 100% प्रोसेसर का उपयोग करता है और इसलिए यह रास्पबेरी पाई के खराब प्रदर्शन का प्रतिनिधित्व करता है।

इस समस्या का समाधान एआरएम वास्तुकला के लिए ओरेकल जावा का उपयोग करना है। इस विषय पर अधिक जानकारी के लिए, आप उस ओरेकल लेख को देख सकते हैं जहाँ वे ओरेकल जावा बनाम ओपनजेडके बेंचमार्क दिखाते हैं। संपर्क.

हम ARM आर्किटेक्चर के लिए जावा ओरेकल डाउनलोड करते हैं

wget --no- कुकीज़ \ --no-check-certificate --header "कुकी: gpw_e24 = http% 3A% 2F% 2Fwww.oracle.com% 2F; \ oraclelicense = स्वीकार-सिक्योरबैकअप-कुकी" \ "http: / /download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-arm-vfp-hflt.tar.gz "

पथ में फ़ाइल खोलना / ऑप्ट / जावा-ओरेकल /

 # mkdir / opt / java-oracle # tar -zxf jdk-7u55-linux-arm-vfp-hflt.tar.gz -C / opt / java-oracle

हम जावा होम एनवायरनमेंट वैरिएबल बनाते हैं और ओपनजेडके जावा एक्जीक्यूटिव का बैकअप लेते हैं।

# JHome = / opt / java-oracle / jdk1.7.0_55 # test -L / usr / bin / java && mv /usr/bin/java [,.backup}

हम के लिए प्रतीकात्मक लिंक बनाते हैं जावा y जेवैक.

# ln -sf /opt /java-oracle/jdk1.7.0_55/bin/java / usr / bin / java # ln -sf /opt / java-oracle/jdk1.7.0_55/bin/javac / usr / bin / javacac

अब हम कमांड के साथ जावा इंस्टॉलेशन का परीक्षण कर सकते हैं जावा-वर्जन

[eroland @ अलार्मपी ~] $ जावा-वर्जन जावा संस्करण "1.7.0_55" जावा (टीएम) एसई रनटाइम एनवायरनमेंट (बिल्ड 1.7.0_55-बी 13) जावा हॉटस्पॉट (टीएम) क्लाइंट वीएम (24.55-b03, मिश्रित मोड) बनाएँ

हम मैडिसोनिक कॉन्फ़िगरेशन फ़ाइल को संपादित करते हैं ताकि यह जावा ओरेकल का उपयोग करे न कि जावा ओपनजेडके।

# नैनो / अनवर / कामादिक / कामादिक। श

और हम लाइन को संशोधित करते हैं जावा_होम ताकि यह इस प्रकार है:

JAVA_HOME = / opt / java-oracle / jdk1.7.0_55 / jre: / usr / lib / jvm / java-7-openjdk

मैडिसोनिक कॉन्फ़िगरेशन

फ़ाइल में मैडिसोनिक कॉन्फ़िगरेशन किया जाता है /var/madsonic/madsonic.shपहली बात, हम इसका समर्थन करते हैं।

cp /var/madsonic/madsonic.sh पर

इस फ़ाइल में आप उस पोर्ट को संशोधित कर सकते हैं जो मैडिसोनिक उपयोग करेगा (डिफ़ॉल्ट रूप से यह पोर्ट 4040 का उपयोग करता है), उस फ़ोल्डर का पथ जहां गाने संग्रहीत किए जाएंगे, आदि।

हम एक जोड़ देंगे बाह्य हार्ड ड्राइव USB से जुड़ा जहां हम गाने चलाने के लिए डालेंगे।

यदि हार्ड ड्राइव को स्वरूपित किया जाता है NTFS, आपको डिस्क माउंट करने के लिए ntfs-3G पैकेज स्थापित करने की आवश्यकता है।

# pacman -S ntfs-3G

हम उस फ़ोल्डर को बनाते हैं जहां हार्ड ड्राइव माउंट किया जाएगा और हम इसे आवश्यक अनुमति देते हैं

# mddir / mnt / डेटा # chmod 775 / mnt / डेटा

हम अपने माउंट बिंदु प्राप्त करते हैं हार्ड डिस्क

$ ls -l / dev / डिस्क / बाय-लेबल / कुल 0 lrwxrwxrwx 1 रूट रूट 10 दिसंबर 31 दिसंबर 1969 डेटा -> ..//sda2 lrwxrwxrwx 1 रूट 10 दिसंबर 31 1969 PS3 -> ../// sda1

मेरे मामले में, मुझे उस डेटा लेबल के साथ डिस्क में रुचि है, जिसमें पाया गया है / / देव sda2

हालाँकि, डिस्क को माउंट करने के लिए लेबल का उपयोग करना अत्यधिक अनुशंसित नहीं है, जैसे कि यदि लेबल बदलता है, तो डिस्क को माउंट नहीं किया जा सकता है।

हमें विशिष्ट पहचानकर्ता मिलता है (यूयूआईडी) हमारी हार्ड ड्राइव से।

ls -l / dev / डिस्क / बाय-यूआईडी /

हमारा परिणाम इसके समान होगा:

[eroland @ अलार्मपी ~] $ ls -l / dev / disk / by-uuid / कुल ० lrwxrwxrwx 0 रूट 1 दिसंबर 10 31 1969F19-4 -> ../..//da1917 lrwxrwxrwx 1 रूट रूट 1 दिसंबर 15 दिसंबर 31 1969 2300 -4E18 -> ../../mmcblk0p1 lrwxrwxrwx 1 रूट रूट 10 दिसंबर 31 दिसंबर 1969 58F6AA78F6AA55D2 -> ..//sda2 lrwxrwxrwx 1 रूट 15 रूट 31 दिसंबर 1969 471 b8cde2-15a44-7-9-2 / mmcblk54511p6

हम अपनी हार्ड ड्राइव के UUID को इस मामले में लिखते हैं 58F6AA78F6AA55D2)

हम फ़ाइल के अंत में निम्नलिखित पंक्ति जोड़ते हैं / Etc / fstab

UUID = 58F6AA78F6AA55D2 / mnt / डेटा ntfs-3G डिफ़ॉल्ट 0 0
UUID को बदलना याद रखें, ऊपर दिए गए कमांड से प्राप्त किए गए

हम अपने रास्पबेरी पाई को पुनः आरंभ करते हैं और हार्ड ड्राइव स्वचालित रूप से माउंट हो जाएगी।

अंत में हम पागल सेवा शुरू करते हैं:

# systemctl की शुरुआत madsonic.service से होती है

यदि हम चाहते हैं कि सेवा हर बार सिस्टम लोड होने पर स्वचालित रूप से शुरू हो।

# systemctl madsonic.service सक्षम करें

और वोइला, हमारे पास हमारा संगीत स्ट्रीमिंग सर्वर है।

एक बार की सेवा पागल, हम अपने पसंदीदा ब्राउज़र से पोर्ट 4040 के साथ अपने रास्पबेरी पाई के आईपी पते पर दर्ज कर सकते हैं, मेरे मामले में यह है 192.168.17.1:4040 और हम डेटा का उपयोग कर दर्ज करते हैं उपयोगकर्ता = व्यवस्थापक पासवर्ड = व्यवस्थापक.

पागल

पहले से ही वेब इंटरफ़ेस के भीतर हम नए उपयोगकर्ता जोड़ सकते हैं और डिफ़ॉल्ट पासवर्ड बदल सकते हैं।

खैर, यह मेरा पहला योगदान है, मुझे आशा है कि आपको यह पसंद आएगा।

सूत्रों का कहना है:
http://d.stavrovski.net/blog/post/set-up-home-media-streaming-server-with-madsonic-archlinux-and-cubieboard2
http://www.techjawab.com/2013/06/how-to-setup-mount-auto-mount-usb-hard.html


अपनी टिप्पणी दर्ज करें

आपका ईमेल पता प्रकाशित नहीं किया जाएगा। आवश्यक फ़ील्ड के साथ चिह्नित कर रहे हैं *

*

*

  1. डेटा के लिए जिम्मेदार: मिगुएल elngel Gatón
  2. डेटा का उद्देश्य: नियंत्रण स्पैम, टिप्पणी प्रबंधन।
  3. वैधता: आपकी सहमति
  4. डेटा का संचार: डेटा को कानूनी बाध्यता को छोड़कर तीसरे पक्ष को संचार नहीं किया जाएगा।
  5. डेटा संग्रहण: ऑकेंटस नेटवर्क्स (EU) द्वारा होस्ट किया गया डेटाबेस
  6. अधिकार: किसी भी समय आप अपनी जानकारी को सीमित, पुनर्प्राप्त और हटा सकते हैं।

  1.   x11tete11x कहा

    मेरे पास कोई रास्प नहीं है लेकिन अगर एक होम स्ट्रीमिंग सर्वर xD है, तो क्या आपने कभी मेडियाटॉम्ब का इस्तेमाल किया है? हजार मोड़, मुझे क्या दिलचस्पी होगी यह जानने के लिए कि क्या आप "WAN" के माध्यम से स्ट्रीमिंग कर सकते हैं और यदि यह एक बेहतर सुरक्षित प्रोटोकॉल द्वारा है, क्योंकि मेडियाटॉम्ब इसे वेब के माध्यम से प्रबंधित करने की अनुमति देता है, लेकिन https के साथ नहीं, और ( अब तक मुझे केवल एंड्रॉइड के लिए एक ग्राहक मिला) मैं डब्ल्यूएएन के माध्यम से मेडियाटॉम्ब के साथ स्ट्रीमिंग कर सकता हूं (अगर सेल फोन से कहीं भी मैं अपने होम सर्वर से संगीत चला सकता हूं) क्योंकि मुझे प्रोटोकॉल की सुरक्षा पर संदेह है, जो मुझे पासवर्ड डालते हैं जो नहीं करते हैं मैं आमतौर पर उपयोग करने वालों के साथ कोई संबंध रखता हूं, और एक ही मेडियाटॉम्ब अनुमतियों के लिए सक्षम है ताकि अगर कोई पहुंच जाए तो वे कुछ भी नहीं कर सकते हैं

    1.    मिटा देना कहा

      हैलो, मैंने मेडियाटॉम्ब का उपयोग नहीं किया है। आपके प्रश्नों के बारे में, निश्चित रूप से आप WAN के माध्यम से मैडोनिक का उपयोग कर सकते हैं, मैं WAN के माध्यम से मैडोनिक का उपयोग करता हूं और यह मेरे लिए बहुत अच्छा काम करता है। Madsonic https का उपयोग करने की अनुमति देता है, आपको बस इसे अपनी कॉन्फ़िगरेशन फ़ाइल में सक्षम करना होगा: madsonic_https_port = 8443 और voila using
      एंड्रॉइड के लिए एप्लिकेशन के बारे में, मैं एक अल्ट्रासोनिक कॉल का उपयोग करता हूं, यह बहुत अच्छा है, यह कनेक्शन एक्सडी के बिना सुनने के लिए कैश में गाने स्टोर करने की अनुमति देता है

      नमस्ते.

    2.    Ronal कहा

      दोस्त, आर्क एआरएम के साथ आपका क्या अनुभव है? मैं एक आर्क उपयोगकर्ता हूँ .. रासबियन स्थापित करें। लेकिन मैं रेपो के साथ समस्याओं से थक गया। मुझे आर्क चाहिए। उन पैकेजों के बारे में जो आधिकारिक रेपो में नहीं हैं। उदाहरण के लिए AUR पैकेज, क्या उन्हें संकलित किया जा सकता है?

  2.   तनराक्स कहा

    बहुत ही रोचक लेख!
    मैंने एंड्रॉइड पर अपने क्लाइंट को देखने के लिए त्वरित खोज की है और मैंने देखा है कि यह भुगतान किया गया है। क्या कोई मुफ्त विकल्प है?

    1.    मिटा देना कहा

      हैलो, अगर कोई मुफ्त विकल्प हैं, तो मैं अल्ट्रासोनिक का उपयोग करता हूं।
      https://play.google.com/store/apps/details?id=com.thejoshwa.ultrasonic.androidapp&hl=es

      नमस्ते.

  3.   MSX कहा

    सबसोनिक एक जानवर है और जावा गोबर का उपयोग नहीं करता है। अगर मैं गलत नहीं हूं, तो खुद क्लॉक भी ऑडियो और वीडियो स्ट्रीम कर सकता है और हाइपर लाइट है - कम से कम एक जेवीएम चलने और एक अन्य एप्लिकेशन भारी होने की तुलना में।

    जावा को मरना चाहिए - फ्लैश के समान।

    1.    मिटा देना कहा

      वास्तव में ownCloud में एक बुनियादी स्ट्रीमिंग सेवा है, जो लाभ मुझे सबसोनिक के लिए दिखाई देता है वह ट्रांसकोडिंग की संभावना है, उदाहरण के लिए उनके पास बहुत अधिक फ्लैक संगीत है। और आप सही भी हैं, जावा का उपयोग करना एक भारी कार्यक्रम है, हालाँकि अभी तक मुझे 256MB RAM रास्पबेरी के उपयोग से कोई समस्या नहीं है।

      1.    एलियोटाइम३००० कहा

        खैर, OpenJDK 7 (ओरेकल शो के रूप में 6 नहीं) प्रदर्शन के मामले में बहुत अधिक स्थिर है। हालांकि, अगर जावा के बिना एक संस्करण है, तो बधाई (कम से कम, यह Spotify का एक अच्छा विकल्प है)।

        और वैसे, क्या स्ट्रीमिंग के लिए OWnCloud है! यह पहले से ही समर्पित लगता है।

  4.   रोलो कहा

    मैं मिनीडलना का उपयोग करता हूं, यह कुछ भी नहीं खाता है और आपके पास वीडियो, फोटो और संगीत तक पहुंच हो सकती है और मैं उन्हें पीसी या टीवी पर वीडियो प्लेयर से कैप्चर करता हूं, यह बहुत सीमित वेब पेज डालने की संभावना भी देता है।

    एक और बात, मैडिसोनिक एक स्ट्रीमिंग सेवा या स्ट्रीमर है? «… मैडिसनिक एक वेब-आधारित मीडिया स्ट्रीमर और सबसोनिक का ज्यूकबॉक्स कांटा है…। , मैडिसोनिक वस्तुतः किसी भी ऑडियो प्रारूप के रूपांतरण और स्ट्रीमिंग का समर्थन करता है, ... मुझे नहीं पता कि एक शब्द और दूसरे के बीच कितना अंतर है

    1.    मिटा देना कहा

      मुझे यकीन नहीं है कि अंतर क्या है, यह मुझे लगता है कि स्ट्रीमर का उपयोग यह कहने के लिए किया जाता है कि सॉफ्टवेयर स्ट्रीमिंग में सक्षम है, लेकिन मैं दोहराता हूं, मुझे यकीन नहीं है कि xD

  5.   ऑप कहा

    वर्तमान में मैं सबसोनिक से Ampache का उपयोग करता हूं, जैसा कि मैंने देखा है कि यह मुफ्त सॉफ्टवेयर, GPL3 लाइसेंस है, लेकिन अगर आप चाहते हैं कि सभी विशेषताओं के लिए आपको सबसोनिक के साथ मुहिम शुरू करने वाले सर्वर के लिए एक लाइसेंस कुंजी का भुगतान करना होगा, जैसा कि पागल के लिए मुझे नहीं पता था। , यह एक परीक्षण की बात होगी, आप मुझे बता सकते हैं कि अगर मैं ampache के बजाय पागल का उपयोग करता हूं तो मुझे क्या फायदे हो सकते हैं।

    1.    मिटा देना कहा

      हाय, मैडिसोनिक सबसोनिक का एक कांटा है, केवल मैडिसोनिक में एक कुंजी के लिए भुगतान करने की आवश्यकता नहीं है। Ampache के बारे में, मैंने इसका उपयोग नहीं किया है, - और मैं आपको यह नहीं बता सका कि ampache के संबंध में मैडिकॉन के क्या फायदे हैं, Google में मुझे यह लिंक मिला, शायद यह मदद का हो सकता है: http://www.brunobense.com/2013/04/subsonic_ftw/.