Madsonic : Raspberry Pi에 음악 스트리밍 서버 설치

이 튜토리얼에서는 음악 스트리밍 서버 (Madsonic)에서 라즈베리 파이아치 리눅스 ARM.
설치 방법에 대한 자습서를 보려면 아치 리눅스 Raspberry Pi에서는 이것을 볼 수 있습니다. 게시.

많은 메모리를 사용하므로 Raspberry Pi에 그래픽 환경을 설치하지 않는 것이 좋습니다. 대신 항상 ssh 연결을 사용하여 작업하는 것이 좋습니다.

madsonic의 주요 기능은 다음과 같습니다.

  • 직관적 인 웹 인터페이스
  • 다양한 형식으로 트랜스 코딩 지원 (예 : FLAC> mp3)
  • Android 및 iOS 용 클라이언트가 있습니다.

GPU 및 스왑 영역 생성 (SWAP)을위한 RAM 제한

다음 단계는 선택 사항이지만 RAM이 부족한 Raspberry를 방지하기 위해 수행하는 것이 좋습니다.

madsonic 서버는 Java에서 실행되므로 256MB RAM Raspberry Pi에서 RAM의 약 50 %를 사용합니다. 이 경우에는 교환 지역 (스왑) Raspberry Pi의 메모리 부족을 방지합니다.

1. 파일 교환 영역으로 사용할 파일을 만들고 512MB의 공간을 할당합니다.

# fallocate -l 512M / swapfile

2. 파일에 대한 읽기 및 쓰기 권한을 할당합니다.

# chmod 600 / 스왑 파일

3. 우리는 스왑으로 포맷합니다.

# mkswap / 스왑 파일

3. 우리는 스왑을 활성화합니다

# 스왑 온 / 스왑 파일

4. 파일에 다음 줄을 추가합니다. / etc / fstab 스왑을 자동으로 마운트합니다.

/ swapfile 없음 스왑 기본값 0 0

5. 파일을 수정합니다. /etc/sysctl.d/99-sysctl.conf 스왑에 쓰기는 사용 가능한 RAM이 거의없는 경우에만 수행됩니다. 다음 줄을 추가합니다.

vm.swappiness = 10

6. 명령 사용 무료 -h 가지고있는 RAM의 양을 확인합니다.
스트리밍 RAM


7. 파일을 수정합니다. /boot/config.txt 우리가 가지고있는 Raspberry Pi 모델에 따라 그래픽에 할당되는 RAM의 양을 제한합니다.

조심해! GPU에 RAM을 너무 적게 넣으면 Raspberry가 시작되지 않고 SD 카드를 컴퓨터에 도입하여 파일을 복구해야합니다. /boot/config.txt

그래픽 용으로 64MB RAM을 할당합니다.

  • Raspberry Pi 모델 A (256MB RAM 포함)의 경우 라인을 수정합니다. gpu_mem_256 = 128gpu_mem_256 = 64
  • Raspberry Pi 모델 B (512MB RAM 포함)의 경우 라인을 수정합니다. gpu_mem_512 = 316gpu_mem_512 = 64

오버 클럭킹 (옵션)

라즈베리가 과열되지 않도록 냉각 소스를 사용하는 것이 좋습니다.

파일을 편집합니다 /boot/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 설치

Madsonic은 아치 리눅스 사용자 저장소 (AUR), 따라서 AUR 프로그램을 컴파일하려면 base-devel 패키지가 필요합니다.

필요한 패키지를 설치합니다.

# pacman -S wget curl base-devel yajl 자바 런타임 libcups

컴파일을위한 디렉토리를 만들고 madsonic을 AUR.

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

파일을 추출하고 파일을 편집합니다. PKG빌드 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을 사용하여 설치할 수 있습니다.

# 팩맨 -U madsonic-5.0.3860-1-armv6h.pkg.tar.xz

ARM 용 Java Oracle 설치

madsonic을 설치 한 후 openjdk 거의 100 % 프로세서를 사용하므로 이것은 Raspberry Pi의 성능 저하를 나타냅니다.

이 문제에 대한 해결책은 ARM 아키텍처에 Oracle Java를 사용하는 것입니다. 이 주제에 대한 자세한 내용은 Oracle Java 대 OpenJDK 벤치 마크를 보여주는 Oracle 기사를 검토 할 수 있습니다. 링크.

ARM 아키텍처 용 Java Oracle을 다운로드

wget --no-cookies \ --no-check-certificate --header "쿠키 : 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 "

경로에 파일 압축을 풉니 다. / 옵션 / 자바 오라클 /

 # 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}

우리는에 대한 심볼릭 링크를 만듭니다. 자바 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 설치를 테스트 할 수 있습니다. 자바 버전

[eroland @ alarmpi ~] $ java -version java 버전 "1.7.0_55"Java (TM) SE 런타임 환경 (빌드 1.7.0_55-b13) Java HotSpot (TM) 클라이언트 VM (빌드 24.55-b03, 혼합 모드)

Java OpenJDK가 아닌 Java Oracle을 사용하도록 madsonic 구성 파일을 편집합니다.

# 나노 /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 패키지를 설치해야합니다.

# 팩맨 -S ntfs-3g

하드 드라이브가 마운트 될 폴더를 만들고 필요한 권한을 부여합니다.

# mkdir / mnt / 데이터 # chmod 775 / mnt / 데이터

우리는 우리의 마운트 포인트를 얻습니다. 하드 드라이브

$ ls -l / dev / disk / by-label / total 0 lrwxrwxrwx 1 root root 10 Dec 31 1969 Data-> ../../sda2 lrwxrwxrwx 1 root root 10 Dec 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 -4E18-> ../../mmcblk0p1 lrwxrwxrwx 1 루트 루트 10 Dec 31 1969 58F6AA78F6AA55D2-> ../../sda2 lrwxrwxrwx 1 루트 루트 15 년 31 월 1969 일 b471cde8-2a15-44e7-acce-e9a2a54511-/ .. / mmcblk6p0

하드 드라이브의 UUID를 기록합니다 (이 경우 58F6AA78F6AA55D2)

파일 끝에 다음 줄을 추가합니다. / etc / fstab

UUID = 58F6AA78F6AA55D2 / mnt / 데이터 ntfs-3g 기본값 0
위의 명령에서 얻은 UUID를 변경해야합니다.

Raspberry Pi를 다시 시작하면 하드 드라이브가 자동으로 마운트됩니다.

마지막으로 madsonic 서비스를 시작합니다.

# systemctl madsonic.service 시작

시스템이로드 될 때마다 서비스가 자동으로 시작되도록하려면.

# systemctl 활성화 madsonic.service

그리고 짜잔, 우리는 음악 스트리밍 서버를 가지고 있습니다.

일단 서비스 Madsonic, 선호하는 브라우저에서 포트 4040과 함께 Raspberry Pi의 IP 주소로 입력 할 수 있습니다. 192.168.17.1:4040 데이터를 사용하여 입력합니다. 사용자 = 관리자 암호 = 관리자.

Madsonic

이미 웹 인터페이스 내에서 새 사용자를 추가하고 기본 비밀번호를 변경할 수 있습니다.

글쎄, 이것은 나의 첫 번째 기여입니다. 당신이 그것을 좋아하기를 바랍니다.

푸엔테스 :
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 Ángel Gatón
  2. 데이터의 목적 : 스팸 제어, 댓글 관리.
  3. 합법성 : 귀하의 동의
  4. 데이터 전달 : 법적 의무에 의한 경우를 제외하고 데이터는 제 XNUMX 자에게 전달되지 않습니다.
  5. 데이터 저장소 : Occentus Networks (EU)에서 호스팅하는 데이터베이스
  6. 권리 : 귀하는 언제든지 귀하의 정보를 제한, 복구 및 삭제할 수 있습니다.

  1.   x11tete11x

    나는 rasp가 없지만 홈 스트리밍 서버 xD라면 mediatomb을 사용한 적이 있습니까? 그렇다면 이것에 비해 무엇을 말할 수 있습니까? 나는 mediatomb를 사용합니다. 언뜻보기에 madsonic 인터페이스는 xD mediatomb에 천 턴을 제공합니다. "WAN"을 통해 스트리밍을 할 수 있는지 그리고 더 나은 보안 프로토콜에 의한 것인지 아는 것이 저에게 많은 관심을 끌 것입니다. 왜냐하면 mediatomb는 웹을 통해 관리 할 수 ​​있지만 https로는 관리 할 수없고 (지금까지는 안드로이드 용 클라이언트 만 찾았습니다) 할 수 있기 때문입니다. 프로토콜의 보안이 의심되기 때문에 WAN을 통해 mediatomb로 스트리밍 (휴대폰에서 내 홈 서버에서 음악을 재생할 수있는 경우) 일반적으로 사용하는 것과 아무런 관련이없는 암호를 입력하고 동일한 mediatomb가 활성화됩니다. 누군가가 액세스하면 xD를 만질 수 없도록

    1.    에로 랜드

      안녕하세요, 저는 mediatomb를 사용하지 않았습니다. 질문에 관해서는 물론 WAN을 통해 madsonic을 사용할 수 있으며 WAN을 통해 madsonic을 사용하며 저에게 매우 잘 작동합니다. Madsonic은 https 사용을 허용하므로 구성 파일에서 활성화하면됩니다 : madsonic_https_port = 8443 및 voila 🙂
      안드로이드 용 어플리케이션은 초음파 호출을 사용하는데 매우 좋습니다. 노래를 캐시에 저장하여 연결하지 않고도들을 수 있습니다. xD

      인사말.

    2.    로날

      친구, Arch ARM에 대해 어떤 경험이 있습니까? 저는 Arch 사용자입니다. .. rasbian을 설치합니다. 그러나 나는 repos의 문제에 지쳤습니다. 아치를 원합니다. 공식 저장소에없는 패키지는 어떻습니까? 예를 들어 AUR 패키지를 컴파일 할 수 있습니까?

  2.   탄락스

    매우 흥미로운 기사!
    Android에서 귀하의 클라이언트를보기 위해 빠른 검색을 수행했으며 유료임을 확인했습니다. 무료 대안이 있습니까?

    1.    에로 랜드

      안녕하세요, 무료 대안이 있으면 초음파를 사용합니다.
      https://play.google.com/store/apps/details?id=com.thejoshwa.ultrasonic.androidapp&hl=es

      인사말.

  3.   MSX

    Subsonic은 야수이며 Java 똥을 사용하지 않습니다. 내가 착각하지 않는다면 ownCloud는 오디오 및 비디오를 스트리밍 할 수 있으며 최소한 JVM을 실행하고 다른 무거운 응용 프로그램을 맨 위에 두는 것과 비교할 때 매우 가볍습니다.

    자바는 죽어야합니다-플래시와 동일합니다.

    1.    에로 랜드

      실제로 ownCloud에는 기본 스트리밍 서비스가 있으며, 예를 들어 flac 음악이 많은 경우 트랜스 코딩이 가능하다는 장점이 있습니다. 그리고 당신도 맞습니다. Java를 사용하는 것은 무거운 프로그램이지만 지금은 256MB RAM Raspberry를 사용하는 데 아무런 문제가 없었습니다.

      1.    엘리오타임3000

        음, OpenJDK 7 (오라클이 보여주는 6이 아님)은 성능면에서 훨씬 더 안정적입니다. 그러나 Java가없는 버전이 있으면 축하합니다 (적어도 Spotify의 좋은 대안입니다).

        그건 그렇고, OWnCloud에는 스트리밍이 있습니까?! 이미 4shared 인 것 같습니다.

  4.   ROLO

    나는 minidlna를 사용하며 아무것도 소비하지 않으며 비디오, 사진 및 음악에 액세스 할 수 있으며 PC 또는 TV의 비디오 플레이어에서 캡처 할 수 있으며 매우 제한된 웹 페이지를 게시 할 수있는 가능성도 제공합니다.

    또 다른 한가지, Madsonic은 스트리밍 서비스 또는 스 트리머입니까? «… Madsonic은 Subsonic…의 웹 기반 미디어 스 트리머 및 주크 박스 포크입니다. , Madsonic은 거의 모든 오디오 형식의 즉석 변환 및 스트리밍을 지원합니다.»한 용어와 다른 용어간에 얼마나 많은 차이가 있는지 모르겠습니다.

    1.    에로 랜드

      차이점이 무엇인지 잘 모르겠습니다. 스트리 머가 소프트웨어가 스트리밍 할 수 있다고 말하는 데 사용되는 것 같습니다.하지만 반복합니다. xD가 확실하지 않습니다.

  5.   작전

    나는 현재 GPL3 라이센스가있는 무료 소프트웨어 인 것을 보았 기 때문에 Subsonic의 Ampache를 사용하고 있지만 모든 기능을 갖고 싶다면 subsonic이 탑재 된 서버에 대한 라이센스 키를 지불해야합니다. ampache 대신 madsonic을 사용하면 어떤 이점을 얻을 수 있습니까?

    1.    에로 랜드

      안녕하세요, madsonic은 아음속의 포크입니다. madsonic에서만 키를 지불 할 필요가 없습니다. Ampache와 관련하여 나는 그것을 사용하지 않았으며 ampache와 관련하여 madsonic의 장점이 무엇인지 말할 수 없었습니다 .Google 에서이 링크를 찾았습니다. 아마 도움이 될 수 있습니다. http://www.brunobense.com/2013/04/subsonic_ftw/.