首页 / 技术文章 / 视频平台

FFmpeg 怎么把 MP4 转成 HLS?生产环境还需要哪些步骤

说明 MP4 到 HLS 的基本命令思路,以及生产系统中的异步任务、目录、状态、并发和清理机制。

这篇文章用于帮助你自己判断问题和整理需求。不同服务器、代码框架和第三方平台配置可能不同,生产环境修改前应先备份并验证。

基本目标

  • 把输入视频转成 H.264/AAC,并按固定时长切片生成 m3u8。

目录和命名必须稳定

  • 每个 video_id 使用独立输出目录,避免并发任务覆盖文件。

Web 请求不要等待转码完成

  • 上传接口保存任务后立即返回,后台 worker 执行 FFmpeg 并更新进度。

失败要保留日志

  • 保存 stderr、退出码和输入文件信息,便于重试而不是只显示“失败”。

常见问题

分片多长比较好?

常见 4–10 秒,具体要在启动速度、请求数量和 CDN 缓存之间权衡。

可以做多清晰度吗?

可以,需要输出多个 rendition 并生成 master playlist。

相关内容

把需求说清楚,
把技术交付做完整。

把现状、目标、参考页面或报错信息发过来。先确认范围和可交付结果,再开始实施。