To use this image, refer to the documentation which has important information,
notably for running with GPU support.
If you do not need Chromecast GPU transcoding functionality for the amd64 architecture, pull the bubblesoftapps/bubbleupnpserver:nogpu image whose size is much smaller.
updated FFmpeg x86_64, rebuilt with newer dependencies. Notably, updated libva to 2.24, for working VA-API acceleration on any host with any version up to 2.24 installed
updated FFmpeg to v7.1 on x86_64, compiled against newer dependencies and VA-API 1.22.0
updated documentation to mention the --group-add argument (and corresponding statement in docker-compose.yml) in the NVIDIA section, necessary for the container to have the proper permission to access the GPU devices
rewritten documentation. Please read for important information.
added configurable docker-compose.yml for running container with Docker Compose (see documentation)
added the ability to store data files (configuration file, log files, cached files) in a folder on the host for easy access and persistence across container updates/re-creations (see documentation to set it up)
reverted change running ffmpeg setuid root. Instead, use the --group-add docker option to allow the GPU device to be accessed in the container (see documentation)
on linux/amd64, added libmfx-gen1_2 package for Intel QSV support on >= Tiger Lake
updated ffmpeg executable to use libvpl instead of the deprecated libmfx. Necessary for Intel QSV support on >= Tiger Lake
fixed heath check due to missing awk
update to openSUSE TW20240112 snapshot. This updates OpenJDK to v17.0.10
added support for Chromecast transcoding with NVIDIA GPUs (amd64 arch). Refer to documentation for NVIDIA specific instructions for creating/running the image
added a bubblesoftapps/bubbleupnpserver:nogpu image that does not include Chromecast GPU transcoding. Use this image with the nogpu tag if not using transcoding as it reduces the size of the image in half
image updated to openSUSE TW20231217 snapshot. This updates OpenJDK to v17.0.9 and VA-API to v1.20
update to FFmpeg v6.1, compiled against the latest VA-API (libva) v1.20 (amd64 only) and newer versions of its dependencies.
The update to VA-API v1.20 makes it possible to have QSV and VA-API working on distros whose host libva version is up to 1.20, meaning up to the more bleeding edge distros.
on amd64 image, ffmpeg is run setuid root in the container to make sure it can always open devices in /dev/dri for Chromecast GPU transcoding (Intel QSV, VA-API).
It fixes possible failure to do hardware transcoding on distros that limit /dev/dri devices access to root or users member of a special group (such as video).
The BubbleUPnP Server java process still run under an unprivileged user.
image updated to openSUSE TW20220817 snapshot.
This updates OpenJDK to v11.0.16 and VA-API to v1.15
updated FFmpeg v5.0, compiled against VA-API v1.15 (amd64 only)
added ability to pass custom arguments to the JVM with the USER_JVM_ARGS environment variable.
Can be set at image creation (docker create) or running (docker run) with -e docker option.
Example for restricting memory usage to 256 MB max: docker create ... -e USER_JVM_ARGS="-Xmx256m" ...
fixed health test not working if the -webContextPath BubbleUPnP Server's command line option is used
updated linked documentation to explain how to disable all periodic disk writes (not required for proper functioning) when the container is running.
It can be useful if Docker and/or the image are stored on a spinning hard drive, for not preventing
the hard drive to go to sleep on inactivity. That's assuming other unrelated running containers do not write to disk of course