Releases: Sendspin/sendspin-cpp
v0.5.0
Please note the breaking changes! Especially #45 and #54, as those change the public API.
What's Changed
- Remove the interpolation buffer (#53) @kahrendt
- Add an ArduinoJSON arena defaulting to internal memory (#52) @kahrendt
- Reduces allocation and memory copies for processing JSON messages (#51) @kahrendt
- Improve sync task logging (#50) @kahrendt
- Allocate output buffer for typical use, not worst case (#49) @kahrendt
- Support the new color role (#46) @kahrendt
- Rebase time filter on upstream reference repo (#44) @kahrendt
- Clears all states on a server disconnect to avoid exposing stale values (#43) @kahrendt
- Make mDNS support optional for the examples (#41) @kahrendt
- Add missing cmath header include for the round function (#40) @kahrendt
- Use a fixed write timeout when pushing audio out of the sync task (#39) @kahrendt
- Configurable memory location for websocket payload (#38) @kahrendt
Breaking Changes
- Handle stream/clear internally (#54) @kahrendt
- Reduce ambiguity about the metadata's state (#47) @kahrendt
- Move repeat and shuffle status from metadata to controller state (#45) @kahrendt
Dependencies
- Bump release-drafter/release-drafter from 7.2.0 to 7.2.1 (#42) @dependabot[bot]
Full Changelog: v0.4.0...v0.5.0
v0.4.0
What's Changed
- Drop initial part of decoded frame if it now will be late (#35) @kahrendt
- Choose memory type for allocating Opus decoder state (#33) @kahrendt
- Allow player transfer buffers to prefer internal or external memory (#32) @kahrendt
- Optimization: mark everything in the httpd->binary chunk path as hot (#31) @kahrendt
- Bugfix: crash when closing a connection (#30) @kahrendt
Breaking Changes
Full Changelog: v0.3.1...v0.4.0
v0.3.1
What's Changed
Full Changelog: v0.3.0...v0.3.1
v0.3.0
What's Changed
Many small breaking changes in this release as I work to finalize the API as well as make the codebase follow consistent patterns. All the changes primarily make it easier to implement on the client side; e.g., no need to manually gate metadata updates to the appropriate time, the library will handle that for you.
- Fix release drafter action labels (#27) @kahrendt
- Add documentation describing the conditional compilation approach (#26) @kahrendt
- Refactor stream start handlers (#25) @kahrendt
Breaking Changes
- Refactor artwork thread (#24) @kahrendt
- Simplify Artwork Role API (#23) @kahrendt
- Only include/build microFLAC and microOpus when necessary (#22) @kahrendt
- Gate metadata update callbacks by the timestamps in the metadata message (#21) @kahrendt
- Add a generalized group state getter method (#20) @kahrendt
Full Changelog: v0.2.0...v0.3.0
v0.2.0
What's Changed
This release has breaking changes, mainly around the initial configuration. Please see the Integration Guide for the current API.
- Refactor to minimize public API using PIMPL (#19) @kahrendt
- Cleanup public api (#18) @kahrendt
- Expose static delay setting to sendspin server for the example clients (#17) @kahrendt
- Simplify time message handling (#16) @kahrendt
- Use a shadow slot instead of queue for playback progress (#15) @kahrendt
- Readme improvements (#14) @kahrendt
- Bugfix: Host portaudio issues (#13) @kahrendt
- Add CI and Espressif publication badges to the README (#12) @kahrendt
Full Changelog: v0.1.2...v0.2.0
v0.1.2
What's Changed
Full Changelog: v0.1.1...v0.1.2
v0.1.1
What's Changed
- Refactor publish and release GitHub workflows (#10) @kahrendt
- Use >= versioning requirements for IDF components (#9) @kahrendt
- Add documentation links section to README (#6) @balloob
- Specify latest versions of micro-flac and micro-opus (#4) @kahrendt
- Add CI summary job (#5) @kahrendt
Dependencies
- Bump release-drafter/release-drafter from 7.1.1 to 7.2.0 (#8) @dependabot[bot]
Full Changelog: v0.1.0...v0.1.1