Skip to content

Spotify Playback Crashes Intermittently with Vorbis Error (OggError: HashMismatch) #19

Description

@rayosu

I’ve been experiencing intermittent crashes while playing music on Spotify. The issue occurs multiple times a day and seems to be related to specific songs. Here’s a detailed breakdown of the problem:

Crash at Specific Position:
When playing a specific song, the playback crashes at a particular position. After reconnecting and attempting to play the same song again, the issue persists at the same position.

Behavior on Another Device:
To rule out the possibility of the song itself being corrupted, I tried playing the same song on another identical device. Surprisingly, the song played without any issues on the second device.

Intermittent Behavior on the Original Device:
The next day, I tried playing the same song again on the original device where the crash occurred, and this time, the song played completely without any issues.

Logs and Error Details:
Below are the relevant logs from the crash. The error seems to be related to a Vorbis decoding issue (OggError(HashMismatch)):

[Vollibrespot] librespot_playback::player: Preloading track [Vollibrespot] : Loading <Paradise Hotel> with Spotify URI <spotify:track:5ZovZLeZxViwvCGprnBMsz> [Vollibrespot] librespot_audio::fetch: File 84421d77c58cd7756131116b5c62705eba400916 already in cache [Vollibrespot] librespot_playback::player: Normalisation Data: NormalisationData { track_gain_db: -3.6900024, track_peak: 0.84912425, album_gain_db: -6.3099976, album_peak: 1.0083603 } [Vollibrespot] librespot_playback::player: Applied normalisation factor: 0.7336685 [Vollibrespot] : <Paradise Hotel> (246400 ms) loaded thread '<unnamed>' panicked at 'Vorbis error: OggError(HashMismatch(2586003088, 2456181760))', /build/cache/git/checkouts/librespot-6f197fd632ef9380/08d8bcc/playback/src/player.rs:771:56 stack backtrace: 0: 0x9f6444 - std::backtrace_rs::backtrace::libunwind::trace::h40a4eff66330a36d at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/libunwind.rs:93:5 1: 0x9f6444 - std::backtrace_rs::backtrace::trace_unsynchronized::hbce01963451b0cd5 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/../../backtrace/src/backtrace/mod.rs:66:5 2: 0x9f6444 - std::sys_common::backtrace::_print_fmt::h95da650d09c7e00b at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:66:5 3: 0x9f6444 - <std::sys_common::backtrace::_print::DisplayBacktrace as core::fmt::Display>::fmt::h33b23b1d14f668ff at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:45:22 4: 0xa1f0dc - core::fmt::write::h6320fb0e6ac90e58 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/fmt/mod.rs:1190:17 5: 0x9ee4c4 - std::io::Write::write_fmt::h33b25d4810ca481f at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/io/mod.rs:1657:15 6: 0x9f8ef4 - std::sys_common::backtrace::_print::h7e61c5be69c715ef at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:48:5 7: 0x9f8ef4 - std::sys_common::backtrace::print::h3cee176d7c8dab8b at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:35:9 8: 0x9f8ef4 - std::panicking::default_hook::{{closure}}::h2d0211dd2e97dc43 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:295:22 9: 0x9f8b14 - std::panicking::default_hook::hcbdb3b7c40dca30c at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:314:9 10: 0x9f9694 - std::panicking::rust_panic_with_hook::h4ce49e7a343dc12b at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:698:17 11: 0x9f9304 - std::panicking::begin_panic_handler::{{closure}}::h4961100fae529fe9 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:588:13 12: 0x9f69c4 - std::sys_common::backtrace::__rust_end_short_backtrace::hf2e68e62c7a80f1f at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys_common/backtrace.rs:138:18 13: 0x9f9098 - rust_begin_unwind at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/panicking.rs:584:5 14: 0x4dc6f4 - core::panicking::panic_fmt::h84c42730e4a50809 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/panicking.rs:143:14 15: 0x4dc7c8 - core::result::unwrap_failed::h43118a132315b545 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/core/src/result.rs:1749:5 16: 0x5fb48c - <librespot_playback::player::PlayerInternal as futures::future::Future>::poll::hf6331a81451dbb28 17: 0x5216c0 - futures::task_impl::std::set::hb731921744f9247e 18: 0x512708 - futures::task_impl::Spawn<T>::poll_future_notify::h08f2c87ba9a4eead 19: 0x526158 - std::sys_common::backtrace::__rust_begin_short_backtrace::hb598e9d2970dbf13 20: 0x552e70 - core::ops::function::FnOnce::call_once{{vtable.shim}}::h7f140b0cfa5289e1 21: 0x9fdebc - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::hbc4d03a1815e028a at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 22: 0x9fdebc - <alloc::boxed::Box<F,A> as core::ops::function::FnOnce<Args>>::call_once::h6055603e421418e8 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/alloc/src/boxed.rs:1853:9 23: 0x9fdebc - std::sys::unix::thread::Thread::new::thread_start::h0518d9d0e6b0ba31 at /rustc/7737e0b5c4103216d6fd8cf941b7ab9bdbaace7c/library/std/src/sys/unix/thread.rs:108:17 [Vollibrespot] librespot_playback::player: drop PlayerInternal[0]

The error occurs at librespot_playback::player.rs:771:56 with the message:
thread '' panicked at 'Vorbis error: OggError(HashMismatch(2586003088, 2456181760))'.

Questions:

Has anyone else encountered similar issues with OggError(HashMismatch)?

Could this be related to caching, network issues, or a bug in the Vorbis decoder?

Are there any known workarounds or fixes for this issue?

Any help or insights would be greatly appreciated!

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions