305 lines
8.7 KiB
JavaScript
305 lines
8.7 KiB
JavaScript
// Module ID: 4270
|
|
// Function ID: 37346
|
|
// Name: _createForOfIteratorHelperLoose
|
|
// Dependencies: []
|
|
|
|
// Module 4270 (_createForOfIteratorHelperLoose)
|
|
function _createForOfIteratorHelperLoose(@@iterator) {
|
|
let closure_0 = Symbol_iterator;
|
|
@@iterator = "undefined" !== typeof Symbol;
|
|
if (Symbol_iterator) {
|
|
const _Symbol = Symbol;
|
|
@@iterator = Symbol_iterator[Symbol.iterator];
|
|
}
|
|
if (!Symbol_iterator) {
|
|
@@iterator = Symbol_iterator[Symbol.iterator];
|
|
}
|
|
if (Symbol_iterator) {
|
|
const iter = Symbol_iterator.call(Symbol_iterator);
|
|
const next = iter.next;
|
|
return next.bind(iter);
|
|
} else {
|
|
const _Array = Array;
|
|
let tmp = Symbol_iterator;
|
|
if (!Array.isArray(Symbol_iterator)) {
|
|
let tmp2;
|
|
if (Symbol_iterator) {
|
|
if ("string" === typeof Symbol_iterator) {
|
|
tmp2 = _arrayLikeToArray(Symbol_iterator, undefined);
|
|
} else {
|
|
const toString = {}.toString;
|
|
const substr = toString.call(Symbol_iterator).slice(8, -1);
|
|
let name = substr;
|
|
if (tmp3) {
|
|
name = Symbol_iterator.constructor.name;
|
|
}
|
|
if ("Map" !== name) {
|
|
if ("Set" !== name) {
|
|
if ("Arguments" === name) {
|
|
let arr = _arrayLikeToArray(Symbol_iterator, undefined);
|
|
} else {
|
|
const obj = /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/;
|
|
}
|
|
}
|
|
tmp2 = arr;
|
|
}
|
|
const _Array2 = Array;
|
|
arr = Array.from(Symbol_iterator);
|
|
const callResult = toString.call(Symbol_iterator);
|
|
const tmp3 = "Object" === substr && Symbol_iterator.constructor;
|
|
}
|
|
}
|
|
tmp = tmp2;
|
|
if (!tmp2) {
|
|
const _TypeError = TypeError;
|
|
const typeError = new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
|
|
throw typeError;
|
|
}
|
|
}
|
|
if (tmp) {
|
|
closure_0 = tmp;
|
|
}
|
|
let closure_1 = 0;
|
|
return () => {
|
|
if (closure_1 >= tmp.length) {
|
|
let obj = { done: true };
|
|
} else {
|
|
obj = { done: false };
|
|
closure_1 = tmp3 + 1;
|
|
obj.value = tmp[+closure_1];
|
|
}
|
|
return obj;
|
|
};
|
|
}
|
|
}
|
|
function _arrayLikeToArray(arg0, arg1) {
|
|
let length;
|
|
if (tmp) {
|
|
length = arg0.length;
|
|
}
|
|
const ArrayResult = Array(length);
|
|
for (let num = 0; num < length; num = num + 1) {
|
|
ArrayResult[num] = arg0[num];
|
|
}
|
|
return ArrayResult;
|
|
}
|
|
let closure_0 = importDefault(dependencyMap[0]);
|
|
let closure_1 = importDefault(dependencyMap[1]);
|
|
({ defaultVideoQualityOptions: closure_2, VIDEO_QUALITY_FRAMERATE: closure_3, VIDEO_QUALITY_FRAMERATE_MUTED_2: closure_4, VIDEO_QUALITY_FRAMERATE_MUTED: closure_5 } = arg1(dependencyMap[2]));
|
|
const tmp2 = arg1(dependencyMap[2]);
|
|
const tmp3 = () => {
|
|
class MediaSinkWantsLadder {
|
|
constructor() {
|
|
tmp = arg0;
|
|
self = this;
|
|
if (arg0 === undefined) {
|
|
tmp = closure_2;
|
|
}
|
|
tmp2 = MediaSinkWantsLadder(self, MediaSinkWantsLadder);
|
|
({ width, height } = tmp.videoBudget);
|
|
if (width > 0) {
|
|
if (height > 0) {
|
|
self.pixelBudget = width * height;
|
|
tmp3 = MediaSinkWantsLadder;
|
|
self.ladder = MediaSinkWantsLadder.calculateLadder(self.pixelBudget);
|
|
self.orderedLadder = MediaSinkWantsLadder.calculateOrderedLadder(self.ladder);
|
|
return;
|
|
}
|
|
}
|
|
error = new Error("Invalid argument");
|
|
throw error;
|
|
}
|
|
}
|
|
let closure_0 = MediaSinkWantsLadder;
|
|
let obj = {
|
|
key: "getMaxSinkValue",
|
|
value(arg0) {
|
|
let pixelCount;
|
|
let wantValue;
|
|
let num = arg1;
|
|
const self = this;
|
|
if (arg1 === undefined) {
|
|
num = 0;
|
|
}
|
|
if (arg0 < 0) {
|
|
const _Error = Error;
|
|
const error = new Error("getMaxSinkValue: Requested " + arg0);
|
|
throw error;
|
|
} else {
|
|
const wantValue2 = self.orderedLadder[0].wantValue;
|
|
const tmp9 = callback(self.orderedLadder);
|
|
const iter3 = tmp9();
|
|
let iter2 = iter3;
|
|
let tmp2 = wantValue2;
|
|
let tmp = wantValue2;
|
|
if (!iter3.done) {
|
|
while (true) {
|
|
({ pixelCount, wantValue } = iter2.value);
|
|
if (num <= 0) {
|
|
tmp = tmp2;
|
|
if (pixelCount * arg0 > self.pixelBudget) {
|
|
break;
|
|
} else {
|
|
let iter = tmp9();
|
|
iter2 = iter;
|
|
tmp2 = wantValue;
|
|
tmp = wantValue;
|
|
if (iter.done) {
|
|
break;
|
|
}
|
|
}
|
|
} else {
|
|
tmp = wantValue;
|
|
if (num < pixelCount) {
|
|
break;
|
|
}
|
|
}
|
|
break;
|
|
}
|
|
}
|
|
return tmp;
|
|
}
|
|
}
|
|
};
|
|
const items = [obj, ];
|
|
obj = {
|
|
key: "getResolution",
|
|
value(arg0) {
|
|
const tmp = callback(this.orderedLadder);
|
|
const iter = tmp();
|
|
let iter2 = iter;
|
|
let tmp2 = null;
|
|
let first = null;
|
|
if (!iter.done) {
|
|
const value = iter2.value;
|
|
first = tmp2;
|
|
while (arg0 >= value.wantValue) {
|
|
let iter3 = tmp();
|
|
iter2 = iter3;
|
|
tmp2 = value;
|
|
first = value;
|
|
if (iter3.done) {
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
const obj = {};
|
|
if (null == first) {
|
|
first = this.orderedLadder[0];
|
|
}
|
|
({ width: obj.width, height: obj.height, budgetPortion: obj.budgetPortion, mutedFramerate: obj.mutedFramerate, framerate: obj.framerate } = first);
|
|
return obj;
|
|
}
|
|
};
|
|
items[1] = obj;
|
|
obj = {
|
|
key: "calculateLadder",
|
|
value(arg0) {
|
|
let budgetPortion;
|
|
let height;
|
|
let width;
|
|
const set = new Set([]);
|
|
const items = [];
|
|
let num = 1;
|
|
let num2 = 1;
|
|
do {
|
|
let result = 16 * num2 / 9;
|
|
if (set.has(result % 16)) {
|
|
if (set.has(num2 % 16)) {
|
|
let result1 = result * num2;
|
|
let obj = { pixelCount: result1, width: result, height: num2, budgetPortion: result1 / arg0, wantValue: 0 };
|
|
let arr = items.push(obj);
|
|
}
|
|
}
|
|
num2 = num2 + 1;
|
|
} while (num2 < 4096);
|
|
obj = {};
|
|
let num3 = 100;
|
|
let num4 = 0;
|
|
do {
|
|
let tmp4 = closure_6;
|
|
let tmp5 = closure_6(items);
|
|
let iter = tmp5();
|
|
let iter2 = iter;
|
|
width = 0;
|
|
height = 0;
|
|
budgetPortion = 0;
|
|
let num5 = 0;
|
|
let num6 = 0;
|
|
let num7 = 0;
|
|
if (!iter.done) {
|
|
let value = iter2.value;
|
|
num5 = width;
|
|
num6 = height;
|
|
num7 = budgetPortion;
|
|
let tmp6 = value;
|
|
while (value.pixelCount * num <= arg0) {
|
|
({ width, height, budgetPortion } = value);
|
|
let iter3 = tmp5();
|
|
iter2 = iter3;
|
|
num5 = width;
|
|
num6 = height;
|
|
num7 = budgetPortion;
|
|
let tmp7 = value;
|
|
if (iter3.done) {
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
let diff = num3;
|
|
if (num4 !== num5) {
|
|
let tmp9 = closure_0;
|
|
let obj1 = { width: num5, height: num6, budgetPortion: num7, mutedFramerate: closure_0.getMutedFramerate(num3) };
|
|
let tmp10 = closure_3;
|
|
obj1.framerate = closure_3;
|
|
obj[num3] = obj1;
|
|
diff = num3 - 10;
|
|
num4 = num5;
|
|
}
|
|
num = num + 1;
|
|
num3 = diff;
|
|
} while (num <= 25);
|
|
return obj;
|
|
}
|
|
};
|
|
const items1 = [
|
|
obj,
|
|
{
|
|
key: "getMutedFramerate",
|
|
value(arg0) {
|
|
return arg0 <= 20 ? closure_4 : closure_5;
|
|
}
|
|
},
|
|
{
|
|
key: "calculateOrderedLadder",
|
|
value(arg0) {
|
|
let iter2;
|
|
const items = [];
|
|
const keys = Object.keys(arg0);
|
|
const mapped = keys.map((arg0) => Number(arg0));
|
|
const tmp = callback(mapped.sort((arg0, arg1) => arg0 - arg1));
|
|
let iter = tmp();
|
|
if (!iter.done) {
|
|
do {
|
|
let value = iter.value;
|
|
if (0 !== value) {
|
|
let size = arg0[value];
|
|
let obj = { pixelCount: size.width * size.height, wantValue: value };
|
|
let tmp2 = obj;
|
|
let tmp3 = size;
|
|
let merged = Object.assign(size);
|
|
let arr = items.push(obj);
|
|
}
|
|
iter2 = tmp();
|
|
iter = iter2;
|
|
} while (!iter2.done);
|
|
}
|
|
return items;
|
|
}
|
|
}
|
|
];
|
|
return callback(MediaSinkWantsLadder, items, items1);
|
|
}();
|
|
const result = arg1(dependencyMap[3]).fileFinishedImporting("../discord_common/js/packages/media-engine/MediaSinkWantsLadder.tsx");
|
|
|
|
export const MediaSinkWantsLadder = tmp3;
|