Raspberry piをbluetoothスピーカーにする

前回の「Raspberry piをNAS兼音楽プレイヤーにする(MPD編)」でRaspberry Pi にスピーカーを接続したので、今度は Bluetooth スピーカーの機能も持たせてみます。NASストレージ内の音楽だけでなく、スマホ内の音楽を再生したり、スマホからAmazon Musicなどを再生できるようになります。

ただ、音楽再生には十分ですが、遅延が大きいですので、動画再生やゲームなどには向いていません。

また狙ってはいなかったのですが、試してみたらマルチポイント接続もできました! スマホとPCを同時に接続して同時に再生することも可能です。

目指す構成

今までの NAS 内の音楽を再生する機能を持ちつつ、Bluetoothスピーカーの機能も持たせます。これにより、NAS内の音楽再生に加えて、Bluetoothで接続すればスマホ内の音楽やスマホで再生した Youtube、 Amazon Music などのサブスク系音楽も聞けるという、音楽再生を全て 1 つに集約したような音楽サーバを目指します。

A2DPの実装: pulseaudio bluetooth と bluealsa

Linux での Bluetooth スタックと言えば bluez なのですが、A2DPについては bluez 単体ではサポートしておらず、プラグインの形で別のソフトが機能提供しているようです。

そして bluez 用の A2DP プラグインの実装は2つあるようです。

  • pulseaudio bluetooth module
  • bluealsa (bluez-alsa)

ソフトウェアの構造としてはそれぞれ以下のような感じになります。

…続きを読む

Raspberry piをNAS兼音楽プレイヤーにする(MPD編)

ちょっと間が空いてしまいましたが、前回の記事で Raspberry Pi を NAS 化しましたので、この記事ではNAS の中の音楽データを再生するミュージックサーバの設定を行います。ミュージックサーバとしては、Music Player Daemon(mpd) を使い、スマホなどからNAS内の音楽を再生できるようにします。

今回は pulseaudio を使ってサウンドを出力したのですが、pulseaudio の設定をいじるのは初めてだったので、色々と落とし穴にハマりました。そのハマったポイントも含めて説明していきます。

軽くおさらい

Raspberry Pi に NAS を構築し、Music Player Daemon(mpd) を使ってミュージックサーバを立ち上げてNASの中に格納された音楽を再生できるようにします。MPD はサーバ/クライアント構成の音楽プレイヤーで、Raspberry Pi にサーバを立ち上げ、スマホやPCのクライアントから音楽が再生することができます。

スマホの音楽を再生するのではなく、NASの中の音楽を再生するので、スマホに音楽を転送する必要はありません。逆に、この構成ではスマホの中の音楽をスピーカーで聴くことはできません。

再掲ですが、図にすると以下のような構成です。

created by Rinker
エレコム
¥4,480 (2024/04/27 07:49:12時点 Amazon調べ-詳細)

…続きを読む

Raspberry piをNAS兼音楽プレイヤーにする(NAS編)

OpenVPN サーバのインストールに続いて、Raspberry Pi サーバ化の第2弾です。外付け HDD を使って、NAS機能をもたせ、その中の音楽ファイルを再生するプレイヤーに仕立てます。

Raspberry Pi2 を使った場合、100Base の時点で NAS の性能としては期待できません(最大でも10MB/s程度)。もっとアクセス速度が欲しい場合は Raspberry Pi4 が良いでしょう。USB3.0、GbE 対応と NAS に必要となるバス速度が桁違いに早くなっています。

ただ、音楽データを置いたり、写真データ、バックアップデータなど容量がかさばるけど、頻繁にアクセスしないデータ置き場であれば Pi2 でも十分です。

構想

NASとしてのプロトコルは Windows からアクセスすることを考慮して SMB サーバを立てることにします。samba による SMB サーバ構築は Linux では昔から実施されている枯れた技術ですね。

音楽プレイヤーとしては今回は Music Player Daemon(mpd) を使います。サーバ/クライアント構成の音楽プレイヤーで、Raspberry Pi にサーバを立ち上げ、スマホやPCのクライアントから音楽を再生できるようにします。

音質にこだわった方は Rapsberry Pi に I2S 接続のDACを繋げたり、USB DAC を接続したりして高音質なプレイヤーを作り上げていたりしますが、今回はRaspberry Piのアナログオーディオ出力をそのまま使います。今回の私の目的はリビングに据え置きの安物スピーカーでFMラジオ的に音楽を鳴らすことなので、そもそもあまり音にこだわる意味がない環境です。

図にすると以下のような感じです。 …続きを読む

Raspberry Pi2 のVPNサーバの実力は?

先日の記事で Raspberry Pi2 を自分専用 OpenVPN サーバにしました。

Raspberry Pi2 というと今ではそれほど性能は高くないので VPN サーバとして実用的な速度が出るのかが気になるところです。

今回、結構速いWiFiスポットがあったので VPN サーバの性能を測定してみました。

結果から言うと十分実用的なスループットが得られました。

 

まずは自宅の環境を説明します。自宅にはマンションタイプの光回線を引いていて、幸運にもマンションまでは 1Gbps で接続されているそうです。

自宅のルータに有線で接続した時のスループットが以下です。

スピードテストはUSENのインターネット回線スピードテストを使いました。

自宅のインターネット回線のスループット(有線LAN接続時)

…続きを読む

raspberry piで自宅VPN環境を構築(openvpn編)

買ってから今まで有効利用されずに家に転がっていた Raspberry pi2 を VPN サーバに仕立てあげてみました。非力な Pi2 ですが、なんとか実用できるレベルで使えています。

今ではコロナの影響もあって外でPC作業をすることはほとんどなくなりましたが、それ以前は気分転換にカフェや漫画喫茶でPC作業をすることもありました。無料のWiFiも増えてきましたし、ワイヤレスゲートを契約しているので、ある程度の場所ではWiFiに困らなくなりました。

ただ、やはりセキュリティ的にはちょっと安心できない気がするので、しばらくは無料の VPN Gate を使っていました。回線速度も結構速く、公衆無線LANの盗聴防止という意味では十分でした。VPNさえ繋いでしまえば、WPAなどの暗号化がされていないオープンなAPでも安心です。

とはいえ、VPN Gate も他人の家の回線を使っているという点では不安はあるので、自宅でもVPNサーバを立ち上げることにしました。

そんな VPN サーバを Raspberry Pi にインストールするまでを、忘れたときのために一からメモしていこうと思います。VPN関係なく Raspberry Pi をサーバに仕立てる共通的な作業も書いたので長くなってしまいました・・

…続きを読む