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.pswp.cn/news/379375.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/379375.shtml
英文地址,請注明出處:http://en.pswp.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;讓在掙扎中。之所以推薦計算幾何…