0.9-update37 (Nov 10th 2019)

  • requires Java 8 (previously: Java 7)
  • added support for Chromecast transcoding with Android app Yatse (website)

0.9-update33 (July 17th 2019)

  • fixed crash caused by some rare UPnP/DLNA devices defining bogus UPnP actions
  • updated BubbleUPnP Tether Client to v0.9.2

0.9-update32 (July 16th 2019)

  • fixed issue causing thread exhaustion, resulting in server crash after a while
  • reduced thread count resulting in reduced memory usage
  • fixed some rare UPnP devices that are simultaneously a renderer and a media server but that were only detected as a renderer
  • fixed links in UI to updated documentation
  • fixed rare crash when using Chromecast devices as DLNA or OpenHome renderer
  • fixed “convert 16bit to 24-bit” not working for DSD
  • fixed transcoding DSD to FLAC resulting in a displayed bitdepth of 1-bit in Android BubbleUPnP (instead of 16 or 24)
  • Chromecast transcoding: in Android BubbleUPnP, if “Preserve multi-channel” is enabled and “AC-3 Passtrough” or “E-AC-3 Passthrough” are enabled, transcode multichannel audio to AC-3 or E-AC-3 (instead of Opus 5.1)
  • increased default image transcoding JPEG quality to 90 (previously: 80)

0.9-update31 (December 22th 2018)

  • fixed FFmpeg decoding not working (failing to play) for OpenHome’d Chromecast
  • do not force Chromecast v1 and v2 transcoding for h264 profiles level > 4.1 as these are now supported by the firmware
  • fixed Linn Kazoo process using 100% of 1 CPU core and consuming huge amount of memory when adding a huge number of tracks (> 800) to the Playlist of an OpenHome renderer. This fix may also make Android BubbleUPnP load OpenHome Playlist updates faster when the Playlist is updated from another OpenHome Control Point (Kazoo, another BubbleUPnP instance, …)
  • added ability to specify FFmpeg audio filters for equalizing, normalizing, etc, in ‘Media Renderers tab > Audio decoding to PCM section > Audio Filters’. This applies to OpenHome renderers only. Any sound processing can be performed with filters as long as it does not change audio size and duration

  • added ‘Settings > Advanced tab > Transcode Audio’ to return at browse time in Control Points transcoded streams with these possible choices:

    • source audio greater than 96 kHz => transcode to either 96 or 88.2 khz
    • source audio greater than 48 kHz => transcode to either 48 or 44.1 khz
    • optionally convert 24-bit source audio to 16-bit
  • fixed applying ReplayGain (for OpenHome renderers) not working at all due to setting FFmpeg parameters wrong

  • fixed cloud media links extraction not working with OpenHome renderers

  • fixed XXE vulnerability

  • fixed Web UI not showing scrollbars when needed

  • updated communication from server to web browser (UI) with something more reliable

  • updated GWT to 2.8.2, JmDNS to 3.5.5

0.9-update30 (March 15th 2018)

  • fixed Chromecast discovery removing devices after a while by mistake, requiring a server restart to have them listed again
  • fixed legit Chromecast disappearance notifications not handled properly (on power cable or network cable unplug, device reboot). On such events, Chromecast is removed from the list at most 2 minutes after the event
  • updated jMDNS to 3.5.4-SNAPSHOT (used for Chromecast discovery)
  • fixed DLNA or OpenHome Chromecast producing white noise in some specific cases or not playing at all (in particular playing with foobar2000 using foo_out_upnp)
  • added support for separate Chromecast transcoding E-AC-3 passthrough setting in Android BubbleUPnP 2.9.3
  • FFmpeg PCM decoding for OpenHome renderer is possible only if a local ffprobe binary is available (not the case by default on Synology NAS)
  • fixed setting discoveryMaintenanceInterval to 0 in configuration.xml crashing BubbleUPnP Server on startup
  • added -transcodeAudioSeekableMaxTrackDurationSec (default 600 seconds = 10 min) used to control max duration of track for which to generate a seekbable transcode when -transcodeAudioSeekable is enabled or in Android BubbleUPnP when ‘Settings > Internet access with BubbleUPnP Server > Seeekable tracks’ is enabled. The higher this value and the input track duration are, the longer it will take Android BubbleUPnP to start playing the track. CPU speed also determinates how long it takes (generally a few seconds on a fast CPU).
  • on startup, load file if present in install directory to further configure logging for specific troubleshooting

0.9-update29 (February 23th 2018)

  • fixed GPU transcode test ‘No Internet connectivity’ error on some setups, preventing GPU transcoding for Chromecast to possibly work

0.9-update28 (February 18th 2018)

  • added FFmpeg PCM audio decoding ability to OpenHome renderers for playing audio formats/codecs not natively supported by the underlying UPNP AV renderer, and/or to apply some renderer specific constraints (Max supported samplerate, bitdepth conversion, stereo conversion), and/or to apply ReplayGain. This can be configured in the web configuration page of each renderer
  • BubbleUPnP Server can offload FFmpeg PCM audio decoding for Android BubbleUPnP. Can be enabled/disabled in Android BubbleUPnP 2.9.2+, in Settings > UPnP Tweaks > BubbleUPnP Server FFmpeg decoding (default: enabled).
  • fixed Chromecast with name containing Emoji or possibly other special unicode characters not being listed in Renderers
  • Chromecast transcoding: supports ReplayGain when enabled in Android BubbleUPnP in Now Playing > 3-dot menu
  • Chromecast transcoding: support E-AC-3 passthrough setting of Android BubbleUPnP
  • fixed ffmpeg possibly getting stuck on subtitle extraction (Chromecast)
  • improved how BubbleUPnP Server updates itself
  • fixed Denon HEOS renderers listed twice
  • updated Apache HttpClient/HttpCore to 4.5.5 / 4.4.9 (from 4.1.1), httpmime to 4.5.5 (from 4.2.2)
  • updated from to jMDNS 3.5.3 (from 3.5.1)