Madsonic:在Raspberry Pi上安裝Music Streaming Server

在本教程中,我將解釋如何安裝音樂流服務器(Madsonic)在 樹莓派ArchLinux ARM.
要查看有關如何安裝的教程 Arch Linux 在Raspberry Pi上,您可以看一下 發表.

建議不要在Raspberry Pi上安裝圖形環境,因為它會佔用大量內存。 相反,最好始終使用ssh連接工作。

madsonic的主要特點如下:

  • 直觀的Web界面
  • 支持轉碼成各種格式(例如FLAC> mp3)
  • 它具有適用於Android和iOS的客戶端

限制用於GPU和交換區域創建(SWAP)的RAM

以下步驟是可選的,但我建議您這樣做,以避免Raspberry的RAM不足。

madsonic服務器在Java下運行,因此在256MB RAM Raspberry Pi上,它使用約50%的RAM。 在這種情況下,我建議創建一個 交換區 (交換)以防止Raspberry Pi的內存不足。

1. 我們創建一個將用作文件交換區域的文件,並為其分配512 MB的空間

#fallocate -l 512M /交換文件

2. 我們為文件分配讀寫權限。

#chmod 600 /交換文件

3. 我們格式化為交換

#mkswap / swapfile

3. 我們激活掉期

#swapon / swapfile

4. 我們將以下行添加到文件中 / etc / fstab文件 自動安裝交換。

/ swapfile none swap默認值0 0

5. 我們修改文件 /etc/sysctl.d/99-sysctl.conf 因此只有在可用RAM很少的情況下才進行交換寫入。 我們添加以下行

vm.swappiness = 10

6. 使用該命令 免費-h 我們檢查有多少RAM。
流RAM


7. 我們修改文件 /啟動/配置.txt 取決於我們擁有的Raspberry Pi型號,以限制分配給圖形的RAM數量。

小心! 如果我們為GPU放置的RAM太少,則Raspberry將無法啟動,我們將必須將SD卡引入計算機以修復文件 /啟動/配置.txt

我們將為圖形分配64MB的RAM。

  • 對於Raspberry Pi模型A(具有256 MB的RAM),我們修改了該行 gpu_mem_256 = 128gpu_mem_256 = 64
  • 對於Raspberry Pi B型(具有512 MB RAM),我們修改了該行 gpu_mem_512 = 316gpu_mem_512 = 64

超頻(可選)

我建議使用冷卻源以防止Raspberry過熱

我們將編輯文件 /啟動/配置.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安裝

Madsonic在 Arch Linux用戶存儲庫 (AUR),因此我們需要base-devel軟件包才能編譯AUR程序。

我們安裝必要的軟件包:

#pacman -S wget curl base-devel yajl java-runtime libcups

我們為編譯創建目錄並從以下位置下載madsonic AUR.

$ mkdir build $ cd build $ wget https://aur.archlinux.org/packages/ma/madsonic/madsonic.tar.gz

我們提取文件並編輯文件 PKGB構建 添加對ARM處理器的支持。 我們尋找線 拱=('i686''x86_64') 我們添加
'armv6h'.

$ tar zxf madsonic.tar.gz $ cd madsonic $ nano PKGBUILD ... arch =('i686''x86_64''armv6h')

我們使用命令 製作包 下載並編譯Madsonic代碼。 這可能需要很長時間。 耐心一點。

$ makepkg -g >> PKGBUILD $ makepkg

命令 製作包 它將生成一個擴展名為.xz的文件,可以使用pacman安裝該文件。

#pacman -U madsonic-5.0.3860-1-armv6h.pkg.tar.xz

安裝Java Oracle for ARM

安裝madsonic之後,我注意到 OpenJDK 它使用幾乎100%的處理器,因此這表示Raspberry Pi的性能低下。

解決此問題的方法是將Oracle Java用於ARM體系結構。 有關此主題的更多信息,您可以查看oracle文章,其中在本文中顯示了Oracle Java vs OpenJDK Benchmark。 鏈接.

我們為ARM體系結構下載Java Oracle

wget --no-cookies \ --no-check-certificate --header“ Cookie:gpw_e24 = http%3A%2F%2Fwww.oracle.com%2F; \ oraclelicense = accept-securebackup-cookie” \“ http:// /download.oracle.com/otn-pub/java/jdk/7u55-b13/jdk-7u55-linux-arm-vfp-hflt.tar.gz“

將文件解壓縮到路徑中 / opt / java-oracle /

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

我們創建Java Home環境變量並備份OpenJDK Java可執行文件。

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

我們為創建符號鏈接 Java的 y javac的.

#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 / javac

現在我們可以使用以下命令測試Java安裝 java -version

[eroland @ alarmpi〜] $ java -version Java版本“ 1.7.0_55” Java(TM)SE運行時環境(內部版本1.7.0_55-b13)Java HotSpot(TM)客戶端VM(內部版本24.55-b03,混合模式)

我們編輯madsonic配置文件以使用Java Oracle,而不使用Java OpenJDK。

#納米/var/madsonic/madsonic.sh

我們修改線 JAVA_HOME 如下所示:

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

Madsonic配置

madsonic配置在文件中完成 /var/madsonic/madsonic.sh,我們要做的第一件事就是支持它。

cp /var/madsonic/madsonic.sh[,.backup}

在此文件中,您可以修改madsonic將使用的端口(默認情況下使用端口4040),將存儲歌曲的文件夾的路徑等。

我們將添加一個 外置硬盤 通過USB連接,我們將在其中播放歌曲。

如果硬盤驅動器已格式化 NTFS,您需要安裝ntfs-3g軟件包才能掛載磁盤。

#pacman -S ntfs-3g

我們創建要安裝硬盤的文件夾,並為其授予必要的權限

#mkdir / mnt /數據#chmod 775 / mnt /數據

我們得到了我們的掛載點 硬盤驅動器

$ ls -l / dev / disk / by-label / total 0 lrwxrwxrwx 1根目錄10年31月1969日數據-> ../../sda2 lrwxrwxrwx 1根目錄10年31月1969日PS3-> ../../ sda1

就我而言,我對帶有“數據”標籤的磁盤感興趣 /開發/ sda2的

但是,強烈不建議使用標籤來安裝光盤,因為標籤會發生變化,因此無法安裝光盤。

我們得到唯一的標識符(UUID)從我們的硬盤驅動器。

ls -l / dev / disk / by-uuid /

我們將得到類似於以下結果:

[eroland @ Alarmpi〜] $ ls -l / dev / disk / by-uuid / total 0 lrwxrwxrwx 1 root root 10 Dec 31 1969 19F4-1917-> ../../sda1 lrwxrwxrwx 1 root root 15 Dec 31 1969 2300 4 -18E0-> ../../mmcblk1p1 lrwxrwxrwx 10根31年1969月58日6F78AA6F55AA2D2-> ../../sda1 lrwxrwxrwx 15根31年1969月471日b8cde2-15a44-7e9-acce -e2a54511。 / mmcblk6p0

我們記下硬盤驅動器的UUID(在這種情況下, 58F6AA78F6AA55D2)

我們在文件末尾添加以下行 / etc / fstab文件

UUID = 58F6AA78F6AA55D2 / mnt /數據ntfs-3g默認0 0
記住要更改UUID,對於從上面的命令獲得的UUID

我們重新啟動Raspberry Pi,硬盤將自動安裝。

最後,我們啟動madsonic服務:

#systemctl啟動madsonic.service

如果我們希望服務在每次系統加載時自動啟動。

#systemctl啟用madsonic.service

瞧,我們有音樂流服務器。

一旦服務 Madsonic,我們可以從首選瀏覽器輸入Raspberry Pi的IP地址以及端口4040,在我的情況下是 192.168.17.1:4040 然後我們使用數據輸入 用戶=管理員 密碼=管理員.

Madsonic

在Web界面中,我們可以添加新用戶並更改默認密碼。

好吧,這是我的第一項貢獻,希望您喜歡。

富恩特斯:
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. 負責數據:MiguelÁngelGatón
  2. 數據用途:控制垃圾郵件,註釋管理。
  3. 合法性:您的同意
  4. 數據通訊:除非有法律義務,否則不會將數據傳達給第三方。
  5. 數據存儲:Occentus Networks(EU)託管的數據庫
  6. 權利:您可以隨時限制,恢復和刪除您的信息。

  1.   x11泰特11x 他說:

    我沒有粗暴的人,但是如果是家用流媒體服務器xD,您曾經使用過mediatomb嗎?反過來,令我非常感興趣的是,您是否可以通過“ WAN”進行流傳輸以及是否通過更好的安全協議進行傳輸,因為mediatomb允許通過Web而不是https對其進行管理,而且(so到目前為止,我只為Android找到一個客戶端)我可以通過WAN與mediatomb進行流傳輸(如果從手機可以在我的家庭服務器上播放音樂的任何地方),因為我懷疑協議的安全性,所以我輸入了不保留任何密碼的密碼與我通常使用的媒體關聯,並且啟用了相同的mediatomb權限,以便萬一有人訪問他們無法觸摸任何東西xD

    1.    愛羅蘭 他說:

      您好,我還沒使用過mediatomb。 關於您的問題,您當然可以通過WAN使用madsonic,我可以通過WAN使用madsonic,它對我來說非常有效。 Madsonic確實允許使用https,您只需在配置文件中啟用它:madsonic_https_port = 8443就是這樣
      關於android的應用程序,我使用超聲波調用,這非常好,它允許您將歌曲存儲在緩存中以在沒有連接的情況下收聽xD

      問候。

    2.    Ronal公司 他說:

      朋友,您對Arch ARM有什麼經驗? 我是Arch用戶..安裝rasbian。 但是我對存儲庫的問題感到厭倦。 我想要Arch,那些不在官方倉庫中的軟件包呢? 例如AUR包,可以編譯嗎?

  2.   坦拉斯 他說:

    非常有趣的文章!
    我已經進行了快速搜索,以查看您的Android客戶端,並且已經付款。 有免費的替代品嗎?

    1.    愛羅蘭 他說:

      您好,如果有免費的替代品,我會使用超聲波。
      https://play.google.com/store/apps/details?id=com.thejoshwa.ultrasonic.androidapp&hl=es

      問候。

  3.   MSX 他說:

    Subsonic是野獸,不使用Java糞便。 如果我沒記錯的話,ownCloud還可以流式傳輸音頻和視頻,並且超輕量級-至少與運行JVM和另一個繁重的應用程序相比。

    Java必須消亡-與Flash相同。

    1.    愛羅蘭 他說:

      確實,ownCloud具有基本的流服務,對於亞音速,我看到的優勢是可以進行轉碼,例如在他們擁有很多樂譜音樂的情況下。 而且您也說對了,使用Java時它是一個繁瑣的程序,但是,到目前為止,使用256MB RAM Raspberry並沒有問題。

      1.    埃利奧時間3000 他說:

        好吧,OpenJDK 7(不是Oracle展示的6)在性能方面要穩定得多。 但是,如果有一個不帶Java的版本,那麼恭喜(至少,它是Spotify的一個不錯的選擇)。

        順便說一下,OWnCloud是否具有流功能?! 似乎已經4shared。

  4.   羅洛 他說:

    我使用minidlna,它不消耗任何東西,您可以訪問視頻,照片和音樂,並且可以從PC或電視上的視頻播放器中捕獲它們,這也使放置非常有限的網頁成為可能。

    另一件事,Madsonic是流服務或流媒體嗎? «…Madsonic是Subsonic…的基於Web的流媒體和點唱機分叉。 ,Madsonic支持幾乎任何音頻格式的即時轉換和流式傳輸,…»我不知道一個術語與另一個術語之間有多少區別

    1.    愛羅蘭 他說:

      我不確定有什麼區別,在我看來,流光通常是指該軟件具有流媒體功能,但我重複一遍,我不確定xD

  5.   操作 他說:

    我目前使用Subsonic的Ampache,因為我已經看到它是免費軟件,GPL3許可證,但是如果您想擁有所有特性,則必須為安裝有Subsonic的服務器支付許可證密鑰,因為madsonic我不知道,這將是測試的問題,您可以告訴我,如果我使用madsonic而不是ampache可以擁有什麼優勢。

    1.    愛羅蘭 他說:

      嗨,madsonic是subsonic的一個分支,僅在madsonic中不需要支付鑰匙費用。 關於Ampache,我還沒有使用過,而且-我無法告訴您madsonic相對於ampache有什麼優勢,在Google中我找到了此鏈接,也許對您有所幫助: http://www.brunobense.com/2013/04/subsonic_ftw/.