homebridge-unifi-protect 5.3.0 → 5.3.4

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.
@@ -144,8 +144,8 @@ class ProtectNvrEvents {
144
144
  }
145
145
  // It's a motion event - process it accordingly.
146
146
  if (payload.isMotionDetected) {
147
- // We only want to process the motion event if we have the right payload, and either HKSV is enabled, or
148
- // HKSV is disabled and we have smart motion events disabled since We handle those elsewhere.
147
+ // We only want to process the motion event if we have the right payload, and either HKSV recording is enabled, or
148
+ // HKSV recording is disabled and we have smart motion events disabled since We handle those elsewhere.
149
149
  if (payload.lastMotion &&
150
150
  (((_a = protectCamera.stream.hksv) === null || _a === void 0 ? void 0 : _a.isRecording) || (!((_b = protectCamera.stream.hksv) === null || _b === void 0 ? void 0 : _b.isRecording) && !protectCamera.smartDetectTypes.length)) &&
151
151
  this.nvr.optionEnabled(device, "Motion.NvrEvents", true)) {
@@ -353,7 +353,7 @@ class ProtectNvrEvents {
353
353
  }
354
354
  // Motion event delivery to HomeKit.
355
355
  motionEventDelivery(accessory, motionService, detectedObjects = []) {
356
- var _a, _b, _c, _d;
356
+ var _a, _b, _c, _d, _e;
357
357
  const device = accessory.context.device;
358
358
  // Lookup the ProtectCamera instance associated with this accessory.
359
359
  const protectCamera = this.nvr.configuredDevices[accessory.UUID];
@@ -382,7 +382,7 @@ class ProtectNvrEvents {
382
382
  (_c = this.nvr.mqtt) === null || _c === void 0 ? void 0 : _c.publish(accessory, "motion", "true");
383
383
  // Log the event, if configured to do so.
384
384
  if (this.nvr.optionEnabled(device, "Log.Motion", false)) {
385
- this.log.info("%s: Motion detected%s.", this.nvrApi.getFullName(device), detectedObjects.length ? ": " + detectedObjects.join(", ") : "");
385
+ this.log.info("%s: Motion detected%s.", this.nvrApi.getFullName(device), (!((_d = protectCamera.stream.hksv) === null || _d === void 0 ? void 0 : _d.isRecording) && detectedObjects.length) ? ": " + detectedObjects.join(", ") : "");
386
386
  }
387
387
  }
388
388
  // Trigger smart motion contact sensors, if configured.
@@ -392,28 +392,24 @@ class ProtectNvrEvents {
392
392
  contactService.updateCharacteristic(this.hap.Characteristic.ContactSensorState, true);
393
393
  }
394
394
  // Publish the smart motion event to MQTT, if the user has configured it.
395
- (_d = this.nvr.mqtt) === null || _d === void 0 ? void 0 : _d.publish(accessory, "motion/smart/" + detectedObject, "true");
395
+ (_e = this.nvr.mqtt) === null || _e === void 0 ? void 0 : _e.publish(accessory, "motion/smart/" + detectedObject, "true");
396
396
  }
397
- // Reset our motion event after motionDuration.
397
+ // Reset our motion event after motionDuration if we don't already have a reset timer inflight.
398
398
  if (!this.eventTimers[device.mac]) {
399
399
  this.eventTimers[device.mac] = setTimeout(() => {
400
- var _a, _b;
401
- // Reset the motion sensor, if it's been triggered.
402
- if (!detectedObjects.length ||
403
- (!((_a = protectCamera.stream.hksv) === null || _a === void 0 ? void 0 : _a.isRecording) && detectedObjects.length && detectedObjects.filter(x => protectCamera.smartDetectTypes.includes(x)).length)) {
404
- const thisMotionService = accessory.getService(this.hap.Service.MotionSensor);
405
- if (thisMotionService) {
406
- thisMotionService.updateCharacteristic(this.hap.Characteristic.MotionDetected, false);
407
- // Check to see if we have a motion trigger switch configured. If we do, update it.
408
- const thisTriggerService = accessory.getServiceById(this.hap.Service.Switch, protect_accessory_1.PROTECT_SWITCH_MOTION_TRIGGER);
409
- if (thisTriggerService) {
410
- thisTriggerService.updateCharacteristic(this.hap.Characteristic.On, false);
411
- }
412
- this.debug("%s: Resetting motion event.", this.nvrApi.getFullName(device));
400
+ var _a;
401
+ const thisMotionService = accessory.getService(this.hap.Service.MotionSensor);
402
+ if (thisMotionService) {
403
+ thisMotionService.updateCharacteristic(this.hap.Characteristic.MotionDetected, false);
404
+ // Check to see if we have a motion trigger switch configured. If we do, update it.
405
+ const thisTriggerService = accessory.getServiceById(this.hap.Service.Switch, protect_accessory_1.PROTECT_SWITCH_MOTION_TRIGGER);
406
+ if (thisTriggerService) {
407
+ thisTriggerService.updateCharacteristic(this.hap.Characteristic.On, false);
413
408
  }
414
- // Publish to MQTT, if the user has configured it.
415
- (_b = this.nvr.mqtt) === null || _b === void 0 ? void 0 : _b.publish(accessory, "motion", "false");
409
+ this.debug("%s: Resetting motion event.", this.nvrApi.getFullName(device));
416
410
  }
411
+ // Publish to MQTT, if the user has configured it.
412
+ (_a = this.nvr.mqtt) === null || _a === void 0 ? void 0 : _a.publish(accessory, "motion", "false");
417
413
  // Delete the timer from our motion event tracker.
418
414
  delete this.eventTimers[device.mac];
419
415
  }, this.motionDuration * 1000);
@@ -1 +1 @@
1
- {"version":3,"file":"protect-nvr-events.js","sourceRoot":"","sources":["../src/protect-nvr-events.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protect-nvr-events.js","sourceRoot":"","sources":["../src/protect-nvr-events.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.ProtectRecordingDelegate = void 0;
4
- const protect_ffmpeg_1 = require("./protect-ffmpeg");
4
+ const protect_ffmpeg_record_1 = require("./protect-ffmpeg-record");
5
5
  const protect_timeshift_1 = require("./protect-timeshift");
6
6
  // Camera recording delegate implementation for Protect.
7
7
  class ProtectRecordingDelegate {
@@ -9,7 +9,7 @@ class ProtectRecordingDelegate {
9
9
  var _a;
10
10
  this.accessory = protectCamera.accessory;
11
11
  this.api = protectCamera.api;
12
- this.timeshift = new protect_timeshift_1.ProtectTimeshiftBuffer(protectCamera);
12
+ this.hap = protectCamera.api.hap;
13
13
  this.debug = protectCamera.platform.debug.bind(protectCamera.platform);
14
14
  this.ffmpegStream = null;
15
15
  this.isInitialized = false;
@@ -19,12 +19,14 @@ class ProtectRecordingDelegate {
19
19
  this.nvr = protectCamera.nvr;
20
20
  this.protectCamera = protectCamera;
21
21
  this.maxRecordingDuration = parseInt((_a = this.nvr.optionGet(this.accessory.context.device, "Video.HKSV.Recording.MaxDuration")) !== null && _a !== void 0 ? _a : "0");
22
- this.recordedSegments = 0;
22
+ this.transmittedSegments = 0;
23
23
  this.rtspEntry = null;
24
+ this.timeshift = new protect_timeshift_1.ProtectTimeshiftBuffer(protectCamera);
24
25
  this.transmitListener = null;
25
26
  }
26
27
  // Process HomeKit requests to activate or deactivate HKSV recording capabilities for a camera.
27
28
  async updateRecordingActive(active) {
29
+ var _a;
28
30
  // If we are no longer recording, stop the livestream.
29
31
  if (!active) {
30
32
  this.timeshift.stop();
@@ -32,7 +34,12 @@ class ProtectRecordingDelegate {
32
34
  if (this.isRecording !== active) {
33
35
  this.log.info("%s: Disabling HomeKit Secure Video event recording.", this.name());
34
36
  }
37
+ // Disable recording.
35
38
  this._isRecording = active;
39
+ // Turn off any potential inflight motion detection. Strictly speaking, this shouldn't be needed since any inflight
40
+ // motion sensor events will clear themselves. That said, we play it safe just the same.
41
+ (_a = this.accessory.getService(this.hap.Service.MotionSensor)) === null || _a === void 0 ? void 0 : _a.updateCharacteristic(this.hap.Characteristic.MotionDetected, false);
42
+ // We're done.
36
43
  return;
37
44
  }
38
45
  // We have no recording configuration available yet. Set our desired state and we're done.
@@ -93,29 +100,25 @@ class ProtectRecordingDelegate {
93
100
  // Handle the actual recording stream request.
94
101
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
95
102
  async *handleRecordingStreamRequest(streamId) {
96
- // If we've explicitly disabled HKSV recording, we're done right now.
97
- if (!this.accessory.context.hksvRecording) {
98
- const streamHeader = await this.timeshift.getStreamHeader();
99
- if (streamHeader) {
100
- yield { data: streamHeader, isLast: true };
101
- return;
102
- }
103
- // We should never get to this point, but in case we do, this is a failsafe to ensure that no video
104
- // recording can ever take place if we've disabled it through the HKSV recording switch accessory.
105
- // It will generate a warning in Homebridge that can be ignored, but it will ensure nothing can be recorded.
106
- yield { data: Buffer.alloc(0), isLast: true };
107
- return;
108
- }
109
- // Start transmitting our timeshift buffer and process it through FFmpeg.
110
- if (!this.startTransmitting() || !this.ffmpegStream) {
111
- // Something went wrong, so we gracefully tell HomeKit we have no packets to transmit and return.
103
+ var _a, _b;
104
+ // If we've explicitly disabled HKSV recording, we're done right now. Otherwise, start transmitting our timeshift
105
+ // buffer and process it through FFmpeg.
106
+ if (!this.accessory.context.hksvRecording || !this.startTransmitting() || !this.ffmpegStream) {
107
+ // Stop transmitting, if needed. If HKSV recording has been disabled explicitly, it should never start in the first place.
112
108
  this.stopTransmitting();
113
- yield { data: Buffer.alloc(0), isLast: true };
109
+ // Something's gone wrong, or we've disabled HKSV recording. In either event, we send an fMP4 stream header
110
+ // back to HKSV and exit as cleanly as we can. If we can't get the stream header, we still send an empty segment
111
+ // to HKSV - this will still generate a warning in Homebridge that can be ignored.
112
+ const streamHeader = (_a = (await this.timeshift.getStreamHeader())) !== null && _a !== void 0 ? _a : Buffer.alloc(0);
113
+ yield { data: streamHeader, isLast: true };
114
114
  return;
115
115
  }
116
- for await (const segment of this.ffmpegStream.generator()) {
117
- let isLastSegment = false;
118
- // If we've stopped transmitting - make sure we don't send anything else.
116
+ let isLastSegment = false;
117
+ let segmentCount = 0;
118
+ // Process our FFmpeg-generated segments and send them back to HKSV.
119
+ for await (const segment of this.ffmpegStream.segmentGenerator()) {
120
+ isLastSegment = false;
121
+ // If we've stopped transmitting, we're done.
119
122
  if (!this.timeshift.isTransmitting) {
120
123
  return;
121
124
  }
@@ -124,17 +127,38 @@ class ProtectRecordingDelegate {
124
127
  continue;
125
128
  }
126
129
  // If we've exceeded a user-configured maximum recording duration, let HomeKit know we're stopping.
127
- if (this.maxRecordingDuration && ((this.recordedSegments * this.timeshift.segmentLength) / 1000) > this.maxRecordingDuration) {
130
+ if (this.maxRecordingDuration && ((this.transmittedSegments * this.timeshift.segmentLength) / 1000) > this.maxRecordingDuration) {
128
131
  isLastSegment = true;
129
132
  }
133
+ // Send HKSV the segment.
130
134
  yield {
131
135
  data: segment,
132
136
  isLast: isLastSegment
133
137
  };
138
+ // Keep track of how many segments we've sent to HKSV.
139
+ segmentCount++;
140
+ // If we've sent the last segment, we're done.
134
141
  if (isLastSegment) {
135
142
  return;
136
143
  }
137
144
  }
145
+ // If we're done transmitting, we're done returning segments to HKSV.
146
+ if (!this.timeshift.isTransmitting) {
147
+ return;
148
+ }
149
+ // Something's gone wrong and we've sent HKSV no segments. Let's send an fMP4 stream header back to HKSV and exit
150
+ // as cleanly as we can. If we can't get the stream header, we send an empty segment to HKSV - this will still
151
+ //generate a warning in Homebridge that can be ignored.
152
+ if (!segmentCount) {
153
+ const streamHeader = (_b = (await this.timeshift.getStreamHeader())) !== null && _b !== void 0 ? _b : Buffer.alloc(0);
154
+ yield { data: streamHeader, isLast: true };
155
+ return;
156
+ }
157
+ // Something likely happened to FFmpeg and we didn't send out a final segment. Tell HKSV we're really done.
158
+ if (!isLastSegment) {
159
+ yield { data: Buffer.alloc(0), isLast: true };
160
+ return;
161
+ }
138
162
  }
139
163
  // Receive an acknowledgement from HomeKit that it's seen an end-of-stream packet from us.
140
164
  // eslint-disable-next-line @typescript-eslint/no-unused-vars
@@ -168,10 +192,10 @@ class ProtectRecordingDelegate {
168
192
  // fMP4 packets. We treat this the same was a DVR works where you can pause live television, but it continues to
169
193
  // buffer what's being broadcast until you're ready to watch it. This is the same idea.
170
194
  // Keep track of how many fMP4 segments we are feeding FFmpeg.
171
- this.recordedSegments = 0;
195
+ this.transmittedSegments = 0;
172
196
  // Check to see if the user has audio enabled or disabled for recordings.
173
197
  const isAudioActive = ((_a = this.protectCamera.stream.controller.recordingManagement) === null || _a === void 0 ? void 0 : _a.recordingManagementService.getCharacteristic(this.api.hap.Characteristic.RecordingAudioActive).value) === 1 ? true : false;
174
- this.ffmpegStream = new protect_ffmpeg_1.FfmpegRecordingProcess(this.protectCamera, this.recordingConfig, isAudioActive);
198
+ this.ffmpegStream = new protect_ffmpeg_record_1.FfmpegRecordingProcess(this.protectCamera, this.recordingConfig, isAudioActive);
175
199
  // Start the livestream.
176
200
  const timeshiftedSeconds = this.timeshift.length / 1000;
177
201
  // Let the timeshift buffer know it's time to transmit and continue timeshifting.
@@ -181,19 +205,27 @@ class ProtectRecordingDelegate {
181
205
  // Listen in for events from the timeshift buffer and feed FFmpeg. This looks simple, conceptually,
182
206
  // but there's a lot going on here.
183
207
  this.transmitListener = (segment) => {
184
- var _a, _b;
185
- (_b = (_a = this.ffmpegStream) === null || _a === void 0 ? void 0 : _a.stdin) === null || _b === void 0 ? void 0 : _b.write(segment);
208
+ var _a, _b, _c, _d, _e, _f;
186
209
  // We don't want the fMP4 ftyp or moov boxes accounted for in our recording statistics so
187
210
  // let's filter them out.
188
211
  if (!seenFtyp && this.timeshift.isFtyp(segment)) {
189
212
  seenFtyp = true;
213
+ (_b = (_a = this.ffmpegStream) === null || _a === void 0 ? void 0 : _a.stdin) === null || _b === void 0 ? void 0 : _b.write(segment);
190
214
  return;
191
215
  }
192
216
  if (!seenMoov && this.timeshift.isMoov(segment)) {
193
217
  seenMoov = true;
218
+ (_d = (_c = this.ffmpegStream) === null || _c === void 0 ? void 0 : _c.stdin) === null || _d === void 0 ? void 0 : _d.write(segment);
219
+ return;
220
+ }
221
+ // We don't want to send the ftyp or moov boxes more than once - FFmpeg will get confused if you do, plus
222
+ // it's wrong and you should only send the fMP4 stream header information once.
223
+ if (this.timeshift.isFtyp(segment) || this.timeshift.isMoov(segment)) {
194
224
  return;
195
225
  }
196
- this.recordedSegments++;
226
+ // Send the segment to FFmpeg for processing and update our statistics.
227
+ (_f = (_e = this.ffmpegStream) === null || _e === void 0 ? void 0 : _e.stdin) === null || _f === void 0 ? void 0 : _f.write(segment);
228
+ this.transmittedSegments++;
197
229
  };
198
230
  this.timeshift.on("segment", this.transmitListener);
199
231
  // Inform the user.
@@ -215,7 +247,9 @@ class ProtectRecordingDelegate {
215
247
  }
216
248
  // Inform the user.
217
249
  if (this.accessory.context.hksvRecording) {
218
- this.log.info("%s: HomeKit Secure Video has recorded a %s second motion event.", this.name(), Math.round((this.recordedSegments * this.timeshift.segmentLength) / 1000));
250
+ // Calculate approximately how many seconds we've recorded.
251
+ const recordedSeconds = (this.transmittedSegments * this.timeshift.segmentLength) / 1000;
252
+ this.log.info("%s: HomeKit Secure Video has recorded a %s second motion event.", this.name(), recordedSeconds < 1 ? recordedSeconds : Math.round(recordedSeconds));
219
253
  }
220
254
  // If we have a reason for stopping defined, and it's noteworthy, inform the user.
221
255
  let reasonDescription;
@@ -1 +1 @@
1
- {"version":3,"file":"protect-record.js","sourceRoot":"","sources":["../src/protect-record.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"protect-record.js","sourceRoot":"","sources":["../src/protect-record.ts"],"names":[],"mappings":"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"}
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
6
6
  exports.ProtectStreamingDelegate = void 0;
7
7
  const unifi_protect_1 = require("unifi-protect");
8
8
  const settings_1 = require("./settings");
9
- const protect_ffmpeg_1 = require("./protect-ffmpeg");
9
+ const protect_ffmpeg_stream_1 = require("./protect-ffmpeg-stream");
10
10
  const protect_record_1 = require("./protect-record");
11
11
  const protect_rtp_1 = require("./protect-rtp");
12
12
  const ws_1 = __importDefault(require("ws"));
@@ -32,6 +32,8 @@ class ProtectStreamingDelegate {
32
32
  this.rtspEntry = null;
33
33
  this.savedBitrate = 0;
34
34
  this.snapshotCache = {};
35
+ this.verboseFfmpeg = false;
36
+ this.verboseFfmpegTimer = null;
35
37
  this.videoEncoder = this.config.videoEncoder || "libx264";
36
38
  this.videoProcessor = this.config.videoProcessor || ffmpeg_for_homebridge_1.default || "ffmpeg";
37
39
  // Setup for HKSV, if enabled.
@@ -141,7 +143,7 @@ class ProtectStreamingDelegate {
141
143
  // Check if audio support is enabled.
142
144
  const isAudioEnabled = this.protectCamera.nvr.optionEnabled(cameraConfig, "Audio", true, request.targetAddress);
143
145
  // We need to check for AAC support because it's going to determine whether we support audio.
144
- const hasLibFdk = isAudioEnabled && (await protect_ffmpeg_1.FfmpegStreamingProcess.codecEnabled(this.videoProcessor, "libfdk_aac", this.log));
146
+ const hasLibFdk = isAudioEnabled && (await protect_ffmpeg_stream_1.FfmpegStreamingProcess.codecEnabled(this.videoProcessor, "libfdk_aac", this.log));
145
147
  // Setup our audio plumbing.
146
148
  const audioIncomingRtcpPort = (await (0, camera_utils_1.reservePorts)({ count: 1 }))[0];
147
149
  const audioIncomingPort = (hasLibFdk && this.protectCamera.twoWayAudio) ? (await (0, camera_utils_1.reservePorts)({ count: 1 }))[0] : -1;
@@ -211,7 +213,7 @@ class ProtectStreamingDelegate {
211
213
  }
212
214
  // Launch the Protect video (and audio) stream.
213
215
  async startStream(request, callback) {
214
- var _a, _b, _c, _d, _e, _f;
216
+ var _a, _b, _c, _d, _e;
215
217
  const cameraConfig = this.protectCamera.accessory.context.device;
216
218
  const sessionInfo = this.pendingSessions[request.sessionID];
217
219
  const sdpIpVersion = sessionInfo.addressVersion === "ipv6" ? "IP6 " : "IP4";
@@ -355,14 +357,14 @@ class ProtectStreamingDelegate {
355
357
  "&localrtcpport=" + sessionInfo.audioPort.toString() + "&pkt_size=" + audiomtu.toString());
356
358
  }
357
359
  // Additional logging, but only if we're debugging.
358
- if (this.platform.verboseFfmpeg) {
360
+ if (this.platform.verboseFfmpeg || this.verboseFfmpeg) {
359
361
  ffmpegArgs.push("-loglevel", "level+verbose");
360
362
  }
361
363
  if (this.platform.config.debugAll) {
362
364
  ffmpegArgs.push("-loglevel", "level+debug");
363
365
  }
364
366
  // Combine everything and start an instance of FFmpeg.
365
- const ffmpegStream = new protect_ffmpeg_1.FfmpegStreamingProcess(this, request.sessionID, ffmpegArgs, (sessionInfo.hasLibFdk && this.protectCamera.twoWayAudio) ? undefined : { addressVersion: sessionInfo.addressVersion, port: sessionInfo.videoReturnPort }, callback);
367
+ const ffmpegStream = new protect_ffmpeg_stream_1.FfmpegStreamingProcess(this, request.sessionID, ffmpegArgs, (sessionInfo.hasLibFdk && this.protectCamera.twoWayAudio) ? undefined : { addressVersion: sessionInfo.addressVersion, port: sessionInfo.videoReturnPort }, callback);
366
368
  // Some housekeeping for our FFmpeg and demuxer sessions.
367
369
  this.ongoingSessions[request.sessionID] = { ffmpeg: [ffmpegStream], rtpDemuxer: sessionInfo.rtpDemuxer };
368
370
  delete this.pendingSessions[request.sessionID];
@@ -426,7 +428,7 @@ class ProtectStreamingDelegate {
426
428
  "pipe:1"
427
429
  ];
428
430
  // Additional logging, but only if we're debugging.
429
- if (this.platform.verboseFfmpeg) {
431
+ if (this.platform.verboseFfmpeg || this.verboseFfmpeg) {
430
432
  ffmpegReturnAudioCmd.push("-loglevel", "level+verbose");
431
433
  }
432
434
  if (this.platform.config.debugAll) {
@@ -463,25 +465,13 @@ class ProtectStreamingDelegate {
463
465
  });
464
466
  }
465
467
  // Fire up FFmpeg.
466
- const ffmpegReturnAudio = new protect_ffmpeg_1.FfmpegStreamingProcess(this, request.sessionID, ffmpegReturnAudioCmd);
467
- // Make sure we terminate the talkback websocket when we're done.
468
- (_c = ffmpegReturnAudio.stdout) === null || _c === void 0 ? void 0 : _c.once("close", () => {
469
- var _a;
470
- // Make sure we catch any stray connections that may be too slow to open.
471
- isTalkbackLive = false;
472
- // Close the websocket.
473
- if (((ws === null || ws === void 0 ? void 0 : ws.readyState) === ws_1.default.CLOSING) || ((ws === null || ws === void 0 ? void 0 : ws.readyState) === ws_1.default.OPEN)) {
474
- ws === null || ws === void 0 ? void 0 : ws.terminate();
475
- }
476
- (_a = ffmpegReturnAudio.stdout) === null || _a === void 0 ? void 0 : _a.removeListener("data", dataListener);
477
- });
468
+ const ffmpegReturnAudio = new protect_ffmpeg_stream_1.FfmpegStreamingProcess(this, request.sessionID, ffmpegReturnAudioCmd);
478
469
  // Setup housekeeping for the twoway FFmpeg session.
479
470
  this.ongoingSessions[request.sessionID].ffmpeg.push(ffmpegReturnAudio);
480
471
  // Feed the SDP session description to FFmpeg on stdin.
481
- (_d = ffmpegReturnAudio.stdin) === null || _d === void 0 ? void 0 : _d.write(sdpReturnAudio);
482
- (_e = ffmpegReturnAudio.stdin) === null || _e === void 0 ? void 0 : _e.end();
472
+ (_c = ffmpegReturnAudio.stdin) === null || _c === void 0 ? void 0 : _c.end(sdpReturnAudio + "\n");
483
473
  // Send the audio.
484
- (_f = ffmpegReturnAudio.stdout) === null || _f === void 0 ? void 0 : _f.on("data", dataListener = (data) => {
474
+ (_d = ffmpegReturnAudio.stdout) === null || _d === void 0 ? void 0 : _d.on("data", dataListener = (data) => {
485
475
  ws === null || ws === void 0 ? void 0 : ws.send(data, error => {
486
476
  // This happens when an error condition is encountered on sending data to the websocket.
487
477
  // We assume the worst and close our talkback channel.
@@ -490,6 +480,17 @@ class ProtectStreamingDelegate {
490
480
  }
491
481
  });
492
482
  });
483
+ // Make sure we terminate the talkback websocket when we're done.
484
+ (_e = ffmpegReturnAudio.ffmpegProcess) === null || _e === void 0 ? void 0 : _e.once("exit", () => {
485
+ var _a;
486
+ // Make sure we catch any stray connections that may be too slow to open.
487
+ isTalkbackLive = false;
488
+ // Close the websocket.
489
+ if (((ws === null || ws === void 0 ? void 0 : ws.readyState) === ws_1.default.CLOSING) || ((ws === null || ws === void 0 ? void 0 : ws.readyState) === ws_1.default.OPEN)) {
490
+ ws === null || ws === void 0 ? void 0 : ws.terminate();
491
+ }
492
+ (_a = ffmpegReturnAudio.stdout) === null || _a === void 0 ? void 0 : _a.removeListener("data", dataListener);
493
+ });
493
494
  }
494
495
  catch (error) {
495
496
  this.log.error("%s: Unable to connect to the return audio channel: %s", this.name(), error);
@@ -633,14 +634,13 @@ class ProtectStreamingDelegate {
633
634
  }
634
635
  // Set a timer to revert back to normal behavior.
635
636
  this.verboseFfmpegTimer = setTimeout(() => {
636
- this.platform.verboseFfmpeg = false;
637
- this.log.info("Returning FFmpeg logging output to normal levels.");
637
+ this.verboseFfmpeg = false;
638
+ this.log.info("%s: Returning FFmpeg logging output to normal levels.", this.name());
638
639
  // Clear out the old timer.
639
640
  this.verboseFfmpegTimer = null;
640
641
  }, settings_1.PROTECT_FFMPEG_VERBOSE_DURATION * 60 * 1000);
641
- this.log.info("FFmpeg exited unexpectedly." +
642
- " Increasing logging output of FFmpeg for the next %s minutes to provide additional detail for future attempts to stream video.", settings_1.PROTECT_FFMPEG_VERBOSE_DURATION);
643
- // this.platform.verboseFfmpeg = true;
642
+ this.log.info("%s: FFmpeg exited unexpectedly. Increasing logging output of FFmpeg for the next %s minutes to provide additional detail for future attempts to stream video.", this.name(), settings_1.PROTECT_FFMPEG_VERBOSE_DURATION);
643
+ this.verboseFfmpeg = true;
644
644
  }
645
645
  }
646
646
  exports.ProtectStreamingDelegate = ProtectStreamingDelegate;