柄スタイル

ここは文系のオッサンがITに立ち向かう所

USBスピーカーからラズベリーパイの音を出す

      2018/07/24

ラズベリーパイにUSBスピーカーを繋いで音を出す

スピーカーの無いラズベリーパイから音を出すには、イヤフォンジャック、HDMIそしてUSBスピーカーがあります。今回はUSBから電源と信号を出力するタイプのスピーカーを使用します。

USBスピーカー

使用したもの

  • Rasberrypi3 Model B Rspbian GNU/Linux 9.4 (stretch)
  • ELECOM USBスピーカー MS-P08USBBK
    (これは安価でUSBケーブルのみの接続のため配線がスッキリします。)
  • USB機器の確認

    USBスピーカーがちゃんと繋がっているか確認します。

    $ lsusb
    

    Bus 001 Device 005: ID 0d8c:013c C-Media Electronics, Inc. CM108 Audio Controller
    Bus 001 Device 004: ID 1a81:1004 Holtek Semiconductor, Inc.
    Bus 001 Device 003: ID 0424:ec00 Standard Microsystems Corp. SMSC9512/9514 Fast Ethernet Adapter
    Bus 001 Device 002: ID 0424:9514 Standard Microsystems Corp. SMC9514 Hub
    Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

    桃文字のようにUSB機器として認識されています。

    オーディの確認

    オーディオの割り当ての番号を調べます。

    $ aplay -l
    

    **** ハードウェアデバイス PLAYBACK のリスト ****
    カード 0: ALSA [bcm2835 ALSA], デバイス 0: bcm2835 ALSA [bcm2835 ALSA]
    サブデバイス: 7/7
    サブデバイス #0: subdevice #0
    サブデバイス #1: subdevice #1
    サブデバイス #2: subdevice #2
    サブデバイス #3: subdevice #3
    サブデバイス #4: subdevice #4
    サブデバイス #5: subdevice #5
    サブデバイス #6: subdevice #6
    カード 0: ALSA [bcm2835 ALSA], デバイス 1: bcm2835 ALSA [bcm2835 IEC958/HDMI]
    サブデバイス: 1/1
    サブデバイス #0: subdevice #0
    カード 1: Device [USB PnP Sound Device], デバイス 0: USB Audio [USB Audio]
    サブデバイス: 1/1
    サブデバイス #0: subdevice #0

    桃文字がUSBスピーカーです。この場合「カード1」の「デバイス0」として認識されています。

    モノラルのwavを再生する場合

    $ aplay -D plughw:1,0 test.wav
    

    再生中 WAVE 'test.wav' : Signed 16 bit Little Endian, レート 48000 Hz, モノラル
    OpenJTalkの音声はモノラルなので「plug」を付けると再生できます。

    mp3を再生する場合

    $ mpg321 -a hw:1,0 test.mp3
    

    Playing MPEG stream from test.mp3 ...
    MPEG 1.0 layer III, 192 kbit/s, 44100 Hz joint-stereo

    [0:01] Decoding of robot.mp3 finished.

    GUIでUSBスピーカーをデフォルトにする

    Remminaかディスプレイを繋いでGUIから設定します。
    設定→Audio Device Settings → Audio Advantage Microll (Alsa mixer)を選択します。それからMake Defaultをクリックします。

    USBスピーカー

    まとめ

    USBスピーカーはRaspberrypi3Bには繋いだだけでは音は出ません。USBスピーカーを出力先に設定し、音量の設定が必要となります。他の機器でイヤホンジャック等に差し込むと自動的に出力先が切り替わるものもありますが、それと同じ感覚だと戸惑うかもしれません。

     

     - Raspberry Pi ,