You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

MediaWiki用TimedMediaHandler传视频时缩略图创建失败求助

解决TimedMediaHandler视频上传生成缩略图错误的方案

1. 修正LocalSettings.php中的语法错误

你的配置代码里存在全角符号(中文括号、中文逗号、中文冒号),PHP仅识别半角符号,这是核心问题之一:

  • 将wfLoadExtension( 'TimedMediaHandler' );改为wfLoadExtension( 'TimedMediaHandler' );(替换为半角括号)
  • 将$wgFFmpegLocation = 'C:\ffmpeg\bin\ffmpeg';改为$wgFFmpegLocation = 'C:\\ffmpeg\\bin\\ffmpeg.exe';(替换半角冒号,单斜杠改双反斜杠,补充.exe后缀)
  • 将$wgFileExtensions数组内所有中文逗号,替换为半角逗号,,同时统一扩展名大小写(比如'MP4'改为'mp4',避免匹配异常)

修正后的配置示例:

wfLoadExtension( 'TimedMediaHandler' );
$wgFFmpegLocation = 'C:\\ffmpeg\\bin\\ffmpeg.exe';
$wgMaxShellMemory = 780000;
$wgMaxShellFileSize = 1024 * 512;
$wgMaxShellTime = 60 * 60;

$wgFileExtensions = [
'png', 'gif', 'jpg', 'jpeg', 'jp2', 'webp', 'ppt', 'pdf', 'psd',
'mp3', 'xls', 'xlsx', 'swf', 'doc', 'docx', 'odt', 'odc', 'odp',
'odg', 'mpp', 'pptx', 'mp4', 'mpg', 'webm', 'ogv'
];

(注:已添加你需要的mpg、webm、ogv视频扩展名到数组)

2. 验证FFmpeg可执行性

  • 打开命令提示符,直接运行C:\ffmpeg\bin\ffmpeg.exe -version,确认能正常输出版本信息。如果提示“不是内部或外部命令”,说明FFmpeg路径错误或未正确安装。
  • 确保MediaWiki的运行用户(如IIS的IUSR账户、Apache的www-data账户)拥有FFmpeg所在目录的读取和执行权限。

3. 调整Shell执行参数

若视频文件较大,当前内存和超时设置可能不足:

  • 尝试增大$wgMaxShellMemory的值,比如改为1560000(约1.5GB)
  • 若视频处理耗时久,可调高$wgMaxShellTime,比如60 * 120(120分钟)

4. 检查视频文件编码

部分特殊编码的视频无法被FFmpeg处理:

  • 用FFmpeg命令查看视频编码:ffmpeg -i 你的视频文件.mp4,确认编码为H.264(MP4常用)、VP8/VP9(WebM)等主流编码。
  • 若编码特殊,先用FFmpeg转码后再上传:ffmpeg -i 原视频.mp4 -c:v libx264 -c:a aac 转码后视频.mp4

5. 查看MediaWiki日志定位问题

  • 打开MediaWiki默认日志目录cache/logs,查看error.log或debug.log,里面会记录缩略图生成失败的具体原因(如FFmpeg调用失败、权限不足等),根据日志进一步排查。

内容的提问来源于stack exchange,提问作者yang le

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.27 09:05:15