筆者は音楽プレイヤーとしてworkmanを利用していますが、曲を機器にインポートする時、まあだるいわけです。CDやらファイルをライブラリにインポートして、デバイスをパソコンに接続して、曲を転送して、、等々もろもろ作業します。そもそも持ち歩くデバイスが増えますし、本当にすぐ聞きたい曲は、結局workmanを介さず、YouTube等で聞いてしまうんですよね…。
SubSonicを利用することで、リモートサーバに設置されている音楽ファイルをインターネット経由でストリーミング再生することが可能です。(スマホは専用の有料アプリが必要です。)音声ファイルはFTPやら、SFTPでアップロードしなきゃですが、外出先でもできるので回線さえ確保できれば大分楽できます。加えて、SubSonicは豊富な設定項目を備えているので、以下のようなことも実現できます。
・専用アカウントを複数作成できる。
・wifi,Celler環境によって転送ビットレートを変える。
・ローカルに指定した曲をダウンロードする。
・指定容量をキャッシュし、無駄な通信を防ぐ。
今回は一部有償のソフトではありますが、SubSonicを利用して音楽ファイルをストリーミング再生できるようにしていきます。インストール作業も比較的簡単なため、是非試してみてはいかがでしょうか。
SubSonicはJavaで動作します。まずjava-1.7.0-openjdkをyumでインストールします。
[root@tagutagu-test ~]# yum install java-1.7.0-openjdk [root@tagutagu-test ~]# java -version java version "1.7.0_101" OpenJDK Runtime Environment (rhel-2.6.6.1.el6_7-x86_64 u101-b00) OpenJDK 64-Bit Server VM (build 24.95-b01, mixed mode)
公式ダウンロードページ にアクセスし、RedHat/Fedoraのrpmパッケージをダウンロードします。ダウンロードしたファイルは、FTP,SFTP等でサーバ上にアップロードしておきます。
[root@tagutagu-test ~]# ll | grep sub -rw-r--r-- 1 root root 59724284 May 4 01:04 subsonic-6.0.rpm
2でアップロードをしたrpmファイルを使ってインストールを行います。
[root@tagutagu-test ~]# rpm -ivh subsonic-6.0.rpm Preparing... ########################################### [100%] 1:subsonic ########################################### [100%] Starting subsonic ...
起動していることを確認します。
[root@tagutagu-test ~]# /etc/init.d/subsonic status subsonic (pid 1634) is running... [root@tagutagu-test ~]# ps auxwwwf | grep sub root 1691 0.0 0.0 6440 704 pts/0 S+ 10:18 0:00 \_ grep sub root 1634 31.2 9.7 1670100 187684 pts/0 Sl 10:17 0:19 java -Xmx150m -Dsubsonic.home=/var/subsonic -Dsubsonic.host=0.0.0.0 -Dsubsonic.port=4040 -Dsubsonic.httpsPort=0 -Dsubsonic.contextPath=/ -Dsubsonic.defaultMusicFolder=/var/music -Dsubsonic.defaultPodcastFolder=/var/music/Podcast -Dsubsonic.defaultPlaylistFolder=/var/playlists -Djava.awt.headless=true -verbose:gc -jar subsonic-booter-jar-with-dependencies.jar
Subsonicはクライアントとの通信にTCP4040ポートを利用します。リッスンしているか確認します。iptablesやF/W、ブロードバンドルータで4040ポートの通信をフォワードするように設定を行います。当方の環境ではNTT-PR200にて、静的IPマスカレードで許可設定を行いました。
※当方の環境は多段フォワードしているので、サーバのIPは10セグメントですが192セグメントにフォワードしています。通常は4040宛を4040宛にフォワードすればよいはずです。
[root@tagutagu-test ~]# netstat -tlnpu Active Internet connections (only servers) Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 1309/sshd tcp 0 0 127.0.0.1:25 0.0.0.0:* LISTEN 1388/master tcp 0 0 ::ffff:10.24.96.212:47774 :::* LISTEN 1634/java tcp 0 0 :::9412 :::* LISTEN 1634/java tcp 0 0 :::4040 :::* LISTEN 1634/java tcp 0 0 :::47854 :::* LISTEN 1634/java tcp 0 0 :::22 :::* LISTEN 1309/sshd tcp 0 0 ::1:25 :::* LISTEN 1388/master udp 0 0 ::ffff:10.24.96.212:49717 :::* 1634/java udp 0 0 :::1900 :::* 1634/java
音楽ファイルを準備します。ディレクトリを併せて作成しておきます。
[root@tagutagu-test ~]# ll /var/music/bump_of_chicken/ total 22608 -rw-r--r-- 1 root root 10237421 May 7 10:24 02-Hello,World.3gp -rw-r--r-- 1 root root 12907952 May 7 10:24 03-ray.3gp
管理画面にアクセスし、admin,adminでログインします。
ログイン後、Settingから言語をJapaneseに変更し、adminのパスワードを変更し、音声ファイルの拡張子を追加します。
※今回準備したファイルは3gpなので、3gpを追加しました。
「音楽フォルダ」から4で準備したファイルを追加し、データベーススキャンを行います。完了すると「設定を保存しました」メッセージが出力されます。
スキャン後にインデックスが反映されていることを確認します。この段階でPCから再生ができればひとまずインストールは成功です。
管理者権限を持たないユーザを作成することも可能です。「設定」→「ユーザ」から設定します。ビットレート設定などもここから行うことができます。
AppleStoreからiSub(600円)をインストールし、サーバへのログイン情報を入力します。
高い…。起動すると、はじめにサーバ情報を入力を促されます。
エラーがなければ認証は成功です。
無事表示されました!しかし再生してみると…スマホからはモノラル…?ステレオできないのか…?判明したら追記しようと思います。
2016-09-03 追加
スマホで再生した場合にモノラル再生となっていまう問題ですが、スマホのサウンド設定が「モノラル」になっていただけでした…。お恥ずかしい…
以上
Copyright © 2021 たぐたぐ.com. All rights reserved.