ffmpeg使用笔记——视频的剪切与合并

〇、ffmpeg版本号

7.1.0

一、基本命令

1.1 剪切

ffmpeg -ss 0:53:25 -t 0:00:50 -i N:\Test\Sample.mkv -vcodec copy -acodec copy N:\Test\Cut.mkv.mkv

1.2 拼接

#博客教程里没有 -safe 0 这一项,加上就可以拼接mkv格式纯视频

ffmpeg -f concat -safe 0 -i N:\Test\list.txt -c copy N:\Test\Merge.mkv

list.txt 格式

file 'N:\Test\Sample1.mkv'
file 'N:\Test\Sample2.mkv'

二、mkv格式

2.1 mkv纯视频、mka纯音频

基本正常
但持续时间会有问题,需要逐帧精确剪切会有问题

#命令

ffmpeg -ss 00:40:00 -t 0:02:00 -i N:\Test\Sample.mkv -vcodec copy -acodec copy N:\Test\Cut.mkv

#结果

frame= 2909 fps=0.0 q=-1.0 Lsize=   37515kB time=00:01:59.97 bitrate=2561.5kbits
/s speed= 513x

2.2 单音轨多字幕

#命令

ffmpeg -ss 00:00:10 -t 0:01:00 -i N:\Test\Sample.mkv -vcodec copy -acodec copy N:\Test\Cut.mkv

只能导出单音轨单字幕
视频从原起始位置开始,实际持续时间为ss+t
视频内容结束后持续黑屏,直至原结束位置

2.2.1 字幕问题的解释

#输入

Stream #0:0(jpn): Video: h264 (High) (H264 / 0x34363248), yuv420p(progressiv
e), 1920x1080 [SAR 1:1 DAR 16:9], q=2-31, 23.98 fps, 23.98 tbr, 1k tbn, 1k tbc (
default)

Stream #0:1(jpn): Audio: aac (LC) ([255][0][0][0] / 0x00FF), 48000 Hz, stere
o, fltp (default)
Stream #0:2(chi): Subtitle: ass (default)
Stream #0:3(chi): Subtitle: ass
Stream #0:4(jpn): Subtitle: ass

#结果

Stream mapping:
  Stream #0:0 -> #0:0 (copy)
  Stream #0:1 -> #0:1 (copy)
  Stream #0:2 -> #0:2 (ass (ssa) -> ass (ssa))

ffmpeg只输出了有default标记的文件流,所以导致单字幕
同理应该可以解释输入多音轨视频、输出单音轨视频的问题

2.3 多音轨多字幕

只能导出单音轨单字幕
视频起始位置、实际持续时间均正常
视频内容结束后持续黑屏,直至原结束位置

2.4 总结

可以认为,先分流音视频是必须的,不仅可以避免上述问题
而且非mkv格式纯视频、mka格式纯音频,会导致导出的文件比特率无法显示
无论是由MKVExtractGUI分流的AAC音频,还是直接用ffmpeg剪切的mkv格式带音轨视频,都无比特率

三、纯音频

3.1 AAC格式

#照搬裁剪视频格式,无法运行

ffmpeg -ss 00:00:10 -t 0:01:00 -i N:\Test\Sample.aac -vcodec copy -acodec copy N:\Test\Cut.aac

#只删去 -vcodec copy 依然不行;删去 -vcodec copy -acodec copy 可以运行,但出现了转码过程

ffmpeg -ss 00:00:10 -t 0:01:00 -i N:\Test\Sample.aac N:\Test\Cut.aac

#上述两个命令都会出现如下提示
#出现在输入之前

[aac @ 000000000054a9a0] Estimating duration from bitrate, this may be inaccurate

#第二个命令的输出与结果

Stream mapping:                                                       #Stream mapping出现在Output之前
  Stream #0:0 -> #0:0 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
Output #0, adts, to 'N:\Test\Cut.aac':
  Metadata:
    encoder : Lavf57.76.100                                       #重编码
    Stream #0:0: Audio: aac (LC), 48000 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder : Lavc57.102.100 aac
size= 982kB time=00:01:00.01 bitrate= 134.0kbits/s speed=21.7x

虽然单纯在ffmpeg中,可以避开处理AAC音频的问题。但后续如果使用Ae乃至MeGUI(忘了MeGUI输出是什么格式的了,至少Ae导出的AAC是个问题,除非换个音频格式),还是会遇上这个问题。

3.2 M4A格式

M4A格式没问题,仿照视频方法即可

3.3 MP3格式

同上,并且虽然在cmd中会出现中文标记乱码的情况,但输出文件的标记没有问题。

#乱码情况

Input #0, mp3, from ' N:\Test\Sample.mp3':
  Metadata:
    artist             : 涓冩湹缁勫悎
    title               : 涓嶄竴鏍风殑鎴
    comment      : V1.0
  Duration: 00:04:17.72, start: 0.000000, bitrate: 320 kb/s
    Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 320 kb/s
Output #0, mp3, to 'N:\Test\Cut.mp3':
  Metadata:
    TPE1            : 涓冩湹缁勫悎
    TIT2             : 涓嶄竴鏍风殑鎴
    comment      : V1.0
    TSSE           : Lavf57.76.100
    Stream #0:0: Audio: mp3, 44100 Hz, stereo, s16p, 320 kb/s

#输出文件代码

General
Complete name           : N:\Test\Cut.mp3 
Format                         : MPEG Audio
File size                       : 2.29 MiB
Duration                       : 1 min 0 s
Overall bit rate mode   : Constant
Overall bit rate             : 320 kb/s
Track name                  : Sample
Performer                     : Sample
Writing library               : LAME
comment                      : V1.0

3.4 Flac格式

可以剪切,放不了...

#命令

ffmpeg -ss 00:00:10 -t 0:01:00 -i N:\Test\Sample.flac -vcodec copy -acodec copy N:\Test\Cut.flac

#代码

Input #0, flac, from 'N:\Test\Sample.flac':
  Metadata:
    ALBUM           : 鏈堟弧寮
    ARTIST          : 鍒樼弬鐭
    TITLE           : 鏈堟弧寮
  Duration: 00:04:14.99, start: 0.000000, bitrate: 888 kb/s
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
Output #0, flac, to 'N:\Test\Cut.flac':
  Metadata:
    ALBUM           : 鏈堟弧寮
    ARTIST          : 鍒樼弬鐭
    TITLE           : 鏈堟弧寮
    encoder         : Lavf57.76.100
    Stream #0:0: Audio: flac, 44100 Hz, stereo, s16
Stream mapping:
  Stream #0:0 -> #0:0 (copy)
Press [q] to stop, [?] for help
size=    6102kB time=00:00:59.93 bitrate= 834.0kbits/s speed=3.84e+003x

四、MP4格式

没问题

没有尝试过MP4格式带软字幕的,估计一般也看不到

封装了章节等其他内容的,还是要把章节剔除,再剪辑。

最好就是干干净净的单音轨单视频轨,无论是MP4还是MKV封装。

五、FLV格式

没问题

六、H264格式纯视频

之前试过,似乎比AAC格式纯音频问题还大,根本读不了。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 214,658评论 6 496
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 91,482评论 3 389
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 160,213评论 0 350
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,395评论 1 288
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,487评论 6 386
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,523评论 1 293
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,525评论 3 414
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,300评论 0 270
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 44,753评论 1 307
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,048评论 2 330
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,223评论 1 343
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 34,905评论 5 338
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,541评论 3 322
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,168评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,417评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,094评论 2 365
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,088评论 2 352

推荐阅读更多精彩内容