ffmpeg 命令裁剪合并

1 mp4格式:
裁剪从一个视频中的1分钟、2分钟、3分钟开始截取10秒
ffmpeg -i test_1280x720.mp4 -ss 00:01:00 -t 10 -codec copy copy1.mp4
ffmpeg -i test_1280x720.mp4 -ss 00:02:00 -t 10 -codec copy copy2.mp4
ffmpeg -i test_1280x720.mp4 -ss 00:03:00 -t 10 -codec copy copy3.mp4
在这里插入图片描述
合并:
方法1:
ffmpeg -i “concat:copy1.mp4|copy2.mp4|copy3.mp4” -codec copy out_mp41.mp4
(这个方法播放完第一个视频后,没继续播放后面的)
在这里插入图片描述
方法2:
ffmpeg -f concat -i mp4list.txt -codec copy out_mp42.mp4
在这里插入图片描述
mp4list.txt:
在这里插入图片描述
2 ts格式:
转成ts格式
ffmpeg -i copy1.mp4 -codec copy -vbsf h264_mp4toannexb copy_1.ts
ffmpeg -i copy2.mp4 -codec copy -vbsf h264_mp4toannexb copy_2.ts
ffmpeg -i copy3.mp4 -codec copy -vbsf h264_mp4toannexb copy_3.ts
在这里插入图片描述
合并:
方法1:
ffmpeg -i “concat:copy_1.ts|copy_2.ts|copy_3.ts” -codec copy out_ts1.mp4
在这里插入图片描述
方法2:
ffmpeg -f concat -i tslist.txt -codec copy out_ts2.mp4
在这里插入图片描述
tslist.txt:
在这里插入图片描述
(方法一和方法二在输出文件上时间有点不同,方法一中输出文件 时间38秒,但播放在20秒时就直接变成30秒,但画面是正常的。实际播放时间也是30秒)

3 flv格式:
转成flv格式
ffmpeg -i copy1.mp4 -codec copy copy1.flv
ffmpeg -i copy2.mp4 -codec copy copy2.flv
ffmpeg -i copy3.mp4 -codec copy copy3.flv
在这里插入图片描述
合并:
方法1:
ffmpeg -i “concat:copy1.flv|copy2.flv|copy3.flv” -codec copy out_flv1.mp4
在这里插入图片描述
(这个方法播放完第一个视频后,没继续播放后面的)

方法2:
ffmpeg -f concat -i flvlist.txt -codec copy out_flv2.mp4
在这里插入图片描述
flvlist.txt:
在这里插入图片描述
建议:1、使用方法二进行拼接
2、转成ts文件进行拼接

(分离某些封装格式(例如mp4/flv/mkv等)中的h264的时候,需要首先写入SPS和PPS,否则会导致分离出来 的数据没有SPS、PPS而 无法播放,h264码流的SPS和PPS信息存储在AVCodecContext结构体的extradata中,需要使用ffmpeg中名称为"h264_mp4toannexb"的bitstream filter处理)

不同编码格式的拼接情况
1:
修改音频编码

ffmpeg -i copy2.mp4 -vcodec copy -acodec ac3 -vbsf h264_mp4toannexb copy2_ac3.ts
此时是还可以播放的:ffplay copy2_ac3.ts
(播放时是有10秒,但知道文件显示只有4秒多)
在这里插入图片描述
mpeg -i “concat:copy_1.ts|copy2_ac3.ts|copy_3.ts” -codec copy out_ts1.mp4
ffplay out_ts1.mp4,播放完第一段就到第三段了,第二段没有了
在这里插入图片描述
1:
修改音频采样率

ffmpeg -i copy2.mp4 -vcodec copy -acodec aac -ar 96000 -vbsf h264_mp4toannexb copy2_aac.ts
在这里插入图片描述
ffmpeg -i “concat:copy_1.ts|copy2_aac.ts|copy_3.ts” -codec copy out_ts1.mp4
ffplay out_ts1.mp4,播放完第一段就到第三段了,第二段没有了
在这里插入图片描述
2:
修改视频编码格式

ffmpeg -i copy2.mp4 -vcodec libx265 -acodec copy copy2_265.ts
在这里插入图片描述
ffmpeg -i “concat:copy_1.ts|copy2_265.ts|copy_3.ts” -coc copy out_ts1.mp4
(播放到第二段时只声音正常,没画面,到第三段又恢复正常)

3:
修改视频分辨率

ffmpeg -i copy2.mp4 -vcodec libx264 -s 800x472 -acodec copy -vbsf h264_mp4toannexb copy2_264.ts
在这里插入图片描述
ffmpeg -i “concat:copy_1.ts|copy2_264.ts|copy_3.ts” -coc copy out_ts1.mp4
(可以播放)
在这里插入图片描述
最后:
1:视频分辨率可以不同,但是编码格式需要一样
2:音频编码格式需要一样,音频参数采样率、声道等也要一样的
3:把每个视频封装格式统一为ts流,在拼接输出时现设置需要的封装格式(MP4等)

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/379375.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Struts2初始化流程及源码分析

1.1 Struts2初始化 在讲Struts2的初始化之前,应该为大家描述下Web应用中的过滤器Filter,这关系到我们对核心过滤器FilterDispatcher的正确理解。 Filter:一个filter是一个对象,为每个请求资源(一个servlet或静态内容) &#xff0c…

实验1 数据库操作

实验1 数据库操作一、实验目的 1.掌握管理工具、T-SQL创建数据库的方法。 2.掌握管理工具、T-SQL修改和查看数据库的方法。 3.掌握管理工具、T-SQL删除数据库的方法。 4.掌握数据库的附加与分离 二、实验要求 1.创建实验所用到的“网上购物系统”数据库eshop。 三、实验内容 1…

Java FileInputStream finalize()方法与示例

FileInputStream类的finalize()方法 (FileInputStream Class finalize() method) finalize() method is available in java.io package. finalize()方法在java.io包中可用。 finalize() method is used to assure that close() method of this FileInputStream invokes when th…

逆风飞扬,吴仁宏

摘自逆风飞扬,吴仁宏自传 它是一个从"生而自卑"到"个性飞扬"的故事,当然具有传奇色彩 中国人几千年都不是天生的赢家,让我们努力,为国为家为自己,做赢家! 生存哲学 尼采 痛苦,挫折使生命迁长,使人…

ffmpeg 命令图片和视频相互转换

1当前文件环境: ffmpeg -i test.mp4 -y -f image2 -ss 00:00:02 -vframes 1 -s 640x360 test.jpg ffmpeg -i test.mp4 -y -f image2 -ss 00:00:02 -vframes 1 -s 640x360 test.bmp 使用ffplay test.jpb ffplay test.bmp 都是可以打开的 参数介绍: -y 如…

如何点击链接直接跳转到app store指定应用下载页面

转载自:http://blog.csdn.net/zengconggen/article/details/6789420 NSString *str [NSString stringWithFormat:"http://itunes.apple.com/us/app/id%d", 436957167]; [[UIApplication sharedApplication] openURL:[NSURL urlWithString:str]];其中&…

COLLEGE.sql(复制的时候注意路径!!!)

USE [master] GO /****** Object: Database [COLLEGE] Script Date: 2019/11/25 星期一 上午 08:57:11 / CREATE DATABASE [COLLEGE] ON PRIMARY ( NAME N’COLLEGE_m’, FILENAME N’F:\COLLEGE\COLLEGE.mdf’ , SIZE 51200KB , MAXSIZE UNLIMITED, FILEGROWTH 10240KB )…

【管理】「本能叛逆」与「理性叛逆」

叛逆是一般人认知的负面名词,但是,很多人都忽略掉,它却是人类进步的重要因子。观察孩童的成长过程,十岁以后都会出现叛逆行为,相当令父母及师长头痛。然而,叛逆却是促使孩童突破家庭单一环境养成的认知与观…

Java Double类parseDouble()方法的示例

Double类parseDouble()方法 (Double class parseDouble() method) parseDouble() method is available in java.lang package. parseDouble()方法在java.lang包中可用。 parseDouble() method is used to return the double value corresponding to the given String or in oth…

ffmpeg命令 拉流

1: 拉流播放:rtmp (ffplay rtmp://server/live/streamName) ffplay -x 480 -y 320 rtmp://58.200.131.2:1935/livetv/cctv1 2: 拉流存储到文件:rtmp ffmpeg -i rtmp://58.200.131.2:1935/livetv/cctv1 -codec copy cctvrtmp.f…

小心pthread_cond_signal和SetEvent之间的差异

ZZ FROM: http://blog.csdn.net/absurd/article/details/1402433 转载时请注明出处和作者联系方式&#xff1a;http://blog.csdn.net/absurd 作者联系方式&#xff1a;Li XianJing <xianjimli at hotmail dot com> 更新时间&#xff1a;2006-12-19 今天帮同事查一个多线…

eshop.sql(复制的时候注意路径!!!)

USE [master] GO /****** Object: Database [eshop] Script Date: 2019/11/25 星期一 上午 08:54:14 / CREATE DATABASE [eshop] ON PRIMARY ( NAME N’eshop_dat’, FILENAME N’D:\eshop\eshop_dat.mdf’ , SIZE 10240KB , MAXSIZE 51200KB , FILEGROWTH 5120KB ) LOG O…

doublevalue_Java Double类doubleValue()方法与示例

doublevalueDouble类doubleValue()方法 (Double class doubleValue() method) doubleValue() method is available in java.lang package. doubleValue()方法在java.lang包中可用。 doubleValue() method is used to return the value denoted by this Double object converted…

ffmpeg 命令过滤器裁剪

1 图片操作&#xff1a; 原图&#xff1a; 使用ffplay 显示左半边 ffplay -i input.png -vf cropiw/2:ih:0:0 可以通过ffmpeg 保存 ffmpeg -i input.png -vf cropiw/2:ih:0:0 out.png 2 视频操作&#xff1a; 原视频&#xff1a; 显示左半边 ffplay -i cctvhttp.flv -vf …

去除aspx生成的页面最开始的空行

使用.aspx生成的页面一般都会有一个或多个空行&#xff0c;当然这些空行不会影响页面在浏览器中的渲染结果&#xff0c;不过在查看源代码的时候感觉有些别扭&#xff0c;我曾试着去删除这些空行&#xff0c;但没有成功&#xff0c;你知道你们有没有去尝试。 1 <% Page Langu…

PUBLISH.sql(复制的时候注意路径!!!)

USE [master] – GO – /****** Object: Database [PUBLISH] Script Date: 2019/11/25 星期一 上午 09:00:04 / – CREATE DATABASE [PUBLISH] ON PRIMARY – ( NAME N’PUBLISH’, FILENAME N’F:\PUBLISH\PUBLISH.mdf’ , SIZE 51200KB , MAXSIZE UNLIMITED, FILEGROWTH …

c ++ 函数的esp指针_在C ++中通过指针访问成员函数

c 函数的esp指针Create a class along with data member and member functions and then access the member functions by using a pointer in C. 创建一个类以及数据成员和成员函数&#xff0c;然后使用C 中的指针访问成员函数。 如何通过指针访问成员函数&#xff1f; (How…

[iphone-cocos2d]分享一段Objective-C可调用的游戏中播放音乐(1)

首先需要引入AudioTool 这个framework 代码 -(id)initWithPath:(NSString *)path{ UInt32 size, maxPacketSize; char*cookie; inti; if(gThereIsAnActiveTrack) { NSLog("*** WARNING *** GBMusicTrack only plays one track at a time…

汇编语言-010(循环移位ROL,ROR 、进位循环进位RCL,RCR 、有符号数溢出 、双精度移位SHLD,SHRD、SHL和ADD计算 、位运算应用)

1 &#xff1a;循环移位ROL,ROR,带进位循环进位RCL,RCR .386 .model flat,stdcall.stack 4096 ExitProcess PROTO,dwExitCode:DWORD.code main PROC;循环左移mov al,40h ;AL 010000000brol al,1 ;AL 100000000b ,CF 0rol al,1 ;AL 000000001b ,CF 1rol al,1 ;A…

[Z]POJ 计算几何入门题目推荐[转PKKJ]

http://www.cnblogs.com/eric-blog/archive/2011/05/31/2064785.html http://hi.baidu.com/novosbirsk/blog/item/723a9727a9ab8804918f9dca.html其实也谈不上推荐&#xff0c;只是自己做过的题目而已&#xff0c;甚至有的题目尚未AC&#xff0c;让在挣扎中。之所以推荐计算几何…