From 1ac054482b9d81cdd3fcce3d71c1298bdba85e33 Mon Sep 17 00:00:00 2001 From: vapormusic Date: Tue, 22 Mar 2022 21:25:01 +0700 Subject: [PATCH] fix chromecast --- src/main/base/browserwindow.ts | 19 ++++++++++++++++++- 1 file changed, 18 insertions(+), 1 deletion(-) diff --git a/src/main/base/browserwindow.ts b/src/main/base/browserwindow.ts index 4569f1e8..fd8a61df 100644 --- a/src/main/base/browserwindow.ts +++ b/src/main/base/browserwindow.ts @@ -992,10 +992,27 @@ export class BrowserWindow { return Math.max(-32768, Math.min(32768, v)); // clamp } + function bitratechange(e: any){ + var t = e.length; + let sampleRate = 96.0; + let outputSampleRate = 48.0; + var s = 0, + o = sampleRate / outputSampleRate, + u = Math.ceil(t * outputSampleRate / sampleRate), + a = new Int16Array(u); + for (let i = 0; i < u; i++) { + a[i] = e[Math.floor(s)]; + s += o; + } + + return a; + } + let newaudio = quantization(leftpcm, rightpcm); //let newaudio = [leftpcm, rightpcm]; // console.log(newaudio.length); - let pcmData = Buffer.from(new Int8Array(interleave16(Int16Array.from(newaudio[0], x => convert(x)), Int16Array.from(newaudio[1], x => convert(x))).buffer)); + + let pcmData = Buffer.from(new Int8Array(interleave16(bitratechange(Int16Array.from(newaudio[0], x => convert(x))), bitratechange(Int16Array.from(newaudio[1], x => convert(x)))).buffer)); if (!this.headerSent) { console.log('new header')