masmu / pulseaudio-dlna

A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux
GNU General Public License v3.0
1.25k stars 161 forks source link

automatic start; integration into desktop #276

Open brianjmurrell opened 7 years ago

brianjmurrell commented 7 years ago

Neat project. Really neat in fact.

It seems only just slightly incomplete though, at least in the area of packaging of installalble packages (RPMs, etc.) given that even once I install a package, I still need to open up a shell prompt and run:

$ pulseaudio-dlna 

As a non-tech-savvy, totally end-user type, I shouldn't need to do this.

I wonder what the solution is here to have pulseaudio-dlna start as part of the users' regular desktop session.

clawoflight commented 7 years ago

Systemd user service?

brianjmurrell commented 7 years ago

Yeah, that is probably the best way to do it.

Is there any problem with having multiple computers in the same network all running pulseaudio-dlna all of the time? I.e. sessions to Chromecasts and so on are only stood up on demand, right?

If that is fine, there is just the task of actually adding to the packaging the starting of this as a systemd user user service. Would there be any objections to a patch to do so or are there any basic philosophical objections?

brianjmurrell commented 7 years ago

Hrm. pulseaudio-dlna starts a lot of processes sitting waiting "just in case" somebody wants to stream something somewhere:

● pulseaudio-dlna.service - A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux
   Loaded: loaded (/etc/systemd/user/pulseaudio-dlna.service; static; vendor preset: enabled)
   Active: active (running) since Sun 2017-03-05 12:35:33 EST; 1min 43s ago
 Main PID: 30009 (pulseaudio-dlna)
   CGroup: /user.slice/user-1001.slice/user@1001.service/pulseaudio-dlna.service
           ├─30009 pulseaudio-dlna
           ├─30022 /usr/bin/python /bin/pulseaudio-dlna
           ├─30026 stream_server
           ├─30027 pulse_watcher
           ├─30030 ssdp_listener
           ├─30098 parec --format=s16le -d bedroom_chromecast.monitor
           ├─30100 lame -b 192 -r -
           ├─30124 parec --format=s16le -d basement_chromecast.monitor
           ├─30125 lame -b 192 -r -
           ├─30140 parec --format=s16le -d kodipvrlr_dlna.monitor
           ├─30141 lame -b 192 -r -
           ├─30154 parec --format=s16le -d livingroom_chromecast.monitor
           └─30155 lame -b 192 -r -

Seems like a pretty heavy footprint. Can't most of these processes be started on demand of somebody actually initiating a stream? Or is the startup latency of that too high?

Here's my unit file, in /etc/systemd/user/pulseaudio-dlna.service, FWIW:

[Unit]
Description=A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux

[Service]
ExecStart=/bin/pulseaudio-dlna
Restart=on-failure

Looking a little more closely, does the above actually mean pulseaudio-dlna is actually actively casting (i.e. "emptyness", until the user actually switches a program's output to one of the Chromecast devices) to all of the Chromecasts in my network? My Android Google Home app is showing something is being cast to all of those Chromecasts.

If that's the case, that's not really so good. Casting needs to happen more on-demand of somebody actually choosing a Chromecast in Pulseaudio.

masmu commented 7 years ago

@brianjmurrell Thanks. Yes the application should be started by default, but there were some legacy issues which prevented that. To solve those, I just added some code to prevent multiple application start ups in general. So, people who are already using an own startup method shouldn't run into any troubles.

Seems like a pretty heavy footprint. Can't most of these processes be started on demand of somebody actually initiating a stream? Or is the startup latency of that too high?

That should be the case. For me it looks like you are streaming to all your different devices at the same time. Could you check that issue again?

brianjmurrell commented 7 years ago

That should be the case

Good.

For me it looks like you are streaming to all your different devices at the same time.

Indeed. That's what it looks like to me.

Could you check that issue again?

Here's what happens when I just run pulseaudio-dlna:

$ pulseaudio-dlna 
03-05 15:17:04 pulseaudio_dlna.application                    INFO     Using version: 0.5.2
03-05 15:17:04 pulseaudio_dlna.application                    INFO     Using localhost: 10.75.22.1:8080
03-05 15:17:04 pulseaudio_dlna.application                    INFO     Encoder settings:
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvAacEncoder available="False" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvFlacEncoder available="False">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvL16Encoder available="False" sample-rate="44100" channels="2">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvMp3Encoder available="False" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvOggEncoder available="False" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvOpusEncoder available="False" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AVConvWavEncoder available="False">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegAacEncoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegFlacEncoder available="True">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegL16Encoder available="True" sample-rate="44100" channels="2">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegMp3Encoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegOggEncoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegOpusEncoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FFMpegWavEncoder available="True">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FaacAacEncoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FlacFlacEncoder available="False">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <LameMp3Encoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <NullEncoder available="True">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <OggencOggEncoder available="True" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <OpusencOpusEncoder available="False" bit-rate="192">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <SoxL16Encoder available="True" sample-rate="44100" channels="2">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <SoxWavEncoder available="True">
03-05 15:17:04 pulseaudio_dlna.application                    INFO     Codec settings:
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <AacCodec enabled="True" priority="12" mime_type="audio/aac" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="0" mime_type="audio/L16" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
03-05 15:17:04 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
03-05 15:17:05 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Living Room (Chromecast)".
03-05 15:17:05 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Bedroom (Chromecast)".
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Kodi (pvr-lr) (DLNA)".
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Basement (Chromecast)".
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream546"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream547"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream548"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream549"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream550"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream551"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream552"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream553"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream554"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream555"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream556"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream557"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream558"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream559"
03-05 15:17:06 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream560"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream561"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream562"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream563"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream564"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream565"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream566"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream567"
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink125
03-05 15:17:07 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Living Room (Chromecast)" to play ...
03-05 15:17:11 pulseaudio_dlna.streamserver                   INFO     URL settings: /dHlwZT0iaW1hZ2UiLG5hbWU9ImRlZmF1bHQucG5nIg%3D%3D/ (type="image",name="default.png")
03-05 15:17:11 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:9643d96041435fee806038bc082ac590",type="bridge")
03-05 15:17:11 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7f9da7c92bd0) ...
03-05 15:17:11 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d livingroom_chromecast.monitor | lame -b 192 -r -"
03-05 15:17:11 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-05 15:17:13 pulseaudio_dlna.pulseaudio                     INFO     The device "Living Room (Chromecast)" is playing.
03-05 15:17:13 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink125 finished!
03-05 15:17:13 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream568"
03-05 15:17:13 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink126
03-05 15:17:13 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Bedroom (Chromecast)" to play ...
03-05 15:17:21 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjU2MWRkZDhjMWM2ZWU0NjhkN2EwZTJlMzYwMDYwMzE3Iix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:561ddd8c1c6ee468d7a0e2e360060317",type="bridge")
03-05 15:17:21 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjU2MWRkZDhjMWM2ZWU0NjhkN2EwZTJlMzYwMDYwMzE3Iix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7f9da7c92590) ...
03-05 15:17:21 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d bedroom_chromecast.monitor | lame -b 192 -r -"
03-05 15:17:21 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjU2MWRkZDhjMWM2ZWU0NjhkN2EwZTJlMzYwMDYwMzE3Iix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-05 15:17:21 pulseaudio_dlna.streamserver                   INFO     URL settings: /dHlwZT0iaW1hZ2UiLG5hbWU9ImRlZmF1bHQucG5nIg%3D%3D/ (type="image",name="default.png")
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     The device "Bedroom (Chromecast)" is playing.
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink126 finished!
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink127
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Kodi (pvr-lr) (DLNA)" to play ...
03-05 15:17:24 pulseaudio_dlna.plugins.upnp.renderer          INFO     Device state is stopped. Sending play command.
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     The device "Kodi (pvr-lr) (DLNA)" is playing.
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink127 finished!
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream569"
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink128
03-05 15:17:24 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Basement (Chromecast)" to play ...
03-05 15:17:24 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-05 15:17:24 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-05 15:17:24 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f9da7caee50) ...
/03-05 15:17:24 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-05 15:17:24 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-05 15:17:26 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-05 15:17:26 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f9da6c44750) ...
03-05 15:17:26 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-05 15:17:26 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-05 15:17:27 pulseaudio_dlna.streamserver                   INFO     Unregistered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f9da6c44750) ...
03-05 15:17:43 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:06605d9b47aedd87b83751b4d64f98b2",type="bridge")
03-05 15:17:43 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7f9da7caebd0) ...
03-05 15:17:43 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d basement_chromecast.monitor | lame -b 192 -r -"
03-05 15:17:43 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-05 15:17:46 pulseaudio_dlna.streamserver                   INFO     URL settings: /dHlwZT0iaW1hZ2UiLG5hbWU9ImRlZmF1bHQucG5nIg%3D%3D/ (type="image",name="default.png")
03-05 15:17:50 pulseaudio_dlna.pulseaudio                     INFO     The device "Basement (Chromecast)" is playing.
03-05 15:17:50 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink128 finished!
03-05 15:17:50 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink127
03-05 15:17:50 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink127 finished!

At this point I have done nothing in Pulseaudio to direct any audio to any devices.

masmu commented 7 years ago

@brianjmurrell You are indeed streaming to all the devices the same time. There are playback streams set to the virtual sinks and therefore pulseaudio-dlna instructs the appropriate devices to play. E.g. in that image spotify's playback stream is set to the device "Wohnzimmer (DLNA)" and therefore there is currently an encoder running.

Could you create a screenshot of pavucontrol like my one? I am curious to see your setup...

brianjmurrell commented 7 years ago

Ahh. Perhaps there is no need to make a screen shot. It seems that what is causing the simultaneous streams to the Chromecasts to be created is paprefs->Network Server->Enable network access to local sound devices.

When I disable that, the Chromecast streams get torn down.

masmu commented 7 years ago

I will check tomorrow what that option does. But currently it is odd to me that it has an effect... It certainly doesn't change anything what pulseaudio-dlna does...

By the way, pulseaudio remembers when you set a stream to a certain sink. So, even if you restart the computer ... after the sinks are being created that can trigger actions to the corresponding devices.

brianjmurrell commented 7 years ago

@masmu: Did you get a chance to look into why enabling the Network Server was causing the problems?

masmu commented 7 years ago

@brianjmurrell Yes, I tried to reproduce the problem but wasn't successful with that. I enabled "paprefs" -> "Network Server" -> "Enable network access to local sound devices" and then started pulseaudio-dlna. But my Chromecast army didn't start to play on its own, as it was the case in your setup.

brianjmurrell commented 7 years ago

Maybe it's a further combination of options. I also have the following settings:

Network Access: both checkboxes enabled Network Server: first checkbox and both sub-checkboxes under it enabled Multicast/RTP: first checkbox enabled Simultaneous Output: nothing enabled

masmu commented 7 years ago

Sorry, again no luck with that. I can see in the logs that pulseaudio-dlna is instructing your devices to start playing. Thats just the case when there is at least one playback stream set to a virtual sink. But all the options and combinations of those didn't affect that behavior. I am using pulseaudio 8.0, which version are you using?

Are you able to reproduce the problem?

brianjmurrell commented 7 years ago

I'm using Pulseaudio 10.0 on Fedora 25.

I am able to reproduce 100%.

masmu commented 7 years ago

Just installed a fresh Ubuntu zesty (which ships pulseaudio 10.0) in a virtual box and cloned current master. I used your paprefssettings but I am not able to reproduce the problem.

brianjmurrell commented 7 years ago

Maybe relevant here, but I am using 0.5.2, the latest release, even though that is almost a year old now.

Let me roll up a local build here based on master and see if this problem reproduces...

brianjmurrell commented 7 years ago

So I did the virtualenv build method with make on master and ran that. Unfortunately I am still getting a stream starting for all Chromecasts.

But something just occurred to me. When you enabled the settings I described in paprefs, did you have any other pulseaudio running machines in your network with Network Access->Make discoverable PulseAudio network sound devices available locally enabled?

That is a requirement to reproducing the problem. Just setting the paprefs settings on the one machine running pulseaudio-dlna is not enough to reproduce. You need that second machine. A VM would be good enough I suppose as long as there is network access between the two machines.

On my machine here, when I enable Network Access->Make discoverable PulseAudio network sound devices available locally on the other machine in the network, on the machine I am running pulseaudio-dlna I get a bunch more entries in pavucontrols Playback tab, so that's how I know the other machine's sound devices are being seen and it's when they show up that my Chromecasts all starting getting streams played to them.

masmu commented 7 years ago

Thank you very much! I was able to reproduce the problem. It seems that running remote instances of pulseaudio always create streams to each sink even when these are not actually in use. So on every sink there are is at least one stream and therefore every device is gonna be instructed to play.

Could you please try out that branch which should fix the problem.

brianjmurrell commented 7 years ago

Glad you were able to reproduce.

So while it looks better in that it's not streaming to Chromecast(s) for remote streams, it doesn't seem to be putting a local stream that I direct to a Chromecast on a Chromecast either. Here's the log:

$ pulseaudio-dlna 
03-15 07:09:48 pulseaudio_dlna.application                    INFO     Using version: 0.5.2
03-15 07:09:48 pulseaudio_dlna.application                    INFO     Binding to *:8080
03-15 07:09:48 pulseaudio_dlna.application                    INFO     Encoder settings:
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvAacEncoder available="False" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvFlacEncoder available="False">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvL16Encoder available="False" sample-rate="44100" channels="2">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvMp3Encoder available="False" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvOggEncoder available="False" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvOpusEncoder available="False" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AVConvWavEncoder available="False">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegAacEncoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegFlacEncoder available="True">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegL16Encoder available="True" sample-rate="44100" channels="2">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegMp3Encoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegOggEncoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegOpusEncoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FFMpegWavEncoder available="True">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FaacAacEncoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FlacFlacEncoder available="False">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <LameMp3Encoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <NullEncoder available="True">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <OggencOggEncoder available="True" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <OpusencOpusEncoder available="False" bit-rate="192">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <SoxL16Encoder available="True" sample-rate="44100" channels="2">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <SoxWavEncoder available="True">
03-15 07:09:48 pulseaudio_dlna.application                    INFO     Codec settings:
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <AacCodec enabled="True" priority="12" mime_type="audio/aac" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="1" mime_type="audio/L16" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
03-15 07:09:48 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
03-15 07:09:49 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Basement Gym (Chromecast)".
03-15 07:09:49 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Living Room (Chromecast)".
03-15 07:09:49 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Kodi (pvr-lr) (DLNA)".
03-15 07:10:02 pulseaudio_dlna.pulseaudio                     INFO     on_device_updated "/org/pulseaudio/core1/sink97"
03-15 07:10:03 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink97
03-15 07:10:03 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink97 finished!
03-15 07:10:09 pulseaudio_dlna.discover                       INFO     SSDPDiscover.search()
03-15 07:10:39 pulseaudio_dlna.pulseaudio                     INFO     on_device_updated "/org/pulseaudio/core1/sink0"
03-15 07:10:40 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink0
03-15 07:10:40 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink0 finished!
03-15 07:10:45 pulseaudio_dlna.streamserver                   INFO     StreamServer GobjectMainLoopMixin.shutdown()
03-15 07:10:45 pulseaudio_dlna.pulseaudio                     INFO     PulseWatcher.shutdown()
Application is shutting down ...
03-15 07:10:45 pulseaudio_dlna.pulseaudio                     INFO     PulseWatcher.shutdown()
03-15 07:10:45 pulseaudio_dlna.pulseaudio                     INFO     Remove "basementgym_chromecast.2" sink ...
03-15 07:10:45 pulseaudio_dlna.streamserver                   INFO     StreamServer GobjectMainLoopMixin.shutdown()
03-15 07:10:45 pulseaudio_dlna.pulseaudio                     INFO     Remove "livingroom_chromecast.2" sink ...
03-15 07:10:45 pulseaudio_dlna.pulseaudio                     INFO     Remove "kodipvrlr_dlna.2" sink ...
03-15 07:10:45 pulseaudio_dlna.holder                         INFO     Holder.shutdown()
03-15 07:10:45 pulseaudio_dlna.holder                         INFO     Holder.search()

At 07:10:02 I switched a playing Rhythmbox stream to the Chromecast and at 07:10:39 I switched it back to local speakers.

masmu commented 7 years ago

Could it be that you have multiple entries in pavucontrol for the same Chromecast? Like 2 entries for "Basement Gym (Chromecast)"?

masmu commented 7 years ago

I've updated the branch with some additional debug logs. Could you please pull and send me the output?

brianjmurrell commented 7 years ago

Could it be that you have multiple entries in pavucontrol for the same Chromecast?

So in the Output Devices tab, there is one per Chromecast but in the Playback tab there are 2 per Chromecast and we are back to playing streams on all devices again:

$ bin/pulseaudio-dlna 
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     MACHINE_ID: b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.application                    INFO     Using version: 0.5.2+git-fa6e79a420b81263a3067eec57947f8340e0467d (detached-head)
03-15 08:03:18 pulseaudio_dlna.application                    INFO     Binding to *:8080
03-15 08:03:18 pulseaudio_dlna.application                    INFO     Encoder settings:
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvAacEncoder available="False" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvFlacEncoder available="False">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvL16Encoder available="False" sample-rate="44100" channels="2">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvMp3Encoder available="False" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvOggEncoder available="False" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvOpusEncoder available="False" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AVConvWavEncoder available="False">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegAacEncoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegFlacEncoder available="True">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegL16Encoder available="True" sample-rate="44100" channels="2">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegMp3Encoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegOggEncoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegOpusEncoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FFMpegWavEncoder available="True">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FaacAacEncoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FlacFlacEncoder available="False">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <LameMp3Encoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <NullEncoder available="True">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <OggencOggEncoder available="True" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <OpusencOpusEncoder available="False" bit-rate="192">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <SoxL16Encoder available="True" sample-rate="44100" channels="2">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <SoxWavEncoder available="True">
03-15 08:03:18 pulseaudio_dlna.application                    INFO     Codec settings:
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <AacCodec enabled="True" priority="12" mime_type="audio/aac" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="1" mime_type="audio/L16" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
03-15 08:03:18 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Basement Gym (Chromecast)".
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:18 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Living Room (Chromecast)".
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream19"
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Kodi (pvr-lr) (DLNA)".
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream20"
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream20 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream21 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream21"
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream20 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:19 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream21 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream22"
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream20 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream21 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream22 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream23"
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream20 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream21 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream22 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream23 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink17
03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink17" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="17" module="50">
        <PulseStream path="/org/pulseaudio/core1/playback_stream19" device="/org/pulseaudio/core1/sink17" index="19" client="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream20" device="/org/pulseaudio/core1/sink17" index="20" client="53">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="idle" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:20 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Basement Gym (Chromecast)" to play ...
03-15 08:03:20 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:06605d9b47aedd87b83751b4d64f98b2",type="bridge")
03-15 08:03:20 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7fe9c7b29710) ...
03-15 08:03:20 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d basementgym_chromecast.monitor | lame -b 192 -r -"
03-15 08:03:20 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     The device "Basement Gym (Chromecast)" is playing.
03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink18" label="Living Room (Chromecast)" name="livingroom_chromecast" index="18" module="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream21" device="/org/pulseaudio/core1/sink18" index="21" client="54">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="idle" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink19" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="19" module="52">
        <PulseStream path="/org/pulseaudio/core1/playback_stream22" device="/org/pulseaudio/core1/sink19" index="22" client="55">
        <PulseStream path="/org/pulseaudio/core1/playback_stream23" device="/org/pulseaudio/core1/sink19" index="23" client="56">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink17 finished!
03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink18
03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink17" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="17" module="50">
        <PulseStream path="/org/pulseaudio/core1/playback_stream19" device="/org/pulseaudio/core1/sink17" index="19" client="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream20" device="/org/pulseaudio/core1/sink17" index="20" client="53">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="playing" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink18" label="Living Room (Chromecast)" name="livingroom_chromecast" index="18" module="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream21" device="/org/pulseaudio/core1/sink18" index="21" client="54">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="idle" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:22 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Living Room (Chromecast)" to play ...
03-15 08:03:22 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:9643d96041435fee806038bc082ac590",type="bridge")
03-15 08:03:22 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7fe9c7b29890) ...
03-15 08:03:22 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d livingroom_chromecast.monitor | lame -b 192 -r -"
03-15 08:03:22 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     The device "Living Room (Chromecast)" is playing.
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink19" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="19" module="52">
        <PulseStream path="/org/pulseaudio/core1/playback_stream22" device="/org/pulseaudio/core1/sink19" index="22" client="55">
        <PulseStream path="/org/pulseaudio/core1/playback_stream23" device="/org/pulseaudio/core1/sink19" index="23" client="56">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink18 finished!
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink19
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink17" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="17" module="50">
        <PulseStream path="/org/pulseaudio/core1/playback_stream19" device="/org/pulseaudio/core1/sink17" index="19" client="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream20" device="/org/pulseaudio/core1/sink17" index="20" client="53">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="playing" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink18" label="Living Room (Chromecast)" name="livingroom_chromecast" index="18" module="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream21" device="/org/pulseaudio/core1/sink18" index="21" client="54">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="playing" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink19" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="19" module="52">
        <PulseStream path="/org/pulseaudio/core1/playback_stream22" device="/org/pulseaudio/core1/sink19" index="22" client="55">
        <PulseStream path="/org/pulseaudio/core1/playback_stream23" device="/org/pulseaudio/core1/sink19" index="23" client="56">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Kodi (pvr-lr) (DLNA)" to play ...
03-15 08:03:24 pulseaudio_dlna.plugins.upnp.renderer          INFO     Device state is stopped. Sending play command.
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     The device "Kodi (pvr-lr) (DLNA)" is playing.
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink19 finished!
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream24"
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream8 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream9 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream10 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream11 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream12 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream13 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream14 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream19 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream20 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream21 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream22 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream23 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream24 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-15 08:03:24 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-15 08:03:24 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-15 08:03:24 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7fe9c7b38610) ...
03-15 08:03:24 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-15 08:03:24 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-15 08:03:25 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink18
03-15 08:03:25 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink17" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="17" module="50">
        <PulseStream path="/org/pulseaudio/core1/playback_stream19" device="/org/pulseaudio/core1/sink17" index="19" client="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream20" device="/org/pulseaudio/core1/sink17" index="20" client="53">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="playing" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:25 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink18" label="Living Room (Chromecast)" name="livingroom_chromecast" index="18" module="51">
        <PulseStream path="/org/pulseaudio/core1/playback_stream21" device="/org/pulseaudio/core1/sink18" index="21" client="54">
        <PulseStream path="/org/pulseaudio/core1/playback_stream24" device="/org/pulseaudio/core1/sink18" index="24" client="57">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="playing" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-15 08:03:25 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink19" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="19" module="52">
        <PulseStream path="/org/pulseaudio/core1/playback_stream22" device="/org/pulseaudio/core1/sink19" index="22" client="55">
        <PulseStream path="/org/pulseaudio/core1/playback_stream23" device="/org/pulseaudio/core1/sink19" index="23" client="56">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="playing" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-15 08:03:25 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink18 finished!
03-15 08:03:25 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-15 08:03:25 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7fe9c7b38950) ...
03-15 08:03:25 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-15 08:03:25 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-15 08:03:26 pulseaudio_dlna.streamserver                   INFO     Unregistered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7fe9c7b38950) ...
03-15 08:03:38 pulseaudio_dlna.discover                       INFO     SSDPDiscover.search()
masmu commented 7 years ago

Thanks. But this is super weired ... I just added logs ... so at least the behavior should be the same.

All your streams claim to be local ones ... they are all running with your local machine id b973333923f0c005e38d0e0563ae700a. In my tests the remote streams are using the machine id of the remote pulseaudio instance. So it should be easy to filter them.

This doesn't make any sense to me right now.

masmu commented 7 years ago

@brianjmurrell Could you please do a little bit of investigation what might going on there? I have the feeling that we missed something... and I really would like to solve that issue.

brianjmurrell commented 7 years ago

So looking back at the comments...

Back in https://github.com/masmu/pulseaudio-dlna/issues/276#issuecomment-286712210 where I said things look better with remote-tunnel-streams, notice that the output starts with:

$ pulseaudio-dlna 
03-15 07:09:48 pulseaudio_dlna.application                    INFO     Using version: 0.5.2

That looks like I was using the 0.5.2 release that I have installed rather than the branch which I have make installed in my working tree. :-(

So maybe we need to go back there. This is 41eedf4d8e2dfedfbdad4e9aef1dba3943623933 with all of the network stream preferences enabled:

$ bin/pulseaudio-dlna
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     MACHINE_ID: b973333923f0c005e38d0e0563ae700a
03-21 14:53:50 pulseaudio_dlna.application                    INFO     Using version: 0.5.2+git-41eedf4d8e2dfedfbdad4e9aef1dba3943623933 (detached-head)
03-21 14:53:50 pulseaudio_dlna.application                    INFO     Binding to *:8080
03-21 14:53:50 pulseaudio_dlna.application                    INFO     Encoder settings:
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvAacEncoder available="False" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvFlacEncoder available="False">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvL16Encoder available="False" sample-rate="44100" channels="2">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvMp3Encoder available="False" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvOggEncoder available="False" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvOpusEncoder available="False" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AVConvWavEncoder available="False">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegAacEncoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegFlacEncoder available="True">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegL16Encoder available="True" sample-rate="44100" channels="2">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegMp3Encoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegOggEncoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegOpusEncoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FFMpegWavEncoder available="True">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FaacAacEncoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FlacFlacEncoder available="False">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <LameMp3Encoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <NullEncoder available="True">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <OggencOggEncoder available="True" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <OpusencOpusEncoder available="False" bit-rate="192">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <SoxL16Encoder available="True" sample-rate="44100" channels="2">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <SoxWavEncoder available="True">
03-21 14:53:50 pulseaudio_dlna.application                    INFO     Codec settings:
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <AacCodec enabled="True" priority="12" mime_type="audio/aac" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="1" mime_type="audio/L16" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
03-21 14:53:50 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Basement Gym (Chromecast)".
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:50 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Living Room (Chromecast)".
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     Added the device "Kodi (pvr-lr) (DLNA)".
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream901"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream902"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream903"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream904"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream905"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream906"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream907"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream908"
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:51 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream909"
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream909 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream910"
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream909 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream910 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream911"
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream909 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream910 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream911 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     on_new_playback_stream "/org/pulseaudio/core1/playback_stream912"
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream786 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream901 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream902 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream903 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream904 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream905 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream906 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream907 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream908 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream909 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream910 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream911 | b973333923f0c005e38d0e0563ae700a = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     /org/pulseaudio/core1/playback_stream912 | 147a2a60aa2c4a11a1d9e18e60b501e1 = b973333923f0c005e38d0e0563ae700a
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink77
03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink76" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="76" module="151">
        <PulseStream path="/org/pulseaudio/core1/playback_stream902" device="/org/pulseaudio/core1/sink76" index="902" client="762">
        <PulseStream path="/org/pulseaudio/core1/playback_stream908" device="/org/pulseaudio/core1/sink76" index="908" client="767">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="idle" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink77" label="Living Room (Chromecast)" name="livingroom_chromecast" index="77" module="152">
        <PulseStream path="/org/pulseaudio/core1/playback_stream904" device="/org/pulseaudio/core1/sink77" index="904" client="764">
        <PulseStream path="/org/pulseaudio/core1/playback_stream907" device="/org/pulseaudio/core1/sink77" index="907" client="768">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="idle" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:52 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Living Room (Chromecast)" to play ...
03-21 14:53:52 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:9643d96041435fee806038bc082ac590",type="bridge")
03-21 14:53:52 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7f5f103de950) ...
03-21 14:53:52 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d livingroom_chromecast.monitor | lame -b 192 -r -"
03-21 14:53:52 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjk2NDNkOTYwNDE0MzVmZWU4MDYwMzhiYzA4MmFjNTkwIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     The device "Living Room (Chromecast)" is playing.
03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink78" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="78" module="153">
        <PulseStream path="/org/pulseaudio/core1/playback_stream910" device="/org/pulseaudio/core1/sink78" index="910" client="770">
        <PulseStream path="/org/pulseaudio/core1/playback_stream911" device="/org/pulseaudio/core1/sink78" index="911" client="771">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink77 finished!
03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink76
03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink76" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="76" module="151">
        <PulseStream path="/org/pulseaudio/core1/playback_stream902" device="/org/pulseaudio/core1/sink76" index="902" client="762">
        <PulseStream path="/org/pulseaudio/core1/playback_stream908" device="/org/pulseaudio/core1/sink76" index="908" client="767">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="idle" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:54 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Basement Gym (Chromecast)" to play ...
03-21 14:53:54 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 (udn="uuid:06605d9b47aedd87b83751b4d64f98b2",type="bridge")
03-21 14:53:54 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3" (0x7f5f10371510) ...
03-21 14:53:54 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d basementgym_chromecast.monitor | lame -b 192 -r -"
03-21 14:53:54 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOjA2NjA1ZDliNDdhZWRkODdiODM3NTFiNGQ2NGY5OGIyIix0eXBlPSJicmlkZ2Ui/stream.mp3 initialized ...
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     The device "Basement Gym (Chromecast)" is playing.
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink77" label="Living Room (Chromecast)" name="livingroom_chromecast" index="77" module="152">
        <PulseStream path="/org/pulseaudio/core1/playback_stream904" device="/org/pulseaudio/core1/sink77" index="904" client="764">
        <PulseStream path="/org/pulseaudio/core1/playback_stream907" device="/org/pulseaudio/core1/sink77" index="907" client="768">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="playing" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink78" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="78" module="153">
        <PulseStream path="/org/pulseaudio/core1/playback_stream910" device="/org/pulseaudio/core1/sink78" index="910" client="770">
        <PulseStream path="/org/pulseaudio/core1/playback_stream911" device="/org/pulseaudio/core1/sink78" index="911" client="771">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink76 finished!
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink78
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink76" label="Basement Gym (Chromecast)" name="basementgym_chromecast" index="76" module="151">
        <PulseStream path="/org/pulseaudio/core1/playback_stream902" device="/org/pulseaudio/core1/sink76" index="902" client="762">
        <PulseStream path="/org/pulseaudio/core1/playback_stream908" device="/org/pulseaudio/core1/sink76" index="908" client="767">

    <CoinedChromecastRenderer name="Basement Gym" short="basementgym_chromecast" state="playing" udn="uuid:06605d9b47aedd87b83751b4d64f98b2" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink77" label="Living Room (Chromecast)" name="livingroom_chromecast" index="77" module="152">
        <PulseStream path="/org/pulseaudio/core1/playback_stream904" device="/org/pulseaudio/core1/sink77" index="904" client="764">
        <PulseStream path="/org/pulseaudio/core1/playback_stream907" device="/org/pulseaudio/core1/sink77" index="907" client="768">

    <CoinedChromecastRenderer name="Living Room" short="livingroom_chromecast" state="playing" udn="uuid:9643d96041435fee806038bc082ac590" model_name="Chromecast" model_number="None" model_description="None" manufacturer="Google Inc." timeout="15.0">

03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     
<Bridge>
    <PulseSink path="/org/pulseaudio/core1/sink78" label="Kodi (pvr-lr) (DLNA)" name="kodipvrlr_dlna" index="78" module="153">
        <PulseStream path="/org/pulseaudio/core1/playback_stream910" device="/org/pulseaudio/core1/sink78" index="910" client="770">
        <PulseStream path="/org/pulseaudio/core1/playback_stream911" device="/org/pulseaudio/core1/sink78" index="911" client="771">

    <CoinedUpnpMediaRenderer name="Kodi (pvr-lr)" short="kodipvrlr_dlna" state="idle" udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17" model_name="Kodi" model_number="16.1 Git:c327c53" model_description="Kodi - Media Renderer" manufacturer="XBMC Foundation" timeout="15.0">

03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     Instructing the device "Kodi (pvr-lr) (DLNA)" to play ...
03-21 14:53:56 pulseaudio_dlna.plugins.upnp.renderer          INFO     Device state is stopped. Sending play command.
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     The device "Kodi (pvr-lr) (DLNA)" is playing.
03-21 14:53:56 pulseaudio_dlna.pulseaudio                     INFO     _async_handle_sink_update /org/pulseaudio/core1/sink78 finished!
03-21 14:53:56 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-21 14:53:56 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-21 14:53:56 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f5f10371810) ...
03-21 14:53:56 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-21 14:53:56 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-21 14:53:58 pulseaudio_dlna.streamserver                   INFO     URL settings: /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 (udn="uuid:f9cae354-5e49-d821-e874-aadb0be78f17",type="bridge")
03-21 14:53:58 pulseaudio_dlna.streamserver                   INFO     Registered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f5f10371b50) ...
03-21 14:53:58 pulseaudio_dlna.streamserver                   INFO     Starting processes "parec --format=s16le -d kodipvrlr_dlna.monitor | lame -b 192 -r -"
03-21 14:53:58 pulseaudio_dlna.streamserver                   INFO     Processes of /dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3 initialized ...
03-21 14:53:59 pulseaudio_dlna.streamserver                   INFO     Unregistered stream "/dWRuPSJ1dWlkOmY5Y2FlMzU0LTVlNDktZDgyMS1lODc0LWFhZGIwYmU3OGYxNyIsdHlwZT0iYnJpZGdlIg%3D%3D/stream.mp3" (0x7f5f10371b50) ...

Maybe something else that is relevant, or perhaps not, but every machine in my network has a number of IP addresses on each interface, with at least one IPv4 address and 3-4 IPv6 addresses.

masmu commented 7 years ago

Hmm, hard to say right now if the multiple interfaces thing is relevant. It is obviously not working, but at least there are some streams filtered now. But there are still some unnecessary streams set to the virtual sinks.

Could you please do exactly the same experiment again, and send me a fresh console output (as you did this time) but also the output of pactl list > pactl-list.log? I have to take a look on what those additional streams are made of...

fedelibre commented 6 years ago

The issue you are discussing shouldn't deserve a separate ticket?

I'm trying to define a systemd service. It works fine if I start it manually, but when I enable the service and restart the system I get the following error. What's wrong with it?

$ systemctl --user status pulseaudio-dlna
● pulseaudio-dlna.service - A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux
   Loaded: loaded (/home/fede/.config/systemd/user/pulseaudio-dlna.service; enabled; vendor preset: enabled)
   Active: active (running) since Mon 2018-01-29 08:32:27 CET; 21s ago
 Main PID: 1552 (pulseaudio-dlna)
   CGroup: /user.slice/user-1000.slice/user@1000.service/pulseaudio-dlna.service
           ├─1552 pulseaudio-dlna
           ├─1688 stream_server
           └─1690 holder

gen 29 08:32:27 fedora pulseaudio-dlna[1552]:     self._target(*self._args, **self._kwargs)
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/pulseaudio.py", line 619, in run
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:     self._connect(signals)
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/pulseaudio.py", line 57, in _connect
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:     self.bus = self._get_bus()
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/pulseaudio.py", line 141, in _get_bus
gen 29 08:32:27 fedora pulseaudio-dlna[1552]:     if MODULE_DBUS_PROTOCOL not in modules:
gen 29 08:32:27 fedora pulseaudio-dlna[1552]: TypeError: argument of type 'NoneType' is not iterable
gen 29 08:32:30 fedora pulseaudio-dlna[1552]: 01-29 08:32:30 pulseaudio_dlna.discover                       INFO     SSDPDiscover.search()
gen 29 08:32:30 fedora pulseaudio-dlna[1552]: 01-29 08:32:30 pulseaudio_dlna.plugins.dlna                   INFO     DLNAPlugin.discover()

Here's the unit file:

$ systemctl --user cat pulseaudio-dlna
# /home/fede/.config/systemd/user/pulseaudio-dlna.service

[Unit]
After=sound.target network.target
Requires=sound.target
Description=A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux

[Service]
ExecStart=/usr/bin/pulseaudio-dlna
Restart=on-failure

[Install]
WantedBy=default.target
fedelibre commented 6 years ago

I managed to make it work. At least, the services start fine. But I'm commuting and I don't have renderers to test with. I noticed that pulseaudio comes with a user service file, so I enabled it:

systemctl --user enable pulseaudio.service

Then I changed pulseaudio-dlna.service to:

$ systemctl --user cat pulseaudio-dlna
# /home/fede/.config/systemd/user/pulseaudio-dlna.service

[Unit]
After=pulseaudio.service
Description=A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux

[Service]
ExecStart=/usr/bin/pulseaudio-dlna
Restart=on-failure
fedelibre commented 6 years ago

It starts correctly, but it may start too soon. I don't see the renderer in GNOME/Audio config, probably because the service started before the connection to WiFi was active. Here's the log:

-- Reboot --
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="1" mime_type="audio/L16" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: Exception in thread Thread-4:
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: Traceback (most recent call last):
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:   File "/usr/lib64/python2.7/threading.py", line 804, in __bootstrap_inner
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:     self.run()
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:   File "/usr/lib64/python2.7/threading.py", line 757, in run
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:     self.__target(*self.__args, **self.__kwargs)
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/plugins/dlna/__init__.py", line 64, in launch_listener
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:     ssdp.run(ttl=ttl)
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/plugins/dlna/ssdp/listener.py", line 97, in run
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:     self._multicast_struct(self.SSDP_ADDRESS))
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:   File "/usr/lib64/python2.7/socket.py", line 228, in meth
gen 29 21:20:36 fedora pulseaudio-dlna[1491]:     return getattr(self._sock,name)(*args)
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: error: [Errno 19] No such device
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Module "module-dbus-protocol" (id=24) loaded.
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Probing for $PULSE_DBUS_SERVER unsuccessful.
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Probing for /run/pulse/dbus-socket unsuccessful.
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Probing for $XDG_RUNTIME_DIR successful (unix:path=/run/user/1000/pulse/dbus-socket).
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Probing for org.PulseAudio.ServerLookup1 successful (unix:path=/run/user/1000/pulse/dbus-socke
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Found the following pulseaudio server addresses: unix:path=/run/user/1000/pulse/dbus-socket
gen 29 21:20:36 fedora pulseaudio-dlna[1491]: 01-29 21:20:36 pulseaudio_dlna.pulseaudio                     INFO     Connecting to pulseaudio on "unix:path=/run/user/1000/pulse/dbus-socket" ...
gen 29 21:20:39 fedora pulseaudio-dlna[1491]: 01-29 21:20:39 pulseaudio_dlna.discover                       INFO     SSDPDiscover.search()
gen 29 21:20:39 fedora pulseaudio-dlna[1491]: 01-29 21:20:39 pulseaudio_dlna.plugins.dlna                   INFO     DLNAPlugin.discover()
gen 29 21:34:22 fedora pulseaudio-dlna[1491]: 01-29 21:34:22 pulseaudio_dlna.holder                         INFO     Holder.shutdown()
gen 29 21:34:22 fedora pulseaudio-dlna[1491]: 01-29 21:34:22 pulseaudio_dlna.pulseaudio                     INFO     PulseWatcher.shutdown()
gen 29 21:34:22 fedora pulseaudio-dlna[1491]: 01-29 21:34:22 pulseaudio_dlna.holder                         INFO     Holder.search()
gen 29 21:34:22 fedora pulseaudio-dlna[1491]: 01-29 21:34:22 pulseaudio_dlna.streamserver                   INFO     StreamServer GobjectMainLoopMixin.shutdown()

If I restart the service, the DLNA device appears. So I guess I should add NetworkManager-wait-online.service to After=.

fedelibre commented 6 years ago

The following service file seems to work fine:

$ systemctl --user cat pulseaudio-dlna.service
# /home/fede/.config/systemd/user/pulseaudio-dlna.service
[Unit]
After=pulseaudio.service NetworkManager-wait-online.service
Description=A lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux

[Service]
ExecStart=/usr/bin/pulseaudio-dlna
Restart=on-failure
fedelibre commented 6 years ago

No, it doesn't work yet as expected. pulseaudio-dlna is started even if my modem is switched off and therefore there's no connection. Service is started but can't find any device, obviously. And when I switch on the modem, the device/renderer is not detected. (this may depend on the renderer? yesterday, pulseaudio detected a second renderer which I switched on after pulseaudio-dlna was started)

Log of service start with modem switched off:

-- Reboot --
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <OpusencOpusEncoder available="False" bit-rate="192">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <SoxL16Encoder available="True" sample-rate="44100" channels="2">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <SoxWavEncoder available="True">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO     Codec settings:
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <AacCodec enabled="True" priority="12" mime_type="audio/aac" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <L16Codec enabled="True" priority="1" mime_type="audio/L16" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <OpusCodec enabled="True" priority="3" mime_type="audio/opus" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <Mp3Codec enabled="True" priority="18" mime_type="audio/mp3" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <FlacCodec enabled="True" priority="9" mime_type="audio/flac" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <WavCodec enabled="True" priority="15" mime_type="audio/wav" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.application                    INFO       <OggCodec enabled="True" priority="6" mime_type="audio/ogg" backend="generic">
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: Exception in thread Thread-4:
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: Traceback (most recent call last):
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:   File "/usr/lib64/python2.7/threading.py", line 804, in __bootstrap_inner
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:     self.run()
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:   File "/usr/lib64/python2.7/threading.py", line 757, in run
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:     self.__target(*self.__args, **self.__kwargs)
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/plugins/dlna/__init__.py", line 64, in launch_listener
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:     ssdp.run(ttl=ttl)
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:   File "/usr/lib/python2.7/site-packages/pulseaudio_dlna/plugins/dlna/ssdp/listener.py", line 97, in run
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:     self._multicast_struct(self.SSDP_ADDRESS))
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:   File "/usr/lib64/python2.7/socket.py", line 228, in meth
gen 30 06:39:56 fedora pulseaudio-dlna[1470]:     return getattr(self._sock,name)(*args)
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: error: [Errno 19] No such device
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Module "module-dbus-protocol" (id=24) loaded.
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Probing for $PULSE_DBUS_SERVER unsuccessful.
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Probing for /run/pulse/dbus-socket unsuccessful.
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Probing for $XDG_RUNTIME_DIR successful (unix:path=/run/user/1000/pulse/dbus-socket).
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Probing for org.PulseAudio.ServerLookup1 successful (unix:path=/run/user/1000/pulse/dbus-socke
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Found the following pulseaudio server addresses: unix:path=/run/user/1000/pulse/dbus-socket
gen 30 06:39:56 fedora pulseaudio-dlna[1470]: 01-30 06:39:56 pulseaudio_dlna.pulseaudio                     INFO     Connecting to pulseaudio on "unix:path=/run/user/1000/pulse/dbus-socket" ...
gen 30 06:39:59 fedora pulseaudio-dlna[1470]: 01-30 06:39:59 pulseaudio_dlna.discover                       INFO     SSDPDiscover.search()
gen 30 06:39:59 fedora pulseaudio-dlna[1470]: 01-30 06:39:59 pulseaudio_dlna.plugins.dlna                   INFO     DLNAPlugin.discover()
JocelynDelalande commented 6 years ago

Suggestion : a .desktop file would bring a first (easy) level of desktop integration. It would allow pulseaudio-dlna to be choosen as a « startup applicaiton » of the desktop environment.

KristupasSavickas commented 6 years ago

@JocelynDelalande thanks for the suggestion, there's the .desktop file I'm using in case anyone stumbles upon this:

cat /usr/share/applications/pulseaudio-dlna.desktop

[Desktop Entry]
Type=Application
Version=1.0
Name=pulseaudio-dlna
Comment=lightweight streaming server which brings DLNA / UPNP and Chromecast support to PulseAudio and Linux
Path=/usr/bin
Exec=pulseaudio-dlna
Terminal=false

To autostart it on KDE Plasma go to Autostart > Add Program.