Docs/Connect With Bubbleupnp.md

Once BubbleUPnP Server is up and running you can configure Android BubbleUPnP to connect to it and start streaming your media over a remote network connection (mobile or WiFi).

Connecting to BubbleUPnP Server

  • go into More > gear icon > Internet access with BubbleUPnP Server
  • select an unused Network (Unset label) and set the connection parameters (screenshot below)
  • use the Test button to test the connection
  • use the Apply button to connect to BubbleUPnP Server and have the remote Media Servers appear as libraries that you can select in the Library tab



Name

This is the name used to identify the remote BubbleUPnP Server network. You can choose any name you want. It is used to identify Media Servers from different networks. For example if your home Media Server is named “My Media Server” and you set Name to “Home”, this Media Server will be listed as “My Media Server [Home]” in the Library tab (as shown in the right screenshot).

Server address

This is the public connection URL to BubbleUPnP Server. The information used to set this field is displayed in the Status tab of BubbleUPnP Server.

For example if the Status tab shows:

Public IP Address:  1.2.3.4
Public HTTP Port: 58050
Public HTTPS Port: 58051
Public host name**: my.host.org

To connect through HTTP, you must set “Server Address” to either http://1.2.3.4:58050 or http://my.host.org:58050

To connect through HTTPS, you must set “Server Address” to either https://1.2.3.4:58051 or https://my.host.org:58051

Login and Password

Use the login and password that you defined in the ‘Network and Security’ configuration tab in BubbleUPnP Server.

Active on connection

This setting allow you to set when Android BubbleUPnP should automatically connect to this remote network to make the associated Media Servers available in the Devices tab of the app.

For example you may want to connect to this network only when your Android device uses a Mobile data connection. In that case you would set this setting to “Mobile”. Now every time your Android device switches to a mobile connection, BubbleUPnP will connect to BubbleUPnP server to make your Media Server available in the Devices tab. And if you switch from a mobile connection to WiFi, it will disconnect and remove them from the Devices tab.

The possible choices are:

  • Disabled: never connect to this network
  • Mobile: connect to this network on mobile connections
  • WiFi /Ethernet: connect to this network on WiFi or Ethernet connections
  • Mobile / WiFi / Ethernet: connect to this network on mobile or WiFi or Ethernet connections

Advertise on LAN

This setting if enabled will make all Media Servers of this remote network (those listed in the right screenshot) visible on the target LAN on which your Android device is currently connected. This only work if your Android device uses a WiFi or Ethernet connection.

It means that your UPnP devices on the target LAN (a PS3, a DNLA TV, etc) should be able to see and browse your remote Media Servers. This is UPnP tethering.

For example a PS3 accessing to your home Media Server follows this path when issuing commands (browsing, searching, etc):

PS3 -> Android device (BubbleUPnP) -> Internet -> BubbleUPnP Server -> Your Media Server.

For streaming audio or retrieving album art the PS3 talks directly to BubbleUPnP Server without Android BubbleUPnP in the middle:

PS3 -> Internet -> BubbleUPnP Server -> Your Media Server.

Audio, video and image transcoding settings

BubbleUPnP Server can optionnaly transcode audio (to MP3) and video (to H264/MP3) for playback on the Android device itself (using the local renderer). No transcoding is ever performed if streaming to an external renderer, as it may have a faster connection to BubbleUPnP Server than your Android device.

Separate transcode settings are also available for downloaded files.

For transcoding to work, BubbleUPnP Server must report that audio and/or video transcoding are supported in its Status tab.

In Android BubbleUPnP, you can configure how BubbleUPnP Server should perform the transcoding in Settings > Networks and settings. There are separate settings for Audio, Video, Images, and for each connection type.

Music caching on local storage

Android BubbleUPnP can optionally cache to local storage music accessed through BubbleUPnP Server. This reduces network usage when playing tracks that have been previously played. This is particularly useful on mobile data connections which may be metered and/or have limited bandwidth.


This section allows to configure caching settings:

  • Active on connection: on which network connection type to enable caching
  • Cache folder: select folder for storing cached tracks. You can specifiy any folder you want, including a high capacity additional external SD Card. The cached data is preserved across app reinstalls.
  • Max cache size: Max size in MB to allocate to cached tracks. When max size is reached, older cached tracks are deleted to make room for newer tracks. Set to 0 to disable caching
  • Clear cache: delete all tracks from the cache folder
  • Add to Android Library: when a track is cached, it is added to the Android Music Library, thus visible to other music players

Music playback transcoding

This section configure how music streams should be transcoded.


  • Mobile Max Bitrate (Local Renderer): on a mobile connection and when playing to the Local Renderer, BubbleUPnP Server will transcode to the specified bitrate all audio whose bitrate is higher than this bitrate
  • WiFi / Eth Max Bitrate (Local Renderer): on a WiFi / Eth connection and when playing to the Local Renderer, BubbleUPnP Server will transcode to the specified bitrate all audio whose bitrate is higher than this bitrate
  • Max Bitrate (external renderers)**: when playing to an externa renderer, BubbleUPnP Server will transcode to the specified bitrate all audio whose bitrate is higher than this bitrate
  • Lossless only: enabling this setting will ensure that only lossless tracks will be possibly affected by the transcode settings. This is to prevent lossy->lossy transcodes which should be avoided if possible are they are bad for audio quality (unless the source is 320Kbps in which case it might be acceptable)
  • Seekable tracks: request BubbleUPnP Server to generate seekable transcoded music tracks (see below)

Seekable tracks

BubbleUPnP Server can generate seekable transcoded music tracks (disabled by default) for tracks for which duration can be determined and whose duration is lower than 10 minutes.

It can be enabled in Android BubbleUPnP with the “Seekable tracks” toggle, or forced on the server side with the -transcodeAudioSeekable command-line parameter.

When enabled, BubbleUPnP Server will transcode a track fully before serving it for playback to the client. This introduces a variable delay depending on CPU speed and track duration before the track can be played. On a standard PC, it should not exceed a few seconds. That’s why it is not recommended to enable it if BubbleUPnP Server is running on a slow CPU (such as some NASes). This delay only happens the first time a seekable track is generated as it is cached to disk for subsequent plays.

When enabling this feature, it is recommended to also enable Settings > Local renderer > Gapless playback, in Android BubbleUPnP. Gapless playback will trigger transcoding of the next track before current track finishes and make the delay discussed above unoticeable in most cases. Only playback of the first track may be delayed.

Video transcoding




Here you can specify which profile should be used for video transcoding:

  • No transcoding
  • 720p / 128Kbps audio
  • 480p / 128Kbps audio
  • 360p / 128Kbps audio
  • 240p / 128Kbps audio
  • 240p / 64Kbps audio
  • 120p / 64Kbps audio

All profiles will transcode to H264 for video and MP3 for audio, into an MPEG-TS container (for technical reasons it cannot be MP4). Aspect ratio is preserved. The transcoded video may not be playable by the standard Android video player and requires a third party video player app such as MX Player and VLC.

  • Mobile transcoding: profile to be used on a mobile connection
  • Wifi / Eth transcoding: profile to be used on a WiFi / Eth connection

Image transcoding to local renderer

  • Optimize bandwidth: reduce the size of image by resizing and recompressing. Necessary for viewing large size photos over mobile networks.
  • Image quality: 0-100 jpeg compression quality. Higher is better quality and higher size.

File downloads transcoding

Ttranscoding settings applying to downloaded files:

  • Lossless audio bitrate: downloaded lossless audio files will be transcoded by BubbleUPnP Server as MP3 of the specified bitrate
  • Video transcoding: downloaded videos will be transcoded to MKV with the specified quality