DLNA live

Pulseaudio-dlna is a very young and actively developed project. Expect a rapid change in functionality. We try to adapt stream2ip timely but we can not provide immediate support for future releases. Be patient.

To be able to push audio to a DLNA renderer we use pulseaudio-dlna which needs to be installed system-wide from source, DEB package or PPA.

If set up to “auto-connect” stream2ip will need some time to establish a connection with a renderer. Be patient.  Stream2ip did not chrash but the application window will stay blank until the connection routine was finished.

From pulseaudio-dlna version 0.4.4 please also override some defaults in a ~/.config/stream2ip/padlna.cfg file (see below for details).

On leaving the setting line empty we will try to connect to the first available renderer in our network. This may not be desired in case we have more than one device running.

Therefore  a known DLNA renderer will be connected in case we had given the following option in DLNA live mode :

Renderer@IP
Discover renderes

From the preferences we can choose from a list of discovered renderers on clicking the looking glass next to the input line.

settings-dlna

Choose to discover by renderer URL (gives a faster connection later) or by the renderer’s name as shown below:

s2ip-DLNA-discoverOnly renderers available in the network will be discoverable. In the next windows choose a renderer to connect to by its friendly name.

Once the name and IP, or the stream URL,  was stored we can let stream2ip wait for the presence of this device before connecting. This may take some time  where the program window becomes unresponsive until a connection was established.

Example syntax for a BubbleUpnP renderer at 192.168.178.53:

BubbleUPnP (GT-I9000)@192.168.178.53

Example syntax for a renderer URL:

http://192.168.178.24:7676/smp_18_

The stream URL may be rather lengthy but once stored we will be able to connect faster, as pulseaudio-dlna then skips its discovery routine.

Override defaults (recommended)

The DLNA server will use default settings unless we override these by giving additional parameters for pulseaudio-dlna in a configuration file

~/.config/stream2ip/padlna.cfg.

Do not give another –renderer-urls or a –filter-device option if you had defined these already. The file expects settings as a single line with option names and parameter separated by a blank, e.g.:

--host 192.168.178.10 --port 8080 --encoder ogg

Because stream2ip uses its own routines for device discovery and switchback to the previous sink we should always add the following parameters to override the defaults:

--disable-switchback --disable-ssdp-listener

 

Alternative command line for pulseaudio-dlna

In case options given for DLNA live start with — we assume that a full options line for pulseaudio-dlna was given. Or, if the option field was left empty we read all command line parameters from ~/.config/stream2ip/padlna.cfg. See the manpage for pulseaudio-dlna for possible options.

Example:

--host 192.168.178.2 --port 8080 --filter-device "BubbleUpnP (GT-I9000)" --encoder ogg

Autoconnecting will then only be possible when connecting by giving a renderer URL using the –renderer-urls option.

Sending streams to multiple devices is possible by this but then we can not scan for the presence of those devices or autoconnect to all of them.

Example settings lines:
BubbleUPnP (GT-I9000)@192.168.178.53

http://192.168.178.24:7676/smp_18_

--host 192.168.178.2 --port 8080 --filter-device "BubbleUpnP (GT-I9000)" --encoder ogg

Known issues:
  • Some DLNA clients do not adhere strictly to the HTTP 1.0/1.1 standard. We may still be able to send audio to them with this option in ~/.config/stream2ip/padlna.cfg:
--fake-http-content-length