1.进入阿里云函数计算FC页面
2.创建音视频转码应用
可以看到代码,看到相关的传参
3.进行测试
编辑测试参数,使用账号的OSS中的资源
点击测试函数进行测试
可以在OSS中看到生成的mp4格式的视频了
测试后发现函数计算可以使用
4. 接下来就是在项目中通过代码进行实现
创建触发器以可以通过URL进行调用
因为我这里主要是上传MOV视频到OSS时需要转为mp4格式,所以可以使用OSS触发,如果有其他业务要求可以选择HTTP进行触发,可以自定义
修改代码获取阿里云OSS触发的参数,由上传了哪个文件触发
def handler(event, context):
LOGGER.info(event)
# 原来的
# evt = json.loads(event)
# oss_bucket_name = evt["bucket"]
# object_key = evt["object"]
# output_dir = evt["output_dir"]
# dst_format = evt['dst_format']
# shortname, _ = get_fileNameExt(object_key)
# creds = context.credentials
# auth = oss2.StsAuth(creds.accessKeyId,
# creds.accessKeySecret, creds.securityToken)
# oss_client = oss2.Bucket(auth, 'oss-%s-internal.aliyuncs.com' %
# context.region, oss_bucket_name)
# 原来的
# 后改的,获取阿里云OSS触发的参数
evt = json.loads(event)
evt = evt['events'][0]
oss_bucket_name = evt['oss']['bucket']['name']
object_key = evt['oss']['object']['key']
output_dir = os.path.dirname(object_key)
dst_format = 'mp4'
shortname, _ = get_fileNameExt(object_key)
creds = context.credentials
auth=oss2.StsAuth(
creds.access_key_id,
creds.access_key_secret,
creds.security_token)
oss_client = oss2.Bucket(auth, 'oss-%s-internal.aliyuncs.com' %
context.region, oss_bucket_name)
改完后部署代码重新部署
上传一个.MOV文件看看是否有触发及处理结果
可以在OSS中看到对应的1.MOV文件的1.mp4文件