4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

Android端末をLinuxデスクトップの音声レシーバーとして使ってみる

Posted at

概要

Bluetoothイヤホンとか,Bluetoothレシーバーとかありますが,充電するのがめんどいですね.
スマホなら充電は基本できてるし,ずっとスマホにイヤホンを刺しておいて,PC使うときにスマホからPCの音が聞けたら素敵ですよね?

LinuxPCの音 -> LAN -> Android端末のイヤホンorスピーカー
というわけです.

はい.やってみましょう.

方法

PulseAudioの**module-simple-protocol-tcp**を使います.
PulseAudioは音声入出力デバイスを管理するためのサウンドサーバーですが,音声をTCPで別ホストのPulseAudioに流すという機能もあります.

しかし今回のクライアントはAndroid端末です.
そこで,**PulseDroid**というアプリを使います.
このアプリはmodule-simple-protocol-tcpでTCP越しに送られてきたデータをAndroidで再生してくれるオープンソースのAndroidアプリです.
めっちゃ古いアプリですが,Android 10のスマホでも問題なく利用できています

PC側設定

$ pactl load-module module-null-sink sink_name=TCP_output
$ pacmd update-sink-proplist TCP_output device.description=TCP_output
$ pactl load-module module-simple-protocol-tcp rate=48000 format=s16le channels=2 source=TCP_output.monitor record=true port={適当なポート番号} listen=0.0.0.0

その後,pavucontrolを起動します.

image898.png

「再生」タブから転送したい出力の出力先を「TCP_output」に設定します.

Android側設定

Androidアプリをダウンロードします.
https://github.com/dront78/PulseDroid/raw/master/bin/PulseDroid.apk

インストールして起動するとこのように表示されます.

ServerにPCのIPアドレス,Portに先程決めたポート番号を設定してStartボタンを押すと,音が流れ始めるはずです!!
image877.png

新しいAndroid端末は小電力化のために自動でバックグラウンドプロセスを一定時間で終了させる機能がついています.
なのでこの機能が採用される前のアプリをインストールすると予期せずバックグラウンドプロセスが終了することがあります.
PulseDroidも例にもれず,しばらく時間が経つと音が勝手に消えてしまいます.

それを回避するために,設定 -> アプリ情報 -> PulseDroid -> 詳細設定-> 電池の最適化 から,「最適化しない」を選んでおきます.

これで何時間でも使えるはずです!!!!

注意1

load-moduleした後に,PulseDroidでStartするようにしないと聞こえません.(逆になったときは単純にPulseDroidをStartし直せばOK)

永続設定

PCで起動時に自動でONにしたい場合は設定ファイルに書きましょう.
.config/pulse/default.pa

.include /etc/pulse/default.pa

load-module module-null-sink sink_name=TCP_output
update-sink-proplist TCP_output device.description=TCP_output
load-module module-simple-protocol-tcp rate=48000 format=s16le channels=2 source=TCP_output.monitor record=true port={適当なポート番号} listen=0.0.0.0

4
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?