新增:对接视频转码接口

- 新增:对接视频转码接口
- 修改:视频地址获取更换为音频识别项目的接口
This commit is contained in:
yueliuli 2026-05-09 11:07:02 +08:00
parent 08315bf54b
commit ed64a9c5a3
2 changed files with 57 additions and 48 deletions

View File

@ -19,10 +19,11 @@ const ruleFormRef = ref<FormInstance>()
const ruleForm = reactive<RuleForm>({
vidPath: '',
function: [
// 'runSam3',
// 'runHazardCheck',
// 'runGenerateReport',
// 'runAudioRecognition',
'runAudioRecognition',
'runSam3',
'runHazardCheck',
'runGenerateReport',
'convertToMp4',
],
})
@ -71,30 +72,47 @@ async function runCheck(formEl: FormInstance | undefined) {
}
})
if (valid) {
runProcess()
}
}
async function runProcess() {
isRunningCheck.value = true
startTimer()
const tasks: Promise<any>[] = []
if (ruleForm.function.includes('runAudioRecognition')) {
await runApiAudio('recognize', 'GET', {
tasks.push(runApiAudio('recognize', 'GET', {
path: vidPaths.value[vidPaths.value.indexOf(ruleForm.vidPath)],
})
}))
}
await runApi('/run', {
if (ruleForm.function.includes('convertToMp4')) {
tasks.push(runApiAudio('convert', 'GET', {
path: vidPaths.value[vidPaths.value.indexOf(ruleForm.vidPath)],
}))
}
tasks.push(runApi('/run', {
vid_file: vidPaths.value[vidPaths.value.indexOf(ruleForm.vidPath)],
run_sam3: ruleForm.function.includes('runSam3'),
run_inspection: ruleForm.function.includes('runHazardCheck'),
gen_report: ruleForm.function.includes('runGenerateReport'),
}).then((res) => {
}))
await Promise.all(tasks).then((results) => {
isRunningCheck.value = false
stopTimer()
//
if (res !== 'error') {
const lastRes = results[results.length - 1]
if (lastRes !== 'error') {
router.push({
path: '/nav/hazardCheckResult',
query: { vid_file: vidPaths.value[vidPaths.value.indexOf(ruleForm.vidPath)] },
})
}
})
}
stopTimer()
}
async function reloadFiles() {
@ -153,6 +171,12 @@ onMounted(() => {
</el-form-item>
<el-form-item label="功能选择" prop="function">
<el-checkbox-group v-model="ruleForm.function" class="checkbox-group">
<el-checkbox value="convertToMp4" name="function">
视频转码
</el-checkbox>
<el-checkbox value="runAudioRecognition" name="function">
音频识别
</el-checkbox>
<el-checkbox value="runSam3" name="function">
物体识别
</el-checkbox>
@ -162,9 +186,6 @@ onMounted(() => {
<el-checkbox value="runGenerateReport" name="function">
生成报告
</el-checkbox>
<el-checkbox value="runAudioRecognition" name="function">
音频识别
</el-checkbox>
</el-checkbox-group>
</el-form-item>
<el-form-item v-if="!isRunningCheck">

View File

@ -327,29 +327,17 @@ onMounted(async () => {
const vidFile = router.currentRoute.value.query.vid_file as string
if (vidFile) {
//
runApi('/get_full_vid_path', {
vid_file: vidFile,
runApiAudio('/getVidUrl', 'GET', {
path: vidFile,
}).then((res) => {
if (res === 'error') {
console.error('获取视频路径失败')
return
}
// console.log('', res)
vidUrl.value = (res as string[])[0]
//
const fileName = vidUrl.value.split('\\').pop() || ''
//
const fileNameNoExt = fileName.split('.')[0]
//
// const fileExt = fileName.split('.')[1]
//
vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.mp4`
vidUrl.value = res.url
})
//
//
// const fileNameNoExt = vidFile.split('.')[0]
// //
// const fileExt = vidFile.split('.')[1]
// vidUrl.value = `http://localhost:8086/${fileNameNoExt}_h264.${fileExt}`
//
runApi('/run', {
vid_file: vidFile,