2016年10月30日日曜日

Raspbian + MinimServer + BubbleUPnP Server

完全な備忘録です(^^;)

Raspbian Jessie Lite をインストールした Raspberry Pi 3 Model B を起動。

$ssh pi@raspberrypi.local
password: raspberry

設定画面を起動して"1 Expand Filesystem" を実行&再起動。
$ sudo raspi-config


java をインストール
$ sudo apt-get update && sudo apt-get install oracle-java8-jdk

BubbleUPnP Server をダウンロードするディレクトリを作る。

$ mkdir bubbleupnp

作ったディレクトリに移動。
$ cd bubbleupnp

BubbleUPnP Server をダウンロード。
$ sudo wget http://www.bubblesoftapps.com/bubbleupnpserver/BubbleUPnPServer-distrib.zip -O bubbleupnpserver.zip

解凍.。
$ unzip bubbleupnpserver.zip

"launch.sh" のアクセス権を変更
$ sudo chmod +x launch.sh

BubbleUPnP サーバーを起動。
$ sudo ./launch.sh > /dev/null 2>&1 &

ブラウザで動作チェック。
http://raspberrypi.local:58050/

起動時にBubbleUPnP Server がスタートするよう設定。nano を使って /etc/init.d/ に "BubbleUPnPServer" というファイルを作成し、以下のテキストをコピペしてセーブ。

$ sudo nano /etc/init.d/BubbleUPnPServer
---------------------------------------------------------------------------------------------

#!/bin/bash
### BEGIN INIT INFO
# Provides:          BubbleServer
# Required-Start:    $remote_fs $syslog
# Required-Stop:     $remote_fs $syslog
# Default-Start:     2 3 4 5
# Default-Stop:      0 1 6
# Short-Description: BubbleUPnP Server Background Service Management
# Description:       Used to ensure BubbleUPnP starts/stops etc
### END INIT INFO

DAEMON_PATH="/home/pi/bubbleupnp"

DAEMON="java -Xss256k -Djava.awt.headless=true -Djava.net.preferIPv4Stack=true -Dfile.encoding="UTF-8" -jar BubbleUPnPServerLauncher.jar"
DAEMONOPTS=""

NAME=BubbleUPnPServer
DESC="Runs BubbleUPnPServer"
PIDFILE=/var/run/$NAME.pid
SCRIPTNAME=/etc/init.d/$NAME

case "$1" in
start)
  printf "%-50s" "Starting $NAME..."
  cd $DAEMON_PATH
  PID=`$DAEMON $DAEMONOPTS > /dev/null 2>&1 & echo $!`
  #echo "Saving PID" $PID " to " $PIDFILE
        if [ -z $PID ]; then
            printf "%sn" "Fail"
        else
            echo $PID > $PIDFILE
            printf "%sn" "Ok"
        fi
;;
status)
        printf "%-50s" "Checking $NAME..."
        if [ -f $PIDFILE ]; then
            PID=`cat $PIDFILE`
            if [ -z "`ps axf | grep ${PID} | grep -v grep`" ]; then
                printf "%sn" "Process dead but pidfile exists"
            else
                echo "Running"
            fi
        else
            printf "%sn" "Service not running"
        fi
;;
stop)
        printf "%-50s" "Stopping $NAME"
            PID=`cat $PIDFILE`
            cd $DAEMON_PATH
        if [ -f $PIDFILE ]; then
            kill -HUP $PID
            printf "%sn" "Ok"
            rm -f $PIDFILE
        else
            printf "%sn" "pidfile not found"
        fi
;;

restart)
    $0 stop
    $0 start
;;

*)
        echo "Usage: $0 {status|start|stop|restart}"
        exit 1
esac

---------------------------------------------------------------------------------------------
コピペしたら、
DAEMON_PATH="/var/www/bubbleupnp"

DAEMON_PATH="/home/pi/bubbleupnp"     (解凍したディレクトリを指定)
に変更。

ctrl + x ----> y   enter で終了。

"/etc/init.d/BubbleUPnPServer" のアクセス権を変更。
$ sudo chmod 755 /etc/init.d/BubbleUPnPServer

"rc.d" ディレクトリにシンボリックリンクを張る。
$ sudo update-rc.d BubbleUPnPServer defaults

再起動。
$ sudo reboot

ブラウザで動作を確認。
http://raspberrypi.local:58050/

成功!

再度ログイン。
$ssh pi@raspberrypi.local
password: raspberry

起動時に NAS をマウントする設定。
NAS のユーザー&パスワードを "/etc/fstab.cred" というファイルを作って保存。
$ sudo nano /etc/fstab.cred
---------------------------------------------------------------------------------------------
username=USER
password=PASSWORD
---------------------------------------------------------------------------------------------
ctrl + X  ----> y -----> enter で終了

"fstab.cred のアクセス権を設定。
$ sudo chmod 600 /etc/fstab.cred

"/etc/fstab" に以下の1行を追加。
$ sudo nano /etc/fstab
---------------------------------------------------------------------------------------------
//192.168.xx.xx/Multimedia/Music /mnt/storage cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
*Description
//NASのアドレス/マウントするディレクトリ /mnt/NASの名前 cifs credentials=/etc/fstab.cred,iocharset=utf8,file_mode=0777,dir_mode=0777 0 0
---------------------------------------------------------------------------------------------
ctrl + X  ----> y -----> enter で終了

一度再起動(必要かどうか忘れたので念のため記載)
$ sudo reboot

RasPi の 電源を切って、MinimServer の "tar ball" をコピーした USBメモリーを RasPi に差して再度電源ON。

SSH でログイン。
$ssh pi@raspberrypi.local
password: raspberry

USB メモリーがどのディバイスとして認識されているか調べる。
$ sudo fdisk -l
-----------------
Device     Boot Start      End  Sectors  Size Id Type
/dev/sda1       35136 62324735 62289600 29.7G  c W95 FAT32 (LBA)
---------------------

USBメモリーをマウント。
$ sudo mount /dev/sda1 /media

マウント・ポイントへ移動。
$ cd /media

tar ball を移動。
$ sudo mv MinimServer-0.8.4-linux-armhf.tar /home/pi/minimserver

USBメモリーをアンマウント。
$ sudo umount /dev/sda1

tar ball を移動したディレクトリに移る。
$ cd /home/pi/minimserver

tar ball を解凍。
$ tar -xf MinimServer-0.8.4-linux-armhf.tar

MinimServerのセットアップ。
$ minimserver/bin/setup

MinimServerをスタート。
$ minimserver/bin/startc

>Enter content directory, or null to continue:
#/mnt/strage

・・・成功!
がしかし、ミスって "content directry" が入力できなかった模様。
Minim Watch でなぜか設定変更できず。
http://raspberry piのIP:9790
で、MinimServer Status のページを表示して、content directry を設定することができた。

(追記)
ついでに USBメモリを自動認識させるためのパッケージをインストール。
$ sudo apt-get update
$ sudo apt-get install usbmount

(追記)
トランスコード機能を試すためにコーデックライブラリの "avconv" をインストール。
$ sudo apt-get update
$ sudo apt-get install libav-tools

確認。
$ ls -l /usr/bin/avconv
-rwxr-xr-x 1 root root 133632 Oct  8 03:06 /usr/bin/avconv

成功。

MinimWatch で Transcoding を設定。
alac:wav,aac:wav,mp3:wav
alac:wav24;88,aac:wav24;88,mp3:wav24;88



(追記)
iPad でシャットダウンするため固定IPアドレスを設定。以下を末尾に追加。
$ sudo nano /etc/dhcpcd.conf
---------------------------------------
interface eth0
static ip_address=192.168.x.x/24
static routers=192.168.x.x
static domain_name_servers=192.168.x.x
---------------------------------------------------





参考にさせていただいたサイト様
色々参考になること
http://inaz2.hatenablog.com/entry/2016/04/17/160226
content directry を追加する方法
http://forum.minimserver.com/showthread.php?tid=1338
USB の自動マウント
http://mmbrothers.exblog.jp/17039816
MinimStreamer のユーザーガイド
http://minimstreamer.com/userguide.html
avconv のインストール
http://www.recantha.co.uk/blog/?p=4106
MinimStreamerの設定
http://minimstreamer.com/userguide.html

固定IPアドレスの設定
http://qiita.com/MarieKawasuji/items/b088ffb252a92eee8f5d

ニーズがなさそうな内容なので、キチンと整理していません(^^;)
アクセスがそれなりにあるようなら、後日整理します。

0 件のコメント:

コメントを投稿