当前位置: 首页 > news >正文

m3u8手机批量转码_阿里云视频转码批量提交(mp4 to m3u8)

oss中有几百个视频需要转m3u8,发现界面没有批量提交功能,就想把表单参数找出来,用js来提交。

以下内容只对2020-02-11左右的阿里云后台有效。

1、表单界面

2、提交参数

3、参考代码

调用 sendData('目录/视频.mp4') 后

输出: ”目录/视频/视频.m3u8“

下面代码不能直接用,里面的参数:Bucket、OutputBucket、PipelineId、Location、OutputLocation、TemplateId、需要替换成自己的。

function sendData(str){

var input_file_name = str.substr(str.lastIndexOf('/') + 1).replace('.mp4','');

var input_file = str;

var output_file = str.substr(0,str.lastIndexOf('/') + 1) + input_file_name + "/" + input_file_name;

function encodeCHURI(p){

// encodeURIComponent

return encodeURI(encodeURI(p));

}

var pObj = {

Input:{ Bucket:"hzwh-video",Object:encodeCHURI(input_file),Location:"oss-cn-hangzhou"}, PipelineId:"1329180cda9f4931a73b94653afecda4",

OutputBucket:"hzwh-video",

OutputLocation:"oss-cn-hangzhou",

Outputs:[

{OutputObject:encodeCHURI(output_file),TemplateId:"S00000001-100020",Container:{Format:"m3u8"}}]

}

params_str = JSON.stringify(pObj);

let formData = new FormData();

formData.append("action",'SubmitJobs');

formData.append("params",params_str);

formData.append("product",'mts');

formData.append("region",'cn-hangzhou');

formData.append("umid",window.RISK_INFO.UMID);

formData.append("collina",RISK_INFO.GETUA());

formData.append("sec_token",ALIYUN_CONSOLE_CONFIG.SEC_TOKEN);

var str = '';

formData.forEach(function(v,k){

str += k + '=' + v ;

str += '&';

});

console.log(str);

fetch('https://mps.console.aliyun.com/data/api.json?action=SubmitJobs&t='+new Date().getTime(), {

method: 'POST',

// credentials: 'include',

headers: {

"Content-Type": "application/x-www-form-urlencoded"

},

body: str

}).then(function(response) {

console.log(response);

});

}

相关文章:

  • 什么项目可以发布?一切竭可外包——CSDN外包频道(57)
  • db2数据库连接数 linux_Db2数据库在Linux下的安装和配置
  • 丙戌年三伏第8天,雷雨交加,我彻底失去了你!
  • jetson nano 系统镜像制作_Jetson Nano 修改源镜像
  • 天融信防火墙重置配置_天融信防火墙怎么配置路由
  • 成为项目顾问的标准——客户满意度——CSDN外包实践(58)
  • Swing组件响应事件与自身重绘
  • 精密制造业行业_精密制造业的发展:精密制造业的深度报告
  • ASP.NET项目怎样进行管理?(VSS的使用)
  • nuxt 全局css_Nuxt开发经验分享,让你踩少点坑!
  • 能力越强,责任越重!——朱学恒和他主持的OOPS计划!
  • alexnet的程序代码实现及解释_AlexNet
  • python高阶技巧_干货分享:Python开发的高级技巧
  • 快回学校了,写点文章纪念一下吧!
  • collectors排序_Collectors.groupingBy分组后的排序问题
  • C语言笔记(第一章:C语言编程)
  • ESLint简单操作
  • IndexedDB
  • Java 内存分配及垃圾回收机制初探
  • JS变量作用域
  • Linux Process Manage
  • Mac转Windows的拯救指南
  • Mybatis初体验
  • Nacos系列:Nacos的Java SDK使用
  • Nodejs和JavaWeb协助开发
  • PHP 程序员也能做的 Java 开发 30分钟使用 netty 轻松打造一个高性能 websocket 服务...
  • Python十分钟制作属于你自己的个性logo
  • Rancher-k8s加速安装文档
  • 不上全站https的网站你们就等着被恶心死吧
  • 分享一个自己写的基于canvas的原生js图片爆炸插件
  • 小程序 setData 学问多
  • 转载:[译] 内容加速黑科技趣谈
  • Android开发者必备:推荐一款助力开发的开源APP
  • Play Store发现SimBad恶意软件,1.5亿Android用户成受害者 ...
  • ​VRRP 虚拟路由冗余协议(华为)
  • (06)金属布线——为半导体注入生命的连接
  • (1/2) 为了理解 UWP 的启动流程,我从零开始创建了一个 UWP 程序
  • (NSDate) 时间 (time )比较
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (三)c52学习之旅-点亮LED灯
  • (四)搭建容器云管理平台笔记—安装ETCD(不使用证书)
  • (一)Dubbo快速入门、介绍、使用
  • (幽默漫画)有个程序员老公,是怎样的体验?
  • (转)总结使用Unity 3D优化游戏运行性能的经验
  • .gitignore
  • .NET CF命令行调试器MDbg入门(四) Attaching to Processes
  • .NET 常见的偏门问题
  • .NET 线程 Thread 进程 Process、线程池 pool、Invoke、begininvoke、异步回调
  • .NET(C#、VB)APP开发——Smobiler平台控件介绍:Bluetooth组件
  • .NET的数据绑定
  • .NET多线程执行函数
  • .NET建议使用的大小写命名原则
  • [].shift.call( arguments ) 和 [].slice.call( arguments )
  • [20150904]exp slow.txt
  • [20170705]lsnrctl status LISTENER_SCAN1