Implement Ogg demuxer

This commit is contained in:
Vanilagy
2025-02-04 16:59:25 +01:00
parent 35c4d384cf
commit 50442691a5
11 changed files with 1423 additions and 24 deletions
+24
View File
@@ -237,6 +237,16 @@ export const removeItem = <T>(arr: T[], item: T) => {
}
};
export const findLast = <T>(arr: T[], predicate: (x: T) => boolean) => {
for (let i = arr.length - 1; i >= 0; i--) {
if (predicate(arr[i]!)) {
return arr[i];
}
}
return undefined;
};
export const findLastIndex = <T>(arr: T[], predicate: (x: T) => boolean) => {
for (let i = arr.length - 1; i >= 0; i--) {
if (predicate(arr[i]!)) {
@@ -367,3 +377,17 @@ export const setVideoFrameTiming = (frame: VideoFrame, timing: {
return clone;
};
export const roundToPrecision = (value: number, digits: number) => {
const factor = 10 ** digits;
return Math.round(value * factor) / factor;
};
export const ilog = (x: number) => {
let ret = 0;
while (x) {
ret++;
x >>= 1;
}
return ret;
};