diff --git a/src/components/cards/dashboard/CameraCard.vue b/src/components/cards/dashboard/CameraCard.vue
index 17e5475d67..76ba5712c7 100644
--- a/src/components/cards/dashboard/CameraCard.vue
+++ b/src/components/cards/dashboard/CameraCard.vue
@@ -3,7 +3,9 @@
title="Camera"
icon="$camera"
:collapsed="true">
-
+
+
+
@@ -20,6 +22,10 @@ import DialogConfirm from '@/components/dialogs/dialogConfirm.vue'
}
})
export default class CameraCard extends Mixins(UtilsMixin) {
+ get streamType () {
+ return this.$store.state.config.fileConfig.camera.type
+ }
+
get cameraUrl (): string {
return this.$store.state.config.fileConfig.camera.url
}
diff --git a/src/components/cards/settings/CameraSettingsCard.vue b/src/components/cards/settings/CameraSettingsCard.vue
index a55a00a453..840f8d8782 100644
--- a/src/components/cards/settings/CameraSettingsCard.vue
+++ b/src/components/cards/settings/CameraSettingsCard.vue
@@ -16,10 +16,17 @@
v-model="flipX">
+
+
diff --git a/src/store/config/index.ts b/src/store/config/index.ts
index 27df2b498e..cb27a87109 100644
--- a/src/store/config/index.ts
+++ b/src/store/config/index.ts
@@ -30,6 +30,7 @@ export const state: ConfigState = {
},
camera: {
enabled: false,
+ type: 'mjpgstreamer',
url: '/webcam/?action=stream',
flipX: false,
flipY: false
diff --git a/src/store/config/types.ts b/src/store/config/types.ts
index fd1cfed275..db902885d4 100644
--- a/src/store/config/types.ts
+++ b/src/store/config/types.ts
@@ -41,6 +41,7 @@ export interface AxisConfig {
export interface CameraConfig {
enabled: boolean;
+ type: 'mjpgstreamer' | 'ipcamera';
url: string;
flipX: boolean;
flipY: boolean;