@viguza/homebridge-ezviz 1.2.11 → 1.2.12

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.
@@ -8,6 +8,8 @@ export declare function isFfmpegInstalled(ffmpegPath: string): Promise<boolean>;
8
8
  export declare function getSnapshot(url: string, customFfmpeg?: string): Promise<Buffer>;
9
9
  export declare class FfmpegProcess {
10
10
  private ff;
11
+ private killTimeout?;
12
+ private startTimeout?;
11
13
  constructor(title: string, command: Array<string>, log: Logging, callback: StreamRequestCallback | undefined, delegate: StreamingDelegate, sessionId: string, ffmpegDebugOutput: boolean, customFfmpeg?: string);
12
14
  stop(): void;
13
15
  getStdin(): Writable | null | undefined;
@@ -41,10 +41,13 @@ export async function getSnapshot(url, customFfmpeg) {
41
41
  }
42
42
  export class FfmpegProcess {
43
43
  ff;
44
+ killTimeout;
45
+ startTimeout;
44
46
  constructor(title, command, log, callback, delegate, sessionId, ffmpegDebugOutput, customFfmpeg) {
45
47
  let started = false;
48
+ let startedCallback = false;
46
49
  const controller = delegate.controller;
47
- const cmdOutput = `${title} command: ffmpeg ${command}`;
50
+ const cmdOutput = `${title} command: ffmpeg ${command.join(' ')}`;
48
51
  if (ffmpegDebugOutput) {
49
52
  log.info(cmdOutput);
50
53
  }
@@ -55,52 +58,100 @@ export class FfmpegProcess {
55
58
  let lastOutput = '';
56
59
  try {
57
60
  this.ff = execa(videoProcessor, command, { env: process.env });
61
+ this.startTimeout = setTimeout(() => {
62
+ if (!started && callback && !startedCallback) {
63
+ started = true;
64
+ startedCallback = true;
65
+ log.debug(`${title}: Stream start timeout reached, calling callback`);
66
+ callback();
67
+ }
68
+ }, 3000);
58
69
  this.ff.stderr?.on('data', (data) => {
59
- lastOutput = `${title}: ${String(data)}`;
70
+ const output = String(data);
71
+ lastOutput = `${title}: ${output}`;
60
72
  if (ffmpegDebugOutput) {
61
73
  log.info(lastOutput);
62
74
  }
63
75
  else {
64
76
  log.debug(lastOutput);
65
77
  }
66
- if (!started && lastOutput.includes('frame=')) {
78
+ if (!started && (output.includes('frame=') || output.includes('fps=') || output.includes('size='))) {
67
79
  started = true;
68
- if (callback) {
80
+ if (callback && !startedCallback) {
81
+ startedCallback = true;
82
+ if (this.startTimeout) {
83
+ clearTimeout(this.startTimeout);
84
+ this.startTimeout = undefined;
85
+ }
69
86
  callback();
70
87
  }
71
88
  }
72
89
  });
73
- this.ff.on('exit', (code) => {
74
- if (code && code !== 0 && callback) {
90
+ this.ff.stdout?.on('data', (data) => {
91
+ if (ffmpegDebugOutput) {
92
+ log.debug(`${title} stdout: ${String(data)}`);
93
+ }
94
+ });
95
+ this.ff.on('exit', (code, signal) => {
96
+ if (this.killTimeout) {
97
+ clearTimeout(this.killTimeout);
98
+ this.killTimeout = undefined;
99
+ }
100
+ if (this.startTimeout) {
101
+ clearTimeout(this.startTimeout);
102
+ this.startTimeout = undefined;
103
+ }
104
+ if (code !== null && code !== 0 && !signal) {
75
105
  const lines = lastOutput.split('\n');
76
106
  let output = '';
77
107
  if (lines.length > 1) {
78
108
  output = lines[lines.length - 2];
79
- if (!output.includes('Exiting normally')) {
80
- log.error(`${title}: ${output}`);
109
+ if (!output.includes('Exiting normally') && !output.includes('SIGTERM')) {
110
+ log.error(`${title} exited with error: ${output}`);
81
111
  }
82
112
  }
83
- if (!started) {
84
- callback(new Error(output));
113
+ if (!started && callback && !startedCallback) {
114
+ startedCallback = true;
115
+ callback(new Error(output || 'FFmpeg process failed to start'));
85
116
  }
86
- delegate.stopStream(sessionId);
87
- controller?.forceStopStreamingSession(sessionId);
88
117
  }
118
+ delegate.stopStream(sessionId);
119
+ controller?.forceStopStreamingSession(sessionId);
120
+ });
121
+ this.ff.on('error', (error) => {
122
+ log.error(`${title} process error: ${error.message}`);
123
+ if (callback && !startedCallback) {
124
+ startedCallback = true;
125
+ callback(new Error(`FFmpeg process error: ${error.message}`));
126
+ }
127
+ delegate.stopStream(sessionId);
128
+ controller?.forceStopStreamingSession(sessionId);
89
129
  });
90
130
  }
91
131
  catch (error) {
92
132
  log.error(`[${title}] Failed to start stream: ` + error);
93
- if (callback) {
133
+ if (callback && !startedCallback) {
134
+ startedCallback = true;
94
135
  callback(new Error('ffmpeg process creation failed!'));
95
136
  delegate.stopStream(sessionId);
96
137
  }
97
138
  }
98
139
  }
99
140
  stop() {
100
- this.ff?.stdin?.end();
101
- this.ff?.kill('SIGTERM', {
102
- forceKillAfterTimeout: 2000,
103
- });
141
+ if (!this.ff) {
142
+ return;
143
+ }
144
+ try {
145
+ this.ff.stdin?.end();
146
+ this.ff.kill('SIGTERM');
147
+ // Set a timeout to force kill if process doesn't terminate gracefully
148
+ this.killTimeout = setTimeout(() => {
149
+ this.ff?.kill('SIGKILL');
150
+ }, 5000);
151
+ }
152
+ catch (error) {
153
+ // Process might already be dead, ignore the error
154
+ }
104
155
  }
105
156
  getStdin() {
106
157
  return this.ff?.stdin;
@@ -1 +1 @@
1
- {"version":3,"file":"ffmpeg.js","sourceRoot":"","sources":["../../src/utils/ffmpeg.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ffmpeg.js","sourceRoot":"","sources":["../../src/utils/ffmpeg.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@viguza/homebridge-ezviz",
3
3
  "displayName": "EZVIZ Homebridge Plugin",
4
4
  "type": "module",
5
- "version": "1.2.11",
5
+ "version": "1.2.12",
6
6
  "private": false,
7
7
  "description": "A short description about what your plugin does.",
8
8
  "author": "Victor Guzman",