前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >使用GitHub作为视频床

使用GitHub作为视频床

作者头像
GOOPHER
发布2022-03-31 16:56:44
2K0
发布2022-03-31 16:56:44
举报

使用GitHub作为视频床

操作步骤

在新建一个公开的仓库,名称任意。这里省略了。

视频文件ts切片

这里使用的是ffmpeg工具,在macOS下,可以使用brew安装。其他操作系统请自行解决安装问题。

代码语言:javascript
复制
brew install ffmpeg

安装完成后,在终端中找到我们要上传的视频文件切片。

代码语言:javascript
复制
ffmpeg -i '视频文件名称' -c:v h264 -flags +cgop -g 30 -hls_time 5 -hls_list_size 0 -hls_segment_filename index%3d.ts 'index.m3u8'

注意这里的视频要h.264编码,然后-hls_time 5意为5秒作为一个切片,当视频文件比较小的时候可以设置10秒20秒等作为一个切片,注意切片的大小不能超过20m,要不然没法使用jsd加速。

push到GitHub仓库

建议新建一个文件夹,把切片出来的放进去,再push到仓库中,方便管理。

例如:

使用的链接

使用jsd加速的链接格式为:

代码语言:javascript
复制
https://cdn.jsdelivr.net/gh/用户名/仓库名/文件夹名/index.m3u8

插入视频到博客中

由于m3u8这类视频在Chrome等浏览器中不被支援,所以我们需要hls.js来帮助,但是直接修改hexo主题又过于麻烦,所以采用了下面这个折中的办法:

在需要插入视频的md中,复制下面的代码插入:

代码语言:javascript
复制
<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
<video id="video" controls loop="false" width="100%"></video>
<script>
  var video = document.getElementById('video');
  if(Hls.isSupported()) {
  var hls = new Hls();
  hls.loadSource('m3u8视频地址');
  hls.attachMedia(video);
  hls.on(Hls.Events.MANIFEST_PARSED,function() {
  video.play();
});
} else if (video.canPlayType('application/vnd.apple.mpegurl')) {
  video.src = 'm3u8视频地址';
  video.addEventListener('loadedmetadata',function() {
  video.play();
});
}
</script>

博客内容遵循 署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0) 协议

本文永久链接是:https://cloud.tencent.com/developer/article/1969883

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2021年3月31日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使用GitHub作为视频床
    • 操作步骤
      • 视频文件ts切片
      • push到GitHub仓库
      • 使用的链接
      • 插入视频到博客中
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档