I'm going through the sample scripts in the rae-ros repo. When I run this:

ros2 run rae_bringup audio_spectrum.py

I see the LCD showing something is playing and the LEDs are being triggered, but there is no sound. How is the sound (speaker) enabled?

Also, maybe related but when running:

gst-launch-1.0 --gst-plugin-path=install/gst_bridge/lib/gst_bridge/ filesrc location=sample.mp3 ! decodebin ! audioconvert ! rosaudiosink ros-topic="/audio_out"

I get the error:

WARNING: erroneous pipeline: no element "rosaudiosink"

Hi @mjohannessen, the sound API changed a little bit with speakers now having a service for playing mp3 file directly, although that will be updated in near future to provide both options. Also CC @DaniloPejovic

OK - it looks like audio_spectrum.py just demos the LCD screen with mock frequency data.

For anyone testing the speakers, to test the speakers using the sample.mp3 file in the rae-ros project (run within the docker container started with the image luxonis/rae-ros-robot:humble):

ros2 run rae_hw speakers_node

Then

ros2 service call play_audio rae_msgs/srv/PlayAudio "{mp3_file: '/ws/src/rae-ros/sample.mp3'}"

speakers_node uses mpg123 which is installed in /usr/bin/mpg123. The mpg123_open function in speakers_node.cpp uses a filesystem path (see https://www.mpg123.de/api/group__mpg123__input.shtml).