使用ffmpeg合并视频 [英] Merge video with ffmpeg

查看:3484
本文介绍了使用ffmpeg合并视频的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试过这个命令:
ffmpeg -i'concat:10.mov | 11.mov'-codec copy out.mov
输出文件out.mov仅显示第一部电影(10.mov)中的内容。



已经搜索了几个小时,尝试了很多东西,但没有任何作用。我想要这样做,而不需要重新编码文件。只需与相同的编解码器合并
ffmpeg版本3.2.4版权所有(c)2000-2017 FFmpeg开发人员
搭配Apple LLVM 8.0.0版(clang-800.0.42.1)
配置:--prefix = / usr / local / Cellar / ffmpeg / 3.2.4 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables - -enable-avresample --cc = clang --host-cflags = --host-ldflags = --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --disable-lzma --enable- vda
libavutil 55. 34.101 / 55. 34.101
libavcodec 57. 64.101 / 57. 64.101
libavformat 57. 56.101 / 57. 56.101
libavdevice 57. 1.100 / 57. 1.100
libavfilter 6. 65.100 / 6. 65.100
libavresample 3. 1. 0 / 3. 1. 0
libswscale 4. 2.100 / 4. 2.100
libswresample 2. 3.100 / 2。 3.100
libpostproc 54. 1.100 / 54. 1.100
[mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff678802600]找到重复的MOOV Atom。跳过它
输入#0,mov,mp4,m4a,3gp,3g2,mj2,from'concat:10.mov | 11.mov':
元数据:
creation_time:2017-03 -17T12:15:22.000000Z
major_brand:qt

minor_version:537134592
compatible_brands:qt

持续时间:00:00:29.96,开始:0.000000,比特率:140810 kb / s
流#0:0:视频:prores(apcn / 0x6E637061),yuv422p10le,1280x720,116735 kb / s,SAR 1:1 DAR 16:9,50 fps,50 tbr,5k tbn,5k tbc(默认)
元数据:
处理程序名称:Telestream Inc. Telestream媒体框架 - 本地99.99.999999
编码器:Apple ProRes 422
输出#0,mov,to 'out.mov':
元数据:
compatible_brands:qt

major_brand:qt

minor_version:537134592
编码器:Lavf57.56.101
Stream#0:0:Video:prores(apcn / 0x6E637061),yuv422p10le,1280x720 [SAR 1:1 DAR 16:9],q = 2-31,116735 kb / s,50 fps,50 tbr,10k tbn ,5k tbc(defa $)
元数据:
处理程序名称:Telestream Inc. Telestream媒体框架 - 本地99.99.999999
编码器:Apple ProRes 422
流映射:
流#0:0 - > #0:0(复制)
按[q]停止,[?]寻求帮助
frame = 1498 fps = 0.0 q = -1.0 Lsize = 426938kB time = 00:00:29.94 bitrate = 116815.8 kbits / s speed = 50.8x

视频:426930kB音频:0kB字幕:0kB其他流:0kB全局头文件:0kB多路复用开销:0.001997%



任何想法?如果我有这个工作,会使我的生活变得更容易:)

解决方案

Quicktime文件有一个索引,所以不能使用concat协议等哑umb umb be be be。。。。。。。。p p p p p p p p::::::::::::::::::::::::::::: > #1 创建文本文件。

 文件'10 .mov'
文件'11 .mov'

#2 加入他们

  ffmpeg -f concat -i list.txt -c copy merged.mov 


I have tried this command: ffmpeg -i 'concat:10.mov|11.mov' -codec copy out.mov The output file out.mov only shows whats in the first movie (10.mov).

Been googling for several hours and tried lots of things but nothing works. I want this done without re-encoding the files. Just merge with the same codec ffmpeg version 3.2.4 Copyright (c) 2000-2017 the FFmpeg developers built with Apple LLVM version 8.0.0 (clang-800.0.42.1) configuration: --prefix=/usr/local/Cellar/ffmpeg/3.2.4 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-libmp3lame --enable-libx264 --enable-libxvid --enable-opencl --disable-lzma --enable-vda libavutil 55. 34.101 / 55. 34.101 libavcodec 57. 64.101 / 57. 64.101 libavformat 57. 56.101 / 57. 56.101 libavdevice 57. 1.100 / 57. 1.100 libavfilter 6. 65.100 / 6. 65.100 libavresample 3. 1. 0 / 3. 1. 0 libswscale 4. 2.100 / 4. 2.100 libswresample 2. 3.100 / 2. 3.100 libpostproc 54. 1.100 / 54. 1.100 [mov,mp4,m4a,3gp,3g2,mj2 @ 0x7ff678802600] Found duplicated MOOV Atom. Skipped it Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'concat:10.mov|11.mov': Metadata: creation_time : 2017-03-17T12:15:22.000000Z major_brand : qt
minor_version : 537134592 compatible_brands: qt
Duration: 00:00:29.96, start: 0.000000, bitrate: 140810 kb/s Stream #0:0: Video: prores (apcn / 0x6E637061), yuv422p10le, 1280x720, 116735 kb/s, SAR 1:1 DAR 16:9, 50 fps, 50 tbr, 5k tbn, 5k tbc (default) Metadata: handler_name : Telestream Inc. Telestream Media Framework - Local 99.99.999999 encoder : Apple ProRes 422 Output #0, mov, to 'out.mov': Metadata: compatible_brands: qt
major_brand : qt
minor_version : 537134592 encoder : Lavf57.56.101 Stream #0:0: Video: prores (apcn / 0x6E637061), yuv422p10le, 1280x720 [SAR 1:1 DAR 16:9], q=2-31, 116735 kb/s, 50 fps, 50 tbr, 10k tbn, 5k tbc (default) Metadata: handler_name : Telestream Inc. Telestream Media Framework - Local 99.99.999999 encoder : Apple ProRes 422 Stream mapping: Stream #0:0 -> #0:0 (copy) Press [q] to stop, [?] for help frame= 1498 fps=0.0 q=-1.0 Lsize= 426938kB time=00:00:29.94 bitrate=116815.8kbits/s speed=50.8x
video:426930kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 0.001997%

Any ideas? Would make my life very much easier if I got this to work :)

解决方案

Quicktime files have an index, so can't be joined using a dumb operation such as the concat protocol.

The concat demuxer is required for such formats:

#1 Create a text file.

file '10.mov'
file '11.mov'

#2 Join them

ffmpeg -f concat -i list.txt -c copy merged.mov

这篇关于使用ffmpeg合并视频的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆