jsk-ros-pkg / jsk_3rdparty

42 stars 60 forks source link

Missing dependency of `ros_speech_recognition` for `ubuntu-sounds` package #452

Closed sktometometo closed 1 year ago

sktometometo commented 1 year ago

ros_speech_recognition uses /usr/share/sounds/ubuntu/stereo/bell.ogg, which is in ubuntu-sounds package. https://packages.ubuntu.com/focal/all/ubuntu-sounds/filelist

But there is no dependency defintion.

$ roslaunch ros_speech_recognition speech_recognition.launch 
... logging to /home/sktometometo/.ros/log/5bcb5800-da9d-11ed-baa0-d9f575b2e0e5/roslaunch-lee-114541.log
Checking log directory for disk usage. This may take a while.
Press Ctrl-C to interrupt
Done checking log file disk usage. Usage is <1GB.

started roslaunch server http://lee:44229/

SUMMARY
========

PARAMETERS
 * /audio_capture/channels: 1
 * /audio_capture/depth: 16
 * /audio_capture/device: 
 * /audio_capture/format: wave
 * /audio_capture/sample_rate: 16000
 * /rosdistro: noetic
 * /rosversion: 1.16.0
 * /speech_recognition/audio_topic: /audio
 * /speech_recognition/auto_start: True
 * /speech_recognition/continuous: True
 * /speech_recognition/depth: 16
 * /speech_recognition/enable_sound_effect: True
 * /speech_recognition/engine: Google
 * /speech_recognition/language: en-US
 * /speech_recognition/n_channel: 1
 * /speech_recognition/sample_rate: 16000
 * /speech_recognition/self_cancellation: True
 * /speech_recognition/tts_action_names: ['sound_play']
 * /speech_recognition/tts_tolerance: 1.0
 * /speech_recognition/voice_topic: /speech_to_text

NODES
  /
    audio_capture (audio_capture/audio_capture)
    sound_play (sound_play/soundplay_node.py)
    speech_recognition (ros_speech_recognition/speech_recognition_node.py)
    speech_recognition_candidates_to_string (ros_speech_recognition/speech_recognition_candidates_to_string.py)

auto-starting new master
process[master]: started with pid [114549]
ROS_MASTER_URI=http://localhost:11311

setting /run_id to 5bcb5800-da9d-11ed-baa0-d9f575b2e0e5
process[rosout-1]: started with pid [114561]
started core service [/rosout]
process[sound_play-2]: started with pid [114568]
process[audio_capture-3]: started with pid [114569]
process[speech_recognition-4]: started with pid [114570]
process[speech_recognition_candidates_to_string-5]: started with pid [114576]
/opt/ros/noetic/lib/sound_play/soundplay_node.py:330: PyGIDeprecationWarning: Since version 3.11, calling threads_init is no longer needed. See: https://wiki.gnome.org/PyGObject/Threading
  GObject.threads_init()
/opt/ros/noetic/lib/sound_play/soundplay_node.py:331: PyGIDeprecationWarning: GObject.MainLoop is deprecated; use GLib.MainLoop instead
  self.g_loop = threading.Thread(target=GObject.MainLoop().run)
[INFO] [WallTime: 1681460492.537533] [node:/speech_recognition] [func:ROSSpeechRecognition.__init__]: Enabled continuous mode
[INFO] [WallTime: 1681460492.538357] [node:/speech_recognition] [func:ROSSpeechRecognition.__init__]: Auto start: True
[INFO] [WallTime: 1681460493.007536] [node:/speech_recognition] [func:ROSSpeechRecognition.start_speech_recognition]: Set minimum energy threshold to 80.61014717670086
[ERROR] [WallTime: 1681460493.032939] [node:/sound_play] [func:SoundType.__init__]: Error: URI is invalid: /usr/share/sounds/ubuntu/stereo/bell.ogg
[ERROR] [WallTime: 1681460493.037534] [node:/sound_play] [func:SoundPlayNode.select_sound]: Error setting up to play "/usr/share/sounds/ubuntu/stereo/bell.ogg".Does this file exist on the machineon which sound_play is running?
[ERROR] [WallTime: 1681460493.041461] [node:/sound_play] [func:SoundType.dispose]: Exception in dispose: 'SoundType' object has no attribute 'bus'
[ERROR] [WallTime: 1681460493.045626] [node:/sound_play] [func:SoundPlayNode.execute_cb]: Exception in actionlib callback: 'NoneType' object has no attribute 'command'
sktometometo commented 1 year ago

Adding ubuntu-sounds entry to rosdep

https://github.com/ros/rosdistro/pull/36857