From 2f3529b822b9620a75bb1b21c024ab511244b965 Mon Sep 17 00:00:00 2001 From: Koushik Dutta Date: Fri, 21 Jul 2023 18:16:13 -0700 Subject: [PATCH] rebroadcast: simplify prebuffer sync frame search, remove dead code... --- common/src/rtsp-server.ts | 20 +------------------- plugins/prebuffer-mixin/package-lock.json | 4 ++-- plugins/prebuffer-mixin/package.json | 2 +- 3 files changed, 4 insertions(+), 22 deletions(-) diff --git a/common/src/rtsp-server.ts b/common/src/rtsp-server.ts index 5eb594681d..87718e4922 100644 --- a/common/src/rtsp-server.ts +++ b/common/src/rtsp-server.ts @@ -195,35 +195,17 @@ export function createRtspParser(options?: StreamParserOptions): RtspStreamParse '-f', 'rtsp', ], findSyncFrame(streamChunks: StreamChunk[]) { - let foundIndex: number; - let nonVideo: { - [codec: string]: StreamChunk, - } = {}; - - const createSyncFrame = () => { - const ret = streamChunks.slice(foundIndex); - // for (const nv of Object.values(nonVideo)) { - // ret.unshift(nv); - // } - return ret; - } - for (let prebufferIndex = 0; prebufferIndex < streamChunks.length; prebufferIndex++) { const streamChunk = streamChunks[prebufferIndex]; if (streamChunk.type !== 'h264') { - nonVideo[streamChunk.type] = streamChunk; continue; } if (findH264NaluType(streamChunk, H264_NAL_TYPE_SPS) || findH264NaluType(streamChunk, H264_NAL_TYPE_IDR)) { - foundIndex = prebufferIndex; - break; + return streamChunks.slice(prebufferIndex); } } - if (foundIndex !== undefined) - return createSyncFrame(); - // oh well! }, sdp: new Promise(r => resolve = r), diff --git a/plugins/prebuffer-mixin/package-lock.json b/plugins/prebuffer-mixin/package-lock.json index bb05bc820e..845108791c 100644 --- a/plugins/prebuffer-mixin/package-lock.json +++ b/plugins/prebuffer-mixin/package-lock.json @@ -1,12 +1,12 @@ { "name": "@scrypted/prebuffer-mixin", - "version": "0.9.96", + "version": "0.9.97", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "@scrypted/prebuffer-mixin", - "version": "0.9.96", + "version": "0.9.97", "license": "Apache-2.0", "dependencies": { "@scrypted/common": "file:../../common", diff --git a/plugins/prebuffer-mixin/package.json b/plugins/prebuffer-mixin/package.json index 70a029e28e..86d5e264aa 100644 --- a/plugins/prebuffer-mixin/package.json +++ b/plugins/prebuffer-mixin/package.json @@ -1,6 +1,6 @@ { "name": "@scrypted/prebuffer-mixin", - "version": "0.9.96", + "version": "0.9.97", "description": "Video Stream Rebroadcast, Prebuffer, and Management Plugin for Scrypted.", "author": "Scrypted", "license": "Apache-2.0",