AndroidのオーディオをPCに転送して視聴ということをよくやるのですが,昔は3.5mmオーディオミニジャックで最近はBluetooth A2DP sourceで転送しています.
今回USBで転送できる sndcpy を試してみました.
Tip |
$ sudo apt install vlc |
sndcpyのReleasesから最新 🏛️を入手します.現在は v1.1 が最新でLinux版(sndcpy-v1.1.zip)とWindows版(sndcpy-with-adb-windows-v1.1.zip)があります.
今回Linuxなので sndcpy-v1.1.zipとチェックサムとその署名ファイルをダウンロードして確認します.
$ wget https://github.com/rom1v/sndcpy/releases/download/v1.1/sndcpy-v1.1.zip \ https://github.com/rom1v/sndcpy/releases/download/v1.1/SHA256SUMS.txt \ https://github.com/rom1v/sndcpy/releases/download/v1.1/SHA256SUMS.txt.asc $ sha256sum -c ./SHA256SUMS.txt sndcpy-v1.1.zip: 完了 $ gpg --verify ./SHA256SUMS.txt.asc
適当なディレクトリに展開します.
$ unzip -l ./sndcpy-v1.1.zip
Archive: ./sndcpy-v1.1.zip
Length Date Time Name
--------- ---------- ----- ----
95591 2021-11-30 07:13 sndcpy.apk
799 2021-11-30 07:13 sndcpy
1028 2021-11-30 07:13 sndcpy.bat
--------- -------
97418 3 files
$ mkdir ./sndcpy
$ cd sndcpy
$ unzip ../sndcpy-v1.1.zip準備が出来たのでAndroid端末をUSB接続した状態で実行します.
$ ./sndcpy
Waiting for device...
* daemon not running; starting now at tcp:5037
* daemon started successfully
Performing Streamed Install
Success
28200
Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.rom1v.sndcpy/.MainActivity }
Playing audio...
VLC media player 3.0.16 Vetinari (revision 3.0.13-8-g41878ff4f2)
[00005616cdcf65e0] dummy interface: using the dummy interface module...
[00007f5a800015c0] main stream error: connection error: Connection refused
[00007f5a94000c80] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 0 ms)
[00007f5a94000c80] main input error: ES_OUT_SET_(GROUP_)PCR is called too late (pts_delay increased to 1 ms)この状態でAndroid側で音を再生してみるとPC側から聞こえます.このときAndroid側はミュートでもOKで,音量を上げるとAndroid/PC両方から音が出ました.
ということで簡単に動作したのですが問題が.かなり音が悪いです.音質はいいけど細かく途切れる感じです.以下のIssueが近いかな?
ということで一旦使うのをやめることにします.sndcpyはAndroidにsndcpy.apkをインストールするのでこれを削除します.
$ adb uninstall com.rom1v.sndcpy Success
これで元に戻ったはずです.
sndcpy は現段階では環境を選ぶ(Android 10以降)し音もいまいちなのでこれからに期待です.とりあえずはこれまで通りBluetooth A2DPで繋ごうと思います.(これはこれで2台同時に接続できないという問題があります)
$ dpkg-query -W adb adb 1:10.0.0+r36-7 $ lsb_release -dr Description: Debian GNU/Linux 11 (bullseye) Release: 11 $ arch x86_64
One thought to “sndcpyでAndroidのサウンドをUSB経由でPCに転送”