reolink: automatically remove nonfunctional streams using opaque getAbility api results lol

This commit is contained in:
Koushik Dutta
2024-06-28 10:37:58 -07:00
parent e06d012875
commit 028d601674
3 changed files with 12 additions and 5 deletions

View File

@@ -1,12 +1,12 @@
{
"name": "@scrypted/reolink",
"version": "0.0.76",
"version": "0.0.77",
"lockfileVersion": 3,
"requires": true,
"packages": {
"": {
"name": "@scrypted/reolink",
"version": "0.0.76",
"version": "0.0.77",
"license": "Apache",
"dependencies": {
"@scrypted/common": "file:../../common",

View File

@@ -1,6 +1,6 @@
{
"name": "@scrypted/reolink",
"version": "0.0.76",
"version": "0.0.77",
"description": "Reolink Plugin for Scrypted",
"author": "Scrypted",
"license": "Apache",

View File

@@ -520,8 +520,15 @@ class ReolinkCamera extends RtspSmartCamera implements Camera, DeviceProvider, R
}
];
if (deviceInfo?.model?.replace(' ', '').includes('Duo2') || deviceInfo?.model?.replace(' ', '').includes('Duo3')) {
// these models don't have rtmp main stream or any ext streams... need to filter those out.
// this property seems to be:
// 1: rtmp main, sub ext + rtsp main + sub
// 2: rtmp sub + rtsp main + sub
// 4k cams seem to be 2.
// unsure if there are other values
const live = this.storageSettings.values.abilities?.value?.Ability?.abilityChn?.[0].live?.ver;
if (live === 2) {
// remove the rtmp main and ext
streams.splice(0, 2);
}
if (deviceInfo?.model == "Reolink TrackMix PoE") {