[PR #979] [MERGED] Backport sdroege's gstreamer backend cleanup to dev. #1171

Closed
opened 2026-02-27 20:01:26 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/librespot-org/librespot/pull/979
Author: @allquixotic
Created: 3/15/2022
Status: Merged
Merged: 5/21/2022
Merged by: @roderickvd

Base: devHead: backport-gst-cleanup


📝 Commits (5)

  • 6e649f9 Backport sdroege's gstreamer backend cleanup to dev.
  • 74528b2 Fix crash due to appsrc too small with S16.
  • da02f70 cargo fmt on gstreamer backend
  • b92465e Update CHANGELOG.md
  • bb384db Merge branch 'dev' into backport-gst-cleanup

📊 Changes

4 files changed (+447 additions, -150 deletions)

View changed files

📝 CHANGELOG.md (+2 -1)
📝 Cargo.lock (+291 -51)
📝 playback/Cargo.toml (+6 -4)
📝 playback/src/audio_backend/gstreamer.rs (+148 -94)

📄 Description

Should help with #974. Testing indicates this gst cleanup is more stable than before, but new_api branch has its own bugs due to changes elsewhere in librespot. It was mentioned in the issue comments that someone could backport this to dev branch.

As one of the original authors of the gstreamer backend, I felt shameful enough about my initial code that I wanted to send this in to help out.

I haven't tested with old rustc, but apparently the gstreamer crate (and friends) version 0.18 and later moved to Rust 2021, while 0.17 is still targeting Rust 2018... so hopefully the rust version compatibility should be the same as current librespot dev branch. I had to update it slightly to support new functions that were absent in gstreamer crate 0.16.x, but fortunately the new functions are present in 0.17.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/librespot-org/librespot/pull/979 **Author:** [@allquixotic](https://github.com/allquixotic) **Created:** 3/15/2022 **Status:** ✅ Merged **Merged:** 5/21/2022 **Merged by:** [@roderickvd](https://github.com/roderickvd) **Base:** `dev` ← **Head:** `backport-gst-cleanup` --- ### 📝 Commits (5) - [`6e649f9`](https://github.com/librespot-org/librespot/commit/6e649f99582b3b95234ffe3d4fc0b24d69445f8f) Backport sdroege's gstreamer backend cleanup to dev. - [`74528b2`](https://github.com/librespot-org/librespot/commit/74528b2e682caa939288587bd6c682d589df7713) Fix crash due to appsrc too small with S16. - [`da02f70`](https://github.com/librespot-org/librespot/commit/da02f7024fe4721b2a9b48853b08320b182f2189) cargo fmt on gstreamer backend - [`b92465e`](https://github.com/librespot-org/librespot/commit/b92465e1b5dcf3ed0ad76fbe9bc51f0c7810372b) Update CHANGELOG.md - [`bb384db`](https://github.com/librespot-org/librespot/commit/bb384dbb7a7c43159e949756ef6fbf62e8a1fccf) Merge branch 'dev' into backport-gst-cleanup ### 📊 Changes **4 files changed** (+447 additions, -150 deletions) <details> <summary>View changed files</summary> 📝 `CHANGELOG.md` (+2 -1) 📝 `Cargo.lock` (+291 -51) 📝 `playback/Cargo.toml` (+6 -4) 📝 `playback/src/audio_backend/gstreamer.rs` (+148 -94) </details> ### 📄 Description Should help with #974. Testing indicates this gst cleanup is more stable than before, but new_api branch has its own bugs due to changes elsewhere in librespot. It was mentioned in the issue comments that someone could backport this to dev branch. As one of the original authors of the gstreamer backend, I felt shameful enough about my initial code that I wanted to send this in to help out. I haven't tested with old rustc, but apparently the gstreamer crate (and friends) version 0.18 and later moved to Rust 2021, while 0.17 is still targeting Rust 2018... so hopefully the rust version compatibility should be the same as current librespot dev branch. I had to update it slightly to support new functions that were absent in gstreamer crate 0.16.x, but fortunately the new functions are present in 0.17. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-27 20:01:26 +03:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/librespot#1171
No description provided.