Notebook

これは日々の作業を通して学んだことや毎日の生活で気づいたことをを記録しておく備忘録である。

HTML ファイル生成日時: 2024/11/02 17:34:23.235 (台灣標準時)

Raspberry Pi 5 上で動いている NetBSD-10 で Bluetooth を使って音楽を聞く方法

NetBSD-10 をインストールしてある Raspberry Pi 5 で、 Bluetooth スピー カーを使って音楽を聞く方法を記録しておくでござる。

カーネルの再構築

/usr/src/sys/arch/evbarm/conf/GENERIC64 に以下の記述を追加し、カーネルを再構築するでござる。


# Bluetooth PCMCIA Controllers
#bt3c* at pcmcia? function ?             # 3Com 3CRWB6096-A
#btbc* at pcmcia? function ?             # AnyCom BlueCard LSE041/039/139

# Bluetooth SDIO Controllers
sbt* at sdmmc?

# Bluetooth USB Controllers
ubt* at uhub? port ?
aubtfwl* at uhub? port ?

# Bluetooth Device Hub
#bthub* at bcsp?
#bthub* at bt3c?
#bthub* at btbc?
#bthub* at btuart?
bthub* at sbt?
bthub* at ubt?

# Bluetooth HID support
bthidev* at bthub?

# Bluetooth Mouse
btms* at bthidev? reportid ?
wsmouse* at btms? mux 0

# Bluetooth Keyboard
btkbd* at bthidev? reportid ?
wskbd* at btkbd? console ? mux 1

# Bluetooth Apple Magic Mouse
btmagic* at bthub?
wsmouse* at btmagic? mux 0

# Bluetooth Audio support
btsco* at bthub?

Bluetooth daemon の起動

/etc/rc.conf に以下の記述を追加するでござる。


bluetooth=YES
btconfig_ubt0="name Daisuke"

Bluetooth daemon を起動するでござる。


# /etc/rc.d/bluetooth start
configuring Bluetooth controllers: ubt0.
starting Bluetooth Link Key/PIN Code manager
starting Bluetooth Service Discovery server

USB 接続の Bluetooth コントローラーを USB ポートに挿す

USB 接続の Bluetooth コントローラーを USB ポートに挿すでござる。


% dmesg | tail -2
[  2030.908268] ubt0 at uhub1 port 2
[  2030.908268] ubt0: vendor 0a12 (0x0a12) CSR8510 A10 (0x0001), rev 2.00/88.91, addr 2

付近の Bluetooth 機器を探す

付近にある Bluetooth 機器を探すでござる。


# btconfig -v ubt0 inquiry
ubt0: bdaddr 00:1a:7d:xx:xx:xx flags 0x403
Device Discovery from device: ubt0 ... 1 response
  1: bdaddr 04:21:44:xx:xx:xx (headset)
   : name "SRS-XB12"
   : class [0x240414] Loudspeaker  

SRS-XB12 という Bluetooth スピーカーが見つかったでござる。

見つかった機器のアドレスを /etc/bluetooth/hosts というファイルに書き込 むでござる。


# echo "04:21:44:xx:xx:xx headset" >> /etc/bluetooth/hosts

Bluetooth 機器とのペアリング

Bluetooth 機器とペアリングするでござる。


# btpin -d ubt0 -a headset -p 0000
# bta2dpd -D -a headset /dev/pad

bta2dpd を実行すると、 Bluetooth スピーカーと接続され、音が鳴るでござ る。

オーディオデバイスの設定

オーディオデバイスの設定を行うでござる。


# audiocfg list
0: [ ] audio0 @ pad0: Virtual Audio 10.0_STABLE
       playback: 2ch, 44100Hz
       record:   unavailable
       (P-) slinear_le 16/16, 2ch, { 44100 }
# audiocfg default 0
setting default audio device to audio0
# audiocfg list
0: [*] audio0 @ pad0: Virtual Audio 10.0_STABLE
       playback: 2ch, 44100Hz
       record:   unavailable
       (P-) slinear_le 16/16, 2ch, { 44100 }

音楽を再生してみる

あとは、音楽を再生するだけでござる。


% mpv /tmp/genichiro_20240830_2110.aac 
[ffmpeg/demuxer] aac: Estimating duration from bitrate, this may be inaccurate
 (+) Audio --aid=1 (aac 2ch 48000Hz)
AO: [sdl] 44100Hz stereo 2ch s32
A: 00:00:10 / 00:46:28 (0%)  
Exiting... (Quit)

期待通りに、音楽が再生されたでござる。

参考文献



Frequently accessed files

  1. Computer___Python/20220518_0.html
  2. Computer___Network/20230726_00.html
  3. Computer___Network/20230516_00.html
  4. Misc___Taiwan/20240207_00.html
  5. Computer___FreeBSD/20220621_0.html
  6. Computer___Python/20220715_0.html
  7. Food___Taiwan/20220429_0.html
  8. Computer___Network/20230508_00.html
  9. Computer___NetBSD/20220817_3.html
  10. Computer___Python/20220410_0.html
  11. Computer___Network/20240416_00.html
  12. Computer___Debian/20210223_1.html
  13. Computer___Network/20240130_00.html
  14. Computer___Python/20210124_0.html
  15. Computer___NetBSD/20230119_00.html
  16. Computer___NetBSD/20220428_0.html
  17. Computer___Python/20221013_0.html
  18. Computer___NetBSD/20220818_1.html
  19. Science___Math/20220420_0.html
  20. Computer___NetBSD/20240101_02.html
  21. Computer___TeX/20230503_00.html
  22. Computer___NetBSD/20230515_00.html
  23. Computer___NetBSD/20220808_0.html
  24. Science___Astronomy/20220503_0.html
  25. Computer___NetBSD/20210127_0.html
  26. Computer___Python/20240101_00.html
  27. Computer___Network/20220413_1.html
  28. Computer___NetBSD/20210204_0.html
  29. Computer___Python/20220816_1.html
  30. Travel___Taiwan/20220809_2.html


HTML file generated by Kinoshita Daisuke.