Skip to content

Commit 38ab819

Browse files
committed
machine-setup: fix camera
1 parent c4626de commit 38ab819

File tree

1 file changed

+8
-5
lines changed

1 file changed

+8
-5
lines changed

packages/machine-setup/frontend/src/components/VideoInfo.vue

+8-5
Original file line numberDiff line numberDiff line change
@@ -5,16 +5,18 @@
55
<div style="display: flex; justify-content: center; align-items: center;">
66
<p>摄像头服务:</p>
77
<n-space>
8-
<n-tag :type="hasCamera ? 'success' : 'error'">{{ hasCamera ? '已连接' : '未连接' }}</n-tag>
8+
<n-tag :type="hasCamera ? 'success' : 'error'">{{ hasCamera ? hasCamera : '未连接' }}</n-tag>
99
<n-tag :type="runCamera ? 'success' : 'error'">{{ runCamera ? '运行中' : '未运行' }}</n-tag>
1010
</n-space>
1111
</div>
1212
<n-space>
1313
<n-button size="small" type="primary" @click="runService('vlc-webcam', 'restart')">启动</n-button>
1414
<n-button size="small" type="error" @click="runService('vlc-webcam', 'stop')">停止</n-button>
1515
<n-button size="small" type="info" @click="runVLC('webcam')">测试</n-button>
16-
<n-button size="small" type="warning" @click="runService('vlc-webcam', 'enable')">激活</n-button>
1716
<n-button size="small" @click="statusService('vlc-webcam')">状态</n-button>
17+
<n-button size="small" type="warning" @click="runService('vlc-webcam', 'enable')">激活</n-button>
18+
<n-button size="small" type="warning" @click="runService('vlc-webcam', 'disable')">禁用</n-button>
19+
<n-button size="small" @click="hasCamera = 'video0'">强制摄像头存在</n-button>
1820
</n-space>
1921
<div style="display: flex; justify-content: center; align-items: center;">
2022
<p>屏幕捕获服务:</p>
@@ -24,8 +26,9 @@
2426
<n-button size="small" type="primary" @click="runService('vlc-screen', 'restart')">启动</n-button>
2527
<n-button size="small" type="error" @click="runService('vlc-screen', 'stop')">停止</n-button>
2628
<n-button size="small" type="info" @click="runVLC('screen')">测试</n-button>
27-
<n-button size="small" type="warning" @click="runService('vlc-screen', 'enable')">激活</n-button>
2829
<n-button size="small" @click="statusService('vlc-screen')">状态</n-button>
30+
<n-button size="small" type="warning" @click="runService('vlc-screen', 'enable')">激活</n-button>
31+
<n-button size="small" type="warning" @click="runService('vlc-screen', 'disable')">禁用</n-button>
2932
</n-space>
3033
</n-gi>
3134
<n-gi>
@@ -49,7 +52,7 @@ import { filesystem, os } from '@neutralinojs/lib';
4952
import { NCard, NGrid, NGi, NButton, NInput, NTabs, NTabPane } from 'naive-ui';
5053
import { onMounted, ref } from 'vue';
5154
52-
const hasCamera = ref(false);
55+
const hasCamera = ref('');
5356
5457
const runCamera = ref(false);
5558
const runScreen = ref(false);
@@ -123,7 +126,7 @@ const saveConfig = async (service: string) => {
123126
onMounted(async () => {
124127
try {
125128
const checkCamera = await filesystem.readDirectory('/dev');
126-
hasCamera.value = checkCamera.map((item) => item.path).includes('video0');
129+
hasCamera.value = checkCamera.map((item) => item.entry).filter((item) => item.startsWith('video')).join(', ') || '';
127130
const camera = await filesystem.readFile('/etc/default/vlc-webcam');
128131
const screen = await filesystem.readFile('/etc/default/vlc-screen');
129132
cameraInfo.value = camera;

0 commit comments

Comments
 (0)