这里会显示出您选择的修订版和当前版本之间的差别。
| webui_调用本地视频播放器 [2025/10/30 16:30] – 创建 wxhere | webui_调用本地视频播放器 [2025/10/30 16:52] (当前版本) – wxhere | ||
|---|---|---|---|
| 行 5: | 行 5: | ||
| === 1. 功能概述 === | === 1. 功能概述 === | ||
| - | WebUI 支持通过**自定义协议**(如 | + | WebUI 支持通过**自定义协议**(如 | 
| === 2. 核心优势 === | === 2. 核心优势 === | ||
| 行 17: | 行 17: | ||
| === 3. 前置条件 === | === 3. 前置条件 === | ||
| - | 以下条件需全部满足,否则无法正常唤起本地播放器 | + | 以下条件需全部满足,否则无法正常唤起本地播放器。 | 
|  |  | ||
| - | - 本地设备已安装**支持的视频播放器**(官方推荐:[[https:// | + | - 本地设备已安装**支持的视频播放器**(官方推荐:[[https:// | 
| - | - 播放器已完成**自定义协议注册**(如 | + | - 播放器已完成**自定义协议注册**(如 | 
| - 浏览器未拦截自定义协议调用(首次使用时,浏览器可能弹出提示,需选择“允许”或“始终允许”)。 | - 浏览器未拦截自定义协议调用(首次使用时,浏览器可能弹出提示,需选择“允许”或“始终允许”)。 | ||
| - | - 视频资源地址格式合法(如 HTTP/HTTPS 链接需可访问,本地路径需为绝对路径)。 | + | === 4. 附录:协议注册方法 === | 
| - | ## 5. 操作步骤 | + | == 4.1 VLC 播放器协议注册 == | 
| - | ### 5.1 基础调用流程 | + | 正常安装VLC播放器后,还需使用以下批处理文件注册自定义协议: | 
| - | 1. 登录 WebUI 平台,进入视频资源列表页面。 | + | <file bat vlc_reg.bat> | 
| + | @echo off | ||
| + | setlocal enabledelayedexpansion | ||
| - | 2. 找到目标视频资源,点击资源卡片或操作栏中的 **“用本地播放器打开”** 按钮(图标通常为 🎬+💻)。 | + | :: Check if the script is running with Administrator privileges | 
| + | fltmc > | ||
| + | echo ERROR: This script requires Administrator privileges! | ||
| + | echo Please right-click and select "Run as administrator" | ||
| + | pause | ||
| + | exit /b 1 | ||
| + | ) | ||
| - | 3. 系统自动检测本地已注册的播放器,通过对应协议唤起播放器。 | + | :: Find VLC installation directory | 
| + | for /f " | ||
| + | 'reg query " | ||
| + | ) do ( | ||
| + | for /f " | ||
| + | set " | ||
| + | ) | ||
| + | set " | ||
| + | ) | ||
| - | 4. 本地播放器启动后,将自动加载并播放目标视频资源。 | + | :: Verify vlc.exe exists | 
| + | if not exist " | ||
| + | echo VLC executable not found: !player_exe! | ||
| + | pause | ||
| + | exit /b 1 | ||
| + | ) else ( | ||
| + | echo Found VLC executable path: !player_exe! | ||
| + | ) | ||
| - | ### 5.2 自定义播放器选择(进阶操作) | + | :: Start registering registry entries | 
| - | 若本地安装多个支持的播放器,可手动指定调用的播放器: | + | :: Create vlc root key with default value | 
| + | reg add " | ||
| - | 1. 在 WebUI 右上角点击 **个人头像 → 设置 → 播放设置**。 | + | :: Create URL Protocol entry (empty value) | 
| + | reg add " | ||
| - | 2. 在“本地播放器关联”模块,选择默认调用的播放器(如“优先使用 | + | :: Create shell\open\command entry with properly quoted executable path | 
| + | :: powershell -Command "$url = ' | ||
| + | reg add " | ||
| - | 3. 保存设置后,后续调用将优先使用指定的播放器。 | + | :: Verify registration result | 
| + | if %errorlevel% equ 0 ( | ||
| + | echo VLC protocol registered successfully! | ||
| + | ) else ( | ||
| + | echo Failed to write to registry. Please run this script as Administrator. | ||
| + | pause | ||
| + | exit /b 1 | ||
| + | ) | ||
| - | ## 6. 常见问题(FAQ) | + | endlocal | 
| + | pause | ||
| + | </ | ||
| - | |问题现象|解决方案| | + | 将此bat文件保存到本地后,右键单击“以管理员权限运行”,即可注册vlc自定义协议。 | 
| - | |---|---| | + | |
| - | |点击“用本地播放器打开”后无反应|1. 检查播放器是否已安装并完成协议注册;2. 检查浏览器是否拦截了协议调用(在浏览器设置的“弹出窗口和重定向”中允许本网站);3. 重启播放器后重试。| | + | |
| - | |唤起播放器后无法加载视频|1. 验证视频资源地址是否可访问(复制地址在浏览器中打开测试);2. 检查本地播放器是否支持该视频格式;3. 若为局域网资源,确认设备已连接同一网络。| | + | |
| - | |无法选择自定义播放器|1. 确认已安装多个支持的播放器;2. 进入 WebUI 播放设置,刷新“已检测播放器”列表;3. 若播放器未被检测到,手动注册协议(参考附录)。| | + | |
| - | ## 7. 附录:协议注册方法 | + | |
| - | ### 7.1 VLC 播放器协议注册 | + | == 7.2 PotPlayer | 
| - | 参考官方批处理脚本,自动完成 `vlc:// | + | 正常安装PotPlayer播放器(64位版)后,默认已配置potplayer自定义协议。如果自定义协议失效,可使用以下批处理文件进行修复: | 
| - | ### 7.2 PotPlayer 播放器协议注册 | + | <file bat potplayer_reg.bat> | 
| + | @echo off | ||
| + | setlocal enabledelayedexpansion | ||
| - | 1. 打开 PotPlayer,点击“选项 → 关联 → 高级关联”;2. 在“自定义协议”中输入 `potplayer:// | + | :: Check if the script is running with Administrator privileges | 
| + | fltmc > | ||
| + | echo ERROR: This script requires Administrator privileges! | ||
| + | echo Please right-click and select "Run as administrator" | ||
| + | pause | ||
| + | exit /b 1 | ||
| + | ) | ||
| - | ## 8. 联系支持 | + | :: Find PotPlayer installation directory | 
| + | for /f " | ||
| + | 'reg query " | ||
| + | ) do ( | ||
| + | for /f " | ||
| + | set " | ||
| + | ) | ||
| + | set " | ||
| + | ) | ||
| - | 若遇到上述方法无法解决的问题,可通过以下方式联系技术支持: | + | :: Verify PotPlayerMini64.exe exists | 
| + | if not exist " | ||
| + | echo PotPlayer executable not found: !player_exe! | ||
| + | pause | ||
| + | exit /b 1 | ||
| + | ) else ( | ||
| + | echo Found PotPlayer executable path: !player_exe! | ||
| + | ) | ||
| - | - 官方客服:400-XXX-XXXX(工作日 9:00-18:00) | + | :: Start registering registry entries | 
| - | - 技术论坛:[WebUI 播放器问题专区](https://forum.example.com/webui-player) | + | :: Create potplayer root key with default value | 
| + | reg add " | ||
| - | - 反馈邮箱:support@example.com(请附上问题截图及设备信息) | + | :: Create URL Protocol entry (empty value) | 
| - | > (注:文档部分内容可能由 AI 生成) | + | reg add " | 
| + | |||
| + | :: Create shell\open\command entry with properly quoted executable path | ||
| + | reg add " | ||
| + | |||
| + | :: Verify registration result | ||
| + | if %errorlevel% equ 0 ( | ||
| + | echo PotPlayer protocol registered successfully! | ||
| + | ) else ( | ||
| + | echo Failed to write to registry. Please run this script as Administrator. | ||
| + |  | ||
| + | exit /b 1 | ||
| + | ) | ||
| + | |||
| + | endlocal | ||
| + | pause | ||
| + | </file> | ||
| + | |||
| + | 将此bat文件保存到本地后,右键单击“以管理员权限运行”,即可注册potplayer自定义协议。 | ||