mirror of
https://github.com/linyqh/NarratoAI.git
synced 2025-12-11 10:32:49 +00:00
89 lines
3.7 KiB
Batchfile
89 lines
3.7 KiB
Batchfile
@echo off
|
||
:: 设置控制台代码页为UTF-8,解决中文显示问题
|
||
chcp 65001 >nul
|
||
:: 关闭命令回显,使脚本运行时更整洁
|
||
|
||
:: 获取当前脚本所在目录路径并存储在变量中
|
||
set "CURRENT_DIR=%~dp0"
|
||
echo ***** 当前工作目录: %CURRENT_DIR% *****
|
||
|
||
:: ==================== FFmpeg 配置 ====================
|
||
:: 设置 FFmpeg 可执行文件的完整路径
|
||
set "FFMPEG_BINARY=%CURRENT_DIR%lib\ffmpeg\ffmpeg-7.0-essentials_build\ffmpeg.exe"
|
||
set "FFMPEG_PATH=%CURRENT_DIR%lib\ffmpeg\ffmpeg-7.0-essentials_build"
|
||
echo ***** FFmpeg 执行文件路径: %FFMPEG_BINARY% *****
|
||
|
||
:: 将 FFmpeg 目录添加到系统 PATH 环境变量,使其可以在命令行中直接调用
|
||
set "PATH=%FFMPEG_PATH%;%PATH%"
|
||
|
||
:: ==================== ImageMagick 配置 ====================
|
||
:: 设置 ImageMagick 可执行文件的完整路径(用于图像处理)
|
||
set "IMAGEMAGICK_BINARY=%CURRENT_DIR%lib\imagemagic\ImageMagick-7.1.1-29-portable-Q16-x64\magick.exe"
|
||
set "IMAGEMAGICK_PATH=%CURRENT_DIR%lib\imagemagic\ImageMagick-7.1.1-29-portable-Q16-x64"
|
||
echo ***** ImageMagick 执行文件路径: %IMAGEMAGICK_BINARY% *****
|
||
|
||
:: 将 ImageMagick 目录添加到系统 PATH 环境变量
|
||
set "PATH=%IMAGEMAGICK_PATH%;%PATH%"
|
||
|
||
:: ==================== Python 环境配置 ====================
|
||
:: 设置 Python 模块搜索路径,确保能够正确导入项目模块
|
||
set "PYTHONPATH=%CURRENT_DIR%NarratoAI;%PYTHONPATH%"
|
||
echo ***** Python模块搜索路径: %PYTHONPATH% *****
|
||
|
||
:: ==================== 项目特定环境变量配置 ====================
|
||
:: 设置项目根目录和依赖工具的路径,供应用程序内部使用
|
||
set "NARRATO_ROOT=%CURRENT_DIR%NarratoAI"
|
||
set "NARRATO_FFMPEG=%FFMPEG_BINARY%"
|
||
set "NARRATO_IMAGEMAGICK=%IMAGEMAGICK_BINARY%"
|
||
|
||
:: ==================== Streamlit 配置 ====================
|
||
:: 设置 Streamlit(Python Web应用框架)的配置文件路径
|
||
set "USER_HOME=%USERPROFILE%"
|
||
set "STREAMLIT_DIR=%USER_HOME%\.streamlit"
|
||
set "CREDENTIAL_FILE=%STREAMLIT_DIR%\credentials.toml"
|
||
echo ***** Streamlit 凭证文件路径: %CREDENTIAL_FILE% *****
|
||
|
||
:: 检查并创建 Streamlit 配置目录和凭证文件(如果不存在)
|
||
if not exist "%STREAMLIT_DIR%" (
|
||
echo 创建 Streamlit 配置目录...
|
||
mkdir "%STREAMLIT_DIR%"
|
||
(
|
||
echo [general]
|
||
echo email=""
|
||
) > "%CREDENTIAL_FILE%"
|
||
echo Streamlit 配置文件已创建!
|
||
)
|
||
|
||
:: ==================== 依赖检查 ====================
|
||
:: 验证必要的外部工具是否存在,确保应用可以正常运行
|
||
if not exist "%FFMPEG_BINARY%" (
|
||
echo 错误: 未找到 FFmpeg 执行文件,路径: %FFMPEG_BINARY%
|
||
echo 请确保已正确安装 FFmpeg 或检查路径配置
|
||
pause
|
||
exit /b 1
|
||
)
|
||
|
||
if not exist "%IMAGEMAGICK_BINARY%" (
|
||
echo 错误: 未找到 ImageMagick 执行文件,路径: %IMAGEMAGICK_BINARY%
|
||
echo 请确保已正确安装 ImageMagick 或检查路径配置
|
||
pause
|
||
exit /b 1
|
||
)
|
||
|
||
:: ==================== 启动应用 ====================
|
||
:: 切换到项目目录并启动应用
|
||
echo ***** 切换工作目录到: %CURRENT_DIR%NarratoAI *****
|
||
cd /d "%CURRENT_DIR%NarratoAI"
|
||
|
||
echo ***** 正在启动 NarratoAI 应用... *****
|
||
:: 使用项目自带的Python解释器启动Streamlit应用
|
||
"%CURRENT_DIR%lib\python\python.exe" -m streamlit run webui.py --browser.serverAddress="127.0.0.1" --server.enableCORS=True --server.maxUploadSize=2048 --browser.gatherUsageStats=False
|
||
:: 参数说明:
|
||
:: --browser.serverAddress="127.0.0.1" - 将服务器绑定到本地地址
|
||
:: --server.enableCORS=True - 启用跨域资源共享
|
||
:: --server.maxUploadSize=2048 - 设置最大上传文件大小为2048MB
|
||
:: --browser.gatherUsageStats=False - 禁用使用统计收集
|
||
|
||
:: 应用关闭后暂停,让用户看到最终输出
|
||
pause
|