iamdb / hifi.rs

a high resolution Qobuz streamer built in Rust
GNU General Public License v3.0
79 stars 10 forks source link

Audio artefacts at start of song in playlist #157

Closed LTSCommerce closed 1 year ago

LTSCommerce commented 1 year ago

I'm wondering if this is to do with playlists containing songs with different bitdepth/rate

There's the classic tic artefacts that imply digital signal issues, only at the start of the song

Is there some kind of cross fade happening that's not handling mixed bitrates?

FYI I noticed it on this playlist

https://play.qobuz.com/playlist/6754429

iamdb commented 1 year ago

Thanks I'll check out that playlist. There's no crossfade, but it could be related to the gapless playback.

If you're willing/able, the cursive branch has the latest, but you would have to compile it locally.

LTSCommerce commented 1 year ago

Yes I am wondering if this is a pipewire issue. Happy to test some alternative configs to try to tune this out. I've upped the pipewire quality to 192khz as I'm using a Steinberg UR22C external DAC so I'm guessing standard configs/buffers might not be ideal.

More than happy to test the latest branch.

Any chance you could give some instructions for someone who is tech savvy doesn't know Rust?

I'm on Fedora 38 if that helps

iamdb commented 1 year ago

For Pipewire, the primary place to make adjustments is in the min-quantum part of the config.

You can try doubling that and see if it fixes the issue.

To compile the app should be straightforward assuming Rust can find Gstreamer ok.

Install Gstreamer in Fedora:

dnf install gstreamer1-devel gstreamer1-plugins-base-tools gstreamer1-doc gstreamer1-plugins-base-devel gstreamer1-plugins-good gstreamer1-plugins-good-extras gstreamer1-plugins-ugly gstreamer1-plugins-bad-free gstreamer1-plugins-bad-free-devel gstreamer1-plugins-bad-free-extras

Follow the instructions for installing Rust: https://www.rust-lang.org/tools/install

Clone the repo: git clone https://github.com/iamdb/hifi.rs.git

Checkout cursive branch: git checkout cursive

Build the app: cargo build --bin hifi-rs --release

Or install: cargo install --path ./hifirs

LTSCommerce commented 1 year ago

Thanks - have upped the min quantum, turns out I had it lower than default - think I followed some dodgy guide. Testing now and no crackles so far

Will try out the new version soon and report back

LTSCommerce commented 1 year ago

think this was pipewire. Upped the quantum config and its fine now