diff --git a/src/request/video_info.js b/src/request/video_info.js index c0276b9..c0070b2 100644 --- a/src/request/video_info.js +++ b/src/request/video_info.js @@ -14,3 +14,7 @@ export const stopTransCode = (params) => post("/playVideo/stopTranscode", params); export const getTranscodeStatus = (params) => post("/playVideo/getTranscodeStatus", params); +export const loginDahua = (params) => + post("/dahuaVideo/login", params); +export const getDahuaSDKStatus = (params) => + post("/dahuaVideo/status", params); diff --git a/src/views/video_manager/video_manager/components/playVideo.vue b/src/views/video_manager/video_manager/components/playVideo.vue index a7546f5..bd8baac 100644 --- a/src/views/video_manager/video_manager/components/playVideo.vue +++ b/src/views/video_manager/video_manager/components/playVideo.vue @@ -1,22 +1,29 @@ + \ No newline at end of file diff --git a/src/views/video_manager/video_manager/index.vue b/src/views/video_manager/video_manager/index.vue index bc51393..12cdabe 100644 --- a/src/views/video_manager/video_manager/index.vue +++ b/src/views/video_manager/video_manager/index.vue @@ -18,9 +18,6 @@ 重置 - 播放后台转码视频 @@ -106,12 +103,11 @@ @get-data="fnResetPagination" /> - + @@ -130,8 +126,8 @@ import { ElMessage, ElMessageBox } from "element-plus"; import SelectingPoints from "./components/selecting_points.vue"; import LayoutVideo from "@/components/video/index.vue"; import { setVideoManagerList } from "@/request/eightwork_videomanager.js"; -import PlayVideo from "@/views/video_manager/video_manager/components/playVideo.vue"; // 引入新播放器组件 -import { startTransCode, stopTransCode } from "@/request/video_info.js"; // 转码接口 +import PlayVideo from "@/views/video_manager/video_manager/components/playVideo.vue"; +import {loginDahua} from "@/request/video_info.js"; const data = reactive({ addDialog: { @@ -155,28 +151,13 @@ const data = reactive({ videomanagerId: "", visible: false, }, - transcodeVideoDialog: { + dahuaVideoDialog: { visible: false, - src: "http://localhost:8100/api/hls/stream.m3u8", // 后端转码后HLS流的访问路径 - id: "", + src: "", + channel: 0, }, }); -// 启动转码并显示播放器 -const handleStartTranscode = async () => { - try { - await startTransCode(); // 调用后端“启动转码”接口 - data.transcodeVideoDialog.visible = true; // 显示播放器弹窗 - } catch (error) { - ElMessage.error("启动转码失败: " + (error.message || "未知错误")); - } -}; - -// 转码停止后的回调 -const onTranscodeStopped = async () => { - await stopTransCode(); // 调用后端“停止转码”接口 -}; - // 列表数据逻辑(保持不变) const { list, pagination, searchForm, fnGetData, fnResetPagination } = useListData(getHkVideoManagerList); @@ -201,13 +182,22 @@ const fnUpToBi = async (videomanagerId) => { const fnPreviewVideo = async (row) => { try { - const resData = await startTransCode({ url: row.url, id: row.PLS_ID }); // 调用后端“启动转码”接口 - data.transcodeVideoDialog.visible = true; // 显示播放器弹窗 - data.transcodeVideoDialog.id = row.PLS_ID; // 显示播放器弹窗 - data.transcodeVideoDialog.src = - "http://172.16.70.226:7811/" + resData.videoUrl + "stream.m3u8"; + // 先登录大华设备 + const loginResult = await loginDahua(); + console.log("大华设备登录结果:", loginResult); + + if (!loginResult.success) { + ElMessage.error("设备登录失败: " + loginResult.message); + return; + } + + // 调用大华SDK接口播放视频 + data.dahuaVideoDialog.visible = true; + data.dahuaVideoDialog.channel = row.PLS_ID || 0; + data.dahuaVideoDialog.src = `/dahuaVideo/start-preview?channel=${row.PLS_ID || 0}`; } catch (error) { - ElMessage.error("启动转码失败: " + (error.message || "未知错误")); + console.error("播放视频过程出错:", error); + ElMessage.error("播放视频失败: " + (error.message || "未知错误")); } };