608 lines
30 KiB
TypeScript
608 lines
30 KiB
TypeScript
/* Metro module 10865; source: stores/RTCDebugStore.tsx; dependencies: [15, 17, 18, 57, 6, 7, 4259, 1878, 661, 4291, 10866, 4406, 694, 566, 2] */
|
|
function _fun83225(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#83225, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6, offset: 0x01f11d41, size: 817 bytes, params: 8, frame: 25
|
|
const env0_0 = require;
|
|
const makeStreamKey = function(a0, a1, a2) {
|
|
return '' + a0 + ':' + a1 + ':' + a2;
|
|
};
|
|
const makeSimulcastKey = function(a0, a1) {
|
|
return '' + a0 + ':' + a1;
|
|
};
|
|
const closure = function(a0, a1, a2) {
|
|
return '' + a0 + ':' + a1 + ':' + a2;
|
|
};
|
|
const closure2 = function(a0) {
|
|
var r0;
|
|
var value = a0;
|
|
if (global.Array.isArray(value)) {
|
|
value = value.at(-1);
|
|
r0 = value?.value;
|
|
} else {
|
|
r0 = value;
|
|
}
|
|
return r0;
|
|
};
|
|
const closure3 = setDefaultStats;
|
|
const Object = global.Object;
|
|
Object.defineProperty(exports, '__esModule', {value: true});
|
|
const env0_4 = importDefault(15) /* metro dependency 15 */;
|
|
const env0_5 = importDefault(17) /* metro dependency 17 */;
|
|
const env0_6 = importDefault(18) /* metro dependency 18 */;
|
|
const env0_7 = importDefault(57) /* metro dependency 57 */;
|
|
const env0_8 = importDefault(6) /* metro dependency 6 */;
|
|
const env0_9 = importDefault(7) /* metro dependency 7 */;
|
|
const mediaEngineStore = importDefault(4259) /* metro dependency 4259: MediaEngineStore */;
|
|
const userStore = importDefault(1878) /* metro dependency 1878: UserStore */;
|
|
const RTCDebugSections = (require(661) /* metro dependency 661: Constants */).RTCDebugSections;
|
|
let value = require(4291) /* metro dependency 4291: Constants */;
|
|
const MediaEngineContextTypes = value.MediaEngineContextTypes;
|
|
const env0_13 = value.Features;
|
|
const env0_14 = value.SimulcastOverrideQuality;
|
|
const DEFAULT = MediaEngineContextTypes.DEFAULT;
|
|
const TRANSPORT = RTCDebugSections.TRANSPORT;
|
|
value = closure(DEFAULT, TRANSPORT, 0);
|
|
const env0_17 = {};
|
|
let Map = global.Map;
|
|
let map = new Map();
|
|
const value4 = _fun83238();
|
|
const env0_20 = value4.empty();
|
|
Map = global.Map;
|
|
map = new Map();
|
|
closure3();
|
|
const Store = (importDefault(566) /* metro dependency 566: flux */).Store;
|
|
const value7 = _fun83243(Store);
|
|
value7.displayName = 'RTCDebugStore';
|
|
const value10 = new value7(importDefault(694) /* metro dependency 694: Dispatcher */,
|
|
{RTC_DEBUG_MODAL_OPEN: RTC_DEBUG_MODAL_OPEN, RTC_DEBUG_MODAL_CLOSE: function() {
|
|
destroyReplayConnection();
|
|
}, RTC_DEBUG_MODAL_SET_SECTION: function(a0) {
|
|
env0_16 = a0.section;
|
|
}, RTC_DEBUG_MODAL_OPEN_REPLAY: RTC_DEBUG_MODAL_OPEN_REPLAY,
|
|
RTC_DEBUG_MODAL_OPEN_REPLAY_AT_PATH: RTC_DEBUG_MODAL_OPEN_REPLAY_AT_PATH,
|
|
RTC_DEBUG_MODAL_UPDATE_VIDEO_OUTPUT: RTC_DEBUG_MODAL_UPDATE_VIDEO_OUTPUT,
|
|
RTC_DEBUG_SET_RECORDING_FLAG: function(a0) {
|
|
env0_21 = a0.value;
|
|
}, RTC_DEBUG_SET_SIMULCAST_OVERRIDE: RTC_DEBUG_SET_SIMULCAST_OVERRIDE_83264,
|
|
VOICE_CHANNEL_SELECT: VOICE_CHANNEL_SELECT_83265, RTC_CONNECTION_VIDEO: RTC_CONNECTION_VIDEO_83266,
|
|
MEDIA_ENGINE_CONNECTION_STATS: MEDIA_ENGINE_CONNECTION_STATS_83267});
|
|
(require(2) /* metro dependency 2 */).fileFinishedImporting('stores/RTCDebugStore.tsx');
|
|
exports.default = value10;
|
|
exports.DEFAULT_SECTION = value;
|
|
exports.graphs = {'availableOutgoingBitrate': true, 'bitrate': true, 'bitrateTarget': true, 'bytesReceived': true,
|
|
'bytesSent': true, 'encoderQualityPsnr': true, 'encoderQualityVmaf': true, 'encodeUsage': true,
|
|
'frameRateDecode': true, 'frameRateEncode': true, 'frameRateInput': true, 'frameRateNetwork': true,
|
|
'frameRateRender': true, 'keyFramesEncoded': true, 'keyFramesDecoded': true, 'inboundBitrateEstimate': true,
|
|
'packetsLost': true, 'packetsReceived': true, 'packetsSent': true, 'ping': true, 'qpSum': true,
|
|
'videoEntropy': true, 'audioLevel': true, 'screenshareCapturedFps': true, 'screenshareCapturedFpsUnique': true};
|
|
exports.RTCDebugVideoOutputMap = value4;
|
|
exports.keySection = closure;
|
|
exports.parseSection = parseSection;
|
|
exports.getLastGraphValue = closure2;
|
|
}
|
|
|
|
function _isNativeReflectConstruct_83226() { // fn#83226, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:303, offset: 0x01f12072, size: 98 bytes, params: 1, frame: 18
|
|
var Boolean;
|
|
var prototype;
|
|
var valueOf;
|
|
var call;
|
|
var Reflect;
|
|
var construct;
|
|
var closure;
|
|
var value;
|
|
var error;
|
|
try {
|
|
Boolean = global.Boolean;
|
|
prototype = Boolean.prototype;
|
|
valueOf = prototype.valueOf;
|
|
call = valueOf.call;
|
|
Reflect = global.Reflect;
|
|
construct = Reflect.construct;
|
|
Boolean = global.Boolean;
|
|
closure = function() {
|
|
};
|
|
value = Reflect.apply(construct, Reflect, [Boolean, [], closure]);
|
|
value = Reflect.apply(call, valueOf, [value]);
|
|
var result = !value;
|
|
} catch (error) {
|
|
}
|
|
return (_isNativeReflectConstruct_83226_isNativeReflectConstruct = function() {
|
|
return !!result;
|
|
})();
|
|
}
|
|
|
|
function setDefaultStats() { // fn#83233, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1819, offset: 0x01f12115, size: 48 bytes, params: 1, frame: 11
|
|
const Object = global.Object;
|
|
Object.values(MediaEngineContextTypes).forEach(_fun83234);
|
|
}
|
|
|
|
function destroyReplayConnection() { // fn#83235, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1887, offset: 0x01f12159, size: 35 bytes, params: 1, frame: 11
|
|
if (env0_22 != null) {
|
|
env0_22.destroy();
|
|
}
|
|
}
|
|
|
|
function computeScreenshareFps({videohookFrames, hybridDxgiFrames, hybridGdiFrames, hybridVideohookFrames, hybridGraphicsCaptureFrames, quartzFrames, screenCaptureKitFrames, hybridDxgiFramesUnique, hybridGdiBitBltFramesUnique, hybridGdiPrintWindowFramesUnique, hybridVideohookFramesUnique, hybridGraphicsCaptureFramesUnique}, {videohookFrames, hybridDxgiFrames, hybridGdiFrames, hybridVideohookFrames, hybridGraphicsCaptureFrames, quartzFrames, screenCaptureKitFrames, hybridDxgiFramesUnique, hybridGdiBitBltFramesUnique, hybridGdiPrintWindowFramesUnique, hybridVideohookFramesUnique, hybridGraphicsCaptureFramesUnique}, a2) { // fn#83236, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1952, offset: 0x01f1217c, size: 591 bytes, params: 4, frame: 20
|
|
const value7 = (videohookFrames ?? 0) + (hybridDxgiFrames ?? 0) + (hybridGdiFrames ?? 0) + (hybridVideohookFrames ?? 0) + (hybridGraphicsCaptureFrames ?? 0) + (quartzFrames ?? 0) + (screenCaptureKitFrames ?? 0);
|
|
const value13 = (videohookFrames ?? 0) + (hybridDxgiFrames ?? 0) + (hybridGdiFrames ?? 0) + (hybridVideohookFrames ?? 0) + (hybridGraphicsCaptureFrames ?? 0) + (quartzFrames ?? 0) + (screenCaptureKitFrames ?? 0);
|
|
const value17 = (hybridDxgiFramesUnique ?? 0) + (hybridGdiBitBltFramesUnique ?? 0) + (hybridGdiPrintWindowFramesUnique ?? 0) + (hybridVideohookFramesUnique ?? 0) + (hybridGraphicsCaptureFramesUnique ?? 0);
|
|
const value21 = (hybridDxgiFramesUnique ?? 0) + (hybridGdiBitBltFramesUnique ?? 0) + (hybridGdiPrintWindowFramesUnique ?? 0) + (hybridVideohookFramesUnique ?? 0) + (hybridGraphicsCaptureFramesUnique ?? 0);
|
|
const object2 = {};
|
|
let Math = global.Math;
|
|
object2.screenshareCapturedFps = Math.max(0, (value7 - value13) / a2);
|
|
Math = global.Math;
|
|
object2.screenshareCapturedFpsUnique = Math.max(0, (value17 - value21) / a2);
|
|
return object2;
|
|
}
|
|
|
|
function updateStats(a0) { // fn#83237, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:3144, offset: 0x01f123cb, size: 570 bytes, params: 2, frame: 44
|
|
var r20;
|
|
var r19;
|
|
var r7;
|
|
var r26;
|
|
var r28;
|
|
var r33;
|
|
var Date;
|
|
var now;
|
|
var property;
|
|
var value5;
|
|
var property2;
|
|
var property3;
|
|
var Array;
|
|
var isArray;
|
|
var value6;
|
|
var push;
|
|
var shift;
|
|
var items3;
|
|
var value7;
|
|
var value8;
|
|
let value = a1;
|
|
const value2 = a2;
|
|
reducibleJoin2: while (true) {
|
|
if (value !== undefined) {
|
|
r20 = value;
|
|
break reducibleJoin2;
|
|
}
|
|
r20 = {};
|
|
break reducibleJoin2;
|
|
}
|
|
reducibleJoin4: while (true) {
|
|
if (value2 !== undefined) {
|
|
r19 = value2;
|
|
break reducibleJoin4;
|
|
}
|
|
Date = global.Date;
|
|
now = Date.now;
|
|
value = Reflect.apply(now, Date, []);
|
|
r19 = value;
|
|
break reducibleJoin4;
|
|
}
|
|
const object2 = {};
|
|
const Object = global.Object;
|
|
value = Object.entries(a0);
|
|
let length = value.length;
|
|
const value3 = 0;
|
|
if (value3 < length) {
|
|
r7 = value3;
|
|
reducibleLoop5: while (true) {
|
|
property = value[r7];
|
|
value5 = env0_7(property, 2);
|
|
property = value5[value3];
|
|
property2 = value5[1];
|
|
property3 = r20[property];
|
|
Array = global.Array;
|
|
isArray = Array.isArray;
|
|
if (Reflect.apply(isArray, Array, [property2])) {
|
|
if (typeof property2[value3] === 'object') {
|
|
Array = global.Array;
|
|
isArray = Array.isArray;
|
|
reducibleJoin23: while (true) {
|
|
if (Reflect.apply(isArray, Array, [property3])) {
|
|
r28 = property3;
|
|
break reducibleJoin23;
|
|
}
|
|
r28 = [];
|
|
break reducibleJoin23;
|
|
}
|
|
items3 = [];
|
|
object2[property] = items3;
|
|
length = property2.length;
|
|
if (value3 < length) {
|
|
r26 = value3;
|
|
reducibleLoop24: while (true) {
|
|
property = r28[r26];
|
|
reducibleJoin26: while (true) {
|
|
if (typeof property === 'object') {
|
|
r33 = property;
|
|
break reducibleJoin26;
|
|
}
|
|
r33 = {};
|
|
break reducibleJoin26;
|
|
}
|
|
push = items3.push;
|
|
Reflect.apply(push, items3, [updateStats(property2[r26], r33, r19)]);
|
|
value7 = typeof r26 === 'bigint' ? r26 + 1n : +r26 + 1;
|
|
length = property2.length;
|
|
if (value7 < length) {
|
|
r26 = value7;
|
|
continue reducibleLoop24;
|
|
}
|
|
break reducibleLoop24;
|
|
}
|
|
}
|
|
} else {
|
|
object2[property] = property2;
|
|
}
|
|
} else {
|
|
value6 = typeof property2;
|
|
reducibleJoin27: while (true) {
|
|
reducibleJoin10: while (true) {
|
|
if (value6 !== 'object') {
|
|
if (property in env0_19) {
|
|
if (value6 === 'number') {
|
|
Array = global.Array;
|
|
isArray = Array.isArray;
|
|
reducibleJoin13: while (true) {
|
|
if (Reflect.apply(isArray, Array, [property3])) {
|
|
r26 = property3;
|
|
break reducibleJoin13;
|
|
}
|
|
r26 = [];
|
|
break reducibleJoin13;
|
|
}
|
|
object2[property] = r26;
|
|
push = r26.push;
|
|
Reflect.apply(push, r26, [{value: property2, time: r19}]);
|
|
length = r26.length;
|
|
if (length > 600) {
|
|
shift = r26.shift;
|
|
Reflect.apply(shift, r26, []);
|
|
break reducibleJoin27;
|
|
}
|
|
break reducibleJoin27;
|
|
}
|
|
break reducibleJoin10;
|
|
}
|
|
break reducibleJoin10;
|
|
}
|
|
if (property2 !== null) {
|
|
reducibleJoin18: while (true) {
|
|
reducibleJoin17: while (true) {
|
|
if (typeof property3 !== 'object') {
|
|
break reducibleJoin17;
|
|
}
|
|
if (property3 !== null) {
|
|
r28 = property3;
|
|
break reducibleJoin18;
|
|
}
|
|
break reducibleJoin17;
|
|
}
|
|
r28 = {};
|
|
break reducibleJoin18;
|
|
}
|
|
object2[property] = updateStats(property2, r28, r19);
|
|
break reducibleJoin27;
|
|
}
|
|
if (property in env0_19) {
|
|
if (value6 === 'number') {
|
|
Array = global.Array;
|
|
isArray = Array.isArray;
|
|
reducibleJoin13: while (true) {
|
|
if (Reflect.apply(isArray, Array, [property3])) {
|
|
r26 = property3;
|
|
break reducibleJoin13;
|
|
}
|
|
r26 = [];
|
|
break reducibleJoin13;
|
|
}
|
|
object2[property] = r26;
|
|
push = r26.push;
|
|
Reflect.apply(push, r26, [{value: property2, time: r19}]);
|
|
length = r26.length;
|
|
if (length > 600) {
|
|
shift = r26.shift;
|
|
Reflect.apply(shift, r26, []);
|
|
break reducibleJoin27;
|
|
}
|
|
break reducibleJoin27;
|
|
}
|
|
break reducibleJoin10;
|
|
}
|
|
break reducibleJoin10;
|
|
}
|
|
object2[property] = property2;
|
|
break reducibleJoin27;
|
|
}
|
|
}
|
|
value8 = typeof r7 === 'bigint' ? r7 + 1n : +r7 + 1;
|
|
length = value.length;
|
|
if (value8 < length) {
|
|
r7 = value8;
|
|
continue reducibleLoop5;
|
|
}
|
|
break reducibleLoop5;
|
|
}
|
|
}
|
|
return object2;
|
|
}
|
|
|
|
function _fun83238() { // fn#83238, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1129, offset: 0x01f12605, size: 114 bytes, params: 1, frame: 16
|
|
return env0_9(RTCDebugVideoOutputMap, [{key: 'put', value: value_83240}, {key: 'get', value: value_83241}],
|
|
[{key: 'empty', value: value_83242}]);
|
|
}
|
|
|
|
function _fun83243(a0) { // fn#83243, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:3731, offset: 0x01f12789, size: 251 bytes, params: 2, frame: 16
|
|
const closure = RTCDebugStore;
|
|
env0_6(closure, a0);
|
|
return env0_9(closure, [{key: 'initialize', value: function() {
|
|
this.waitFor(MediaEngineStore, UserStore);
|
|
}}, {key: 'getSection', value: value_83246}, {key: 'getInboundStats', value: value_83247}, {key: 'getOutboundStats',
|
|
value: value_83249}, {key: 'getAllStats', value: value_83251}, {key: 'getVideoStreams', value: value_83252},
|
|
{key: 'shouldRecordNextConnection', value: value_83253}, {key: 'getSimulcastDebugOverride',
|
|
value: value_83254}]);
|
|
}
|
|
|
|
function RTC_DEBUG_MODAL_OPEN({section}) { // fn#83255, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:5263, offset: 0x01f12b14, size: 33 bytes, params: 2, frame: 2
|
|
env0_16 = section ?? env0_15;
|
|
}
|
|
|
|
function RTC_DEBUG_MODAL_OPEN_REPLAY() { // fn#83258, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:5493, offset: 0x01f12b58, size: 37 bytes, params: 1, frame: 11
|
|
(importAll(10866) /* metro dependency 10866: RTCDebugActionCreators */).chooseReplayPath();
|
|
}
|
|
|
|
function RTC_DEBUG_MODAL_OPEN_REPLAY_AT_PATH({path}) { // fn#83259, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:5586, offset: 0x01f12b7d, size: 206 bytes, params: 2, frame: 17
|
|
var replayConnection;
|
|
const mediaEngine = MediaEngineStore.getMediaEngine();
|
|
destroyReplayConnection();
|
|
const supports = mediaEngine.supports;
|
|
const CONNECTION_REPLAY = Features.CONNECTION_REPLAY;
|
|
if (Reflect.apply(supports, mediaEngine, [CONNECTION_REPLAY])) {
|
|
if (path.length !== 0) {
|
|
replayConnection = mediaEngine.createReplayConnection(MediaEngineContextTypes.DEFAULT, path);
|
|
if (replayConnection != null) {
|
|
replayConnection.on((require(4406) /* metro dependency 4406: mediaEngine */).BaseConnectionEvent.Video,
|
|
_fun83260);
|
|
(importDefault(694) /* metro dependency 694: Dispatcher */).wait(_fun83261);
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
function RTC_DEBUG_MODAL_UPDATE_VIDEO_OUTPUT({mediaEngineConnectionId, userId, videoSsrc, streamId}) { // fn#83262, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6090, offset: 0x01f12ce6, size: 54 bytes, params: 2, frame: 18
|
|
env0_20 = env0_20.put(mediaEngineConnectionId, userId, videoSsrc, streamId);
|
|
}
|
|
|
|
function RTC_DEBUG_SET_SIMULCAST_OVERRIDE_83264({userId, context, quality}) { // fn#83264, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6304, offset: 0x01f12d2f, size: 51 bytes, params: 2, frame: 16
|
|
const binding = env0_18;
|
|
binding.set(makeSimulcastKey(userId, context), quality);
|
|
}
|
|
|
|
function VOICE_CHANNEL_SELECT_83265({channelId}) { // fn#83265, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6430, offset: 0x01f12d62, size: 59 bytes, params: 2, frame: 10
|
|
var binding;
|
|
if (channelId != null) {
|
|
setDefaultStats();
|
|
binding = env0_18;
|
|
binding.clear();
|
|
binding = env0_23;
|
|
binding.clear();
|
|
}
|
|
}
|
|
|
|
function RTC_CONNECTION_VIDEO_83266(a0) { // fn#83266, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6548, offset: 0x01f12d9d, size: 69 bytes, params: 2, frame: 14
|
|
var simulcastKey;
|
|
var binding;
|
|
if (a0.streamId === null) {
|
|
simulcastKey = makeSimulcastKey(a0.userId, a0.context);
|
|
binding = env0_18;
|
|
binding.set(simulcastKey, SimulcastOverrideQuality.NO_OVERRIDE);
|
|
}
|
|
}
|
|
|
|
function MEDIA_ENGINE_CONNECTION_STATS_83267({connectionStats}) { // fn#83267, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6692, offset: 0x01f12de2, size: 61 bytes, params: 2, frame: 12
|
|
const Object = global.Object;
|
|
Object.values(MediaEngineContextTypes).forEach(_fun83268);
|
|
}
|
|
|
|
function parseSection(a0) { // fn#83271, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:7584, offset: 0x01f13024, size: 61 bytes, params: 2, frame: 13
|
|
let value = a0.split(':');
|
|
value = env0_7(value, 2);
|
|
return {context: value[0], section: value[1]};
|
|
}
|
|
|
|
function _fun83234(a0) { // fn#83234, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1872, offset: 0x01f12145, size: 20 bytes, params: 2, frame: 3
|
|
env1_17[a0] = {};
|
|
}
|
|
|
|
function RTCDebugVideoOutputMap(a0) { // fn#83239, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1140, offset: 0x01f12677, size: 36 bytes, params: 2, frame: 13
|
|
env1_8(this, RTCDebugVideoOutputMap);
|
|
this.state = a0;
|
|
}
|
|
|
|
function value_83240(a0, a1, a2, a3) { // fn#83240, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1269, offset: 0x01f1269b, size: 156 bytes, params: 5, frame: 19
|
|
var value;
|
|
var object2;
|
|
if (a3 === '') {
|
|
object2 = {};
|
|
copyDataProperties(object2, this.state, undefined);
|
|
value = environment.__proto__;
|
|
delete object2[makeStreamKey(a0, a1, a2)];
|
|
} else {
|
|
object2 = {};
|
|
value = environment.__proto__;
|
|
object2[makeStreamKey(a0, a1, a2)] = a3;
|
|
copyDataProperties(object2, this.state, undefined);
|
|
}
|
|
value = Object.create(RTCDebugVideoOutputMap.prototype, {constructor: {value: RTCDebugVideoOutputMap}});
|
|
const rTCDebugVideoOutputMap = new RTCDebugVideoOutputMap();
|
|
return rTCDebugVideoOutputMap instanceof Object ? rTCDebugVideoOutputMap : value;
|
|
}
|
|
|
|
function value_83241(a0, a1, a2) { // fn#83241, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1483, offset: 0x01f12737, size: 51 bytes, params: 4, frame: 16
|
|
const state = this.state;
|
|
let value = environment.__proto__;
|
|
const property = state[makeStreamKey(a0, a1, a2)];
|
|
value = null;
|
|
return value != property ? property : value;
|
|
}
|
|
|
|
function value_83242() { // fn#83242, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:1583, offset: 0x01f1276a, size: 31 bytes, params: 1, frame: 11
|
|
const value = Object.create(RTCDebugVideoOutputMap.prototype, {constructor: {value: RTCDebugVideoOutputMap}});
|
|
const rTCDebugVideoOutputMap = new RTCDebugVideoOutputMap({});
|
|
return rTCDebugVideoOutputMap instanceof Object ? rTCDebugVideoOutputMap : value;
|
|
}
|
|
|
|
function RTCDebugStore() { // fn#83244, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:3743, offset: 0x01f12884, size: 113 bytes, params: 1, frame: 20
|
|
const value = environment.__proto__;
|
|
env1_8(this, RTCDebugStore);
|
|
const value3 = env1_5(RTCDebugStore);
|
|
return env1_4(this, _isNativeReflectConstruct_83226() ? global.Reflect.construct(value3, arguments,
|
|
env1_5(this).constructor) : value3.apply(this, arguments));
|
|
}
|
|
|
|
function value_83247(a0, a1) { // fn#83247, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:4132, offset: 0x01f12913, size: 179 bytes, params: 3, frame: 14
|
|
const property = this.getAllStats(a1)[0];
|
|
value = undefined;
|
|
const r5 = property == null || property.rtp == null ? value : property.rtp.inbound[a0];
|
|
const r4 = r5 == null ? value : r5.find(function(a0) {
|
|
return a0.type === 'video';
|
|
});
|
|
const object2 = {};
|
|
object2.codec = r4 == null ? value : r4.codec.name;
|
|
object2.resolution = r4 == null ? value : r4.resolution;
|
|
object2.bitrateEstimate = value;
|
|
object2.fps = getLastGraphValue(r4 == null ? value : r4.frameRateRender);
|
|
return object2;
|
|
}
|
|
|
|
function value_83249(a0) { // fn#83249, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:4463, offset: 0x01f129c6, size: 215 bytes, params: 2, frame: 17
|
|
var environment;
|
|
let value = this.getAllStats(a0);
|
|
let property = value[0];
|
|
const value2 = undefined;
|
|
const transport = property == null ? value2 : property.transport;
|
|
property = value[0];
|
|
const outbound = property == null || property.rtp == null ? value2 : property.rtp.outbound;
|
|
const r4 = outbound == null ? value2 : outbound.find(function(a0) {
|
|
return a0.type === 'video';
|
|
});
|
|
const object2 = {};
|
|
object2.codec = r4 == null ? value2 : r4.codec.name;
|
|
object2.resolution = r4 == null ? value2 : r4.resolution;
|
|
value = environment.__proto__;
|
|
object2.bitrateEstimate = getLastGraphValue(transport == null ? value2 : transport.availableOutgoingBitrate);
|
|
object2.fps = getLastGraphValue(r4 == null ? value2 : r4.frameRateEncode);
|
|
return object2;
|
|
}
|
|
|
|
function value_83251() { // fn#83251, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:4881, offset: 0x01f12a9d, size: 53 bytes, params: 1, frame: 12
|
|
let value = a0;
|
|
const r3 = value !== undefined ? value : MediaEngineContextTypes.DEFAULT;
|
|
const Object = global.Object;
|
|
const values = Object.values;
|
|
value = environment.__proto__;
|
|
return Reflect.apply(values, Object, [env1_17[r3]]);
|
|
}
|
|
|
|
function value_83254(a0, a1) { // fn#83254, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:5084, offset: 0x01f12ad2, size: 66 bytes, params: 3, frame: 14
|
|
const value = environment.__proto__;
|
|
const simulcastKey = makeSimulcastKey(a0, a1);
|
|
const binding = env1_18;
|
|
return binding.has(simulcastKey) ? env1_18.get(simulcastKey) : SimulcastOverrideQuality.NO_OVERRIDE;
|
|
}
|
|
|
|
function _fun83260(a0, a1, a2, a3) { // fn#83260, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:5828, offset: 0x01f12c4b, size: 118 bytes, params: 5, frame: 17
|
|
(importDefault(694) /* metro dependency 694: Dispatcher */).dispatch({type: 'RTC_DEBUG_MODAL_UPDATE_VIDEO_OUTPUT',
|
|
mediaEngineConnectionId: env0_0.mediaEngineConnectionId, userId: a0, videoSsrc: a3 ?? 0, streamId: a1 ?? ''});
|
|
}
|
|
|
|
function _fun83261() { // fn#83261, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6029, offset: 0x01f12cc1, size: 37 bytes, params: 1, frame: 11
|
|
const value = environment.__proto__;
|
|
return (importAll(10866) /* metro dependency 10866: RTCDebugActionCreators */).open();
|
|
}
|
|
|
|
function _fun83268(a0) { // fn#83268, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6781, offset: 0x01f12e1f, size: 54 bytes, params: 2, frame: 12
|
|
const env0_0 = a0;
|
|
connectionStats.filter(_fun83269).forEach(_fun83270);
|
|
}
|
|
|
|
function _fun83269({context}) { // fn#83269, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6795, offset: 0x01f12e55, size: 21 bytes, params: 2, frame: 2
|
|
return context === env0_0;
|
|
}
|
|
|
|
function _fun83270({stats}, a1) { // fn#83270, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:11051:6827, offset: 0x01f12e6a, size: 442 bytes, params: 3, frame: 24
|
|
var screenshare;
|
|
var r4;
|
|
var binding;
|
|
var value2;
|
|
var value3;
|
|
var value4;
|
|
var property2;
|
|
var property3;
|
|
var value5;
|
|
var value6;
|
|
var value7;
|
|
var value8;
|
|
var property5;
|
|
var value9;
|
|
var object3;
|
|
let object4 = {};
|
|
object4.context = env0_0;
|
|
object4.stats = stats;
|
|
object4.index = a1;
|
|
const context = object4.context;
|
|
stats = object4.stats;
|
|
const index = object4.index;
|
|
const property = env2_17[context];
|
|
if (stats != null) {
|
|
binding = env2_16;
|
|
value2 = binding.split(':');
|
|
value3 = undefined;
|
|
value4 = env2_7(value2, 3);
|
|
property2 = value4[0];
|
|
property3 = value4[1];
|
|
if (property2 === context) {
|
|
if (global.parseInt(value4[2]) === index) {
|
|
if (UserStore.getUser(property3) != null) {
|
|
value5 = global.Object.keys(stats.rtp.inbound);
|
|
if (value5.includes(property3)) {
|
|
}
|
|
}
|
|
}
|
|
}
|
|
value6 = global.Date.now();
|
|
screenshare = stats.screenshare;
|
|
if (screenshare == null) {
|
|
r4 = stats;
|
|
} else {
|
|
value7 = '' + context + ':' + index;
|
|
binding = env2_23;
|
|
value8 = binding.get(value7);
|
|
property5 = property[index];
|
|
screenshare = property5 == null ? value3 : property5.screenshare;
|
|
binding = env2_23;
|
|
binding.set(value7, value6);
|
|
if (value8 == null) {
|
|
r4 = stats;
|
|
} else if (screenshare == null) {
|
|
r4 = stats;
|
|
} else {
|
|
value9 = (value6 - value8) / 1000;
|
|
if (value9 > 0) {
|
|
object4 = {};
|
|
copyDataProperties(object4, stats, undefined);
|
|
object3 = {};
|
|
copyDataProperties(object3, stats.screenshare, undefined);
|
|
copyDataProperties(object3, computeScreenshareFps(stats.screenshare, screenshare, value9),
|
|
undefined);
|
|
object4['screenshare'] = object3;
|
|
r4 = object4;
|
|
} else {
|
|
r4 = stats;
|
|
}
|
|
}
|
|
}
|
|
property[index] = updateStats(r4, property[index], value6);
|
|
} else {
|
|
delete property[index];
|
|
}
|
|
}
|
|
|