What does aplay -l
produce ? - on CLI.
me@me-desktop:~$ aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: PCH [HDA Intel PCH], device 0: ALC283 Analog [ALC283 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 3: HDMI 0 [HDMI 0]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 7: HDMI 1 [HDMI 1]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 8: HDMI 2 [HDMI 2]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 9: HDMI 3 [HDMI 3]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: PCH [HDA Intel PCH], device 10: HDMI 4 [HDMI 4]
Subdevices: 1/1
Subdevice #0: subdevice #0
me@me-desktop:~$
And you use the first one for the output ?
Could you try on both CLI and NR (if the card 0, device 0
is the one being used):
set AUDIODEV=hw:0,0;play /home/me/Music/DontTouchTheButton.mp3
From the CLI
set AUDIODEV=hw:0,0;play /home/me/Music/DontTouchTheButton.mp3
Works.
From exec
node in NR
Silence.
This is the flow:(small)
[{"id":"8ba73428.e4004","type":"inject","z":"9245b569.9f881","name":"","topic":"","payload":"/home/me/Music/DontTouchTheButton.mp3","payloadType":"str","repeat":"","crontab":"","once":false,"onceDelay":0.1,"x":210,"y":2200,"wires":[["94b24ab3.5c41e8"]]},{"id":"94b24ab3.5c41e8","type":"exec","z":"9245b569.9f881","command":"set AUDIODEV=hw:0,0;play /home/me/Music/DontTouchTheButton.mp3","addpay":false,"append":"","useSpawn":"false","timer":"","oldrc":false,"name":"Play","x":390,"y":2200,"wires":[[],[],[]]}]
Hooking up the debug
nodes, it looks like the same as the previous output from the other command I was trying.
I looked over the fact that you are using ubuntu.
I still suspect it is a permission problem, could also be a shot in the dark
ls -l /dev/snd/
me@me-desktop:~$ ls -l /dev/snd/
total 0
drwxr-xr-x 2 root root 60 Nov 23 15:33 by-path
crw-rw----+ 1 root audio 116, 2 Nov 23 15:33 controlC0
crw-rw----+ 1 root audio 116, 10 Nov 23 15:33 hwC0D0
crw-rw----+ 1 root audio 116, 11 Nov 23 15:33 hwC0D2
crw-rw----+ 1 root audio 116, 4 Nov 23 15:33 pcmC0D0c
crw-rw----+ 1 root audio 116, 3 Nov 23 15:33 pcmC0D0p
crw-rw----+ 1 root audio 116, 9 Nov 23 15:33 pcmC0D10p
crw-rw----+ 1 root audio 116, 5 Nov 23 15:57 pcmC0D3p
crw-rw----+ 1 root audio 116, 6 Nov 23 15:33 pcmC0D7p
crw-rw----+ 1 root audio 116, 7 Nov 23 15:33 pcmC0D8p
crw-rw----+ 1 root audio 116, 8 Nov 23 15:33 pcmC0D9p
crw-rw----+ 1 root audio 116, 1 Nov 23 15:33 seq
crw-rw----+ 1 root audio 116, 33 Nov 23 15:33 timer
me@me-desktop:~$
This will show the permissions
getfacl /dev/snd/hwC0D0
node-red is running under your own userid 'me' ?
Correct. (Or I hope it is.) It is auto loaded at boot.
me@me-desktop:~$ getfacl /dev/snd/hwC0D0
getfacl: Removing leading '/' from absolute path names
# file: dev/snd/hwC0D0
# owner: root
# group: audio
user::rw-
user:me:rw-
group::rw-
mask::rw-
other::---
me@me-desktop:~$
I don't have an audio device myself, cannot test anything.
I am lost sorry, but i tried
Appreciated.
At least I have moved slightly forward.
u can see it if you creat an execute node and connect the stdout to a debug node, then send in the exec node "whoami" the output should say which user executes that command