1
0
Fork 0
mirror of https://github.com/FrankerFaceZ/FrankerFaceZ.git synced 2025-06-27 21:05:53 +00:00
* Fixed: Attempt to resume a suspended audio context before giving up.
This commit is contained in:
SirStendec 2022-04-25 15:01:40 -04:00
parent 3291b95e55
commit 4b5827f98b
2 changed files with 22 additions and 4 deletions

View file

@ -1,7 +1,7 @@
{
"name": "frankerfacez",
"author": "Dan Salvato LLC",
"version": "4.33.2",
"version": "4.33.3",
"description": "FrankerFaceZ is a Twitch enhancement suite.",
"private": true,
"license": "Apache-2.0",

View file

@ -1533,18 +1533,36 @@ export default class PlayerBase extends Module {
return true;
}
createCompressor(inst, video) {
createCompressor(inst, video, _cmp) {
if ( ! this.canCompress(inst) )
return;
let comp = video._ffz_compressor;
if ( ! comp ) {
const ctx = new AudioContext();
const ctx = _cmp || new AudioContext();
if ( ! IS_FIREFOX && ctx.state === 'suspended' ) {
let timer;
const evt = () => {
clearTimeout(timer);
ctx.removeEventListener('statechange', evt);
if (ctx.state === 'suspended') {
this.log.info('Aborting due to browser auto-play policy.');
return;
}
this.createCompressor(inst, video, comp);
}
this.log.info('Attempting to resume suspended AudioContext.');
timer = setTimeout(evt, 100);
try {
ctx.addEventListener('statechange', evt);
ctx.resume();
} catch(err) { }
return;
}
video._ffz_context = ctx;
let src;
try {