js版ffmpeg压缩视频以及去除背景音乐
ffmepg地址:https://unpkg.com/@ffmpeg/ffmpeg@0.9.5/dist/ffmpeg.min.js
这个是网上编译好的,功能还挺多的,我自己不会编译,只能用别人的
用法也挺简单的:
<h3>视频前端压缩</h3>
<video id="output-video" controls></video><br/>
<input type="file" id="uploader">
<p id="message"></p>
引入:
<script src="https://unpkg.com/@ffmpeg/ffmpeg@0.9.5/dist/ffmpeg.min.js"></script>
<script src="https://code.jquery.com/jquery-2.1.4.min.js"></script>
调用:
<script>const { createFFmpeg, fetchFile } = FFmpeg;const message = document.getElementById('message');const ffmpeg = createFFmpeg({log: true,progress: ({ ratio }) => {message.innerHTML = `完成率: ${(ratio * 100.0).toFixed(2)}%`;},});const transcode = async ({ target: { files } }) => {const { name } = files[0];message.innerHTML = '正在加载 ffmpeg-core.js';await ffmpeg.load();message.innerHTML = '开始压缩';ffmpeg.FS('writeFile', name, await fetchFile(files[0]));// '-b','2000000' 值越小 压缩率越大await ffmpeg.run('-i', name,'-b','2000000','output.mp4');message.innerHTML = '压缩完成';const data = ffmpeg.FS('readFile', 'output.mp4');const video = document.getElementById('output-video');video.src = URL.createObjectURL(new Blob([data.buffer], {type: 'video/mp4'}));}document.getElementById('uploader').addEventListener('change', transcode);</script>
注:'-b','2000000'
,通过修改比特率来达到压缩视频的效果,2000000,这个压缩效果很不错,亲测
还可以用 -crf
方式压缩,设置 -qscale
质量参数压缩视频,不过这种方式只支持x264
ffmepg命令参数说明:https://www.cnblogs.com/chen1987lei/archive/2010/12/03/1895242.html
视频倒放:await ffmpeg.run('-i', name,'-vf', "reverse",'output.mp4');
视频剪切: await ffmpeg.run('-ss','00:00:00','-t','00:00:05','-i', name,'-vcodec', "copy","-acodec","copy",'output.mp4');
还有很多操作,可以自己尝试一下
去除视频背景音乐:
只需将上面命令加上 ‘-an’ 去除音频
如:await ffmpeg.run('-i', name,'-an','-b','2000000','output.mp4');
即可
效果还是可以的!
js版ffmpeg压缩视频以及去除背景音乐相关推荐
- ffmpeg 压缩视频
ffmpeg 压缩视频 代码 ffmpeg -i input.mp4 -r 30 -b:a 64k output.mp4 30: 帧数 64k: 表示音频的码率为64kb/s
- PHP使用ffmpeg压缩视频
PHP使用ffmpeg压缩视频 视频压缩可以有一下方式: 1.压缩分辨率 例如视频的分辨率是720x1280,可以压缩分辨率为360x640 2.压缩帧数 通过压缩视频的帧数来压缩,可以压缩视频的帧数 ...
- 七十行代码教你使用 python ffmpeg 压缩视频,再也不用担心视频过大了
前期准备 最近要压缩视频,然后发现一些压缩视频的工具要是收费,要么有水印,完全不符合要求啊.正当我发愁的时候突然想到,去年的时候接触过 ffmpeg ,可以用python ffmpeg 来压缩视频啊, ...
- 【视频编码】ffmpeg压缩视频文件
一.引言 首先,了解下播放视频的基本流程,如下图所示: 解封装:就是将输入的封装格式的数据,分离成为音频流压缩编码数据和视频流压缩编码数据.如上图,将MP4和FLV格式解封装成视频数据H264.MPE ...
- ffmpeg压缩视频
经常采用python+opencv处理视频会发现,当用VideoWriter写单帧的时候,实际上不会进行帧间压缩的.所以,往往处理一个视频的所有帧以后发现,输出视频变得非常大.因为就是一堆图片的集合. ...
- [技术杂谈][转载]ffmpeg压缩视频几个参数解析
Ffmpeg 视频压缩的几个关键参数 Ffmpeg的视频操作官网文档:FFmpeg Filters Documentation 视频压缩用到的参数主要为以下几个: 文件路径:-i 输入文件的路径 码率 ...
- 浅谈ffmpeg 压缩视频
1 首选需要安装ffmpeg 安装ffmpeg Linux 宝塔面板安装FFMpeg和编码库 yum install https://download1.rpmfusion.org/free/el/r ...
- python压缩视频文件_python使用zlib库压缩图片,使用ffmpeg压缩视频
# ffmpeg -i 1.mp4 -r 10 -pix_fmt yuv420p -vcodec libx264 -preset veryslow -profile:v baseline -crf 2 ...
- Java使用ffmpeg压缩视频
1.引入maven仓库 <dependency><groupId>ws.schild</groupId><artifactId>jave-core< ...
最新文章
- js的全部替换函数replaceAll
- Java Optional 的 orElse() 和 orElseGet() 的区别
- 10次迭代9次delay??拒绝项目延期,这里有一整套方法!
- php爱奇艺筛选标签,三种排序 快速筛选好视频_软件资讯技巧应用-中关村在线
- mootools温习与深入_Element_1
- Linux-Monitor-Tools
- 基于kali linux 跑字典暴力破解wifi教程
- [JS]Tue Feb 01 2022 000000 GMT+0800 (中国标准时间) 日期格式化
- 【高端黑】软件工程师去理发店
- UE4中动画优化与压缩
- 一个简单的JS(盒子移动)
- 保研夏令营、考研复试、出国时个人陈述模板与撰写注意事项
- matlab 直和,MATLAB求空间sdm的直接和间接效应
- Showing All Errors Only Command PhaseScriptExecution failed with a nonzero exit code
- 李开复:大学四年应是这样度过
- Xshell中鼠标选中内容自动换行ctrl+c解决办法
- mysql proxy 分库分表_OneProxy实现MySQL分库分表
- 如何降低客户流失率高的问题
- FIX:FusionCharts Suite XT 3.19.x
- 图解Windows98安装
热门文章
- uniCloud更新APP
- sklearn机器学习(五)线性回归算法测算房价
- Uni-App - 学习心得
- 关于22年应届生就业难发表一些自己的想法
- C语言项目实战:24点游戏计算器(基于结构体、指针、函数、数组、循环等知识点)
- 文件服务器的缩写,“SS”是“Shared Server”的缩写,意思是“共享服务器”
- stream流、数学类、String类的常用方法、date、密码等
- c# 实现金山词霸一样的屏幕取词
- nginx基础学习记录
- FlowControl: PauseFrame