guoyu/诊断视频时长问题.bat
2025-12-06 20:11:36 +08:00

117 lines
3.0 KiB
Batchfile
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@echo off
chcp 65001 >nul
echo ========================================
echo 视频时长问题诊断工具
echo ========================================
echo.
echo [1/4] 检查FFmpeg是否已安装...
echo.
ffmpeg -version >nul 2>&1
if %errorLevel% equ 0 (
echo ✓ FFmpeg已安装
ffmpeg -version | findstr "version"
) else (
echo ✗ FFmpeg未安装
echo.
echo ⚠️ 这是问题的根源!
echo.
echo 后端代码需要FFmpeg来自动提取视频时长。
echo 如果FFmpeg未安装视频时长会保存为0。
echo.
echo 【解决方法】
echo 1. 下载FFmpeg: https://ffmpeg.org/download.html
echo 2. 解压到 C:\ffmpeg
echo 3. 添加 C:\ffmpeg\bin 到系统PATH环境变量
echo 4. 重启命令行窗口验证: ffmpeg -version
echo.
echo 【或者手动设置时长】
echo 如果不想安装FFmpeg可以
echo 1. 在后台管理系统中手动编辑课件,填写时长
echo 2. 使用SQL脚本批量更新: 修复课件时长.sql
echo.
pause
exit /b 1
)
echo.
echo [2/4] 检查视频文件是否存在...
echo.
set "PROFILE_PATH=D:\wwwroot\study_web\web\profile"
set "VIDEO_PATH=%PROFILE_PATH%\upload\2025\12\05"
if exist "%PROFILE_PATH%" (
echo ✓ profile目录存在: %PROFILE_PATH%
) else (
echo ✗ profile目录不存在: %PROFILE_PATH%
echo 请检查application.yml中的ruoyi.profile配置
pause
exit /b 1
)
if exist "%VIDEO_PATH%" (
echo ✓ 视频目录存在: %VIDEO_PATH%
echo.
echo 目录中的视频文件:
dir /b "%VIDEO_PATH%\*.mp4" 2>nul
if %errorLevel% neq 0 (
echo (未找到.mp4文件
)
) else (
echo ✗ 视频目录不存在: %VIDEO_PATH%
)
echo.
echo [3/4] 测试FFmpeg读取视频信息...
echo.
:: 查找第一个mp4文件进行测试
for /f "delims=" %%f in ('dir /b "%VIDEO_PATH%\*.mp4" 2^>nul') do (
set "TEST_VIDEO=%VIDEO_PATH%\%%f"
goto :found_video
)
echo ○ 未找到测试视频文件
goto :skip_test
:found_video
echo 测试视频: %TEST_VIDEO%
echo.
echo FFmpeg输出
echo ----------------------------------------
ffmpeg -i "%TEST_VIDEO%" -hide_banner 2>&1 | findstr "Duration"
echo ----------------------------------------
echo.
:skip_test
echo [4/4] 后端日志检查提示...
echo.
echo 请检查后端日志,查找以下关键字:
echo - "自动提取视频时长成功"
echo - "无法自动提取视频时长"
echo - "FFmpeg不可用"
echo - "视频文件不存在"
echo.
echo 后端日志位置: Study-Vue-redis\ry-study-admin\logs\
echo.
echo ========================================
echo 诊断完成
echo ========================================
echo.
echo 【总结】
echo.
echo 如果FFmpeg已安装但时长仍为0
echo 1. 重新上传视频课件(会自动提取时长)
echo 2. 或编辑现有课件(会自动提取时长)
echo 3. 或使用SQL手动设置时长
echo.
echo 如果FFmpeg未安装
echo 1. 安装FFmpeg推荐
echo 2. 或手动设置所有视频时长
echo.
pause