Open doubleddav opened 7 months ago
Just tried latest nightly build, version 3.5.0 nightly, build 235. Unfortunately seeing the same stutter issue.
Are you talking about the Sponsor Block skips? In that case, go to "Settings" > "Playback" section > "Skip Non-Music segments" and turn that off. But you'll have to listen to non-music parts too
I don't think it's that, its every song from start to finish has a kind of stutter every few seconds. Unless it's happening as a result of this?
I haven't found anything like that. @olivier2 isn't this the issue your fixed already with a PR. Is it the same problem?
Btw @doubleddav you can now select audio output device from Spotube's Devices
page. Try changing the devices and see which one it happens with. There should be 3 options (Auto, opensles and audiotrack)
@KRTirtho I just tried all 3 options you referred to in version 3.6.0 build 30. Unfortunately same behaviour
If it's possible please, submit a short screen-recording (with audio). This will help understand the issue. Thanks
https://github.com/KRTirtho/spotube/assets/26053051/7a9bcd7f-d962-49a5-95a7-a865b0ad811d
Here you go, using latest nightly,
Thanks
Hello, I looked into this, but couldn't find anything obvious. @doubleddav what device are you using? Maybe I'd have better luck testing on the same phone if I can find one.
The only other thing I see that might be worth investigating for performance is these log messages that are written multiple times per second:
This can be fixed by removing the following lines. I don't know if it affects other platforms/players, but the audio_service documentation mentions the position should not be broadcasted continuously (search for 'updatePosition' on this page)
--- a/lib/services/audio_services/mobile_audio_service.dart
+++ b/lib/services/audio_services/mobile_audio_service.dart
@@ -58,9 +58,6 @@ class MobileAudioService extends BaseAudioHandler {
playbackState.add(await _transformEvent());
});
- audioPlayer.positionStream.listen((pos) async {
- playbackState.add(await _transformEvent());
- });
audioPlayer.bufferedPositionStream.listen((pos) async {
playbackState.add(await _transformEvent());
});
Again, it's a long shot as it doesn't appear to affect performance on my phone, but I don't see anything else beside specific conditions like network or cpu throttling.
// The current position as of this update. You should not broadcast
// position changes continuously because listeners will be able to
// project the current position after any elapsed time based on the
// current speed and whether audio is playing and ready. Instead, only
// broadcast position updates when they are different from expected (e.g.
// buffering, or seeking).
updatePosition: Duration(milliseconds: 54321),
Yeah, looks like we don't need to update the position every 500ms now. Thanks for letting me know
I have a Sony Xperia 10 III if that helps. Sorry I can't really read code, but it started after version v3.4.1, so I'm assuming something might have changed after that?
I use a Moto G8 I do get stutters sometimes but it's rare I'm using Bluetooth to a device though so that might be why
screen-20240422-200356.mp4
Here you go, using latest nightly,
Thanks
Exactly the same for me. I first experienced it a couple of weeks ago connected to the car via bluetooth. But the issue persists either via BT or directly on the phone's speakers - and other players don't have the issue.
Spottube version 3.6.0 (Build 30). Sony Xperia 10 IV XQ-CC54.
I tested on Galaxy S7 (released in 2016) and Galaxy A01 (budget phone released in 2020) without issues so I think we can rule out the hardware as the source.
So I started testing using Network Link Conditioner on macos. I kind of was able to reproduce the stuttering with a 2mbps downlink (DSL profile) and high audio quality (youtube source). Definitely something to investigate there.
@jola5 , @doubleddav, @GStudiosX2 are you on wifi or cell network? What's your bandwidth and latency (from fast.com ?). Are you using Low,Medium or High audio quality in Spotube's settings? When the audio is stuttering, is the "playback" position (green below) reaching the end of the "buffered" position (red below)?
Downlink is around the same with my current provider (wifi via mobile access point):
Direct mobile connection on my phone is:
For the stutter there is no difference between wifi or cell. It's the same.
I also tested the three quality settings. Again stutter is the same. The buffer indicator fills for the whole song in the first couple of seconds. Thanks for looking into this. If there is anything else I can do to support in terms of testing or log files or anything let me know.
I tested on Galaxy S7 (released in 2016) and Galaxy A01 (budget phone released in 2020) without issues so I think we can rule out the hardware as the source.
So I started testing using Network Link Conditioner on macos. I kind of was able to reproduce the stuttering with a 2mbps downlink (DSL profile) and high audio quality (youtube source). Definitely something to investigate there.
@jola5 , @doubleddav, @GStudiosX2 are you on wifi or cell network? What's your bandwidth and latency (from fast.com ?). Are you using Low,Medium or High audio quality in Spotube's settings? When the audio is stuttering, is the "playback" position (green below) reaching the end of the "buffered" position (red below)?
Why is my buffered position the entire song ? By the way I had a few stutters today when playing a song but it might just be a Bluetooth thing
Why is my buffered position the entire song ? By the way I had a few stutters today when playing a song but it might just be a Bluetooth thing
That means the entire song has completed the buffering process, that means there should be no stopping/waiting for loading more music.
So I started testing using Network Link Conditioner on macos. I kind of was able to reproduce the stuttering with a 2mbps downlink (DSL profile) and high audio quality (youtube source). Definitely something to investigate there.
I guess, in that case, switching to lower audio bitrate in poor network conditions should make the experience better. But, I doubt that's not why the issue is happening. From the video, it seems like it's just glitches for couple Milliseconds.
Sorry for late response. I've tried all audio qualities, on both mobile and wifi. The issue is definitely not badwidth or latency.
Everything was OK until after vedsion 3.4.1, so not sure what might have changed.
Same issue is happening with me 😔
I face the same problem on Android Spotube v3.8.0, Pixel 5 phone with /e/OS (no Google services, in case it could have something to do)
Bumping with the same issue, same issue with an Xperia 5 iv running 3.8.0 fromF-droid Happens at every level of streaming quality Non-music skip on or off Bluetooth on or off On data or on wifi From all music sources. let me know if there's any other info I can provide.
Edit: I just Installed version 3.4.0 per another users suggestion and so far the issue has disappeared.
Same issue with skipping, but it only happens for me when I'm connected via bluetooth to my truck head unit or Bose speaker. If I connect via bluetooth to my wireless earbuds, the skipping doesn't occur. This leads me to believe it's a codec or similar issue.
OnePlus Open Android 14.0 running Spotube build 34.
It just happened again: connected via Bluetooth to a Ultimate Ears Megaboom 3, music stuttered constantly. Worked it around by rebooting the phone and the speaker. Then it works well again.
One plus 10 android 14 here.
I've always had the same problem. I changed my audio source to Jiosaavn after reading these comments. The issues is gone changing the audio source. Still there using YouTube as the audio source.
Is there an existing issue for this?
Current Behavior
Any and every song plays an intermittent micro "skip" every few seconds. It sounds like when a CD would skip back in the olden days.
It does this on the latest stable and nightly versions. I don't have this issue on version 3.4.1 build 28, which is what I use now to avoid it.
Expected Behavior
Songs play without interruption.
Steps to reproduce
Operating System
Android 13
Spotube version
< v3.4.1 build 28
Installation source
GitHub Releases (Binary), GitHub Actions (Nightly Binary), F-Droid (Android)
Additional information
No response
Self grab