-
-
Notifications
You must be signed in to change notification settings - Fork 841
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Regression in z0r.de/1988 - sound became choppy #7524
Comments
Most likely the Symphonia decoder now in use is more sensitive to this kind of data corruption. |
I also see a regression here, but more serious as the audio is completely silent: |
While traveling through z0r, I noticed a whole bunch of loops having "invalid main_data_begin" errors, but there are mostly few of those errors in the console per loop, and they don't affect the heard audio. z0r.de/1988 seems to be the only loop which gets crusted by those errors, and there is a whole lotta them in the console. |
Yes, https://z0r.de/3682 is mute due to a separate issue, I just submitted a fix to that. |
Another one partly crusted by "invalid main_data_begin": |
The sound of https://z0r.de/1988 and https://z0r.de/3114 is now choppy even on desktop, where Symphonia is not used yet. |
FWIW deleting just this line fixes the stuttering: ruffle/core/src/backend/audio/decoders.rs Line 329 in 2ba82c9
In the problematic loops, self.mp3_samples_buffered is somehow negative from time to time, and it is for some reason not a problem unless we make it one...?
|
https://z0r.de/7637 also got crusted, but I see nothing in the console! |
As per Nightly 2022-08-17, https://z0r.de/7637 seems to work fine on my system, while https://z0r.de/1988 and https://z0r.de/3114 still have crust |
I think I have a guess for the reason for the Except that in this case, the code where the error originates from: https://github.com/pdeljanov/Symphonia/blob/398dab0af6d349849642f40664511c407fa935a0/symphonia-bundle-mp3/src/common.rs#L408
Which means that sometimes there actually are dependencies between subsequent frames, and skipping the decoding of a frame (for synch. purposes, if the machine can't keep up the framerate) breaks this - which then breaks the frame which would re-use the bits in the reservoir, and this can then cascade endlessly. This reservoir feature might, however, be used relatively rarely, which could by why there arent many more problems like this in Ruffle. |
@torokati44 Good job on fixing "underruns" in those clips! |
Describe the bug
In Nightly 2022-07-31 the audio in z0r.de/1988 became choppy.
I believe this is the nightly build where this change came about (at least for the web extension): #4273
And F12 spams with "Bad MP3" stuff:
Expected behavior
A non-choppy audio.
Affected platform
Browser's extension
Operating system
Windows 10
Browser
Chrome 103.0.5060.134
Additional information
No response
The text was updated successfully, but these errors were encountered: