首页 前端知识 【跨域】【m3u8】mp4视频批量转m3u8,对象存储跨域问题处理

【跨域】【m3u8】mp4视频批量转m3u8,对象存储跨域问题处理

2024-06-10 23:06:09 前端知识 前端哥 42 736 我要收藏

1、视频批量转m3u8

推荐使用:ffmpeg

mac 可以用 brew install ffmpeg 命令

win自行搜索 “ffmpeg安装”

安装完后,可以写一个shell脚本,批量执行,可以参照我的

#!/bin/bash
echo "Hello World !"
for file in ./basevideo/*
do
if [ -f "$file" ]
    then
        echo "$file is file"
        tmp=${file##*/}
        mkdir ./output/${tmp%.*}
        cd ./output/${tmp%.*}
        echo $tmp
            ffmpeg -y -i ../../basevideo/$tmp -vcodec copy -acodec copy -vbsf h264_mp4toannexb input.ts
            ffmpeg -i input.ts -c copy -map 0 -f segment -segment_list input.m3u8 -segment_time 4 input-d.ts
            rm input.ts
        cd ../..
fi
done

文件结构如下

basevideo:原视频mp4文件

output:生成后m3u8文件

test.sh 上面的脚本

上传腾讯/阿里对象存储,可以使用他们的本地客户端,把basevieo文件夹拖拽过去

2、cors跨域处理

已腾讯云的对象存储(cos)+腾讯云的cdn为例。

第一步:在cos中,配置跨域访问。

origin:页面的域名

methods:一般都是get,只勾get即可

max-age:生成后如果不频繁变动,推荐时间长一些,120s这样

配置完后,在页面上访问对象存储地址试试,看是否配置正确。

第二步:在cdn配置跨域

配置cdn allow-origin。配置方法,可借鉴官方文档:https://cloud.tencent.com/document/product/228/60739

这两步之后,再重新上传新的视频地址,防止有cdn缓存。一般就可以正常访问了。

cors跨域的请求过程可以看https://developer.mozilla.org/zh-CN/docs/Web/HTTP/CORS 讲的比较清楚了。

因为cors跨域,是通过判断head偷是否油origin。所以不会影响正常的css、img、js等静态文件,所以不用考虑影响线上其他业务的问题。

转载请注明出处或者链接地址:https://www.qianduange.cn//article/11798.html
标签
评论
发布的文章

第一次实验补充

2024-06-18 09:06:14

html5shiv,从入门到深入

2024-05-09 10:05:07

html5基础入门

2024-06-18 09:06:07

HTML5学习简记

2024-06-18 09:06:20

大家推荐的文章
会员中心 联系我 留言建议 回顶部
复制成功!