homebridge-unifi-protect 7.1.2 → 7.3.0
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/dist/devices/protect-camera-package.js +1 -2
- package/dist/devices/protect-camera-package.js.map +1 -1
- package/dist/devices/protect-camera.d.ts +3 -0
- package/dist/devices/protect-camera.js +103 -41
- package/dist/devices/protect-camera.js.map +1 -1
- package/dist/devices/protect-chime.d.ts +2 -0
- package/dist/devices/protect-chime.js +38 -5
- package/dist/devices/protect-chime.js.map +1 -1
- package/dist/devices/protect-device.d.ts +7 -2
- package/dist/devices/protect-device.js +67 -66
- package/dist/devices/protect-device.js.map +1 -1
- package/dist/devices/protect-light.d.ts +2 -0
- package/dist/devices/protect-light.js +22 -4
- package/dist/devices/protect-light.js.map +1 -1
- package/dist/devices/protect-liveviews.js +2 -2
- package/dist/devices/protect-liveviews.js.map +1 -1
- package/dist/devices/protect-sensor.js +4 -0
- package/dist/devices/protect-sensor.js.map +1 -1
- package/dist/ffmpeg/protect-ffmpeg-exec.d.ts +0 -2
- package/dist/ffmpeg/protect-ffmpeg-options.js +9 -9
- package/dist/ffmpeg/protect-ffmpeg-options.js.map +1 -1
- package/dist/ffmpeg/protect-ffmpeg-record.d.ts +2 -3
- package/dist/ffmpeg/protect-ffmpeg-record.js +50 -56
- package/dist/ffmpeg/protect-ffmpeg-record.js.map +1 -1
- package/dist/ffmpeg/protect-ffmpeg-stream.d.ts +0 -2
- package/dist/ffmpeg/protect-ffmpeg-stream.js +17 -9
- package/dist/ffmpeg/protect-ffmpeg-stream.js.map +1 -1
- package/dist/ffmpeg/protect-ffmpeg.d.ts +2 -6
- package/dist/ffmpeg/protect-ffmpeg.js +0 -1
- package/dist/ffmpeg/protect-ffmpeg.js.map +1 -1
- package/dist/protect-events.d.ts +0 -1
- package/dist/protect-events.js +75 -59
- package/dist/protect-events.js.map +1 -1
- package/dist/protect-livestream.d.ts +3 -0
- package/dist/protect-livestream.js +61 -5
- package/dist/protect-livestream.js.map +1 -1
- package/dist/protect-nvr.d.ts +2 -3
- package/dist/protect-nvr.js +35 -52
- package/dist/protect-nvr.js.map +1 -1
- package/dist/protect-options.js +4 -4
- package/dist/protect-options.js.map +1 -1
- package/dist/protect-platform.js +1 -1
- package/dist/protect-platform.js.map +1 -1
- package/dist/protect-record.d.ts +7 -8
- package/dist/protect-record.js +126 -123
- package/dist/protect-record.js.map +1 -1
- package/dist/protect-snapshot.d.ts +0 -1
- package/dist/protect-snapshot.js +2 -2
- package/dist/protect-snapshot.js.map +1 -1
- package/dist/protect-stream.d.ts +2 -2
- package/dist/protect-stream.js +54 -29
- package/dist/protect-stream.js.map +1 -1
- package/dist/protect-timeshift.d.ts +3 -4
- package/dist/protect-timeshift.js +34 -31
- package/dist/protect-timeshift.js.map +1 -1
- package/dist/protect-types.d.ts +1 -0
- package/dist/protect-types.js +1 -0
- package/dist/protect-types.js.map +1 -1
- package/dist/settings.d.ts +1 -3
- package/dist/settings.js +1 -5
- package/dist/settings.js.map +1 -1
- package/homebridge-ui/public/lib/webUi-featureoptions.mjs +70 -70
- package/homebridge-ui/public/lib/webUi.mjs +7 -7
- package/homebridge-ui/public/ui.mjs +6 -5
- package/package.json +16 -16
|
@@ -249,14 +249,14 @@ export class FfmpegOptions {
|
|
|
249
249
|
//
|
|
250
250
|
// format= Set the pixel formats we want to target for output.
|
|
251
251
|
videoFilters.push("format=" + [...new Set([...this.hwPixelFormat, "yuvj420p"])].join("|"));
|
|
252
|
+
// scale=-2:min(ih\,height) Scale the video to the size that's being requested while respecting aspect ratios and ensuring our final dimensions are
|
|
253
|
+
// a power of two.
|
|
254
|
+
videoFilters.push("scale=-2:min(ih\\," + options.height.toString() + ")");
|
|
252
255
|
// fps=fps= Use the fps filter to provide the frame rate requested by HomeKit. This has better performance characteristics for Protect
|
|
253
256
|
// rather than using "-r". We only need to apply this filter if our input and output frame rates aren't already identical.
|
|
254
257
|
if (options.fps !== options.inputFps) {
|
|
255
258
|
videoFilters.push("fps=fps=" + options.fps.toString());
|
|
256
259
|
}
|
|
257
|
-
// scale=-2:min(ih\,height) Scale the video to the size that's being requested while respecting aspect ratios and ensuring our final dimensions are
|
|
258
|
-
// a power of two.
|
|
259
|
-
videoFilters.push("scale=-2:min(ih\\," + options.height.toString() + ")");
|
|
260
260
|
// Default to the tried-and-true libx264. We use the following options by default:
|
|
261
261
|
//
|
|
262
262
|
// -c:v libx264 Use the excellent libx264 H.264 encoder by default, unless the user explicitly overrides it.
|
|
@@ -274,7 +274,7 @@ export class FfmpegOptions {
|
|
|
274
274
|
// allow encoders some variation in order to maximize quality while honoring bandwidth constraints.
|
|
275
275
|
const encoderOptions = [
|
|
276
276
|
// If the user has specified a video encoder, let's use it instead.
|
|
277
|
-
"-c:v", this.platform.config.videoEncoder
|
|
277
|
+
"-c:v", this.platform.config.videoEncoder,
|
|
278
278
|
"-preset", "veryfast",
|
|
279
279
|
"-profile:v", this.getH264Profile(options.profile),
|
|
280
280
|
"-level:v", this.getH264Level(options.level),
|
|
@@ -349,11 +349,6 @@ export class FfmpegOptions {
|
|
|
349
349
|
//
|
|
350
350
|
// format= Set the pixel formats we want to target for output.
|
|
351
351
|
videoFilters.push("format=" + this.hwPixelFormat.join("|"));
|
|
352
|
-
// fps=fps= Use the fps filter to provide the frame rate requested by HomeKit. This has better performance characteristics for Protect
|
|
353
|
-
// rather than using "-r". We only need to apply this filter if our input and output frame rates aren't already identical.
|
|
354
|
-
if (useFpsFilter) {
|
|
355
|
-
videoFilters.push("fps=fps=" + options.fps.toString());
|
|
356
|
-
}
|
|
357
352
|
// scale=-2:min(ih\,height) Scale the video to the size that's being requested while respecting aspect ratios and ensuring our final dimensions are
|
|
358
353
|
// a power of two.
|
|
359
354
|
videoFilters.push("scale=-2:min(ih\\," + options.height.toString() + ")");
|
|
@@ -361,6 +356,11 @@ export class FfmpegOptions {
|
|
|
361
356
|
if (this.protectCamera.hints.crop) {
|
|
362
357
|
videoFilters.push(this.cropFilter);
|
|
363
358
|
}
|
|
359
|
+
// fps=fps= Use the fps filter to provide the frame rate requested by HomeKit. This has better performance characteristics for Protect
|
|
360
|
+
// rather than using "-r". We only need to apply this filter if our input and output frame rates aren't already identical.
|
|
361
|
+
if (useFpsFilter) {
|
|
362
|
+
videoFilters.push("fps=fps=" + options.fps.toString());
|
|
363
|
+
}
|
|
364
364
|
switch (this.platform.hostSystem) {
|
|
365
365
|
case "macOS.Apple":
|
|
366
366
|
// h264_videotoolbox is the macOS hardware encoder API. We use the following options on Apple Silicon:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-ffmpeg-options.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-options.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,kCAAkC,EAAE,uBAAuB,EAAE,MAAM,gBAAgB,CAAC;AAkB7F,MAAM,OAAO,aAAa;IAEP,aAAa,CAAW;IACxB,GAAG,CAA0B;IAC7B,QAAQ,CAAkB;IAC1B,aAAa,CAAgB;IAE9C,sDAAsD;IACtD,YAAY,aAA4B;QAEtC,IAAI,CAAC,aAAa,GAAG,EAAE,CAAC;QACxB,IAAI,CAAC,GAAG,GAAG,aAAa,CAAC,GAAG,CAAC;QAC7B,IAAI,CAAC,QAAQ,GAAG,aAAa,CAAC,QAAQ,CAAC;QACvC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAC;QAEnC,+CAA+C;QAC/C,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;IAED,uDAAuD;IAC/C,gBAAgB;QAEtB,IAAI,UAAU,GAAG,EAAE,CAAC;QAEpB,wFAAwF;QACxF,MAAM,eAAe,GAAG,GAAW,EAAE;YAEnC,MAAM,UAAU,GAAG,EAAE,CAAC;YAEtB,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;gBAE7C,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAC9B,CAAC;YAED,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;gBAEhD,UAAU,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;YACjC,CAAC;YAED,OAAO,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAClC,CAAC,CAAC;QAEF,sIAAsI;QACtI,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAE7C,mFAAmF;YACnF,6DAA6D;YAC7D,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,WAAqB,EAAW,EAAE;gBAExE,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;oBAEzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qGAAqG,GAAG,KAAK,GAAG,YAAY;wBACzI,kCAAkC,CAAC,CAAC;oBAEtC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAElD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;gBAExC,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAEF,mFAAmF;YACnF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAE,WAAqB,EAAW,EAAE;gBAExE,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC;oBAEjD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qGAAqG,GAAG,KAAK,GAAG,yBAAyB;wBACtJ,kCAAkC,CAAC,CAAC;oBAEtC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAElD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,WAAW,CAAC,CAAC;gBAExC,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAEF,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAEhC,KAAK,aAAa,CAAC;gBACnB,KAAK,aAAa;oBAEhB,qEAAqE;oBACrE,eAAe,CAAC,cAAc,EAAE,CAAC,kBAAkB,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC;oBAEzE,MAAM;gBAER,KAAK,UAAU;oBAEb,uHAAuH;oBACvH,IAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,MAAM,GAAG,uBAAuB,EAAE,CAAC;wBAE/D,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,6HAA6H,EACzI,eAAe,EAAE,EAAE,uBAAuB,CAAC,CAAC;wBAE9C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;wBAClD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC;wBAErD,OAAO,KAAK,CAAC;oBACf,CAAC;oBAED,8JAA8J;oBAC9J,uDAAuD;oBACvD,mDAAmD;oBACnD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAElD,MAAM;gBAER;oBAEE,mGAAmG;oBACnG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;oBAElD,MAAM;YACV,CAAC;QACH,CAAC;QAED,mHAAmH;QACnH,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAEhD,mFAAmF;YACnF,MAAM,eAAe,GAAG,CAAC,KAAa,EAAW,EAAE;gBAEjD,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC;oBAEzD,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,wGAAwG,GAAG,KAAK,GAAG,YAAY;wBAC5I,qCAAqC,CAAC,CAAC;oBAEzC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC;oBAErD,OAAO,KAAK,CAAC;gBACf,CAAC;gBAED,OAAO,IAAI,CAAC;YACd,CAAC,CAAC;YAEF,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAEhC,KAAK,aAAa,CAAC;gBACnB,KAAK,aAAa;oBAEhB,4DAA4D;oBAC5D,eAAe,CAAC,mBAAmB,CAAC,CAAC;oBAErC,gEAAgE;oBAChE,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;wBAE3D,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,8HAA8H,CAAC,CAAC;oBACjJ,CAAC;oBAED,MAAM;gBAER,KAAK,UAAU;oBAEb,4DAA4D;oBAC5D,eAAe,CAAC,cAAc,CAAC,CAAC;oBAEhC,UAAU,GAAG,qEAAqE;wBAChF,qHAAqH,CAAC;oBAExH,0GAA0G;oBAC1G,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;wBAE3C,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;oBACrC,CAAC;oBAED,MAAM;gBAER;oBAEE,0EAA0E;oBAC1E,IAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,CAAC;wBAC7C,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,CAAC,EAAE,CAAC;wBAEzH,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,IAAI,CAAC;wBACjD,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,EAAE,SAAS,CAAC,CAAC;wBAC1C,UAAU,GAAG,wBAAwB,CAAC;oBACxC,CAAC;yBAAM,CAAC;wBAEN,6BAA6B;wBAC7B,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,GAAG,KAAK,CAAC;wBAClD,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,GAAG,KAAK,CAAC;oBACvD,CAAC;oBAED,MAAM;YACV,CAAC;QACH,CAAC;QAED,mBAAmB;QACnB,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,IAAI,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAE7F,IAAI,CAAC,aAAa,CAAC,UAAU,CAAC,0BAA0B,EACtD,uBAAuB,GAAG,eAAe,EAAE,GAAG,UAAU,GAAG,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,GAAG,CAAC,CAAC;QACnH,CAAC;QAED,uEAAuE;QACvE,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,SAAS,CAAC,OAAO,CAAC,aAAa,IAAI,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAEzJ,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,8IAA8I;gBAC1J,8CAA8C,CAAC,CAAC;QACpD,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC;IACtD,CAAC;IAED,4DAA4D;IAC5D,IAAW,YAAY;QAErB,oFAAoF;QACpF,IAAI,cAAc,GAAa,EAAE,CAAC;QAElC,4DAA4D;QAC5D,MAAM,0BAA0B,GAAG,GAAa,EAAE;YAEhD,IAAG,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,YAAY,CAAC,EAAE,CAAC;gBAE9D,gHAAgH;gBAChH,EAAE;gBACF,0DAA0D;gBAC1D,qIAAqI;gBACrI,sFAAsF;gBACtF,uGAAuG;gBACvG,OAAO;oBAEL,SAAS,EAAE,YAAY;oBACvB,cAAc,EAAE,GAAG;oBACnB,UAAU,EAAE,GAAG;oBACf,SAAS,EAAE,GAAG;iBACf,CAAC;YACJ,CAAC;iBAAM,CAAC;gBAEN,OAAO,EAAE,CAAC;YACZ,CAAC;QACH,CAAC,CAAC;QAEF,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEhC,KAAK,aAAa,CAAC;YACnB,KAAK,aAAa;gBAEhB,6EAA6E;gBAC7E,IAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,UAAU,CAAC,KAAK,EAAE,QAAQ,CAAC,EAAE,CAAC;oBAE3D,cAAc,GAAG,0BAA0B,EAAE,CAAC;oBAE9C,MAAM;gBACR,CAAC;gBAED,uEAAuE;gBACvE,EAAE;gBACF,6DAA6D;gBAC7D,gKAAgK;gBAChK,cAAc,GAAG;oBAEf,SAAS,EAAE,QAAQ;oBACnB,cAAc,EAAE,MAAM;iBACvB,CAAC;gBAEF,MAAM;YAER;gBAEE,cAAc,GAAG,0BAA0B,EAAE,CAAC;gBAE9C,MAAM;QACV,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,iDAAiD;IACjD,IAAW,YAAY;QAErB,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,+DAA+D;IAC/D,IAAW,YAAY;QAErB,6DAA6D;QAC7D,IAAI,cAAc,GAAa,EAAE,CAAC;QAElC,+GAA+G;QAC/G,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,gBAAgB,EAAE,CAAC;YAE7C,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAEhC,KAAK,aAAa,CAAC;gBACnB,KAAK,aAAa;oBAEhB,oHAAoH;oBACpH,EAAE;oBACF,wFAAwF;oBACxF,cAAc,GAAG;wBAEf,UAAU,EAAE,cAAc;qBAC3B,CAAC;oBAEF,MAAM;gBAER,KAAK,UAAU;oBAEb,mHAAmH;oBACnH,EAAE;oBACF,mHAAmH;oBACnH,cAAc,GAAG;oBAEf,sBAAsB;qBACvB,CAAC;oBAEF,MAAM;gBAER;oBAEE,uEAAuE;oBACvE,EAAE;oBACF,iGAAiG;oBACjG,uGAAuG;oBACvG,cAAc,GAAG;wBAEf,UAAU,EAAE,KAAK;wBACjB,wBAAwB,EAAE,KAAK;wBAC/B,MAAM,EAAE,UAAU;qBACnB,CAAC;oBAEF,MAAM;YACV,CAAC;QACH,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,iEAAiE;IACjE,IAAW,UAAU;QAEnB,sEAAsE;QACtE,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAElC,OAAO,sCAAsC,CAAC;QAChD,CAAC;QAED,kEAAkE;QAClE,OAAO,OAAO,GAAG;YAEf,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,QAAQ,EAAE;YAC/D,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,EAAE;YAChE,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;YAC3D,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,EAAE;SAC5D,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IACd,CAAC;IAED,2DAA2D;IACnD,0BAA0B,CAAC,OAAuB;QAExD,MAAM,YAAY,GAAG,EAAE,CAAC;QAExB,kDAAkD;QAClD,OAAO,GAAG,MAAM,CAAC,MAAM,CAAC,EAAE,EAAE,EAAE,eAAe,EAAE,IAAI,EAAE,EAAE,OAAO,CAAC,CAAC;QAEhE,uCAAuC;QACvC,EAAE;QACF,kFAAkF;QAClF,YAAY,CAAC,IAAI,CAAC,SAAS,GAAG,CAAE,GAAG,IAAI,GAAG,CAAC,CAAE,GAAG,IAAI,CAAC,aAAa,EAAE,UAAU,CAAE,CAAC,CAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAE/F,yJAAyJ;QACzJ,sJAAsJ;QACtJ,IAAG,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,QAAQ,EAAE,CAAC;YAEpC,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,sJAAsJ;QACtJ,8CAA8C;QAC9C,YAAY,CAAC,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;QAE1E,kFAAkF;QAClF,EAAE;QACF,6HAA6H;QAC7H,0IAA0I;QAC1I,gGAAgG;QAChG,sGAAsG;QACtG,uFAAuF;QACvF,uIAAuI;QACvI,mJAAmJ;QACnJ,+DAA+D;QAC/D,mJAAmJ;QACnJ,wDAAwD;QACxD,+HAA+H;QAC/H,uJAAuJ;QACvJ,iIAAiI;QACjI,MAAM,cAAc,GAAG;YAErB,mEAAmE;YACnE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,IAAI,SAAS;YACtD,SAAS,EAAE,UAAU;YACrB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC;YAClD,UAAU,EAAE,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC;YAC5C,cAAc;YACd,KAAK,EAAE,GAAG;YACV,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;YACpC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;YACtD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG;YAClD,UAAU,EAAE,CAAC,OAAO,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG;SACpH,CAAC;QAEF,kJAAkJ;QAClJ,sJAAsJ;QACtJ,uGAAuG;QACvG,IAAG,OAAO,CAAC,eAAe,EAAE,CAAC;YAE3B,+IAA+I;YAC/I,wEAAwE;YACxE,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACpC,CAAC;aAAM,CAAC;YAEN,mJAAmJ;YACnJ,sJAAsJ;YACtJ,iJAAiJ;YACjJ,yJAAyJ;YACzJ,0BAA0B;YAC1B,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;QAChE,CAAC;QAED,OAAO,cAAc,CAAC;IACxB,CAAC;IAED,oDAAoD;IAC7C,aAAa,CAAC,OAAuB;QAE1C,4FAA4F;QAC5F,OAAO,CAAC,eAAe,GAAG,KAAK,CAAC;QAEhC,uJAAuJ;QACvJ,mJAAmJ;QACnJ,qJAAqJ;QACrJ,qJAAqJ;QACrJ,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEhC,KAAK,UAAU;gBAEb,mJAAmJ;gBACnJ,mGAAmG;gBACnG,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;YAElD;gBAEE,8DAA8D;gBAC9D,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IAED,4DAA4D;IACrD,aAAa,CAAC,OAAuB;QAE1C,iCAAiC;QACjC,IAAG,OAAO,CAAC,eAAe,KAAK,SAAS,EAAE,CAAC;YAEzC,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;QACjC,CAAC;QAED,gDAAgD;QAChD,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAE9B,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACtC,CAAC;QAED,4DAA4D;QAC5D,IAAG,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAEjD,OAAO,IAAI,CAAC,0BAA0B,CAAC,OAAO,CAAC,CAAC;QAClD,CAAC;QAED,+FAA+F;QAC/F,EAAE;QACF,kKAAkK;QAClK,+EAA+E;QAC/E,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,GAAG,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,kCAAkC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhH,yEAAyE;QACzE,MAAM,YAAY,GAAG,OAAO,CAAC,GAAG,KAAK,OAAO,CAAC,QAAQ,CAAC;QAEtD,0BAA0B;QAC1B,MAAM,cAAc,GAAG,EAAE,CAAC;QAC1B,IAAI,YAAY,GAAG,EAAE,CAAC;QAEtB,uCAAuC;QACvC,EAAE;QACF,kFAAkF;QAClF,YAAY,CAAC,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;QAE5D,yJAAyJ;QACzJ,sJAAsJ;QACtJ,IAAG,YAAY,EAAE,CAAC;YAEhB,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,sJAAsJ;QACtJ,8CAA8C;QAC9C,YAAY,CAAC,IAAI,CAAC,oBAAoB,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;QAE1E,iDAAiD;QACjD,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC;YAEjC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;QACrC,CAAC;QAED,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEhC,KAAK,aAAa;gBAEhB,sGAAsG;gBACtG,EAAE;gBACF,iFAAiF;gBACjF,oHAAoH;gBACpH,8JAA8J;gBAC9J,2HAA2H;gBAC3H,oHAAoH;gBACpH,0FAA0F;gBAC1F,2JAA2J;gBAC3J,+IAA+I;gBAC/I,iIAAiI;gBACjI,iFAAiF;gBACjF,4JAA4J;gBAC5J,4EAA4E;gBAC5E,6IAA6I;gBAC7I,kDAAkD;gBAClD,yHAAyH;gBACzH,kIAAkI;gBAClI,cAAc,CAAC,IAAI,CAEjB,MAAM,EAAE,mBAAmB,EAC3B,WAAW,EAAE,GAAG,EAChB,WAAW,EAAE,GAAG,EAChB,QAAQ,EAAE,OAAO,EACjB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAClD,UAAU,EAAE,GAAG,EACf,KAAK,EAAE,GAAG,EACV,cAAc,EACd,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EACpC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,EACtD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG,EAClD,UAAU,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,GAAG,CAChD,CAAC;gBAEF,IAAG,OAAO,CAAC,eAAe,EAAE,CAAC;oBAE3B,mJAAmJ;oBACnJ,uGAAuG;oBACvG,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;gBACpC,CAAC;qBAAM,CAAC;oBAEN,2EAA2E;oBAC3E,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;gBAChE,CAAC;gBAED,OAAO,cAAc,CAAC;YAExB,KAAK,aAAa;gBAEhB,yGAAyG;gBACzG,EAAE;gBACF,iFAAiF;gBACjF,oHAAoH;gBACpH,8JAA8J;gBAC9J,2HAA2H;gBAC3H,oHAAoH;gBACpH,0FAA0F;gBAC1F,2JAA2J;gBAC3J,+IAA+I;gBAC/I,iIAAiI;gBACjI,iFAAiF;gBACjF,4JAA4J;gBAC5J,4EAA4E;gBAC5E,8JAA8J;gBAC9J,iFAAiF;gBACjF,6IAA6I;gBAC7I,kDAAkD;gBAClD,yHAAyH;gBACzH,kIAAkI;gBAClI,OAAO;oBAEL,MAAM,EAAE,mBAAmB;oBAC3B,WAAW,EAAE,GAAG;oBAChB,WAAW,EAAE,GAAG;oBAChB,QAAQ,EAAE,OAAO;oBACjB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC;oBAClD,UAAU,EAAE,GAAG;oBACf,KAAK,EAAE,GAAG;oBACV,cAAc;oBACd,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;oBACpC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG;oBACxC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;oBACtD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG;oBAClD,UAAU,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,GAAG;iBAChD,CAAC;YAEJ,KAAK,UAAU;gBAEb,kHAAkH;gBAClH,EAAE;gBACF,mFAAmF;gBACnF,iFAAiF;gBACjF,4JAA4J;gBAC5J,4EAA4E;gBAC5E,8JAA8J;gBAC9J,sDAAsD;gBACtD,6IAA6I;gBAC7I,kDAAkD;gBAClD,yHAAyH;gBACzH,kIAAkI;gBAClI,OAAO;oBAEL,MAAM,EAAE,cAAc;oBACtB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC;oBACxD,KAAK,EAAE,GAAG;oBACV,cAAc;oBACd,mBAAmB,EAAE,GAAG;oBACxB,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;oBACpC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG;oBACxC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE;oBACtD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG;oBAClD,UAAU,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,GAAG;iBAChD,CAAC;YAEJ;gBAEE,qCAAqC;gBACrC,YAAY,GAAG,EAAE,CAAC;gBAElB,yGAAyG;gBACzG,EAAE;gBACF,+GAA+G;gBAC/G,6GAA6G;gBAC7G,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG;oBAE7B,aAAa;oBACb,0BAA0B,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG;oBAC5D,cAAc,GAAG,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,GAAG,GAAG;iBACjD,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;gBAEb,qJAAqJ;gBACrJ,kJAAkJ;gBAClJ,IAAG,YAAY,EAAE,CAAC;oBAEhB,YAAY,CAAC,IAAI,CAAC,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;gBACzD,CAAC;gBAED,6FAA6F;gBAC7F,EAAE;gBACF,iFAAiF;gBACjF,0FAA0F;gBAC1F,kJAAkJ;gBAClJ,4IAA4I;gBAC5I,iIAAiI;gBACjI,iFAAiF;gBACjF,0HAA0H;gBAC1H,sGAAsG;gBACtG,4JAA4J;gBAC5J,4EAA4E;gBAC5E,6IAA6I;gBAC7I,kDAAkD;gBAClD,yHAAyH;gBACzH,kIAAkI;gBAClI,cAAc,CAAC,IAAI,CAEjB,MAAM,EAAE,UAAU,EAClB,YAAY,EAAE,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,OAAO,CAAC,EAClD,UAAU,EAAE,GAAG,EACf,KAAK,EAAE,GAAG,EACV,cAAc,EACd,iBAAiB,EAAE,QAAQ,EAC3B,mBAAmB,EAAE,IAAI,EACzB,WAAW,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,EACpC,MAAM,EAAE,CAAC,OAAO,CAAC,GAAG,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,QAAQ,EAAE,EACtD,UAAU,EAAE,CAAC,CAAC,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,GAAG,GAAG,EAClD,UAAU,EAAE,kBAAkB,CAAC,QAAQ,EAAE,GAAG,GAAG,CAChD,CAAC;gBAEF,IAAG,OAAO,CAAC,eAAe,EAAE,CAAC;oBAE3B,6IAA6I;oBAC7I,yIAAyI;oBACzI,cAAc,CAAC,IAAI,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC;gBAC/C,CAAC;qBAAM,CAAC;oBAEN,2EAA2E;oBAC3E,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,GAAG,GAAG,CAAC,CAAC;gBAChE,CAAC;gBAED,OAAO,cAAc,CAAC;QAC1B,CAAC;IACH,CAAC;IAED,mGAAmG;IACnG,IAAW,uBAAuB;QAEhC,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;YAEhC,KAAK,UAAU;gBAEb,+JAA+J;gBAC/J,6GAA6G;gBAC7G,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,mBAAmB,EAAE,CAAC,EAAE,OAAO,CAAC,IAAI,IAAI,SAAS,CAAC;YAErH;gBAEE,sEAAsE;gBACtE,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC;QAC7E,CAAC;IACH,CAAC;IAED,8FAA8F;IAC9F,IAAW,mBAAmB;QAE5B,IAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,mBAAmB,EAAE,CAAC;YAEhD,QAAO,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,CAAC;gBAEhC,KAAK,UAAU;oBAEb,6JAA6J;oBAC7J,wJAAwJ;oBACxJ,4DAA4D;oBAC5D,OAAO,IAAI,GAAG,IAAI,CAAC;gBAErB;oBAEE,MAAM;YACV,CAAC;QACH,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,wDAAwD;IAChD,YAAY,CAAC,KAAgB,EAAE,OAAO,GAAG,KAAK;QAEpD,QAAO,KAAK,EAAE,CAAC;YAEb;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;YAEhC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC;QAClC,CAAC;IACH,CAAC;IAED,0DAA0D;IAClD,cAAc,CAAC,OAAoB,EAAE,OAAO,GAAG,KAAK;QAE1D,QAAO,OAAO,EAAE,CAAC;YAEf;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC;YAErC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;YAElC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;YAEjC;gBAEE,OAAO,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC;QACnC,CAAC;IACH,CAAC;CACF"}
|
|
1
|
+
{"version":3,"file":"protect-ffmpeg-options.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-options.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,10 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
1
|
import { ProtectCamera, RtspEntry } from "../devices/index.js";
|
|
4
2
|
import { CameraRecordingConfiguration } from "homebridge";
|
|
5
3
|
import { FfmpegProcess } from "./protect-ffmpeg.js";
|
|
6
4
|
export declare class FfmpegRecordingProcess extends FfmpegProcess {
|
|
7
5
|
private isLoggingErrors;
|
|
8
|
-
|
|
6
|
+
isTimedOut: boolean;
|
|
7
|
+
private recordingConfig;
|
|
9
8
|
constructor(protectCamera: ProtectCamera, recordingConfig: CameraRecordingConfiguration, rtspEntry: RtspEntry, isAudioActive: boolean);
|
|
10
9
|
protected configureProcess(): void;
|
|
11
10
|
protected stopProcess(): void;
|
|
@@ -1,52 +1,48 @@
|
|
|
1
1
|
import { FfmpegProcess } from "./protect-ffmpeg.js";
|
|
2
|
-
import {
|
|
2
|
+
import { PROTECT_HKSV_IDR_INTERVAL } from "../settings.js";
|
|
3
3
|
import { once } from "node:events";
|
|
4
|
+
import { runWithTimeout } from "homebridge-plugin-utils";
|
|
4
5
|
// FFmpeg HomeKit Streaming Video recording process management.
|
|
5
6
|
export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
6
7
|
isLoggingErrors;
|
|
7
|
-
|
|
8
|
+
isTimedOut;
|
|
9
|
+
recordingConfig;
|
|
8
10
|
// Create a new FFmpeg process instance.
|
|
9
11
|
constructor(protectCamera, recordingConfig, rtspEntry, isAudioActive) {
|
|
10
12
|
// Initialize our parent.
|
|
11
13
|
super(protectCamera);
|
|
12
14
|
// We want to log errors when they occur.
|
|
13
15
|
this.isLoggingErrors = true;
|
|
14
|
-
// Initialize our
|
|
15
|
-
this.
|
|
16
|
+
// Initialize our state.
|
|
17
|
+
this.isTimedOut = false;
|
|
18
|
+
// Save our recording configuration.
|
|
19
|
+
this.recordingConfig = recordingConfig;
|
|
20
|
+
// Configure our video parameters for our input:
|
|
21
|
+
//
|
|
16
22
|
// -hide_banner Suppress printing the startup banner in FFmpeg.
|
|
17
23
|
// -nostats Suppress printing progress reports while encoding in FFmpeg.
|
|
18
24
|
// -fflags flags Set the format flags to generate a presentation timestamp if it's missing and discard any corrupt packets rather than exit.
|
|
25
|
+
// -err_detect ignore_err Ignore decoding errors and continue rather than exit.
|
|
19
26
|
// -max_delay 500000 Set an upper limit on how much time FFmpeg can take in demuxing packets.
|
|
20
27
|
// -flags low_delay Tell FFmpeg to optimize for low delay / realtime decoding.
|
|
28
|
+
// -r fps Set the input frame rate for the video stream.
|
|
29
|
+
// -f mp4 Tell FFmpeg that it should expect an MP4-encoded input stream.
|
|
30
|
+
// -i pipe:0 Use standard input to get video data.
|
|
31
|
+
// -ss Fast forward to where HKSV is expecting us to be for a recording event.
|
|
21
32
|
this.commandLineArgs = [
|
|
22
33
|
"-hide_banner",
|
|
23
34
|
"-nostats",
|
|
24
|
-
"-fflags", "+discardcorrupt",
|
|
35
|
+
"-fflags", "+discardcorrupt+flush_packets+genpts+igndts+nobuffer",
|
|
36
|
+
"-err_detect", "ignore_err",
|
|
25
37
|
...protectCamera.stream.ffmpegOptions.videoDecoder,
|
|
26
38
|
"-max_delay", "500000",
|
|
27
|
-
"-flags", "low_delay"
|
|
39
|
+
"-flags", "low_delay",
|
|
40
|
+
"-probesize", (protectCamera.stream.hksv?.timeshift.buffer?.length ?? protectCamera.stream.probesize).toString(),
|
|
41
|
+
"-r", rtspEntry.channel.fps.toString(),
|
|
42
|
+
"-f", "mp4",
|
|
43
|
+
"-i", "pipe:0",
|
|
44
|
+
"-ss", Math.max((protectCamera.stream.hksv?.timeshift.time ?? 0) - recordingConfig.prebufferLength, 0).toString() + "ms"
|
|
28
45
|
];
|
|
29
|
-
const tsBuffer = protectCamera.stream.hksv?.timeshift.buffer ?? null;
|
|
30
|
-
// If we're timeshifting, read from the timeshift buffer if we have anything queued up.
|
|
31
|
-
if (protectCamera.hints.timeshift && protectCamera.stream.hksv?.timeshift.time) {
|
|
32
|
-
// Configure our video parameters for our input:
|
|
33
|
-
//
|
|
34
|
-
// -probesize amount How many bytes should be analyzed for stream information. Use the size of the timeshift buffer if we have it or our defaults.
|
|
35
|
-
// -r fps Set the input frame rate for the video stream.
|
|
36
|
-
// -f mp4 Tell ffmpeg that it should expect an MP4-encoded input stream.
|
|
37
|
-
// -i pipe:0 Use standard input to get video data.
|
|
38
|
-
// -ss Fast forward to where HKSV is expecting us to be for a recording event.
|
|
39
|
-
this.commandLineArgs.push("-probesize", (tsBuffer?.length ?? protectCamera.stream.probesize).toString(), "-r", rtspEntry.channel.fps.toString(), "-f", "mp4", "-i", "pipe:0", "-ss", Math.max((protectCamera.stream.hksv?.timeshift.time ?? PROTECT_HKSV_TIMESHIFT_BUFFER_MAXDURATION) - recordingConfig.prebufferLength, 0).toString() + "ms");
|
|
40
|
-
}
|
|
41
|
-
else {
|
|
42
|
-
// We're not using the timeshift buffer, so let's use the RTSP stream as the input to HKSV.
|
|
43
|
-
//
|
|
44
|
-
// -probesize amount How many bytes should be analyzed for stream information. Use our configured defaults.
|
|
45
|
-
// -r fps Set the input frame rate for the video stream.
|
|
46
|
-
// -rtsp_transport tcp Tell the RTSP stream handler that we're looking for a TCP connection.
|
|
47
|
-
// -i rtspEntry.url RTSPS URL to get our input stream from.
|
|
48
|
-
this.commandLineArgs.push("-probesize", protectCamera.stream.probesize.toString(), "-r", rtspEntry.channel.fps.toString(), "-rtsp_transport", "tcp", "-i", rtspEntry.url);
|
|
49
|
-
}
|
|
50
46
|
// Configure our recording options for the video stream:
|
|
51
47
|
//
|
|
52
48
|
// -map 0:v:0 Selects the first available video track from the stream. Protect actually maps audio
|
|
@@ -55,20 +51,19 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
55
51
|
// Protect changes this in the future.
|
|
56
52
|
// Yes, we included these above as well: they need to be included for every I/O stream to
|
|
57
53
|
// maximize effectiveness it seems.
|
|
58
|
-
// -fps_mode passthrough Pass through the framerate as defined by the Protect stream. This avoids frame duplication.
|
|
59
54
|
// -movflags flags In the generated fMP4 stream: start a new fragment at each keyframe, write a blank MOOV box, and avoid writing absolute offsets.
|
|
60
55
|
// -reset_timestamps Reset timestamps at the beginning of each segment.
|
|
61
|
-
// -
|
|
56
|
+
// -metadata Set the metadata to the name of the camera to distinguish between FFmpeg sessions.
|
|
62
57
|
this.commandLineArgs.push("-map", "0:v:0", ...protectCamera.stream.ffmpegOptions.recordEncoder({
|
|
63
58
|
bitrate: recordingConfig.videoCodec.parameters.bitRate,
|
|
64
59
|
fps: recordingConfig.videoCodec.resolution[2],
|
|
65
60
|
height: recordingConfig.videoCodec.resolution[1],
|
|
66
|
-
idrInterval:
|
|
61
|
+
idrInterval: PROTECT_HKSV_IDR_INTERVAL,
|
|
67
62
|
inputFps: rtspEntry.channel.fps,
|
|
68
63
|
level: recordingConfig.videoCodec.parameters.level,
|
|
69
64
|
profile: recordingConfig.videoCodec.parameters.profile,
|
|
70
65
|
width: recordingConfig.videoCodec.resolution[0]
|
|
71
|
-
}), "-
|
|
66
|
+
}), "-movflags", "frag_keyframe+empty_moov+default_base_moof+omit_tfhd_offset", "-reset_timestamps", "1", "-metadata", "comment=" + protectCamera.accessoryName);
|
|
72
67
|
if (isAudioActive) {
|
|
73
68
|
// Configure the audio portion of the command line. Options we use are:
|
|
74
69
|
//
|
|
@@ -113,19 +108,20 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
113
108
|
// boxes that HAP-NodeJS is ultimately expecting.
|
|
114
109
|
for (;;) {
|
|
115
110
|
let data;
|
|
116
|
-
// The MP4 container format is well-documented and designed around the concept of boxes. A box (or atom as they used to be called)
|
|
111
|
+
// The MP4 container format is well-documented and designed around the concept of boxes. A box (or atom as they used to be called) is at the center of an MP4
|
|
117
112
|
// container. It's composed of an 8-byte header, followed by the data payload it carries.
|
|
118
113
|
// No existing header, let's start a new box.
|
|
119
114
|
if (!header.length) {
|
|
120
115
|
// Grab the header. The first four bytes represents the length of the entire box. Second four bytes represent the box type.
|
|
121
116
|
header = buffer.slice(0, 8);
|
|
122
|
-
// Now we retrieve the length of the box
|
|
123
|
-
dataLength = header.readUInt32BE(0)
|
|
117
|
+
// Now we retrieve the length of the box.
|
|
118
|
+
dataLength = header.readUInt32BE(0);
|
|
124
119
|
// Get the type of the box. This is always a string and has a funky history to it that makes for an interesting read!
|
|
125
120
|
type = header.slice(4).toString();
|
|
126
121
|
// Finally, we get the data portion of the box.
|
|
127
|
-
data = buffer.slice(8, dataLength
|
|
128
|
-
offset
|
|
122
|
+
data = buffer.slice(8, dataLength);
|
|
123
|
+
// Mark our data offset so we account for the length of the data header and subtract it from the overall length to capture just the data portion.
|
|
124
|
+
dataLength -= offset = 8;
|
|
129
125
|
}
|
|
130
126
|
else {
|
|
131
127
|
// Grab the data from our buffer.
|
|
@@ -138,8 +134,7 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
138
134
|
break;
|
|
139
135
|
}
|
|
140
136
|
// Add it to our queue to be eventually pushed out through our generator function.
|
|
141
|
-
this.
|
|
142
|
-
this.emit("mp4box");
|
|
137
|
+
this.emit("mp4box", { data: data, header: header, length: dataLength, type: type });
|
|
143
138
|
// Prepare to start a new box for the next buffer that we will be processing.
|
|
144
139
|
data = Buffer.alloc(0);
|
|
145
140
|
header = Buffer.alloc(0);
|
|
@@ -165,7 +160,6 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
165
160
|
super.stopProcess();
|
|
166
161
|
// Ensure that we clear out of our segment generator by guaranteeing an exit path.
|
|
167
162
|
this.isEnded = true;
|
|
168
|
-
this.emit("ffmpegStarted");
|
|
169
163
|
this.emit("mp4box");
|
|
170
164
|
}
|
|
171
165
|
// Stop an FFmpeg process and cleanup.
|
|
@@ -184,17 +178,20 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
184
178
|
if (!this.isLoggingErrors) {
|
|
185
179
|
return;
|
|
186
180
|
}
|
|
187
|
-
// Known HKSV-related errors due to occasional inconsistencies
|
|
181
|
+
// Known HKSV-related errors due to occasional inconsistencies that are occasionally produced by the Protect livestream API.
|
|
188
182
|
const ffmpegKnownHksvError = new RegExp([
|
|
189
|
-
"(
|
|
190
|
-
"(
|
|
183
|
+
"(Cannot determine format of input stream 0:0 after EOF)",
|
|
184
|
+
"(Could not write header \\(incorrect codec parameters \\?\\): Broken pipe)",
|
|
191
185
|
"(Could not write header for output file #0)",
|
|
192
|
-
"(
|
|
186
|
+
"(Error closing file: Broken pipe)",
|
|
187
|
+
"(Error splitting the input into NAL units\\.)",
|
|
188
|
+
"(Invalid data found when processing input)",
|
|
189
|
+
"(moov atom not found)"
|
|
193
190
|
].join("|"));
|
|
194
191
|
// See if we know about this error.
|
|
195
192
|
if (this.stderrLog.some(x => ffmpegKnownHksvError.test(x))) {
|
|
196
193
|
this.log.error("FFmpeg ended unexpectedly due to issues processing the media stream provided by the UniFi Protect livestream API. " +
|
|
197
|
-
"This error can be safely ignored -
|
|
194
|
+
"This error can be safely ignored - it will occur occasionally.");
|
|
198
195
|
return;
|
|
199
196
|
}
|
|
200
197
|
// Otherwise, revert to our default logging in our parent.
|
|
@@ -205,33 +202,30 @@ export class FfmpegRecordingProcess extends FfmpegProcess {
|
|
|
205
202
|
let segment = [];
|
|
206
203
|
// Loop forever, generating either FTYP/MOOV box pairs or MOOF/MDAT box pairs for HomeKit Secure Video.
|
|
207
204
|
for (;;) {
|
|
205
|
+
// Segments are produced by FFmpeg according to our specified IDR interval. If we don't see a segment emitted within that timeframe, we have a failsafe to
|
|
206
|
+
// guarantee we are never waiting for too long for FFmpeg to return something or error out.
|
|
207
|
+
// eslint-disable-next-line no-await-in-loop
|
|
208
|
+
const box = await runWithTimeout(once(this, "mp4box"), /* (2000 * PROTECT_HKSV_IDR_INTERVAL) + 500 */ 5000);
|
|
208
209
|
// FFmpeg has finished it's output - we're done.
|
|
209
210
|
if (this.isEnded) {
|
|
210
211
|
return;
|
|
211
212
|
}
|
|
212
|
-
// If the buffer is empty, wait for our FFmpeg process to produce more boxes.
|
|
213
|
-
if (!this.recordingBuffer.length) {
|
|
214
|
-
// eslint-disable-next-line no-await-in-loop
|
|
215
|
-
await once(this, "mp4box");
|
|
216
|
-
}
|
|
217
|
-
// Grab the next fMP4 box from our buffer.
|
|
218
|
-
const box = this.recordingBuffer.shift();
|
|
219
|
-
// No fMP4 box, let's keep trying.
|
|
220
213
|
if (!box) {
|
|
221
|
-
|
|
214
|
+
this.isTimedOut = true;
|
|
215
|
+
return;
|
|
222
216
|
}
|
|
223
217
|
// Queue up this fMP4 box to send back to HomeKit.
|
|
224
|
-
segment.push(box.header, box.data);
|
|
218
|
+
segment.push(box[0].header, box[0].data);
|
|
225
219
|
// What we want to send are two types of complete segments, made up of multiple MP4 boxes:
|
|
226
220
|
//
|
|
227
221
|
// - a complete MOOV box, usually with an accompanying FTYP box, that's sent at the very beginning of any valid fMP4 stream. HomeKit Secure Video looks for this
|
|
228
222
|
// before anything else.
|
|
229
223
|
//
|
|
230
|
-
// - a complete MOOF/MDAT pair. MOOF describes the sample locations and their sizes and MDAT contains the actual audio and video data related to that segment.
|
|
224
|
+
// - a complete MOOF/MDAT pair. MOOF describes the sample locations and their sizes and MDAT contains the actual audio and video data related to that segment. Think
|
|
231
225
|
// of MOOF as the audio/video data "header", and MDAT as the "payload".
|
|
232
226
|
//
|
|
233
227
|
// Once we see these, we combine all the segments in our queue to send back to HomeKit.
|
|
234
|
-
if ((box.type === "moov") || (box.type === "mdat")) {
|
|
228
|
+
if ((box[0].type === "moov") || (box[0].type === "mdat")) {
|
|
235
229
|
yield Buffer.concat(segment);
|
|
236
230
|
segment = [];
|
|
237
231
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-ffmpeg-record.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-record.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AACpD,OAAO,EAAE,
|
|
1
|
+
{"version":3,"file":"protect-ffmpeg-record.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-record.ts"],"names":[],"mappings":"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"}
|
|
@@ -17,9 +17,9 @@ export class FfmpegStreamingProcess extends FfmpegProcess {
|
|
|
17
17
|
this.createSocket(returnPort);
|
|
18
18
|
}
|
|
19
19
|
// Start it up, with appropriate error handling.
|
|
20
|
-
this.start(commandLineArgs, callback,
|
|
20
|
+
this.start(commandLineArgs, callback, (errorMessage) => {
|
|
21
21
|
// Stop the stream.
|
|
22
|
-
|
|
22
|
+
this.delegate.stopStream(this.sessionId);
|
|
23
23
|
// Let homebridge know what happened and stop the stream if we've already started.
|
|
24
24
|
if (!this.isStarted && this.callback) {
|
|
25
25
|
this.callback(new Error(errorMessage));
|
|
@@ -28,7 +28,7 @@ export class FfmpegStreamingProcess extends FfmpegProcess {
|
|
|
28
28
|
}
|
|
29
29
|
// Tell Homebridge to forcibly stop the streaming session.
|
|
30
30
|
this.delegate.controller.forceStopStreamingSession(this.sessionId);
|
|
31
|
-
|
|
31
|
+
this.delegate.stopStream(this.sessionId);
|
|
32
32
|
});
|
|
33
33
|
}
|
|
34
34
|
// Create the port for FFmpeg to send data through.
|
|
@@ -73,12 +73,20 @@ export class FfmpegStreamingProcess extends FfmpegProcess {
|
|
|
73
73
|
logFfmpegError(exitCode, signal) {
|
|
74
74
|
// We want to process known streaming-related errors due to the performance and latency tweaks we've made to the FFmpeg command line. In some cases we inform the
|
|
75
75
|
// user and take no action, in others, we tune our own internal parameters.
|
|
76
|
-
//
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
"
|
|
81
|
-
|
|
76
|
+
// We're using API-based livestreaming. Be attentive to the unique errors they may present.
|
|
77
|
+
if (this.delegate.protectCamera.hints.apiStreaming && this.delegate.hksv?.isRecording) {
|
|
78
|
+
// Test for known errors due to occasional inconsistencies in the Protect livestream API.
|
|
79
|
+
const timeshiftLivestreamRegex = new RegExp([
|
|
80
|
+
"(Cannot determine format of input stream 0:0 after EOF)",
|
|
81
|
+
"(Finishing stream without any data written to it)",
|
|
82
|
+
"(could not find corresponding trex)",
|
|
83
|
+
"(moov atom not found)"
|
|
84
|
+
].join("|"));
|
|
85
|
+
if (this.stderrLog.some(logEntry => timeshiftLivestreamRegex.test(logEntry))) {
|
|
86
|
+
this.log.error("FFmpeg ended unexpectedly due to issues processing the media stream provided by the UniFi Protect livestream API. " +
|
|
87
|
+
"This error can be safely ignored - it will occur occasionally.");
|
|
88
|
+
return;
|
|
89
|
+
}
|
|
82
90
|
}
|
|
83
91
|
// Test for probesize errors.
|
|
84
92
|
const probesizeRegex = new RegExp("not enough frames to estimate rate; consider increasing probesize");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-ffmpeg-stream.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-stream.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAE1C,uCAAuC;AACvC,MAAM,OAAO,sBAAuB,SAAQ,aAAa;IAE/C,QAAQ,CAA2B;IACnC,SAAS,CAAS;IAClB,aAAa,CAAkB;IAEvC,wCAAwC;IACxC,YAAY,QAAkC,EAAE,SAAiB,EAAE,eAAyB,EAAE,UAAqD,EACjJ,QAAgC;QAEhC,yBAAyB;QACzB,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,CAAC;QAE9B,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;QACzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAE3B,qHAAqH;QACrH,kGAAkG;QAClG,IAAG,UAAU,EAAE,CAAC;YAEd,IAAI,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC;QAED,gDAAgD;QAChD,IAAI,CAAC,KAAK,CAAC,eAAe,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"protect-ffmpeg-stream.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg-stream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,3 @@
|
|
|
1
|
-
/// <reference types="node" />
|
|
2
|
-
/// <reference types="node" />
|
|
3
|
-
/// <reference types="node" />
|
|
4
|
-
/// <reference types="node" />
|
|
5
1
|
import { ChildProcessWithoutNullStreams } from "node:child_process";
|
|
6
2
|
import { Readable, Writable } from "node:stream";
|
|
7
3
|
import { EventEmitter } from "node:events";
|
|
@@ -28,8 +24,8 @@ export declare class FfmpegProcess extends EventEmitter {
|
|
|
28
24
|
protected stderrLog: string[];
|
|
29
25
|
constructor(protectCamera: ProtectCamera, commandLineArgs?: string[], callback?: StreamRequestCallback);
|
|
30
26
|
protected prepareProcess(commandLineArgs?: string[], callback?: StreamRequestCallback): void;
|
|
31
|
-
protected start(commandLineArgs?: string[], callback?: StreamRequestCallback, errorHandler?: (errorMessage: string) => Promise<void>): void;
|
|
32
|
-
protected configureProcess(errorHandler?: (errorMessage: string) => Promise<void>): void;
|
|
27
|
+
protected start(commandLineArgs?: string[], callback?: StreamRequestCallback, errorHandler?: (errorMessage: string) => Promise<void> | void): void;
|
|
28
|
+
protected configureProcess(errorHandler?: (errorMessage: string) => Promise<void> | void): void;
|
|
33
29
|
protected stopProcess(): void;
|
|
34
30
|
stop(): void;
|
|
35
31
|
protected logFfmpegError(exitCode: number, signal: NodeJS.Signals): void;
|
|
@@ -129,7 +129,6 @@ export class FfmpegProcess extends EventEmitter {
|
|
|
129
129
|
this.isStarted = true;
|
|
130
130
|
this.isEnded = false;
|
|
131
131
|
this.log.debug("Received the first frame.");
|
|
132
|
-
this.emit("ffmpegStarted");
|
|
133
132
|
// Always remember to execute the callback once we're setup to let homebridge know we're streaming.
|
|
134
133
|
if (this.callback) {
|
|
135
134
|
this.callback();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protect-ffmpeg.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"protect-ffmpeg.js","sourceRoot":"","sources":["../../src/ffmpeg/protect-ffmpeg.ts"],"names":[],"mappings":"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"}
|
package/dist/protect-events.d.ts
CHANGED