homebridge-unifi-protect 6.8.1 → 6.9.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +3 -16
- package/config.schema.json +0 -24
- package/dist/protect-camera-package.d.ts +9 -0
- package/dist/protect-camera-package.js +120 -0
- package/dist/protect-camera-package.js.map +1 -0
- package/dist/protect-camera.d.ts +5 -12
- package/dist/protect-camera.js +43 -134
- package/dist/protect-camera.js.map +1 -1
- package/dist/protect-device.d.ts +7 -1
- package/dist/protect-device.js +56 -5
- package/dist/protect-device.js.map +1 -1
- package/dist/protect-doorbell.d.ts +4 -0
- package/dist/protect-doorbell.js +54 -0
- package/dist/protect-doorbell.js.map +1 -1
- package/dist/protect-ffmpeg-codecs.js +5 -4
- package/dist/protect-ffmpeg-codecs.js.map +1 -1
- package/dist/protect-ffmpeg-options.d.ts +2 -2
- package/dist/protect-ffmpeg-options.js +199 -149
- package/dist/protect-ffmpeg-options.js.map +1 -1
- package/dist/protect-ffmpeg-record.js +1 -1
- package/dist/protect-ffmpeg-record.js.map +1 -1
- package/dist/protect-ffmpeg.d.ts +3 -3
- package/dist/protect-ffmpeg.js.map +1 -1
- package/dist/protect-nvr-events.js +28 -29
- package/dist/protect-nvr-events.js.map +1 -1
- package/dist/protect-nvr-systeminfo.js +1 -1
- package/dist/protect-nvr-systeminfo.js.map +1 -1
- package/dist/protect-nvr.d.ts +2 -3
- package/dist/protect-nvr.js +22 -101
- package/dist/protect-nvr.js.map +1 -1
- package/dist/protect-options.d.ts +4 -3
- package/dist/protect-options.js +84 -86
- package/dist/protect-options.js.map +1 -1
- package/dist/protect-platform.js +3 -13
- package/dist/protect-platform.js.map +1 -1
- package/dist/protect-record.js +7 -6
- package/dist/protect-record.js.map +1 -1
- package/dist/protect-sensor.d.ts +6 -3
- package/dist/protect-sensor.js +65 -13
- package/dist/protect-sensor.js.map +1 -1
- package/dist/protect-stream.d.ts +2 -2
- package/dist/protect-stream.js +18 -27
- package/dist/protect-stream.js.map +1 -1
- package/dist/protect-timeshift.d.ts +1 -1
- package/dist/protect-timeshift.js +2 -2
- package/dist/protect-timeshift.js.map +1 -1
- package/dist/protect-viewer.d.ts +2 -1
- package/dist/protect-viewer.js +12 -0
- package/dist/protect-viewer.js.map +1 -1
- package/homebridge-ui/public/index.html +236 -39
- package/homebridge-ui/server.js +2 -2
- package/package.json +7 -7
package/dist/protect-sensor.js
CHANGED
|
@@ -50,6 +50,10 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
50
50
|
if (this.configureHumiditySensor()) {
|
|
51
51
|
enabledSensors.push("humidity");
|
|
52
52
|
}
|
|
53
|
+
// Configure the alarm sound sensor.
|
|
54
|
+
if (this.configureLeakSensor()) {
|
|
55
|
+
enabledSensors.push("leak");
|
|
56
|
+
}
|
|
53
57
|
// Configure the motion sensor.
|
|
54
58
|
if (this.configureMotionSensor(this.ufp.motionSettings?.isEnabled, isInitialized)) {
|
|
55
59
|
// Sensor accessories also support battery, connection, and tamper status...we need to handle those ourselves.
|
|
@@ -95,10 +99,10 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
95
99
|
}
|
|
96
100
|
// Retrieve the current contact sensor state when requested.
|
|
97
101
|
contactService.getCharacteristic(this.hap.Characteristic.ContactSensorState)?.onGet(() => {
|
|
98
|
-
return this.
|
|
102
|
+
return this.alarmDetected;
|
|
99
103
|
});
|
|
100
104
|
// Update the sensor.
|
|
101
|
-
contactService.updateCharacteristic(this.hap.Characteristic.ContactSensorState, this.
|
|
105
|
+
contactService.updateCharacteristic(this.hap.Characteristic.ContactSensorState, this.alarmDetected);
|
|
102
106
|
// Update the state characteristics.
|
|
103
107
|
this.configureStateCharacteristics(contactService);
|
|
104
108
|
return true;
|
|
@@ -142,8 +146,8 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
142
146
|
configureContactSensor() {
|
|
143
147
|
// Find the service, if it exists.
|
|
144
148
|
let contactService = this.accessory.getServiceById(this.hap.Service.ContactSensor, ProtectReservedNames.CONTACT_SENSOR);
|
|
145
|
-
// Have we disabled the sensor?
|
|
146
|
-
if (!this.ufp.mountType || (this.ufp.mountType === "none")) {
|
|
149
|
+
// Have we disabled the sensor or are we configured as a leak sensor?
|
|
150
|
+
if (!this.ufp.mountType || (this.ufp.mountType === "leak") || (this.ufp.mountType === "none")) {
|
|
147
151
|
if (contactService) {
|
|
148
152
|
this.accessory.removeService(contactService);
|
|
149
153
|
this.log.info("Disabling contact sensor.");
|
|
@@ -204,6 +208,38 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
204
208
|
this.configureStateCharacteristics(humidityService);
|
|
205
209
|
return true;
|
|
206
210
|
}
|
|
211
|
+
// Configure the leak sensor for HomeKit.
|
|
212
|
+
configureLeakSensor() {
|
|
213
|
+
// Find the service, if it exists.
|
|
214
|
+
let leakService = this.accessory.getService(this.hap.Service.LeakSensor);
|
|
215
|
+
// Have we disabled the leak sensor?
|
|
216
|
+
if (this.ufp.mountType !== "leak") {
|
|
217
|
+
if (leakService) {
|
|
218
|
+
this.accessory.removeService(leakService);
|
|
219
|
+
this.log.info("Disabling leak sensor.");
|
|
220
|
+
}
|
|
221
|
+
return false;
|
|
222
|
+
}
|
|
223
|
+
// Add the service to the accessory, if needed.
|
|
224
|
+
if (!leakService) {
|
|
225
|
+
leakService = new this.hap.Service.LeakSensor(this.accessory.displayName);
|
|
226
|
+
if (!leakService) {
|
|
227
|
+
this.log.error("Unable to add leak sensor.");
|
|
228
|
+
return false;
|
|
229
|
+
}
|
|
230
|
+
this.accessory.addService(leakService);
|
|
231
|
+
this.log.info("Enabling leak sensor.");
|
|
232
|
+
}
|
|
233
|
+
// Retrieve the current contact sensor state when requested.
|
|
234
|
+
leakService.getCharacteristic(this.hap.Characteristic.LeakDetected)?.onGet(() => {
|
|
235
|
+
return this.leakDetected;
|
|
236
|
+
});
|
|
237
|
+
// Update the sensor.
|
|
238
|
+
leakService.updateCharacteristic(this.hap.Characteristic.LeakDetected, this.leakDetected);
|
|
239
|
+
// Update the state characteristics.
|
|
240
|
+
this.configureStateCharacteristics(leakService);
|
|
241
|
+
return true;
|
|
242
|
+
}
|
|
207
243
|
// Configure the temperature sensor for HomeKit.
|
|
208
244
|
configureTemperatureSensor() {
|
|
209
245
|
// Find the service, if it exists.
|
|
@@ -278,14 +314,15 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
278
314
|
this.configureTamperedStatus(service);
|
|
279
315
|
return true;
|
|
280
316
|
}
|
|
281
|
-
// Get the current alarm
|
|
282
|
-
get
|
|
317
|
+
// Get the current alarm alert detection information.
|
|
318
|
+
get alarmDetected() {
|
|
283
319
|
// Return true if we are not null, meaning the alarm has sounded.
|
|
284
320
|
const value = this.ufp.alarmTriggeredAt !== null;
|
|
285
321
|
// Save the state change and publish to MQTT.
|
|
286
|
-
if (value !== this.
|
|
287
|
-
this.
|
|
288
|
-
this.nvr.mqtt?.publish(this.accessory, "
|
|
322
|
+
if (value !== this.lastAlarm) {
|
|
323
|
+
this.lastAlarm = value;
|
|
324
|
+
this.nvr.mqtt?.publish(this.accessory, "alarm", value.toString());
|
|
325
|
+
this.log.info("Alarm %sdetected.", value ? "" : "no longer ");
|
|
289
326
|
}
|
|
290
327
|
return value;
|
|
291
328
|
}
|
|
@@ -298,8 +335,8 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
298
335
|
// Return true if we are open.
|
|
299
336
|
const value = this.ufp.isOpened;
|
|
300
337
|
// Save the state change and publish to MQTT.
|
|
301
|
-
if (value !== this.
|
|
302
|
-
this.
|
|
338
|
+
if (value !== this.lastContact) {
|
|
339
|
+
this.lastContact = value;
|
|
303
340
|
this.nvr.mqtt?.publish(this.accessory, "contact", value.toString());
|
|
304
341
|
}
|
|
305
342
|
return value;
|
|
@@ -308,14 +345,26 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
308
345
|
get humidity() {
|
|
309
346
|
return this.ufp.stats.humidity.value ?? -1;
|
|
310
347
|
}
|
|
348
|
+
// Get the current leak sensor information.
|
|
349
|
+
get leakDetected() {
|
|
350
|
+
// Return true if we are not null, meaning a leak has been detected.
|
|
351
|
+
const value = this.ufp.leakDetectedAt !== null;
|
|
352
|
+
// Save the state change and publish to MQTT.
|
|
353
|
+
if (value !== this.lastLeak) {
|
|
354
|
+
this.lastLeak = value;
|
|
355
|
+
this.nvr.mqtt?.publish(this.accessory, "leak", value.toString());
|
|
356
|
+
this.log.info("Leak %sdetected.", value ? "" : "no longer ");
|
|
357
|
+
}
|
|
358
|
+
return value;
|
|
359
|
+
}
|
|
311
360
|
// Get the current temperature information.
|
|
312
361
|
get temperature() {
|
|
313
362
|
return this.ufp.stats.temperature.value ?? -1;
|
|
314
363
|
}
|
|
315
364
|
// Configure MQTT capabilities for sensors.
|
|
316
365
|
configureMqtt() {
|
|
317
|
-
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "
|
|
318
|
-
return this.
|
|
366
|
+
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "alarm", "Alarm detected", () => {
|
|
367
|
+
return this.alarmDetected.toString();
|
|
319
368
|
});
|
|
320
369
|
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "ambientlight", "Ambient light", () => {
|
|
321
370
|
return this.ambientLight.toString();
|
|
@@ -326,6 +375,9 @@ export class ProtectSensor extends ProtectDevice {
|
|
|
326
375
|
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "humidity", "Humidity", () => {
|
|
327
376
|
return this.humidity.toString();
|
|
328
377
|
});
|
|
378
|
+
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "leak", "Leak detected", () => {
|
|
379
|
+
return this.leakDetected.toString();
|
|
380
|
+
});
|
|
329
381
|
this.nvr.mqtt?.subscribeGet(this.accessory, this.name, "temperature", "Temperature", () => {
|
|
330
382
|
return this.temperature.toString();
|
|
331
383
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-sensor.js","sourceRoot":"","sources":["../src/protect-sensor.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAEpD,OAAO,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE1D,MAAM,OAAO,aAAc,SAAQ,aAAa;IAM9C,sBAAsB;IACtB,YAAY,GAAe,EAAE,MAA2B,EAAE,SAA4B;QAEpF,KAAK,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;QAEtB,IAAI,CAAC,GAAG,GAAG,MAAM,CAAC;QAElB,IAAI,CAAC,cAAc,EAAE,CAAC;QACtB,IAAI,CAAC,eAAe,EAAE,CAAC;IACzB,CAAC;IAED,6DAA6D;IACrD,eAAe;QAErB,mEAAmE;QACnE,IAAI,CAAC,SAAS,CAAC,OAAO,GAAG,EAAE,CAAC;QAC5B,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;QAC1C,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC;QAE9C,mCAAmC;QACnC,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,gCAAgC;QAChC,MAAM,cAAc,GAAG,IAAI,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAEhD,2BAA2B;QAC3B,IAAI,CAAC,aAAa,EAAE,CAAC;QAErB,qBAAqB;QACrB,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAE9H,kDAAkD;QAClD,IAAG,cAAc,CAAC,MAAM,EAAE;YAExB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uBAAuB,EAAE,cAAc,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;SACzG;aAAM;YAEL,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC;SACtC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,iDAAiD;IAC1C,YAAY,CAAC,aAAa,GAAG,IAAI;QAEtC,MAAM,cAAc,GAAa,EAAE,CAAC;QAEpC,oCAAoC;QACpC,IAAG,IAAI,CAAC,yBAAyB,EAAE,EAAE;YAEnC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACpC;QAED,sCAAsC;QACtC,IAAG,IAAI,CAAC,2BAA2B,EAAE,EAAE;YAErC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACtC;QAED,gCAAgC;QAChC,IAAG,IAAI,CAAC,sBAAsB,EAAE,EAAE;YAEhC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;SAChC;QAED,iCAAiC;QACjC,IAAG,IAAI,CAAC,uBAAuB,EAAE,EAAE;YAEjC,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;SACjC;QAED,+BAA+B;QAC/B,IAAG,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC,EAAE;YAEhF,8GAA8G;YAC9G,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC,CAAC;YAE/E,IAAG,aAAa,EAAE;gBAEhB,oCAAoC;gBACpC,IAAI,CAAC,6BAA6B,CAAC,aAAa,CAAC,CAAC;aACnD;YAED,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SACtC;QAED,kCAAkC;QAClC,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;QAEjF,oCAAoC;QACpC,IAAG,IAAI,CAAC,0BAA0B,EAAE,EAAE;YAEpC,cAAc,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;SACpC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,gDAAgD;IACxC,yBAAyB;QAE/B,kCAAkC;QAClC,IAAI,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;QAEpI,2CAA2C;QAC3C,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE;YAErC,IAAG,cAAc,EAAE;gBAEjB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,uCAAuC,CAAC,CAAC;aACxD;YAED,OAAO,KAAK,CAAC;SACd;QAED,+CAA+C;QAC/C,IAAG,CAAC,cAAc,EAAE;YAElB,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC,WAAW,GAAG,cAAc,CAAC;YAChE,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,WAAW,EAAE,oBAAoB,CAAC,0BAA0B,CAAC,CAAC;YAElH,IAAG,CAAC,cAAc,EAAE;gBAElB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,2CAA2C,CAAC,CAAC;gBAC5D,OAAO,KAAK,CAAC;aACd;YAED,cAAc,CAAC,yBAAyB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,CAAC;YACjF,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,WAAW,CAAC,CAAC;YACzF,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YAE1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,sCAAsC,CAAC,CAAC;SACvD;QAED,4DAA4D;QAC5D,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAEvF,OAAO,IAAI,CAAC,UAAU,CAAC;QACzB,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;QAEjG,oCAAoC;QACpC,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,kDAAkD;IAC1C,2BAA2B;QAEjC,kCAAkC;QAClC,IAAI,YAAY,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;QAE3E,qCAAqC;QACrC,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,SAAS,EAAE;YAErC,IAAG,YAAY,EAAE;gBAEf,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;gBAC3C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC;aAClD;YAED,OAAO,KAAK,CAAC;SACd;QAED,+CAA+C;QAC/C,IAAG,CAAC,YAAY,EAAE;YAEhB,YAAY,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAE5E,IAAG,CAAC,YAAY,EAAE;gBAEhB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qCAAqC,CAAC,CAAC;gBACtD,OAAO,KAAK,CAAC;aACd;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,YAAY,CAAC,CAAC;YACxC,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC;SACjD;QAED,mDAAmD;QACnD,YAAY,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,wBAAwB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE3F,sGAAsG;YACtG,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;YAChC,OAAO,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC1C,CAAC,CAAC,CAAC;QAEH,yHAAyH;QACzH,MAAM,KAAK,GAAG,IAAI,CAAC,YAAY,CAAC;QAChC,YAAY,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,wBAAwB,EAAE,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;QAEtH,oCAAoC;QACpC,IAAI,CAAC,6BAA6B,CAAC,YAAY,CAAC,CAAC;QAEjD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,4CAA4C;IACpC,sBAAsB;QAE5B,kCAAkC;QAClC,IAAI,cAAc,GAAG,IAAI,CAAC,SAAS,CAAC,cAAc,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,EAAE,oBAAoB,CAAC,cAAc,CAAC,CAAC;QAExH,+BAA+B;QAC/B,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,SAAS,KAAK,MAAM,CAAC,EAAE;YAEzD,IAAG,cAAc,EAAE;gBAEjB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,cAAc,CAAC,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;aAC5C;YAED,OAAO,KAAK,CAAC;SACd;QAED,+CAA+C;QAC/C,IAAG,CAAC,cAAc,EAAE;YAElB,cAAc,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,EAAE,oBAAoB,CAAC,cAAc,CAAC,CAAC;YAErH,IAAG,CAAC,cAAc,EAAE;gBAElB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC;gBAChD,OAAO,KAAK,CAAC;aACd;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;YAC1C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,0BAA0B,CAAC,CAAC;SAC3C;QAED,4DAA4D;QAC5D,cAAc,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAEvF,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,cAAc,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;QAE9F,oCAAoC;QACpC,IAAI,CAAC,6BAA6B,CAAC,cAAc,CAAC,CAAC;QAEnD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6CAA6C;IACrC,uBAAuB;QAE7B,kCAAkC;QAClC,IAAI,eAAe,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC;QAEjF,+BAA+B;QAC/B,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,gBAAgB,EAAE,SAAS,EAAE;YAExC,IAAG,eAAe,EAAE;gBAElB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,eAAe,CAAC,CAAC;gBAC9C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,4BAA4B,CAAC,CAAC;aAC7C;YAED,OAAO,KAAK,CAAC;SACd;QAED,+CAA+C;QAC/C,IAAG,CAAC,eAAe,EAAE;YAEnB,eAAe,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,cAAc,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAElF,IAAG,CAAC,eAAe,EAAE;gBAEnB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;gBACjD,OAAO,KAAK,CAAC;aACd;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,eAAe,CAAC,CAAC;YAC3C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;SAC5C;QAED,gDAAgD;QAChD,eAAe,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,uBAAuB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE7F,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;YAC5B,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,QAAQ,CAAC;QAC5B,eAAe,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,uBAAuB,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAE7G,oCAAoC;QACpC,IAAI,CAAC,6BAA6B,CAAC,eAAe,CAAC,CAAC;QAEpD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,gDAAgD;IACxC,0BAA0B;QAEhC,kCAAkC;QAClC,IAAI,kBAAkB,GAAG,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC;QAEvF,2CAA2C;QAC3C,IAAG,CAAC,IAAI,CAAC,GAAG,CAAC,mBAAmB,EAAE,SAAS,EAAE;YAE3C,IAAG,kBAAkB,EAAE;gBAErB,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAC;gBACjD,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;aAChD;YAED,OAAO,KAAK,CAAC;SACd;QAED,+CAA+C;QAC/C,IAAG,CAAC,kBAAkB,EAAE;YAEtB,kBAAkB,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC;YAExF,IAAG,CAAC,kBAAkB,EAAE;gBAEtB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBACpD,OAAO,KAAK,CAAC;aACd;YAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,kBAAkB,CAAC,CAAC;YAC9C,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8BAA8B,CAAC,CAAC;SAC/C;QAED,mDAAmD;QACnD,kBAAkB,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE3F,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;YAC/B,OAAO,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC;QAC/B,CAAC,CAAC,CAAC;QAEH,qBAAqB;QACrB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC;QAC/B,kBAAkB,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,kBAAkB,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QAE3G,oCAAoC;QACpC,IAAI,CAAC,6BAA6B,CAAC,kBAAkB,CAAC,CAAC;QAEvD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,qDAAqD;IAC7C,qBAAqB,CAAC,OAAgB;QAE5C,yDAAyD;QACzD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE1E,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,WAAW,CAAC;QACxC,CAAC,CAAC,CAAC;QAEH,wCAAwC;QACxC,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,YAAY,EAAE,IAAI,CAAC,GAAG,CAAC,KAAK,KAAK,WAAW,CAAC,CAAC;QAEnG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAA2C;IACnC,sBAAsB,CAAC,OAAgB;QAE7C,sDAAsD;QACtD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE9E,OAAO,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC;QACvC,CAAC,CAAC,CAAC;QAEH,6BAA6B;QAC7B,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,gBAAgB,EAAE,IAAI,CAAC,GAAG,CAAC,aAAa,EAAE,KAAK,CAAC,CAAC;QAEtG,OAAO,IAAI,CAAC;IACd,CAAC;IAED,0CAA0C;IAClC,uBAAuB,CAAC,OAAgB;QAE9C,qDAAqD;QACrD,OAAO,CAAC,iBAAiB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,CAAC,EAAE,KAAK,CAAC,GAAG,EAAE;YAE5E,OAAO,IAAI,CAAC,GAAG,CAAC,mBAAmB,KAAK,IAAI,CAAC;QAC/C,CAAC,CAAC,CAAC;QAEH,4BAA4B;QAC5B,OAAO,CAAC,oBAAoB,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,cAAc,EAAE,IAAI,CAAC,GAAG,CAAC,mBAAmB,KAAK,IAAI,CAAC,CAAC;QAE5G,OAAO,IAAI,CAAC;IACd,CAAC;IAED,6DAA6D;IACrD,6BAA6B,CAAC,OAAgB;QAEpD,uCAAuC;QACvC,IAAI,CAAC,qBAAqB,CAAC,OAAO,CAAC,CAAC;QAEpC,6BAA6B;QAC7B,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAC,CAAC;QAErC,4BAA4B;QAC5B,IAAI,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAC;QAEtC,OAAO,IAAI,CAAC;IACd,CAAC;IAED,2CAA2C;IAC3C,IAAY,UAAU;QAEpB,iEAAiE;QACjE,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,KAAK,IAAI,CAAC;QAEjD,6CAA6C;QAC7C,IAAG,KAAK,KAAK,IAAI,CAAC,eAAe,EAAE;YAEjC,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;YAC7B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,YAAY,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SACxE;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,6CAA6C;IAC7C,IAAY,YAAY;QAEtB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAC1C,CAAC;IAED,8CAA8C;IAC9C,IAAY,OAAO;QAEjB,8BAA8B;QAC9B,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;QAEhC,6CAA6C;QAC7C,IAAG,KAAK,KAAK,IAAI,CAAC,YAAY,EAAE;YAE9B,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;YAC1B,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SACrE;QAED,OAAO,KAAK,CAAC;IACf,CAAC;IAED,wCAAwC;IACxC,IAAY,QAAQ;QAElB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAC7C,CAAC;IAED,2CAA2C;IAC3C,IAAY,WAAW;QAErB,OAAO,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,2CAA2C;IACnC,aAAa;QAEnB,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,YAAY,EAAE,aAAa,EAAE,GAAG,EAAE;YAEvF,OAAO,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;QACpC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,cAAc,EAAE,eAAe,EAAE,GAAG,EAAE;YAE3F,OAAO,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,CAAC;QACtC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,GAAG,EAAE;YAEvF,OAAO,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC;QACjC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,GAAG,EAAE;YAElF,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;QAClC,CAAC,CAAC,CAAC;QAEH,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,IAAI,EAAE,aAAa,EAAE,aAAa,EAAE,GAAG,EAAE;YAExF,OAAO,IAAI,CAAC,WAAW,CAAC,QAAQ,EAAE,CAAC;QACrC,CAAC,CAAC,CAAC;IACL,CAAC;IAED,gCAAgC;IACxB,YAAY,CAAC,MAA0B;QAE7C,MAAM,OAAO,GAAG,MAAM,CAAC,OAAqC,CAAC;QAE7D,gDAAgD;QAChD,IAAG,OAAO,CAAC,gBAAgB,IAAI,OAAO,CAAC,gBAAgB,EAAE;YAEvD,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,kBAAkB,CAAC,IAAI,EAAE,OAAO,CAAC,gBAAgB,CAAC,CAAC;SACpE;QAED,cAAc;QACd,IAAI,CAAC,YAAY,EAAE,CAAC;IACtB,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"protect-sensor.js","sourceRoot":"","sources":["../src/protect-sensor.ts"],"names":[],"mappings":"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"}
|
package/dist/protect-stream.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/// <reference types="node" />
|
|
2
2
|
import { CameraController, CameraStreamingDelegate, PrepareStreamCallback, PrepareStreamRequest, SnapshotRequest, SnapshotRequestCallback, StreamRequestCallback, StreamingRequest } from "homebridge";
|
|
3
|
-
import { ProtectCamera
|
|
3
|
+
import { ProtectCamera } from "./protect-camera.js";
|
|
4
4
|
import { FfmpegOptions } from "./protect-ffmpeg-options.js";
|
|
5
5
|
import { ProtectLogging } from "./protect-types.js";
|
|
6
6
|
import { ProtectPlatform } from "./protect-platform.js";
|
|
@@ -17,7 +17,7 @@ export declare class ProtectStreamingDelegate implements CameraStreamingDelegate
|
|
|
17
17
|
private ongoingSessions;
|
|
18
18
|
private pendingSessions;
|
|
19
19
|
readonly platform: ProtectPlatform;
|
|
20
|
-
readonly protectCamera: ProtectCamera
|
|
20
|
+
readonly protectCamera: ProtectCamera;
|
|
21
21
|
private probesizeOverride;
|
|
22
22
|
private probesizeOverrideCount;
|
|
23
23
|
private probesizeOverrideTimeout?;
|
package/dist/protect-stream.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { PROTECT_FFMPEG_AUDIO_FILTER_FFTNR,
|
|
1
|
+
import { PROTECT_FFMPEG_AUDIO_FILTER_FFTNR, PROTECT_HKSV_SEGMENT_LENGTH, PROTECT_HKSV_TIMESHIFT_BUFFER_MAXLENGTH, PROTECT_HOMEKIT_IDR_INTERVAL, PROTECT_SNAPSHOT_CACHE_MAXAGE } from "./settings.js";
|
|
2
2
|
import { FetchError } from "unifi-protect";
|
|
3
3
|
import { FfmpegOptions } from "./protect-ffmpeg-options.js";
|
|
4
4
|
import { FfmpegStreamingProcess } from "./protect-ffmpeg-stream.js";
|
|
@@ -157,7 +157,7 @@ export class ProtectStreamingDelegate {
|
|
|
157
157
|
return assignedPort;
|
|
158
158
|
};
|
|
159
159
|
// Check if audio support is enabled.
|
|
160
|
-
const isAudioEnabled = this.protectCamera.hasFeature("Audio"
|
|
160
|
+
const isAudioEnabled = this.protectCamera.hasFeature("Audio");
|
|
161
161
|
// We need to check for AAC support because it's going to determine whether we support audio.
|
|
162
162
|
const hasAudioSupport = isAudioEnabled && (this.ffmpegOptions.audioEncoder.length > 0);
|
|
163
163
|
// Setup our audio plumbing.
|
|
@@ -252,7 +252,7 @@ export class ProtectStreamingDelegate {
|
|
|
252
252
|
// high latency connection and act accordingly.
|
|
253
253
|
const isTranscoding = this.protectCamera.hints.transcode || ((request.audio.packet_time >= 60) && this.protectCamera.hints.transcodeHighLatency);
|
|
254
254
|
// Find the best RTSP stream based on what we're looking for.
|
|
255
|
-
this.rtspEntry = this.protectCamera.findRtsp(request.video.width, request.video.height,
|
|
255
|
+
this.rtspEntry = this.protectCamera.findRtsp(this.protectCamera.hints.hardwareTranscoding ? 3840 : request.video.width, this.protectCamera.hints.hardwareTranscoding ? 2160 : request.video.height, undefined, isTranscoding ? this.ffmpegOptions.hostSystemMaxPixels : 0);
|
|
256
256
|
if (!this.rtspEntry) {
|
|
257
257
|
const errorMessage = "Unable to start video stream: no valid RTSP stream profile was found.";
|
|
258
258
|
this.log.error("%s %sx%s, %s fps, %s kbps.", errorMessage, request.video.width, request.video.height, request.video.fps, request.video.max_bit_rate);
|
|
@@ -322,7 +322,7 @@ export class ProtectStreamingDelegate {
|
|
|
322
322
|
// Check to see if we're transcoding. If we are, set the right FFmpeg encoder options. If not, copy the video stream.
|
|
323
323
|
if (isTranscoding) {
|
|
324
324
|
// Configure our video parameters for transcoding.
|
|
325
|
-
ffmpegArgs.push(...this.ffmpegOptions.streamEncoder(request.video.width, request.video.height, this.rtspEntry.channel.fps, request.video.max_bit_rate, request.video.profile, request.video.level, PROTECT_HOMEKIT_IDR_INTERVAL));
|
|
325
|
+
ffmpegArgs.push(...this.ffmpegOptions.streamEncoder(request.video.width, request.video.height, this.rtspEntry.channel.fps, request.video.max_bit_rate, request.video.profile, request.video.level, PROTECT_HOMEKIT_IDR_INTERVAL, this.rtspEntry.channel.fps));
|
|
326
326
|
}
|
|
327
327
|
else {
|
|
328
328
|
// Configure our video parameters for just copying the input stream from Protect - it tends to be quite solid in most cases:
|
|
@@ -361,42 +361,33 @@ export class ProtectStreamingDelegate {
|
|
|
361
361
|
// Configure our audio parameters.
|
|
362
362
|
ffmpegArgs.push("-map", "0:a:0?", ...this.ffmpegOptions.audioEncoder, "-profile:a", "38", "-flags", "+global_header", "-f", "null", "-ar", request.audio.sample_rate.toString() + "k", "-b:a", request.audio.max_bit_rate.toString() + "k", "-bufsize", (2 * request.audio.max_bit_rate).toString() + "k", "-ac", request.audio.channel.toString());
|
|
363
363
|
// If we are audio filtering, address it here.
|
|
364
|
-
if (this.protectCamera.hasFeature("Audio.Filter.Noise"
|
|
364
|
+
if (this.protectCamera.hasFeature("Audio.Filter.Noise")) {
|
|
365
365
|
const afOptions = [];
|
|
366
366
|
// See what the user has set for the afftdn filter for this camera.
|
|
367
|
-
let fftNr =
|
|
367
|
+
let fftNr = this.protectCamera.getFeatureFloat("Audio.Filter.Noise.FftNr") ?? PROTECT_FFMPEG_AUDIO_FILTER_FFTNR;
|
|
368
368
|
// If we have an invalid setting, use the defaults.
|
|
369
|
-
if ((fftNr
|
|
370
|
-
fftNr = (fftNr > 97) ? 97 : ((fftNr < 0.01) ? 0.01 :
|
|
369
|
+
if ((fftNr < 0.01) || (fftNr > 97)) {
|
|
370
|
+
fftNr = (fftNr > 97) ? 97 : ((fftNr < 0.01) ? 0.01 : fftNr);
|
|
371
371
|
}
|
|
372
|
+
// The afftdn filter options we use are:
|
|
373
|
+
//
|
|
372
374
|
// nt=w Focus on eliminating white noise.
|
|
373
375
|
// om=o Output the filtered audio.
|
|
374
376
|
// tn=1 Enable noise tracking.
|
|
375
377
|
// tr=1 Enable residual tracking.
|
|
376
378
|
// nr=X Noise reduction value in decibels.
|
|
377
379
|
afOptions.push("afftdn=nt=w:om=o:tn=1:tr=1:nr=" + fftNr.toString());
|
|
378
|
-
|
|
379
|
-
|
|
380
|
-
let lowpass = this.nvr.optionGet(this.protectCamera.ufp, "Audio.Filter.Noise.LowPass", sessionInfo.address) ??
|
|
381
|
-
(this.protectCamera.hasFeature("Audio.Filter.Noise.LowPass") ? PROTECT_FFMPEG_AUDIO_FILTER_LOWPASS.toString() : undefined);
|
|
380
|
+
const highpass = this.protectCamera.getFeatureNumber("Audio.Filter.Noise.HighPass");
|
|
381
|
+
const lowpass = this.protectCamera.getFeatureNumber("Audio.Filter.Noise.LowPass");
|
|
382
382
|
// Only set the highpass and lowpass filters if the user has explicitly enabled them.
|
|
383
|
-
if (
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
highpass = PROTECT_FFMPEG_AUDIO_FILTER_HIGHPASS;
|
|
389
|
-
}
|
|
390
|
-
// See what the user has set for the highpass filter for this camera.
|
|
391
|
-
lowpass = parseInt(lowpass ?? "");
|
|
392
|
-
// If we have an invalid setting, use the defaults.
|
|
393
|
-
if ((lowpass !== lowpass) || (lowpass < 0)) {
|
|
394
|
-
lowpass = PROTECT_FFMPEG_AUDIO_FILTER_LOWPASS;
|
|
395
|
-
}
|
|
396
|
-
afOptions.push("highpass=f=" + highpass.toString(), "lowpass=f=" + lowpass.toString());
|
|
383
|
+
if (highpass !== undefined) {
|
|
384
|
+
afOptions.push("highpass=f=" + highpass.toString());
|
|
385
|
+
}
|
|
386
|
+
if (lowpass !== undefined) {
|
|
387
|
+
afOptions.push("lowpass=f=" + lowpass.toString());
|
|
397
388
|
}
|
|
398
389
|
// Return the assembled audio filter option.
|
|
399
|
-
ffmpegArgs.push("-af", afOptions.join(","));
|
|
390
|
+
ffmpegArgs.push("-af", afOptions.join(", "));
|
|
400
391
|
}
|
|
401
392
|
// Add the required RTP settings and encryption for the stream:
|
|
402
393
|
//
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-stream.js","sourceRoot":"","sources":["../src/protect-stream.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"protect-stream.js","sourceRoot":"","sources":["../src/protect-stream.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,iCAAiC,EAAE,2BAA2B,EAAE,uCAAuC,EAAE,4BAA4B,EAC5I,6BAA6B,EAAE,MAAM,eAAe,CAAC;AAEvD,OAAO,EAAE,UAAU,EAAE,MAAM,eAAe,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAKpE,OAAO,EAAE,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAC9C,OAAO,SAAS,MAAM,IAAI,CAAC;AAC3B,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AAwBnC,wDAAwD;AACxD,MAAM,OAAO,wBAAwB;IAsBnC,sDAAsD;IACtD,YAAY,aAA4B,EAAE,WAAuC;QAE/E,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,aAAa,CAAC,QAAQ,CAAC,MAAM,CAAC;QAC5C,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC;QACjC,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QACnC,IAAI,CAAC,eAAe,GAAG,EAAE,CAAC;QAC1B,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;QAC3B,IAAI,CAAC,sBAAsB,GAAG,CAAC,CAAC;QAChC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;QACtB,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,aAAa,GAAG,KAAK,CAAC;QAE3B,+CAA+C;QAC/C,IAAI,CAAC,aAAa,GAAG,IAAI,aAAa,CAAC,aAAa,CAAC,CAAC;QAEtD,8BAA8B;QAC9B,IAAG,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE;YAE7B,IAAI,CAAC,IAAI,GAAG,IAAI,wBAAwB,CAAC,aAAa,CAAC,CAAC;SACzD;QAED,mCAAmC;QACnC,MAAM,OAAO,GAA4B;YAEvC,4EAA4E;YAC5E,iBAAiB,EAAE,EAAE;YAErB,mCAAmC;YACnC,QAAQ,EAAE,IAAI;YAEd,uDAAuD;YACvD,SAAS,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBAEnD,QAAQ,EAAE,IAAI,CAAC,IAAgC;gBAE/C,OAAO,EAAE;oBAEP,KAAK,EAAE;wBAEL,MAAM,EAAE;4BACN;gCAEE,+EAA+E;gCAC/E,UAAU,yCAAiC;gCAC3C,IAAI,wCAAgC;6BACrC;yBACF;qBACF;oBAED,2BAA2B,EAAE;wBAC3B;4BAEE,uGAAuG;4BACvG,wBAAwB;4BACxB,cAAc,EAAE,2BAA2B;4BAC3C,IAAI,2CAAmC;yBACxC;qBACF;oBAED,2GAA2G;oBAC3G,2CAA2C;oBAC3C,eAAe,EAAE,uCAAuC;oBAExD,KAAK,EAAE;wBAEL,UAAU,EAAE;4BAEV,mGAAmG;4BACnG,iGAAiG;4BACjG,mGAAmG;4BACnG,qBAAqB;4BACrB,MAAM,EAAE,oFAA8D;4BACtE,QAAQ,EAAE,0BAAoB;yBAC/B;wBAED,WAAW,EAAE,WAAW;wBAExB,IAAI,0CAAkC;qBACvC;iBACF;aACF;YAED,qBAAqB;YACrB,OAAO,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC;gBAEjD,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,YAAY,CAAC;aAC/E;YAED,gBAAgB,EAAE;gBAEhB,KAAK,EAAE;oBAEL,MAAM,EAAE;wBAEN;4BACE,aAAa,EAAE,CAAC;4BAChB,OAAO,EAAE,CAAC;4BACV,UAAU,EAAE,oFAAoE;4BAChF,IAAI,iDAAiC;yBACtC;qBACF;oBAED,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW;iBAClD;gBAED,qBAAqB,EAAE,2DAAqD;gBAE5E,KAAK,EAAE;oBAEL,KAAK,EAAE;wBACL,mGAAmG;wBACnG,iGAAiG;wBACjG,mGAAmG;wBACnG,qBAAqB;wBACrB,MAAM,EAAE,oFAA8D;wBACtE,QAAQ,EAAE,0BAAoB;qBAC/B;oBAED,mGAAmG;oBACnG,kGAAkG;oBAClG,2FAA2F;oBAC3F,sGAAsG;oBACtG,wEAAwE;oBACxE,WAAW,EAAE,WAAW;iBACzB;aACF;SACF,CAAC;QAEF,IAAI,CAAC,UAAU,GAAG,IAAI,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC3D,CAAC;IAED,0CAA0C;IACnC,KAAK,CAAC,qBAAqB,CAAC,OAAyB,EAAE,QAAkC;QAE9F,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAEjD,8CAA8C;QAC9C,IAAG,CAAC,QAAQ,EAAE;YAEZ,IAAG,QAAQ,EAAE;gBAEX,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,iCAAiC,CAAC,CAAC,CAAC;aAClF;YAED,OAAO;SACR;QAED,+BAA+B;QAC/B,IAAG,QAAQ,EAAE;YAEX,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;SAC/B;QAED,6DAA6D;QAC7D,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,EAAE,UAAU,EAAE,yBAAyB,GAAG,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC;IAC5H,CAAC;IAED,sCAAsC;IAC/B,KAAK,CAAC,aAAa,CAAC,OAA6B,EAAE,QAA+B;QAEvF,IAAI,iBAAiB,GAAG,KAAK,CAAC;QAC9B,MAAM,mBAAmB,GAAa,EAAE,CAAC;QAEzC,6EAA6E;QAC7E,MAAM,WAAW,GAAG,KAAK,EAAE,WAA8B,MAAM,EAAE,YAAqB,CAAC,EAAmB,EAAE;YAE1G,iEAAiE;YACjE,IAAG,iBAAiB,EAAE;gBAEpB,OAAO,CAAC,CAAC,CAAC;aACX;YAED,wCAAwC;YACxC,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,WAAW,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC;YAEnF,wCAAwC;YACxC,IAAG,YAAY,KAAK,CAAC,CAAC,EAAE;gBAEtB,iBAAiB,GAAG,IAAI,CAAC;aAC1B;iBAAM;gBAEL,uEAAuE;gBACvE,mBAAmB,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC;gBAEvC,IAAG,SAAS,KAAK,CAAC,EAAE;oBAElB,mBAAmB,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,CAAC;iBAC5C;aACF;YAED,eAAe;YACf,OAAO,YAAY,CAAC;QACtB,CAAC,CAAC;QAEF,qCAAqC;QACrC,MAAM,cAAc,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QAE9D,6FAA6F;QAC7F,MAAM,eAAe,GAAG,cAAc,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAEvF,4BAA4B;QAC5B,MAAM,qBAAqB,GAAG,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QAC1E,MAAM,iBAAiB,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACvI,MAAM,oBAAoB,GAAG,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,cAAc,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAE7I,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,CAAC;QAE5E,IAAG,CAAC,eAAe,EAAE;YAEnB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,2BAA2B,EAAE,cAAc,CAAC,CAAC,CAAC,0FAA0F,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;SAC9J;QAED,IAAI,UAAU,GAAG,IAAI,CAAC;QACtB,IAAI,QAAQ,GAAG,IAAI,CAAC;QAEpB,IAAG,eAAe,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE;YAE1D,qDAAqD;YACrD,UAAU,GAAG,IAAI,UAAU,CAAC,IAAI,EAAE,OAAO,CAAC,cAAc,EAAE,iBAAiB,EAAE,qBAAqB,EAAE,oBAAoB,CAAC,CAAC;YAE1H,sDAAsD;YACtD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC,CAAC;YAC1E,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YAEnE,+DAA+D;YAC/D,IAAG,CAAC,QAAQ,EAAE;gBAEZ,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0CAA0C,CAAC,CAAC;aAC5D;SACF;QAED,4BAA4B;QAC5B,MAAM,eAAe,GAAG,CAAC,MAAM,WAAW,CAAC,OAAO,CAAC,cAAc,CAAC,CAAC,CAAC;QACpE,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,6BAA6B,EAAE,CAAC;QAE5E,sFAAsF;QACtF,IAAG,iBAAiB,EAAE;YAEpB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4DAA4D,CAAC,CAAC;SAC9E;QAED,MAAM,WAAW,GAAgB;YAE/B,OAAO,EAAE,OAAO,CAAC,aAAa;YAC9B,cAAc,EAAE,OAAO,CAAC,cAAc;YAEtC,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe;YAC/C,qBAAqB,EAAE,qBAAqB;YAC5C,oBAAoB,EAAE,oBAAoB;YAC1C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;YAC7B,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3E,SAAS,EAAE,SAAS;YAEpB,eAAe,EAAE,eAAe;YAChC,UAAU,EAAE,UAAU;YACtB,mBAAmB,EAAE,mBAAmB;YACxC,QAAQ,EAAE,QAAQ;YAElB,gBAAgB,EAAE,OAAO,CAAC,KAAK,CAAC,eAAe;YAC/C,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,IAAI;YAC7B,eAAe,EAAE,eAAe;YAChC,SAAS,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC;YAC3E,SAAS,EAAE,SAAS;SACrB,CAAC;QAEF,kHAAkH;QAClH,oHAAoH;QACpH,qCAAqC;QACrC,MAAM,QAAQ,GAA0B;YAEtC,KAAK,EAAE;gBAEL,IAAI,EAAE,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,qBAAqB;gBAC3G,qCAAqC;gBACrC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;gBAChC,qCAAqC;gBACrC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;gBAClC,IAAI,EAAE,SAAS;aAChB;YAED,KAAK,EAAE;gBAEL,IAAI,EAAE,eAAe;gBACrB,qCAAqC;gBACrC,QAAQ,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ;gBAChC,qCAAqC;gBACrC,SAAS,EAAE,OAAO,CAAC,KAAK,CAAC,SAAS;gBAClC,IAAI,EAAE,SAAS;aAChB;SACF,CAAC;QAEF,sFAAsF;QACtF,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,WAAW,CAAC;QACtD,QAAQ,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;IAChC,CAAC;IAED,+CAA+C;IACvC,KAAK,CAAC,WAAW,CAAC,OAA2B,EAAE,QAA+B;QAEpF,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAC5D,MAAM,YAAY,GAAG,WAAW,CAAC,cAAc,KAAK,MAAM,CAAC,CAAC,CAAC,MAAM,CAAA,CAAC,CAAC,KAAK,CAAC;QAE3E,sCAAsC;QACtC,IAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,KAAK,WAAW,EAAE;YAC/C,MAAM,YAAY,GAAG,qEAAqE,CAAC;YAE3F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAC7B,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC;YACnE,OAAO;SACR;QAED,2IAA2I;QAC3I,4IAA4I;QAC5I,sFAAsF;QACtF,EAAE;QACF,kJAAkJ;QAClJ,yIAAyI;QACzI,+CAA+C;QAC/C,MAAM,aAAa,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,IAAI,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,oBAAoB,CAAC,CAAC;QAEjJ,6DAA6D;QAC7D,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,QAAQ,CAC1C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EACzE,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,MAAM,EAC1E,SAAS,EACT,aAAa,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,mBAAmB,CAAC,CAAC,CAAC,CAAC,CAC3D,CAAC;QAEF,IAAG,CAAC,IAAI,CAAC,SAAS,EAAE;YAElB,MAAM,YAAY,GAAG,uEAAuE,CAAC;YAE7F,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,4BAA4B,EAAE,YAAY,EACvD,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;YAE5F,QAAQ,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,IAAI,GAAG,YAAY,CAAC,CAAC,CAAC;YACnE,OAAO;SACR;QAED,kHAAkH;QAClH,gDAAgD;QAChD,IAAG,CAAC,IAAI,CAAC,YAAY,EAAE;YAErB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;YAE7E,IAAG,IAAI,CAAC,YAAY,GAAG,CAAC,EAAE;gBAExB,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;aACvB;SACF;QAED,2FAA2F;QAC3F,oEAAoE;QACpE,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;QAElG,qGAAqG;QACrG,yGAAyG;QACzG,sGAAsG;QACtG,0GAA0G;QAC1G,sGAAsG;QACtG,4GAA4G;QAC5G,2GAA2G;QAC3G,4GAA4G;QAC5G,uGAAuG;QACvG,oGAAoG;QACpG,2BAA2B;QAC3B,EAAE;QACF,8GAA8G;QAC9G,6GAA6G;QAC7G,8DAA8D;QAC9D,EAAE;QACF,iHAAiH;QACjH,mHAAmH;QACnH,qBAAqB;QACrB,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;QACzB,MAAM,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC;QAEzB,mFAAmF;QACnF,gGAAgG;QAChG,qGAAqG;QACrG,6FAA6F;QAC7F,6HAA6H;QAC7H,kFAAkF;QAClF,yGAAyG;QACzG,2EAA2E;QAC3E,wHAAwH;QACxH,yHAAyH;QACzH,uHAAuH;QACvH,uEAAuE;QACvE,EAAE;QACF,0JAA0J;QAC1J,MAAM,UAAU,GAAG;YAEjB,cAAc;YACd,UAAU;YACV,SAAS,EAAE,iBAAiB;YAC5B,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY;YAClC,YAAY,EAAE,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE;YACvC,YAAY,EAAE,QAAQ;YACtB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE;YAC3C,iBAAiB,EAAE,KAAK;YACxB,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG;YACxB,MAAM,EAAE,OAAO;SAChB,CAAC;QAEF,mBAAmB;QACnB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,oEAAoE,EAChF,WAAW,CAAC,OAAO,EAAE,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,4BAA4B,CAAC,CAAC,CAAC,EAAE,EAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EACxF,aAAa,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,OAAO,EAC7H,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;QAE9D,qHAAqH;QACrH,IAAG,aAAa,EAAE;YAEhB,kDAAkD;YAClD,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,EACnJ,OAAO,CAAC,KAAK,CAAC,OAAO,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,4BAA4B,EAAE,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC;SAC1G;aAAM;YAEL,4HAA4H;YAC5H,EAAE;YACF,6DAA6D;YAC7D,UAAU,CAAC,IAAI,CAEb,SAAS,EAAE,MAAM,CAClB,CAAC;SACH;QAED,gDAAgD;QAChD,IAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,EAAE;YAErC,UAAU,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC;SACxD;QAED,qDAAqD;QACrD,EAAE;QACF,qIAAqI;QACrI,0IAA0I;QAC1I,8EAA8E;QAC9E,kFAAkF;QAClF,0GAA0G;QAC1G,UAAU,CAAC,IAAI,CAEb,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,EAC5C,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EACzC,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,yBAAyB,EAC5C,kBAAkB,EAAE,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC5D,SAAS,GAAG,WAAW,CAAC,OAAO,GAAG,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;YAC1H,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CACnC,CAAC;QAEF,yIAAyI;QACzI,EAAE;QACF,sIAAsI;QACtI,yHAAyH;QACzH,uHAAuH;QACvH,uEAAuE;QACvE,+FAA+F;QAC/F,gFAAgF;QAChF,4EAA4E;QAC5E,uHAAuH;QACvH,oGAAoG;QACpG,uGAAuG;QACvG,kIAAkI;QAClI,0EAA0E;QAC1E,IAAG,WAAW,CAAC,eAAe,EAAE;YAE9B,kCAAkC;YAClC,UAAU,CAAC,IAAI,CAEb,MAAM,EAAE,QAAQ,EAChB,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY,EAClC,YAAY,EAAE,IAAI,EAClB,QAAQ,EAAE,gBAAgB,EAC1B,IAAI,EAAE,MAAM,EACZ,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,WAAW,CAAC,QAAQ,EAAE,GAAG,GAAG,EACjD,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,GAAG,EACnD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG,EAC7D,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,CACxC,CAAC;YAEF,8CAA8C;YAC9C,IAAG,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE;gBAEtD,MAAM,SAAS,GAAG,EAAE,CAAC;gBAErB,mEAAmE;gBACnE,IAAI,KAAK,GAAG,IAAI,CAAC,aAAa,CAAC,eAAe,CAAC,0BAA0B,CAAC,IAAI,iCAAiC,CAAC;gBAEhH,mDAAmD;gBACnD,IAAG,CAAC,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,EAAE,CAAC,EAAE;oBAEjC,KAAK,GAAG,CAAC,KAAK,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;iBAC7D;gBAED,wCAAwC;gBACxC,EAAE;gBACF,0CAA0C;gBAC1C,mCAAmC;gBACnC,+BAA+B;gBAC/B,kCAAkC;gBAClC,2CAA2C;gBAC3C,SAAS,CAAC,IAAI,CAAC,gCAAgC,GAAG,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;gBAEpE,MAAM,QAAQ,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,6BAA6B,CAAC,CAAC;gBACpF,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,gBAAgB,CAAC,4BAA4B,CAAC,CAAC;gBAElF,qFAAqF;gBACrF,IAAG,QAAQ,KAAK,SAAS,EAAE;oBAEzB,SAAS,CAAC,IAAI,CAAC,aAAa,GAAG,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC;iBACrD;gBAED,IAAG,OAAO,KAAK,SAAS,EAAE;oBAExB,SAAS,CAAC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC,CAAC;iBACnD;gBAED,4CAA4C;gBAC5C,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;aAC9C;YAED,+DAA+D;YAC/D,EAAE;YACF,wIAAwI;YACxI,0IAA0I;YAC1I,8EAA8E;YAC9E,kFAAkF;YAClF,0GAA0G;YAC1G,UAAU,CAAC,IAAI,CAEb,eAAe,EAAE,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE,EAC5C,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,EACzC,IAAI,EAAE,KAAK,EACX,iBAAiB,EAAE,yBAAyB,EAC5C,kBAAkB,EAAE,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAC5D,SAAS,GAAG,WAAW,CAAC,OAAO,GAAG,GAAG,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE,GAAG,YAAY,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,EAAE;gBAC1H,YAAY,GAAG,QAAQ,CAAC,QAAQ,EAAE,CACnC,CAAC;SACH;QAED,mDAAmD;QACnD,IAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE;YAEpD,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SAC/C;QAED,IAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE;YAEhC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;SAC7C;QAED,sDAAsD;QACtD,MAAM,YAAY,GAAG,IAAI,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,UAAU,EACjF,CAAC,WAAW,CAAC,eAAe,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YACjF,EAAE,cAAc,EAAE,WAAW,CAAC,cAAc,EAAE,IAAI,EAAE,WAAW,CAAC,eAAe,EAAE,EACnF,QAAQ,CAAC,CAAC;QAEZ,yDAAyD;QACzD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG;YAExC,MAAM,EAAE,CAAE,YAAY,CAAE;YACxB,UAAU,EAAE,WAAW,CAAC,UAAU;YAClC,mBAAmB,EAAE,WAAW,CAAC,mBAAmB;SACrD,CAAC;QAEF,OAAO,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;QAE/C,2GAA2G;QAC3G,IAAG,CAAC,WAAW,CAAC,eAAe,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,EAAE;YAExE,OAAO;SACR;QAED,4EAA4E;QAC5E,sFAAsF;QACtF,EAAE;QACF,kBAAkB;QAClB,EAAE;QACF,6CAA6C;QAC7C,mDAAmD;QACnD,qCAAqC;QACrC,wCAAwC;QACxC,iEAAiE;QACjE,2EAA2E;QAC3E,0EAA0E;QAC1E,2HAA2H;QAC3H,mEAAmE;QACnE,sDAAsD;QACtD,MAAM,cAAc,GAAG;YAErB,KAAK;YACL,aAAa,GAAG,YAAY,GAAG,YAAY;YAC3C,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,GAAG,iBAAiB;YAClD,OAAO,GAAG,YAAY,GAAG,GAAG,GAAG,WAAW,CAAC,OAAO;YAClD,OAAO;YACP,UAAU,GAAG,WAAW,CAAC,oBAAoB,CAAC,QAAQ,EAAE,GAAG,WAAW,GAAG,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,EAAE;YACpG,SAAS;YACT,6BAA6B,GAAG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,GAAG,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE;YACjI,oGAAoG;gBAClG,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,WAAW,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,gBAAgB,CAAC;YAC5E,4CAA4C,GAAG,WAAW,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACxF,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEb,yIAAyI;QACzI,EAAE;QACF,yEAAyE;QACzE,sFAAsF;QACtF,oFAAoF;QACpF,qEAAqE;QACrE,uEAAuE;QACvE,yDAAyD;QACzD,uEAAuE;QACvE,kEAAkE;QAClE,2EAA2E;QAC3E,qGAAqG;QACrG,yGAAyG;QACzG,kDAAkD;QAClD,oEAAoE;QACpE,MAAM,oBAAoB,GAAG;YAE3B,cAAc;YACd,UAAU;YACV,qBAAqB,EAAE,0BAA0B;YACjD,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,IAAI,CAAC,aAAa,CAAC,YAAY;YAC1C,IAAI,EAAE,QAAQ;YACd,MAAM,EAAE,OAAO;YACf,GAAG,IAAI,CAAC,aAAa,CAAC,YAAY;YAClC,QAAQ,EAAE,gBAAgB;YAC1B,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,YAAY,CAAC,QAAQ,EAAE;YACtE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,QAAQ,EAAE,GAAG,GAAG;YACnD,KAAK,EAAE,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,gBAAgB,CAAC,QAAQ,CAAC,QAAQ,EAAE;YAClE,IAAI,EAAE,MAAM;YACZ,QAAQ;SACT,CAAC;QAEF,mDAAmD;QACnD,IAAG,IAAI,CAAC,QAAQ,CAAC,aAAa,IAAI,IAAI,CAAC,aAAa,EAAE;YAEpD,oBAAoB,CAAC,IAAI,CAAC,WAAW,EAAE,eAAe,CAAC,CAAC;SACzD;QAED,IAAG,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE;YAEhC,oBAAoB,CAAC,IAAI,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;SACvD;QAED,IAAI;YAEF,6BAA6B;YAC7B,IAAI,EAAE,GAAqB,IAAI,CAAC;YAChC,IAAI,cAAc,GAAG,KAAK,CAAC;YAC3B,IAAI,YAAoC,CAAC;YACzC,IAAI,YAAwB,CAAC;YAE7B,IAAG,WAAW,CAAC,QAAQ,EAAE;gBAEvB,gCAAgC;gBAChC,EAAE,GAAG,IAAI,SAAS,CAAC,WAAW,CAAC,QAAQ,EAAE,EAAE,kBAAkB,EAAE,KAAK,EAAE,CAAC,CAAC;gBACxE,cAAc,GAAG,IAAI,CAAC;gBAEtB,mDAAmD;gBACnD,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,EAAE;oBAE1B,kEAAkE;oBAClE,IAAI,KAA+B,CAAC,IAAI,KAAK,WAAW,EAAE;wBAExD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0DAA0D,EAAE,KAAK,CAAC,CAAC;qBACnF;oBAED,EAAE,EAAE,SAAS,EAAE,CAAC;gBAClB,CAAC,CAAC,CAAC;gBAEH,kDAAkD;gBAClD,EAAE,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,GAAG,GAAS,EAAE;oBAEvC,qFAAqF;oBACrF,IAAG,CAAC,cAAc,EAAE;wBAElB,EAAE,EAAE,SAAS,EAAE,CAAC;qBACjB;gBACH,CAAC,CAAC,CAAC;gBAEH,oCAAoC;gBACpC,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,GAAG,EAAE;oBAErB,EAAE,EAAE,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;gBAC3C,CAAC,CAAC,CAAC;aACJ;YAED,+EAA+E;YAC/E,IAAG,WAAW,CAAC,UAAU,EAAE;gBAEzB,MAAM,IAAI,CAAC,WAAW,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;gBAE1C,4DAA4D;gBAC5D,IAAG,CAAC,WAAW,CAAC,UAAU,CAAC,SAAS,EAAE;oBAEpC,mCAAmC;oBACnC,EAAE,EAAE,SAAS,EAAE,CAAC;oBAChB,OAAO;iBACR;aACF;YAED,0DAA0D;YAC1D,MAAM,iBAAiB,GAAG,IAAI,sBAAsB,CAAC,IAAI,EAAE,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;YAEpG,oDAAoD;YACpD,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC;YAEvE,uDAAuD;YACvD,iBAAiB,CAAC,KAAK,EAAE,GAAG,CAAC,cAAc,GAAG,IAAI,CAAC,CAAC;YAEpD,kBAAkB;YAClB,iBAAiB,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,EAAE,YAAY,GAAG,CAAC,IAAY,EAAQ,EAAE;gBAEzE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,KAAwB,EAAQ,EAAE;oBAEhD,wFAAwF;oBACxF,sDAAsD;oBACtD,IAAG,KAAK,EAAE;wBAER,EAAE,EAAE,SAAS,EAAE,CAAC;qBACjB;gBACH,CAAC,CAAC,CAAC;YACL,CAAC,CAAC,CAAC;YAEH,iEAAiE;YACjE,iBAAiB,CAAC,aAAa,EAAE,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;gBAEjD,yEAAyE;gBACzE,cAAc,GAAG,KAAK,CAAC;gBAEvB,uBAAuB;gBACvB,IAAG,CAAC,EAAE,EAAE,UAAU,KAAK,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,EAAE,UAAU,KAAK,SAAS,CAAC,IAAI,CAAC,EAAE;oBAEhF,EAAE,EAAE,SAAS,EAAE,CAAC;iBACjB;gBAED,iBAAiB,CAAC,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,CAAC;YACjE,CAAC,CAAC,CAAC;SACJ;QAAC,OAAM,KAAK,EAAE;YAEb,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mDAAmD,EAAE,KAAK,CAAC,CAAC;SAC5E;IACH,CAAC;IAED,oCAAoC;IAC7B,KAAK,CAAC,mBAAmB,CAAC,OAAyB,EAAE,QAA+B;QAEzF,QAAO,OAAO,CAAC,IAAI,EAAE;YAEnB;gBAEE,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;gBAC1C,MAAM;YAER;gBAEE,iEAAiE;gBACjE,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,+EAA+E,EAC3F,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,OAAO,CAAC,KAAK,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC;gBAE5F,sCAAsC;gBACtC,IAAG,IAAI,CAAC,SAAS,EAAE;oBAEjB,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY,GAAG,IAAI,CAAC,CAAC;iBACnG;gBAED,QAAQ,EAAE,CAAC;gBACX,MAAM;YAER,0CAA6B;YAC7B;gBAEE,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;gBACzC,QAAQ,EAAE,CAAC;gBACX,MAAM;SACT;IACH,CAAC;IAED,4CAA4C;IACpC,iBAAiB,CAAC,SAAiB;QAEzC,uFAAuF;QACvF,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,6BAA6B,GAAG,IAAI,CAAC,CAAC,EAAE;YAEjI,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;YACrC,OAAO,IAAI,CAAC;SACb;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC,KAAK,CAAC;IAC7C,CAAC;IAED,mBAAmB;IACZ,KAAK,CAAC,WAAW,CAAC,OAAyB,EAAE,eAAe,GAAG,IAAI;QAExE,MAAM,QAAQ,GAAG,CAAC,OAAe,EAAE,GAAG,UAAqB,EAAQ,EAAE;YAEnE,4DAA4D;YAC5D,IAAG,eAAe,EAAE;gBAElB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,OAAO,EAAE,GAAG,UAAU,CAAC,CAAC;aACxC;QACH,CAAC,CAAC;QAEF,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,EAAE,EAAE,IAAI,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QAElE,sCAAsC;QACtC,IAAG,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,KAAK,KAAK,WAAW,EAAE;YAE/C,QAAQ,CAAC,sEAAsE,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC;SACb;QAED,gFAAgF;QAChF,IAAG,OAAO,EAAE;YAEV,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,CAAC;YAC9C,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC;SAC9C;QAED,8FAA8F;QAC9F,MAAM,aAAa,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;QAE5C,IAAG,CAAC,eAAe,EAAE;YAEnB,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,KAAK,CAAC;SAC/B;QAED,yCAAyC;QACzC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,WAAW,GAAG,GAAG,GAAG,MAAM,CAAC,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;QAE1I,IAAG,CAAC,eAAe,EAAE;YAEnB,IAAI,CAAC,GAAG,CAAC,YAAY,GAAG,aAAa,CAAC;SACvC;QAED,8HAA8H;QAC9H,oDAAoD;QACpD,IAAG,CAAC,QAAQ,EAAE,EAAE,EAAE;YAEhB,0DAA0D;YAC1D,MAAM,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAE1E,IAAG,cAAc,EAAE;gBAEjB,QAAQ,CAAC,+EAA+E,CAAC,CAAC;gBAC1F,OAAO,cAAc,CAAC;aACvB;YAED,QAAQ,CAAC,kCAAkC,EAAE,QAAQ,CAAC,CAAC,CAAC,GAAG,GAAG,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,KAAK,GAAG,QAAQ,CAAC,UAAU,GAAG,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAEnI,OAAO,IAAI,CAAC;SACb;QAED,IAAI;YAEF,sBAAsB;YACtB,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,QAAQ,CAAC,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;YACxH,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,KAAK,CAAC;SAC7D;QAAC,OAAM,KAAK,EAAE;YAEb,IAAG,KAAK,YAAY,UAAU,EAAE;gBAC9B,IAAI,cAAc,CAAC;gBAEnB,QAAO,KAAK,CAAC,IAAI,EAAE;oBAEjB,KAAK,4BAA4B;wBAE/B,cAAc,GAAG,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;wBAEpE,IAAG,cAAc,EAAE;4BAEjB,QAAQ,CAAC,iEAAiE,CAAC,CAAC;4BAC5E,OAAO,cAAc,CAAC;yBACvB;wBAED,QAAQ,CAAC,0FAA0F,CAAC,CAAC;wBACrG,OAAO,IAAI,CAAC;wBACZ,MAAM;oBAER;wBAEE,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,mBAAmB,EAAE,KAAK,CAAC,OAAO,CAAC,CAAC;wBACnD,OAAO,IAAI,CAAC;wBACZ,MAAM;iBACT;aACF;YAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wDAAwD,EAAE,KAAK,CAAC,CAAC;YAChF,OAAO,IAAI,CAAC;SACb;IACH,CAAC;IAED,wBAAwB;IACjB,KAAK,CAAC,UAAU,CAAC,SAAiB;QAEvC,IAAI;YAEF,6CAA6C;YAC7C,IAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBAElC,KAAI,MAAM,aAAa,IAAI,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE;oBACjE,aAAa,CAAC,IAAI,EAAE,CAAC;iBACtB;gBAED,qCAAqC;gBACrC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,UAAU,EAAE,KAAK,EAAE,CAAC;gBAEpD,mBAAmB;gBACnB,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,kCAAkC,CAAC,CAAC;gBAElD,iCAAiC;gBACjC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAClG;YAED,mIAAmI;YACnI,IAAG,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,EAAE;gBAElC,iCAAiC;gBACjC,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC,mBAAmB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC;aAClG;YAED,sBAAsB;YACtB,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YACvC,OAAO,IAAI,CAAC,eAAe,CAAC,SAAS,CAAC,CAAC;YAEvC,sHAAsH;YACtH,IAAG,CAAC,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE;gBAE/B,IAAG,IAAI,CAAC,IAAI,EAAE,WAAW,EAAE;oBAEzB,iEAAiE;oBACjE,MAAM,IAAI,CAAC,IAAI,CAAC,mBAAmB,EAAE,CAAC;iBACvC;qBAAM,IAAG,IAAI,CAAC,YAAY,EAAE;oBAE3B,gCAAgC;oBAChC,IAAG,IAAI,CAAC,SAAS,EAAE;wBAEjB,MAAM,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,EAAE,IAAI,CAAC,YAAY,CAAC,CAAC;qBACnF;oBAED,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC;iBACvB;aACF;SAEF;QAAC,OAAM,KAAK,EAAE;YAEb,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,6DAA6D,EAAE,KAAK,CAAC,CAAC;SACtF;IACH,CAAC;IAED,kCAAkC;IAC3B,KAAK,CAAC,QAAQ;QAEnB,KAAI,MAAM,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,eAAe,CAAC,EAAE;YAEtD,4CAA4C;YAC5C,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;SAChC;IACH,CAAC;IAED,0BAA0B;IACnB,eAAe;QAEpB,IAAG,IAAI,CAAC,wBAAwB,EAAE;YAEhC,YAAY,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;YAC5C,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;SAC3C;QAED,wIAAwI;QACxI,IAAI,CAAC,sBAAsB,EAAE,CAAC;QAE9B,yIAAyI;QACzI,6EAA6E;QAC7E,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QAE5C,uDAAuD;QACvD,IAAG,IAAI,CAAC,iBAAiB,GAAG,OAAO,EAAE;YAEnC,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC;SAClC;QAED,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,0HAA0H;YACzI,8HAA8H,EAC9H,IAAI,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,aAAa,CAAC,CAAC;QAElE,wEAAwE;QACxE,IAAG,IAAI,CAAC,sBAAsB,GAAG,EAAE,EAAE;YAEnC,IAAI,CAAC,wBAAwB,GAAG,UAAU,CAAC,GAAG,EAAE;gBAE9C,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;gBAC3B,IAAI,CAAC,wBAAwB,GAAG,SAAS,CAAC;YAC5C,CAAC,EAAE,IAAI,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC;SACpB;IACH,CAAC;IAED,8DAA8D;IAC9D,IAAW,SAAS;QAElB,OAAO,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,SAAS,CAAC;IAC9F,CAAC;CACF"}
|
|
@@ -16,7 +16,7 @@ export declare class ProtectTimeshiftBuffer extends EventEmitter {
|
|
|
16
16
|
private _segmentLength;
|
|
17
17
|
constructor(protectCamera: ProtectCamera);
|
|
18
18
|
private configureTimeshiftBuffer;
|
|
19
|
-
start(channelId: number): Promise<boolean>;
|
|
19
|
+
start(channelId: number, lens?: number): Promise<boolean>;
|
|
20
20
|
stop(): boolean;
|
|
21
21
|
startTransmitting(): Promise<boolean>;
|
|
22
22
|
stopTransmitting(): boolean;
|
|
@@ -65,7 +65,7 @@ export class ProtectTimeshiftBuffer extends EventEmitter {
|
|
|
65
65
|
});
|
|
66
66
|
}
|
|
67
67
|
// Start the livestream and begin maintaining our timeshift buffer.
|
|
68
|
-
async start(channelId) {
|
|
68
|
+
async start(channelId, lens = 0) {
|
|
69
69
|
// Stop the timeshift buffer if it's already running.
|
|
70
70
|
this.stop();
|
|
71
71
|
// Ensure we have sane values configured for the segment resolution. We check this here instead of in the constructor because
|
|
@@ -79,7 +79,7 @@ export class ProtectTimeshiftBuffer extends EventEmitter {
|
|
|
79
79
|
// Clear out the timeshift buffer, if it's been previously filled, and then fire up the timeshift buffer.
|
|
80
80
|
this.buffer = [];
|
|
81
81
|
// Start the livestream and start buffering.
|
|
82
|
-
if (!(await this.livestream.start(this.protectCamera.ufp.id, channelId, this.segmentLength))) {
|
|
82
|
+
if (!(await this.livestream.start(this.protectCamera.ufp.id, channelId, lens, this.segmentLength))) {
|
|
83
83
|
// Something went wrong in communicating with the controller.
|
|
84
84
|
return false;
|
|
85
85
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-timeshift.js","sourceRoot":"","sources":["../src/protect-timeshift.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,+BAA+B,EAAE,MAAM,eAAe,CAAC;AAOhE,6CAA6C;AAC7C,MAAM,OAAO,sBAAuB,SAAQ,YAAY;IActD,YAAY,aAA4B;QAEtC,gCAAgC;QAChC,KAAK,EAAE,CAAC;QAER,IAAI,CAAC,SAAS,GAAG,aAAa,CAAC,SAAS,CAAC;QACzC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;QACpB,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;QACnB,IAAI,CAAC,UAAU,GAAG,KAAK,CAAC;QACxB,IAAI,CAAC,UAAU,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,gBAAgB,EAAE,CAAC;QAC9D,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,+HAA+H;QAC/H,8HAA8H;QAC9H,IAAI,CAAC,cAAc,GAAG,+BAA+B,CAAC;QAEtD,IAAI,CAAC,eAAe,GAAG,KAAK,CAAC;QAC7B,IAAI,CAAC,wBAAwB,EAAE,CAAC;IAClC,CAAC;IAED,kCAAkC;IAC1B,wBAAwB;QAE9B,IAAI,eAAe,GAAG,KAAK,CAAC;QAE5B,2DAA2D;QAC3D,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,EAAE;YAE/B,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,gFAAgF;gBAC7F,8GAA8G,CAAC,CAAC;YAElH,IAAI,CAAC,IAAI,EAAE,CAAC;QACd,CAAC,CAAC,CAAC;QAEH,0HAA0H;QAC1H,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC,SAAS,EAAE,CAAC,OAAe,EAAE,EAAE;YAEhD,2FAA2F;YAC3F,4FAA4F;YAC5F,6FAA6F;YAC7F,8FAA8F;YAC9F,iGAAiG;YACjG,yFAAyF;YACzF,IAAG,CAAC,eAAe,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;gBAEnE,eAAe,GAAG,IAAI,CAAC;gBACvB,OAAO;aACR;YAED,iEAAiE;YACjE,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;YAE1B,mEAAmE;YACnE,IAAG,IAAI,CAAC,UAAU,IAAI,CAAC,EAAE;gBAEvB,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;aACrB;YAED,qFAAqF;YACrF,2EAA2E;YAC3E,IAAG,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,GAAI,IAAI,CAAC,UAAU,CAAC,EAAE;gBAElE,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;aACrB;YAED,2FAA2F;YAC3F,IAAG,IAAI,CAAC,cAAc,EAAE;gBAEtB,KAAI,IAAI,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE;oBAE7E,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;iBAC/B;aACF;QACH,CAAC,CAAC,CAAC;IACL,CAAC;IAED,mEAAmE;IAC5D,KAAK,CAAC,KAAK,CAAC,SAAiB;
|
|
1
|
+
{"version":3,"file":"protect-timeshift.js","sourceRoot":"","sources":["../src/protect-timeshift.ts"],"names":[],"mappings":"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"}
|
package/dist/protect-viewer.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { PlatformAccessory } from "homebridge";
|
|
2
|
+
import { ProtectViewerConfig } from "unifi-protect";
|
|
2
3
|
import { ProtectDevice } from "./protect-device.js";
|
|
3
4
|
import { ProtectNvr } from "./protect-nvr.js";
|
|
4
|
-
import { ProtectViewerConfig } from "unifi-protect";
|
|
5
5
|
export declare class ProtectViewer extends ProtectDevice {
|
|
6
6
|
ufp: ProtectViewerConfig;
|
|
7
7
|
constructor(nvr: ProtectNvr, device: ProtectViewerConfig, accessory: PlatformAccessory);
|
|
@@ -14,4 +14,5 @@ export declare class ProtectViewer extends ProtectDevice {
|
|
|
14
14
|
private addLiveviewSwitch;
|
|
15
15
|
private setViewer;
|
|
16
16
|
private configureMqtt;
|
|
17
|
+
private eventHandler;
|
|
17
18
|
}
|
package/dist/protect-viewer.js
CHANGED
|
@@ -19,6 +19,8 @@ export class ProtectViewer extends ProtectDevice {
|
|
|
19
19
|
const enabledLiveviews = this.updateDevice(true);
|
|
20
20
|
// Configure MQTT services.
|
|
21
21
|
this.configureMqtt();
|
|
22
|
+
// Listen for events.
|
|
23
|
+
this.nvr.events.on("updateEvent." + this.ufp.id, this.listeners["updateEvent." + this.ufp.id] = this.eventHandler.bind(this));
|
|
22
24
|
// Inform the user what we're enabling on startup.
|
|
23
25
|
if (enabledLiveviews.length) {
|
|
24
26
|
this.log.info("Configured liveview%s: %s.", enabledLiveviews.length > 1 ? "s" : "", enabledLiveviews.join(", "));
|
|
@@ -72,9 +74,11 @@ export class ProtectViewer extends ProtectDevice {
|
|
|
72
74
|
.onSet((value) => {
|
|
73
75
|
return this.setLiveviewSwitchState(switchService, value);
|
|
74
76
|
});
|
|
77
|
+
switchService.addOptionalCharacteristic(this.hap.Characteristic.ConfiguredName);
|
|
75
78
|
}
|
|
76
79
|
// Set the state to reflect Protect.
|
|
77
80
|
switchService.updateCharacteristic(this.hap.Characteristic.On, switchService.subtype === this.ufp.liveview);
|
|
81
|
+
switchService.updateCharacteristic(this.hap.Characteristic.ConfiguredName, this.ufpApi.bootstrap?.liveviews?.find(x => x.id === switchService.subtype)?.name ?? this.accessory.displayName);
|
|
78
82
|
return true;
|
|
79
83
|
}
|
|
80
84
|
// Return the current state of the liveview switch.
|
|
@@ -160,5 +164,13 @@ export class ProtectViewer extends ProtectDevice {
|
|
|
160
164
|
});
|
|
161
165
|
return true;
|
|
162
166
|
}
|
|
167
|
+
// Handle viewer-related events.
|
|
168
|
+
eventHandler(packet) {
|
|
169
|
+
const payload = packet.payload;
|
|
170
|
+
// It's a liveview update event - process it accordingly.
|
|
171
|
+
if (payload.liveview) {
|
|
172
|
+
this.updateDevice();
|
|
173
|
+
}
|
|
174
|
+
}
|
|
163
175
|
}
|
|
164
176
|
//# sourceMappingURL=protect-viewer.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-viewer.js","sourceRoot":"","sources":["../src/protect-viewer.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"protect-viewer.js","sourceRoot":"","sources":["../src/protect-viewer.ts"],"names":[],"mappings":"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"}
|