117 lines
3.0 KiB
Batchfile
117 lines
3.0 KiB
Batchfile
@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
|