#Very strange audio artifacting on browser (chrome) version (but not Desktop) - sounds are dull

140 messages · Page 1 of 1 (latest)

opal summit
#

[OBS seems to have struggled in recording the video portion, but the audio is the focus of the recording anyway]

#

@blissful mulch

proud obsidian
#

i was able to reproduce the issue on the latest chrome in windows, but after i wiped the %localappdata%/Google folder (caution this will destroy all of your browser data!!!), the issue went away and now i cannot reproduce it anymore

opal summit
#

hm yeah that does stop the issue
looking through the old folder for what could possibly be the issue is certainly a fools errand; i might try reporting this to google instead

proud obsidian
#

its the most google thing of all time honestly

#

i really wish i had a better answer, it frustrates me a lot too

#

they just uber fucked something up in an update i guess

opal summit
#

this issue made me switch to tetrio desktop and actually im thinking ill stay using that
but yea... classic woomy

proud obsidian
#

the issue is basically that the sound start and stop points are like, not what i asked chrome to play

#

so the sound bleeds into the next one or previous one a little and it's uber broken

#

like it's off by a factor of 10 milliseconds sometimes which is catastrophic

#

unfortunately, this issue is upstream and has nothing to do with tetrio specifically, we haven't even updated the sound effect part of the program in quite a while

left shore
#

this made me turn off sound effects

forest quarry
#

have you submitted a Chromium bug report for this? if not, can you still reproduce it? I'd be happy to bisect and report it

#

(speaking in a personal capacity, not representing my employer)

proud obsidian
#

i haven't
unfortunately i cannot reproduce the issue because i dont have the old appdata files, i kind of casually deleted them without thinking it would actually fix anything

#

i was not able to repoduce the issue on linux at all, either, neither with chromium or proprietary chrome

#

i was only able to reproduce this on windows

forest quarry
#

I suspect it's some experiment (A/B test) being rolled out to a portion of the population, and deleting the AppData files would "reset" your client ID for experiments

proud obsidian
#

mmm

#

is it only proprietary chrome that has a/b testing? or does chromium do it too?

forest quarry
#

I'm fairly sure that only official (proprietary) Chrome gets Google's experiments, it's disabled in Chromium

proud obsidian
#

that's what i figured

#

also, when i tried it from canary i didn't get the issue, but i think someone else did

#

or wait, no, it's the other way around

#

i still had the issue on canary but someone else did not

#

it appears the issue mainly revolves around AudioBufferSourceNode::play right, because it seems to not be the start and end times i put to it, and can be off by a factor of 10 millis

forest quarry
#

if someone is able to reproduce it, I'd appreciate it if they could share from chrome://version:

  • Google Chrome version (e.g. 145.0.x.x)
  • OS
  • Active Variations (can be used to identify users! please DM me this if you do share it)
#

thanks for the pointer, lemme see if there's some recent changes in Blink to that

proud obsidian
#

the problem is tetrio puts all the sound effects right next to each other in one AudioBuffer and just plays directly from that

#

so if the start and end times are off at all we start playing samples from the other sounds

forest quarry
#

"can be off" might?? be an anti-fingerprinting feature too, although that's just a theory

proud obsidian
#

i dont particularly understand how that could be, it's just choosing an offset and length in an AudioBuffer, yknow?

#

it just means the computer has to play the samples from the offset for the length

forest quarry
#

do you know approximately when reports of this started coming in? around Feb 10?

#

Feb 10 was when M145 was pushed to Stable

proud obsidian
#

mm if i recall correctly, <t:1770642000:f> was the earliest one i knew of

forest quarry
#

ah, if it's an A/B test then Chrome versions might not be too useful. "Active Variations" (i.e. experiment states) would be more useful

#

unfortunately I too am on Linux right now, and I can't seem to reproduce it

proud obsidian
#

i was never able to reproduce it on linux, i was only able to produce it on stock chrome in windows 11

#

that goes for all the people who have this issue as well, they're all windows users

forest quarry
#

I might try to reproduce this on my personal computer then (Windows 10) after I get home from work

proud obsidian
#

mmm

#

i assume there's no way to influence what group i'm put into, right?

forest quarry
#

unfortunately not - but you might be able to manually enable the necessary flags to simulate being put into an experiment group

#

chrome://flags#enable-benchmarking seems to have a "Match Field Trial Testing Config" option which should do that

proud obsidian
#

enabling that flag does cause the issue to reoccur

#

so the qustion is… which specific thing is it, i wonder?

forest quarry
#

awesome! you can bisect which issue experiment it is by using a tool

proud obsidian
#

let me remove the slowmode on this channel

forest quarry
#

I think there's some better end-user documentation about how to run this, gimme one sec

#

nevermind, that's only for bisect_builds.py

#

you might need to just copy and paste this and its dependent split_variations_cmd.py to a folder (or clone Chromium, but that's overkill)

proud obsidian
#

alright, so i have those both

forest quarry
#

take a look at the docstring at the top of bisect_variations.py - ignore the vpython3 stuff (you can just use any ol' Python 3)

#

I can do this for you after work if you wish, but if you're happy to bisect it that'd be easier

proud obsidian
#

its no problem

#

my job revolves around making a browser game anyway so experience with this kind of thing is useful

#

im just going through the process lol

forest quarry
#

you will need a Google account for this

proud obsidian
#

that aspect might be problematic lol

forest quarry
#

I'd be happy to report it for you in this instance, but that might be an issue if you want to report more bugs in the future

proud obsidian
#

i assume i can make an account specifically for that, then?

forest quarry
#

AFAIK the name on your Google account isn't shared, and the avatar / email is redacted to the public - see https://crbug.com/460678756 for an example

proud obsidian
#

the bisection is complete

forest quarry
#

yeah, you should be able to create an account specifically for that. let me know if you encounter any anti-bot issues, I can possibly help you out with that

proud obsidian
#

this is it
--force-fieldtrials=AudioInputConfirmReadsViaShmem/Enabled/ --enable-features=AudioDecoderAudioFileReader<AudioDecoderAudioFileReader

#

ill make an acc and report it

#

although i dont know what exactly i should write

forest quarry
proud obsidian
#

oh okay

#

gotcha

forest quarry
#

you don't need to submit a feedback report as you've already bisected down the issue

#

an easy way to reproduce the issue would be nice, but probably not required

proud obsidian
#

like an example webpage? can i upload files?

forest quarry
#

yeah, you can upload files like an .html file showing the issue

proud obsidian
#

right, okay

#

i will need an audiofile too

forest quarry
#

in that case, a zip would probably work

proud obsidian
forest quarry
#

no, unfortunately :/

proud obsidian
#

yeah, that's fine

#

i have a proxy number i'll just use

#

damn, they know it's one

#

well, alright lol

#

not a big deal, i just have to erase the recovery number after the fact

#

sms recovery is not safe in any way, at all, so

forest quarry
#

unrelated to the account: can you try running Chrome with --force-fieldtrials=AudioInputConfirmReadsViaShmem/Enabled --disable-features=AudioDecoderAudioFileReader (e.g. your minimal repro, but disabling AudioDecoderAudioFileReader instead)?

#

it seems like the AudioInputConfirmReadsViaShmem experiment might be a no-op, so maybe it's just as a result of AudioDecoderAudioFileReader

proud obsidian
#

yeah it appears the issue doesnt show up on tetrio at least

forest quarry
#

seems like the issue is just with AudioDecoderAudioFileReader then

proud obsidian
#

how did you know to come here, by the way?

#

just really convenient for me lol

forest quarry
#

I'm familiar with tetr.io and lurk in a few discords in my personal account, and saw someone complaining about this

proud obsidian
#

oh lol lucky me…

#

well, perhaps not so much in a sense, sorry for the complaints

forest quarry
#

no problem, I'm always happy to report / fix bugs that are annoying people

proud obsidian
#

im just making the minimal reproduction if i can

forest quarry
#

I'm decently familiar with the Chromium codebase (although not so much about Blink) so feel free to reach out to me if you need anything

proud obsidian
#

well i'll try to use the official channels as much as i can, i dont want to bother you and all

forest quarry
proud obsidian
#

i got a minimum repro it looks like

#

oh i found more details it looks like

#

it depends on the codec of the original file, so ill be sure to include that information

opal summit
proud obsidian
#

dw, i've already bisected it flowerling

opal summit
#

ah okay

neon hingeBOT
#

mergeout #1474905565191995463 (0 messages) was moved here.

craggy turtle
#

same issue

neon hingeBOT
#

mergeout #1475662216630898710 (0 messages) was moved here.

neon sable
#

yup same here

hollow thistle
#

in my environment, it would happened when i use firefox with a very lag timing

proud obsidian
#

i dont know, maybe ill have to do their job for them or something, this is really irritating

#

i dont know if the pre-skip is being applied twice somewhere or what

proud obsidian
#

i put a comment, they better fucking do something about this or kill the A/B test until they get it together…

neon sable
#

It seems to be fixed on my end. I'm not sure if there is slight or not, but it is playable now.

proud obsidian
#

since opus is just busted

#

but I'm gonna change it to a more elegant solution that checks the decoded audio buffer of a test file to see if it's busted

neon sable
#

I have noticed it after a quick play run still. Worth noting it isn't completely gone, but mostly.

forest quarry
#

lemme know if you want me to push to get this fixed / investigated - I can also look into it and reaffirm your findings

proud obsidian
#

so the pre skip is getting applied twice

#

I'm very disappointed with the way the assignee handled this issue, because they just didn't check and assumed that chrome was fine for whatever reason

#

and just assumed that until now, there was a 6.5ms gap in all opus decodes which there obviously wasn't

#

and then shifts the blame saying "hey, it's the web standard"

proud obsidian
#

so chrome users will get the worse codec for a while I suppose

proud obsidian
forest quarry
proud obsidian
#

i was nervous the bug report was going to go into the ether

forest quarry
#

I took a deeper look - the fix seems easy but I'm not sure at what level we should apply the fix, so I'm delegating this to the owner