【ffmpeg】——批量合并视频
最近在做一个项目,关于视频下载的,需要同时对多个视频进行处理,这时我们用到了一个工
具——ffmpeg,工具具体的安装步骤大家可以度娘,在这就不一一介绍啦。
下面进入正题,该如何使用ffmpeg工具进行批量合并视频的工作?
首先我们会想到的方法是:
写到一个for循环中,循环遍历,然后依次执行各个命令:
/**** 生成批量合并视频命令** @param videos* @return*/publicstatic String montageVideos(List<Video> videos, String saveAddress) {StringoutPutCommand ="";StringgetNameCommands = "";Runtimeruntime =Runtime.getRuntime();for (int i = 0; i < videos.size(); i++) {Stringaddress =saveAddress +videos.get(i).getLive_id() + "/"+ videos.get(i).getId();StringchangeCommand ="ffmpeg -y -i " + address + ".mp4"+ " -vcodec copy -acodec copy -vbsf h264_mp4toannexb"+ address + ".ts";try {runtime.exec(changeCommand);} catch (IOException e) {// TODO Auto-generated catch blocke.printStackTrace();}StringgetNameCommand = address + ".ts|";if (i == videos.size() - 1) {getNameCommand= address + ".ts";}getNameCommands+=getNameCommand;outPutCommand= "ffmpeg -i \"" + "concat:" + getNameCommands+ "\" -acodec copy -vcodec copy -absf aac_adtstoasc "+ saveAddress + videos.get(i).getLive_id() + "/"+ videos.get(i).getLive_id() + ".mp4";}return outPutCommand;}
这样做的好处是保证视频合并之后的质量,首先先把它转换成ts流,然后再进行合并,这样做相对起来比较
麻烦,需要循环遍历依次生成命令。还有一种方法是写入TXT文件,然后利用命令进行批量合并:
1.建立一个TXT文件(video.txt),文件内容为:
File ‘文件全名’
File ‘123.flv’
……
2.利用合并命令:
ffmpeg -f concat -i video.txt -c copy output.mkv
这样是不是很简单呢?
【ffmpeg】——批量合并视频相关推荐
- 编写Bash脚本实现使用FFmpeg批量合并视频
前言 使用FFmpeg能够很方便的合并同分辨率的视频.很多时候我们可能需要批量化合并视频,此时可以通过编写Bash脚本来实现. 实现 批量合并视频 合并三个文件夹中的视频结果: result_path ...
- C++调用ffmpeg批量合并bilibili缓存视频
文章目录 前言 一.先看效果 二.开始写代码 1.遍历文件 2.获取视频标题和视频名称 3.生成视频 4.主函数 总结 前言 手机bilibili缓存了很多视频,想导入电脑看,但发现缓存的视频被分割成 ...
- 使用 ffmpeg 快速合并视频文件
1. 下载安装 ffmpeg 在官网上下载 ffmpeg 链接: Download FFmpeg windos 下下载 .ZIP 格式的 ffmpeg 直接解压即可,无需安装,之后配置好环境变量就好了 ...
- 命令行批量合并视频脚本
批量合并视频头部 需要ffmpeg, 目前直接安装格式工厂, 使用格式工厂模块下的ffmpge.exe, 避免自己去下载源码和编译 ffmpeg合并视频的几种方法 ffmpeg的合并方式有三种, 参考 ...
- FFmpeg批量转换视频格式
FFmpeg 批量转换视频格式 1.新建一个.bat文件(如新建"视频转换.bat"),将下列代码复制进去后保存. 2.将该文件放在含有视频的文件夹类,双击运行即可.运行完成后视频 ...
- 通过shell/bash脚本使用ffmpeg批量去除视频固定片头和片尾(Cygwin环境)
通过shell/bash脚本使用ffmpeg批量去除视频固定片头和片尾(Cygwin环境) 任务需求: 基本情况: 技能需求: 操作流程概括: 运行通过的shell脚本: 小结 任务需求: 对一批视频 ...
- java利用ffmpeg追加合并视频文件
java利用ffmpeg追加合并视频文件 首先要用到ffmpeg,可以根据操作系统自行下载 每个视频格式要一样,分辨率要一样 多个视频地址以list存放,直接上代码 /*** 合并视频文件* @par ...
- 教你如何操作,批量合并视频
在网上看到精彩的视频时长只有几秒不够看,想把多个视频合并成一个长视频该如何合并? 很多小伙伴不知道怎么操作,那么小编今天来分享一个小方法,一起来看看吧. 先运行软件,切换到"批量合并视频&q ...
- ffmpeg裁剪合并视频
ffmpeg提供简单的命令参数: ffmpeg -ss START -t DURATION -i INPUT -vcodec copy -acodec copy OUTPUT 对上面的命令稍做个解释. ...
最新文章
- 修改数据无法提交_学习篇管家婆物联通功能讲解--|修改客户
- 练习:卷积和池化过程中注意事项
- 实战SSM_O2O商铺_43【前端展示】店铺详情页面从后端到前端的实现
- java做 excel文件的 导入导出 (SSM+layer)
- 对list字段属性的部分修改的application
- RFC3261(5 协议结构)
- 6常见的HTML和CSS面试问答
- linux 安装sysstat使用iostat、mpstat、sar、sa(转载)
- 剑指Offer之寻找链表中环的入口问题
- java doubke类型转换为String_Java的基本数据类型你知道吗?
- 计算机网络-交换机配置
- OMS 订单管理系统
- 软件测试-----经常问道的面试题目
- 【竞赛篇-国创(大创)线上报告撰写(常用套话总结)】季度报告、中期报告、结题报告怎么写,用什么格式,附件传什么比较好
- 个人所得税个人计算机,个人所得税计算器(PC)版
- Error: L6218E: Undefined symbol
- 现在的男生为什么不主动追求女生了
- 2017.11.3作业
- AI智能语音客服机器人方案介绍/优点/核心
- linux hba卡 存储配置,Redhat安装hba卡,配置emc powerpath,配置LVM