- python-pygame
- festival
- festvox-don
- alsa-base
- alsa-tools
cat /proc/asound/cards
Your card should be in the list. Make note of the number in front of the card, it will be used to tell alsa where to play sound from.
If your sound device does not show up, your kernel may not support it, or the module may not be loaded. For usb speakers, you may want to try:
modprobe snd-usb-audio
(not sure if this list is exhaustive)
Run (replace 75 with the number of the sound device to use):
asoundconf set-default-card 75
This will create .asoundrc.asoundconf in your home directory.
To make alsa use these settings, add the following line to ~/.asoundrc
include ".asoundrc.asoundconf"
To set this default to all users, copy this to the system-wide alsa configuration file:
mv ~/.asoundrc.asoundconf /etc/asound.conf
Start the sound play node, and have a look at the scripts in the scripts directory that exercise the node's functionality.
Besides setting default device as system wide settings, you can also specify audio device via rosparam
:
<launch>
<node name="soundplay_node" pkg="sound_play" type="soundplay_node.py">
<param name="device" value="hw:1,0" />
</node>
</launch>
or simply run: rosrun sound_play soundplay_node.py _device:="hw:1,0"
In the launch file above, ~device
parameter is set to hw:1,0
, which tells soundplay_node
to use audio device No. 0
connected to audio card No.1
.
To find card/device number which you want to use, execute:
sudo aplay -l