网站首页 > 技术教程 正文
在Node.js中,我们可以使用fluent-ffmpeg进行视频的合并、拼接、修改、转码、压缩等操作。网上的资料有很多,但是大部分是英文的,对于普通开发者来说,要轻松地了解使用方法还是很有难度的。
智趣配音Pro小程序是一款语音合成工具,受手机限制想要保存文件到相册,就必须以视频的格式才可以,那么就会需要对音频文件进行转码,并保存成视频文件,然后再下载到手机相册里。转码后的视频文件大小对于用户体验来说是相当重要的,在尽量保证不损失音质的情况下,压缩视频文件大小能显著提升用户下载速度。本文将简单介绍如何对音频进行转码并压缩视频。
生成视频文件步骤
- 我们需要准备一张图片和一段音频文件。
- 通过addInputs属性将图片和音频拼接。
- 通过size属性设置视频文件的大小。
- 通过videoBitrate设置视频码率。
- 通过videoCodec设置视频格式。
- 通过audioBitrate设置音频码率。
- 通过fps设置视频帧数。
通过上面步骤生成的文件大小会比较大,我们需要对视频文件大小进一步优化,最基础的办法是把码率数值降低,如果视频文件不需要播放动画只是一张图片的话,可以把FPS数值也降低改成1(默认为25)。
上面没提到的loop属性,需要指出的是这里是采用图片文件和音频文件进行拼接的视频,如果不设置视频长度,合成后的视频文件默认只有1秒,所以需要自行获取音频的长度,然后去循环图片的长度,保证视频长度和音频是一致。
如何进一步优化视频文件?
尝试了上面修改码率的方法后,发现最后码率改得再小,视频文件依然压缩有限,于是在网上搜索了参考了下别人的方案,发现比较靠谱的压缩方案是通过
ffmpeg的pass属性进行二次压缩。
如何实现呢?请接着往下看:
重点在outputOptions参数,通过pass属性对合成的视频进行2次编码,最后得到的文件能够有很大的压缩提升。
有兴趣的朋友可以参考上面的代码自己动手试一试,也可以点击下方小程序卡片访问体验一下。
(此处已添加小程序,请到今日头条客户端查看)
猜你喜欢
- 2024-11-06 Qt音视频开发9-ffmpeg录像存储(nba比赛录像回放)
- 2024-11-06 音视频开源基础 - ffmpeg命令(ffmpeg音频处理)
- 2024-11-06 ffmpeg常用命令行集锦(ffmpeg 命令大全)
- 2024-11-06 音视频开发7. ffmpeg 几个重要结构体
- 2024-11-06 超详细的手把手下载安装FFmpeg整个过程,你学会了吗?
- 2024-11-06 FFmpeg硬解码(ffmpeg硬解码和直接使用cuda的区别)
- 2024-11-06 mPEG-Lys(MAL)-DBCO,甲氧基PEG赖氨酸马来酰亚胺二苯并环辛炔
- 2024-11-06 音视频流媒体高级开发(FFmpeg6.0/WebRTC/RTMP/RTSP/编码解码)
- 2024-11-06 FFmpeg在windows的安装、合并、切片、.m4s、.m3u8处理
- 2024-11-06 完美解决Linux环境编译ffmpeg库(linux编译环境配置)
你 发表评论:
欢迎- 最近发表
-
- Win11学院:如何在Windows 11上使用WSL安装Ubuntu
- linux移植(Linux移植freemodbus)
- 独家解读:Win10预览版9879为何无法识别硬盘
- 基于Linux系统的本地Yum源搭建与配置(ISO方式、RPM方式)
- Docker镜像瘦身(docker 减小镜像大小)
- 在linux上安装ollama(linux安装locale)
- 渗透测试系统Kali推出Docker镜像(kali linux渗透测试技术详解pdf)
- Linux环境中部署Harbor私有镜像仓库
- linux之间传文件命令之Rsync傻瓜式教程
- 解决ollama在linux中安装或升级时,通过国内镜像缩短安装时长
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)
本文暂时没有评论,来添加一个吧(●'◡'●)