speakers_driver
Last updated
Last updated
Пакет обеспечивает вывод звука на внешние динамики: воспроизведение аудио, установка громкости.
Воспроизведение звука аппаратно происходит через .
Запуск пакета через CLI:
Перед экспериментами отключите все запущенные пакеты. В частности, остановите , чтоб отключить пакеты, запущенные автоматичеси: sudo systemctl stop robohead.service
При запуске пакета начинают работать ROS-сервисы:
/speakers_driver/PlayAudio - запустить проигрывание аудио-файла
/speakers_driver/SetVolume - установить громкость воспроизведения
/speakers_driver/GetVolume - получить текущую установленную громкость
Запускает проигрывание аудио-файла. Пример вызова через CLI для воспроизведения файла, находящегося по пути /home/pi/robohead_ws/src/robohead/speakers_driver/examples/file.mp3:
Обозначения:
path_to_file - путь до аудио-файла, который необходимо воспроизвести. Вместо аудио-файла можно указать путь до любого стримингового аудио-потока в Интернете (например, онлайн-радио). Если оставить пустым, то произойдет принудительная остановка текущего воспроизводимого аудио.
is_blocking - блокирующий ли вызов сервис? 0 - нет, 1 - да
is_cycled - зациклить ли воспроизведение? 0 - нет, 1 - да
Будьте аккуратны при использовании блокирующего вызова и зацикленного воспроизведения
Возвращаемые значения:
0 - успех
-1 - аудио-файл/аудио-поток не найден
Тип сообщения ROS-сервиса: speakers_driver/PlayAudio
Устанавливает громкость воспроизведения аудио. Пример вызова через CLI, с установкой громкости 30%:
Обозначения:
volume - громкость (от 0 до 100)
Возвращаемые значения:
0 - успех
-1 - некорректная громкость (должна быть от 0 до 100)
Тип сообщения ROS-сервиса: speakers_driver/SetVolume
Возвращает текущую установленную громкость воспроизведения аудио. Пример вызова через CLI:
Никакие аргументов при вызове передавать не нужно.
Возвращаемое значение: текущая установленная громкость 0...100
Тип сообщения ROS-сервиса: speakers_driver/GetVolume
Пример работы с пакетом на Python:
Конфигурационный файл speakers_driver/config/speakers_driver.yaml:
service_PlayAudio_name - название сервиса для воспроизведения аудио
service_SetVolume_name - название сервиса для установки громкости воспроизведения
service_GetVolume_name - название сервиса для получения текущей громкости воспроизведения
default_volume - стандартная громкость воспроизведения при запуске пакета
mpd_host - адрес mpd-сервера, где открыт сокет
mpd_port - порт mpd-сервера, на котором открыт сокет
update_hz - скорость обновления при блокирующем вызове