Commit Graph
6293 Commits
Author SHA1 Message Date
Mike Brady d32d5cb9d5 Fix warning of dropping 'const' signifier. 2026-02-15 08:13:44 +00:00
Mike BradyandGitHub d8fc3cd6f3 Merge pull request #2146 from heitbaum/patch-1
fix handling of missing const type qualifier
2026-02-15 08:05:32 +00:00
Mike BradyandGitHub 6edef9b250 Update release notes for version 5.0-post-dev-1 [skip ci]
Updated release notes to reflect version 5.0-post-dev-1-g963380a8 and added details about MQTT enhancement.
2026-02-14 18:38:22 +00:00
Mike Brady b349268194 Small typo fixes [skip ci] 2026-02-14 18:35:07 +00:00
Mike BradyandGitHub 963380a832 Refactor Docker workflow for tag handling 2026-02-14 12:40:23 +00:00
Mike Brady d6275eafef Bring some changes in from V5.0 release. Start using 'post-dev' to avoid ambiguity. 2026-02-14 12:23:46 +00:00
Mike BradyandGitHub 0a3173f95b Delete REPORTING ISSUES.md [skip ci] 2026-02-14 11:47:52 +00:00
Mike BradyandGitHub ee4728bf52 Delete MAKING PULL REQUESTS.md [skip ci] 2026-02-14 11:47:23 +00:00
Mike BradyandGitHub 8f46b853bb Update workflow name for clarity 2026-02-14 10:53:16 +00:00
Mike BradyandGitHub bcd81c1db5 Add workflow to set variables for Docker build [skip ci] 2026-02-14 10:48:38 +00:00
Mike BradyandGitHub e48a84133a Enhance Docker workflow for tag handling [skip ci]
Updated Docker workflow to include latest and classic tags for branches and tags.
2026-02-14 10:47:24 +00:00
Mike Brady be62f9a05a PR template [skip ci] 2026-02-14 10:28:22 +00:00
Mike BradyandGitHub 8325213c86 Create pull request template for contributions [skip ci]
Added a pull request template to guide contributors in submitting changes.
2026-02-14 10:19:05 +00:00
Rudi HeitbaumandGitHub ecc30968e7 fix handling of missing const type qualifier
For ISO C23, the function strrchr that return pointers into their input arrays now have definitions as macros that return a pointer to a const-qualified type when the input argument is a pointer to a const-qualified type.

Update to const type for variable, as returned string is only used in comparisons which const can be used
2026-02-14 15:12:07 +11:00
Mike BradyandGitHub 906fa773da Fix link formatting in README.md [skip ci] 2026-02-13 16:03:47 +00:00
Mike BradyandGitHub 771f8955a5 Add update note for release changes [skip ci]
Added a note about checking release notes for breaking changes when updating.
2026-02-13 16:03:22 +00:00
Mike BradyandGitHub cb28256662 Fix link to Version 5 Configuration File Changes guide [skip ci]
Updated the link for the Version 5 Configuration File Changes guide to point to the correct document.
2026-02-13 15:58:13 +00:00
Mike BradyandGitHub 107ed31a9a Update BUILD.md with configuration changes guide [skip ci]
Added a guide link for Version 5 configuration file changes.
2026-02-13 15:57:35 +00:00
Mike BradyandGitHub e2c247cd33 Document configuration changes for Version 5.0 [skip ci]
This document outlines the significant changes to the `shairport-sync.conf` configuration file for users upgrading to Version 5.0, including new features, settings, and recommendations for optimal use.
2026-02-13 15:55:25 +00:00
Mike BradyandGitHub f84f057a4c Fix link to Version 5 Configuration File Changes [skip ci]
Updated the link for the Version 5 Configuration File Changes guide.
2026-02-13 15:52:04 +00:00
Mike BradyandGitHub 956a6869fd Update README with AirPlay 2 and metadata details [skip ci]
Added information about AirPlay 2 capabilities and metadata support.
2026-02-13 15:50:53 +00:00
Mike BradyandGitHub 82079e34b8 Release version 5.0 with major enhancements [skip ci]
This major release introduces multi-channel audio support, high-resolution playback, and various performance improvements. It also includes important breaking changes, new features, enhancements, bug fixes, and updates to documentation.
2026-02-13 15:48:55 +00:00
Mike Brady 15a0c6b1e3 RC0 [skip ci] 2026-02-13 15:46:37 +00:00
Mike Brady f38eb46506 Mark Docker images as release candidates. 2026-02-13 15:43:19 +00:00
Mike Brady 59bf5915f6 Set initial debug level to 0; fix a bug reading convolution files with dbus support enabled. [skip ci] 2026-02-13 15:36:20 +00:00
Mike Brady b405c0b896 Version 5.0 Major Release.
New Features:
Multi-Channel and High-Resolution Audio Support
48,000 frames per second ("48k") operation.
48k lossless stereo support.
5.1 and 7.1 surround sound support.
Multi-channel and multi-rate operation on ALSA, PipeWire, PulseAudio, FreeBSD, stdout and Unix pipe output backends.
Automatic Audio Format Selection
Flexible and controllable output format selection.
Automatic rate, sample format, and channel count selection.
Full FFmpeg Integration
Support for transcoding.
Advanced resampling capabilities.
New audio format support.
Enhanced Resampling
New vernier resampling and interpolation method optimized for low-power CPUs.
Better performance on resource-constrained devices.

Convolution and Loudness Enhancements:
Convolution system is now multithreaded and works on stereo and multichannel audio at 48k and 44.1k.
Multiple impulse response (IR) files can now be provided via convolution_ir_files setting.
New convolution_thread_pool_size setting for multithreaded processing (defaults to 1).
Loudness processing now works with stereo and multichannel audio at 48k and 44.1k.
Updated to the most recent HiFi-LoFi FFT convolver.

MQTT Enhancements:
Added new publish_retain boolean option. When enabled, published MQTT messages have the retain flag set, so the MQTT broker stores the last message per topic and new subscribers receive the most recent value immediately. Thanks to lululombard for PR #2142.

D-Bus Enhancements:
Added new dbus_default_message_bus command-line argument (can be system or session) to set the default message bus for both D-Bus native service and MPRIS service.

Performance Improvements:
Enhanced compatibility with AirPlay 2 AutoMix and Smart Tracklists resulting in less unexplained track skipping.
Better operation on low-power devices down to Raspberry Pi B.
Improved efficiency on embedded systems.
Enhanced timestamp handling for better synchronization.
Improved sync error calculation.
Rebuilt buffered audio processor for cleaner handling of immediate and deferred flush requests.

Docker Enhancements:
Reduced Docker image sizes with slimmed-down FFmpeg library.
Removed dhclient from Docker images for smaller footprint.

Bug Fixes:
Fixed MQTT warning on service startup: "Could not establish a mqtt connection". The startup script now correctly states that the mosquitto service is required. Thanks to Hugo Villeneuve for PR #2137.
Fixed compatibility with mbedtls library version 3.4+ (present on recent Linux versions). Thanks to Christian Beier for finding and fixing the bug.
Fixed PulseAudio backend so that PA_ERR_NODATA returns "No latency data yet". Thanks to Vladimir Shakov for the report and fix.
Ensured old flush requests are deleted when a new play session starts. Thanks to saujanyashah for the report.
Fixed format warnings on 64-bit and 32-bit systems
Removed compilation warnings on 32-bit builds
Improved argument checking for debug(), inform(), warn() and die() functions
Fixed "daemon" typos throughout codebase. Thanks to Chris Boot for PR #1981.
Added warning if a convolution impulse response file cannot be read due to bad path or permissions

Build System Improvements:
Unified service file with variable substitution for Avahi support, making it easier to add future service dependencies. Thanks to Hugo Villeneuve.
Network interface selection now only considers interfaces that are up, running and not loopback interfaces. Thanks to Carl Johnson for the suggestion.
Configuration File Changes and Deprecations

New settings: convolution_ir_files (replaces convolution_ir_file), convolution_enabled (replaces convolution), convolution_max_length_in_seconds (replaces convolution_max_length), loudness_enabled (replaces loudness).
New convolution_thread_pool_size setting (defaults to 1).
Deprecated settings: convolution_ir_file, convolution, convolution_max_length, loudness.
Corresponding D-Bus methods and properties have been updated.

Deprecation Notice:
The Jack Audio and soundio backends are deprecated and will be removed in a future release. Consider using the updated PipeWire backend instead.

Documentation Updates
Updated BUILD.md with latest build instructions.
Updated AIRPLAY2.md with feature information.
Enhanced convolution and loudness documentation.

Maintenance:
Fixed FFmpeg deprecation warnings.
Bumped actions/checkout from 6.0.1 to 6.0.2.
Bumped docker/login-action from 3.6.0 to 3.7.0.
Bumped docker/build-push-action from 6.13.0 to 6.15.0.
Bumped docker/setup-qemu-action from 3.4.0 to 3.6.0.
Bumped docker/setup-buildx-action from 3.9.0 to 3.10.0.
2026-02-13 15:17:40 +00:00
Mike BradyandGitHub ea4bf0c860 Update NQPTP link and Shairport Sync instructions [skip ci]
Updated NQPTP installation link to point to the development branch and added a checkout command for the Shairport Sync development branch.
2026-02-12 17:21:11 +00:00
Mike BradyandGitHub 63a8e0f495 Revise CAR INSTALL.md for clarity and accuracy
Updated instructions for setting up Shairport Sync in a car audio system, including changes to device names, network configurations, and service management.
2026-02-12 17:15:11 +00:00
Mike BradyandGitHub 6be612dc6c Update release notes for version 5.0-dev-168
Added a new `publish_retain` option for MQTT configuration and updated release notes with Dependabot updates and bug fixes.
2026-02-09 09:35:40 +00:00
Mike BradyandGitHub 846e0e3dfe Merge pull request #2142 from lululombard/mqtt-retain-dev
Add MQTT retain flag support.
2026-02-09 09:23:16 +00:00
lululombard bd9008e4f7 Add MQTT retain flag support 2026-02-08 12:43:53 +01:00
Mike BradyandGitHub df7bfcacfb Merge pull request #2139 from mikebrady/dependabot/github_actions/development/docker/login-action-3.7.0
Bump docker/login-action from 3.6.0 to 3.7.0
2026-02-02 09:31:13 +00:00
dependabot[bot]andGitHub 1623333e94 Bump docker/login-action from 3.6.0 to 3.7.0
Bumps [docker/login-action](https://github.com/docker/login-action) from 3.6.0 to 3.7.0.
- [Release notes](https://github.com/docker/login-action/releases)
- [Commits](https://github.com/docker/login-action/compare/v3.6.0...v3.7.0)

---
updated-dependencies:
- dependency-name: docker/login-action
  dependency-version: 3.7.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-02-01 10:06:35 +00:00
Mike BradyandGitHub 531b8a00d8 Update RELEASENOTES-DEVELOPMENT.md 2026-01-26 17:07:18 +00:00
Mike BradyandGitHub ef8d82d96f Update release notes for convolution and loudness enhancements 2026-01-26 17:04:59 +00:00
Mike BradyandGitHub 15078a0a41 Update release notes for version 5.0-dev-161
Fix MQTT warning and update Dependabot tools.
2026-01-26 17:00:47 +00:00
Mike BradyandGitHub 5b3659c26e Merge pull request #2137 from hvilleneuve29/development_yocto
Fix MQTT warning and simplify building the systemd startup script
2026-01-26 16:48:13 +00:00
Hugo VilleneuveandHugo Villeneuve b60b424495 MQTT: fix warning when starting service
This fixes the following warning:

    shairport-sync[293]: [MQTT]: Could not establish a mqtt connection

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2026-01-26 10:24:22 -05:00
Hugo VilleneuveandHugo Villeneuve 6a94eeb926 Use common service file for avahi
Use variable substitution to simplify service file for optional avahi.

This will also help to simplify adding future service dependencies.

Signed-off-by: Hugo Villeneuve <hvilleneuve@dimonoff.com>
2026-01-26 10:24:22 -05:00
Mike BradyandGitHub 23e8504579 Merge pull request #2135 from mikebrady/dependabot/github_actions/development/actions/checkout-6.0.2
Bump actions/checkout from 6.0.1 to 6.0.2
2026-01-25 14:35:38 +00:00
dependabot[bot]andGitHub 1e5b0a74b3 Bump actions/checkout from 6.0.1 to 6.0.2
Bumps [actions/checkout](https://github.com/actions/checkout) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v6.0.1...v6.0.2)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-version: 6.0.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2026-01-25 10:02:37 +00:00
Mike BradyandGitHub f69927b37a Update RELEASENOTES-DEVELOPMENT.md for 5.0-dev-155
Add bug fix and updates to release notes for version 5.0-dev-155.
2026-01-05 21:25:29 +00:00
Mike Brady 45063d101f Add Carl Johnson's suggestion for omitting dummy internet interfaces. 2026-01-05 21:19:11 +00:00
Mike BradyandGitHub 3746c82f90 Update version numbers in release notes 2025-12-31 19:54:49 +00:00
Mike Brady 525e49cd76 Fix one format warning 2025-12-31 19:52:44 +00:00
Mike BradyandGitHub 10bf5a1045 Update version and improve argument checking
Updated version information and tightened argument checks for logging functions on 64 bit and 32 bit systems
2025-12-31 19:07:32 +00:00
Mike Brady 16b6534ad3 further changes to remove compilation warnings on 32-bit builds 2025-12-31 19:02:16 +00:00
Mike Brady d7f8816630 Merge branch 'development' of github.com:mikebrady/shairport-sync into development
ONline documentation update...
2025-12-30 18:52:15 +00:00
Mike Brady 3d148f026a Move to -Wformat=2 checking in Linux 2025-12-30 18:52:01 +00:00
Mike BradyandGitHub 2c4c7a91dd Update RELEASENOTES-DEVELOPMENT.md 2025-12-30 18:25:25 +00:00