[pulseaudio-discuss] container support
GMAIL
temptempor at gmail.com
Sun Dec 13 18:27:18 UTC 2020
I have this working:
_Socket_
*# /usr/lib/systemd/user/pulseaudio.socket
[Unit]
Description=Sound System
ConditionUser=!root
[Socket]
Priority=6
Backlog=5
ListenStream=%t/pulse/native
[Install]
WantedBy=sockets.target*
_Service_
*# /usr/lib/systemd/user/pulseaudio.service
[Unit]
Description=Sound Service
# We require pulseaudio.socket to be active before starting the daemon,
because
# while it is possible to use the service without the socket, it is not
clear
# why it would be desirable.
#
# A user installing pulseaudio and doing `systemctl --user start pulseaudio`
# will not get the socket started, which might be confusing and
problematic if
# the server is to be restarted later on, as the client autospawn feature
# might kick in. Also, a start of the socket unit will fail, adding to the
# confusion.
#
# After=pulseaudio.socket is not needed, as it is already implicit in the
# socket-service relationship, see systemd.socket(5).
Requires=pulseaudio.socket
ConditionUser=!root
[Service]
ExecStart=/usr/bin/pulseaudio --daemonize=no --log-target=journal
LockPersonality=yes
MemoryDenyWriteExecute=yes
NoNewPrivileges=yes
Restart=on-failure
RestrictNamespaces=yes
SystemCallArchitectures=native
SystemCallFilter=@system-service
# Note that notify will only work if --daemonize=no
Type=notify
UMask=0077
[Install]
Also=pulseaudio.socket
WantedBy=default.target
*
Cheers
On 13/12/2020 17:52, Jan Van den Audenaerde wrote:
> Hi,
>
> Thanks for the response.
>
> But how do I get the pulseaudio daemon running in userspace that is
> listening to unix socket /run/user/1000/pulse/native ?
> I don't want to start this daemon manually but as a systemd service.
>
> kr
> jan
>
>
> Op zo 13 dec. 2020 om 14:40 schreef GMAIL <temptempor at gmail.com
> <mailto:temptempor at gmail.com>>:
>
> Hi,
>
> This can be achieved fairly "simply" (as long as you know what to
> look for).
>
> You need to pass the pulse socket into the container and tell
> pulse clients inside the container its precise path.
>
> So on Docker CLI, for a typical Pulse daemon running in userspace,
> it would be something like:
>
> *|-v /run/user/1000/pulse:/run/user/1000/pulse |*
>
> Inside the container, once you've installed Pulseaudio, you need
> to modify its client configuration:
>
> _/etc/pulse/client.conf_
>
> *default-server = /run/user/1000/pulse/native*
>
> With this your Pulseaudio applications should be able to play
> sounds through the host PulseAudio server (of course, you'd need
> to adapt the runtime paths to your environment).
>
> Bear in mind, there seems to be some inconsistencies in the way
> various Pulse utilities interface with the daemon. In this setup
> for example, "pacmd" won't work, whilst "pactl" works fine once
> the client configuration is fixed.
>
> You could test this in a manual way first and then automate things
> a bit with a Dockerfile and what not.
>
> Best regards.
>
> On 12/12/2020 16:19, Jan Van den Audenaerde wrote:
>> Hi,
>>
>> I have spend several days without success figuring out how I can
>> use pulseaudio in a container setup on an embedded device.
>>
>> /I am running CentOs 8 on a headless device (intel-nuc) which is
>> also running docker.
>> I would like to run pulseaudio server on the host (CentOs 8) and
>> my docker containers should be able to use pulseaudio client to
>> communicate with the pulseaudio server via pulseaudio unix socket.
>> Moreover it should be possible that different docker containers
>> can access the microphone and speaker at the same time./
>>
>>
>> The main problem I am facing I have reported in following forum
>> post:
>>
>> * https://forums.centos.org/viewtopic.php?f=54&t=76643
>> <https://forums.centos.org/viewtopic.php?f=54&t=76643>
>>
>>
>> Any help would be much appreciated.
>> I also think that pulseaudio has the good requirements for use in
>> a container setup if I only can make it work.
>> Jan.
>>
>>
>>
>> _______________________________________________
>> pulseaudio-discuss mailing list
>> pulseaudio-discuss at lists.freedesktop.org <mailto:pulseaudio-discuss at lists.freedesktop.org>
>> https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss <https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss>
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> <mailto:pulseaudio-discuss at lists.freedesktop.org>
> https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
> <https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss>
>
>
> _______________________________________________
> pulseaudio-discuss mailing list
> pulseaudio-discuss at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/pulseaudio-discuss
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/pulseaudio-discuss/attachments/20201213/af035b99/attachment.htm>
More information about the pulseaudio-discuss
mailing list