利用GitHub + jsDelivr视频切片

利用 jsDeliver + GitHub 实现免费 CDN 加速静态资源,例如图片、CSS、JS等,相信大家都知道。也有人想过存放视频,但是 jsDeliver 不支持加载超过 20M 的资源,所以视频需要压缩到 20M 以下。如果想要放部电影,那就需要用到 HLS切片 了。

我使用的 FFmpeg 工具来切片

  1. 对视频进行转码(转为 mp4),将视频文件转为视频编码 h.264,音频编码 aac 格式的 mp4 文件,mp4 视频文件不是 h.264 编码到后面切片的时候可能会遇到很多莫名其妙的问题
    # infile.mp4 是待转码的文件(可以是其他格式,比如 avi…… 之类的)
    # outfile.mp4 是转码输出文件
    # libx264 转为 h.264 编码
     
    ffmpeg -i infile.mp4  -c:v libx264 -strict -2 outfile.mp4​

    2.将 mp4 切片,并生成 m3u8 文件

    # output.mp4 需要切片的视频文件
    # playlist.m3u8 待生成的 m3u8 文件名
    # 5 切片时间,表示隔几秒进行切一个文件
    # output%03d.ts 生成切割ts文件名,output%03d.ts 代表生成 output001.ts、output002.ts 这样的格式,03d 可以随意修改,占位符
     
    ffmpeg -i output.mp4 -c copy -map 0 -f segment -segment_list playlist.m3u8 -segment_time 5 output%03d.ts​

给TA打赏
共{{data.count}}人
人已打赏
技术教程

FinalShell Session.connect: java.lang.Exception: 协议错误! 怎么解决?

2020-7-13 20:58:42

技术教程

【Chrome】Chrome导出已保存的书签

2020-9-29 23:02:35

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧
个人中心
购物车
优惠劵
今日签到
有新私信 私信列表
搜索