2017-02-20 58 views
1

我有10s178s13s与内容合并视频后,持续时间过长 - FFmpeg的

file intro.mp4 
file video.mp4 
file outtro.mp4 

具有持续时间的TXT文件。

我使用的ffmpeg至3个文件合并成一个具有下面的命令:

ffmpeg -f concat -i "file.txt" -vcodec copy -acodec copy "endfile.mp4" 

endfile.mp4的持续时间较长11分钟(660s)。

我有一个问题,which params of video affect to merge?which common params to merge another videos?

我的英语实在太差。对不起:)
本周良好的工作!

P/S详细的Infor文件:

intro.mp4

ffprobe version N-82885-g6d09d6e Copyright (c) 2007-2016 the FFmpeg developers<br> 
    built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17)<br> 
    configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags='-L/root/ffmpeg_build/lib -ldl' --<br>bindir=/root/bin --pkg-config-flags=--static --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame<br> --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265<br> 
    libavutil  55. 43.100/55. 43.100<br> 
    libavcodec  57. 68.100/57. 68.100<br> 
    libavformat 57. 61.100/57. 61.100<br> 
    libavdevice 57. 2.100/57. 2.100<br> 
    libavfilter  6. 68.100/6. 68.100<br> 
    libswscale  4. 3.101/4. 3.101<br> 
    libswresample 2. 4.100/2. 4.100<br> 
    libpostproc 54. 2.100/54. 2.100<br> 
    Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/path/to/intro.mp4':<br> 
    Metadata:<br> 
    major_brand  : isom<br> 
    minor_version : 512<br> 
    compatible_brands: isomiso2avc1mp41<br> 
    encoder   : Lavf56.23.100<br> 
    Duration: 00:00:10.08, start: -0.013061, bitrate: 701 kb/s<br> 
    Stream #0:0(und): Audio: aac (LC) (mp4a/0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)<br> 
    Metadata:<br> 
    handler_name : SoundHandler<br> 
    Stream #0:1(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1920x1080, 853 kb/s, 24 fps, 24 tbr, 12288 tbn, 48 tbc (default)<br> 
    Metadata:<br> 
    handler_name : VideoHandler<br> 

outtro.mp4

ffprobe version N-82885-g6d09d6e Copyright (c) 2007-2016 the FFmpeg developers<br> 
    built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17)<br> 
    configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags='-L/root/ffmpeg_build/lib -ldl' --<br>bindir=/root/bin --pkg-config-flags=--static --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame<br> --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265<br> 
    libavutil  55. 43.100/55. 43.100<br> 
    libavcodec  57. 68.100/57. 68.100<br> 
    libavformat 57. 61.100/57. 61.100<br> 
    libavdevice 57. 2.100/57. 2.100<br> 
    libavfilter  6. 68.100/6. 68.100<br> 
    libswscale  4. 3.101/4. 3.101<br> 
    libswresample 2. 4.100/2. 4.100<br> 
    libpostproc 54. 2.100/54. 2.100<br> 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from '/path/to/outtro.mp4':<br> 
Metadata:<br> 
    major_brand  : isom<br> 
    minor_version : 512<br> 
    compatible_brands: isomiso2avc1mp41<br> 
    encoder   : Lavf56.23.100<br> 
Duration: 00:00:13.08, start: -0.013061, bitrate: 481 kb/s<br> 
Stream #0:0(und): Audio: aac (LC) (mp4a/0x6134706D), 44100 Hz, stereo, fltp, 128 kb/s (default)<br> 
Metadata:<br> 
    handler_name : SoundHandler<br> 
Stream #0:1(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1920x1080, 392 kb/s, 24 fps, 24 tbr, 12288 tbn, 48 tbc (default)<br> 
Metadata:<br> 
    handler_name : VideoHandler<br> 

video.mp4

ffprobe version N-82885-g6d09d6e Copyright (c) 2007-2016 the FFmpeg developers<br> 
    built with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-17)<br> 
    configuration: --prefix=/root/ffmpeg_build --extra-cflags=-I/root/ffmpeg_build/include --extra-ldflags='-L/root/ffmpeg_build/lib -ldl' --<br>bindir=/root/bin --pkg-config-flags=--static --enable-gpl --enable-nonfree --enable-libfdk_aac --enable-libfreetype --enable-libmp3lame<br> --enable-libopus --enable-libvorbis --enable-libvpx --enable-libx264 --enable-libx265<br> 
    libavutil  55. 43.100/55. 43.100<br><br> 
    libavcodec  57. 68.100/57. 68.100<br><br> 
    libavformat 57. 61.100/57. 61.100<br><br> 
    libavdevice 57. 2.100/57. 2.100<br><br> 
    libavfilter  6. 68.100/6. 68.100<br><br> 
    libswscale  4. 3.101/4. 3.101<br><br> 
    libswresample 2. 4.100/2. 4.100<br><br> 
    libpostproc 54. 2.100/54. 2.100<br><br> 
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'path/to/video.mp4':<br> 
    Metadata:<br> 
     major_brand  : isom<br> 
     minor_version : 512<br> 
     compatible_brands: isomiso2avc1mp41<br> 
     encoder   : Lavf57.61.100<br> 
    Duration: 00:02:58.38, start: 0.000000, bitrate: 922 kb/s<br> 
     Stream #0:0(und): Video: h264 (High) (avc1/0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 782 kb/s, 29.97 fps, 29.97 tbr, 30k <br>tbn, 59.94 tbc (default)<br> 
     Metadata:<br> 
      handler_name : VideoHandler<br> 
     Stream #0:1(und): Audio: aac (LC) (mp4a/0x6134706D), 44100 Hz, stereo, fltp, 130 kb/s (default)<br> 
     Metadata:<br> 
      handler_name : SoundHandler<br> 
+1

听起来像一个时基不匹配。显示三个文件的属性:'ffprobe file.mp4' – Mulvya

+0

@Mulvya我编辑了我的文章。我现在只获得如上所述的细节信息。更多信息我会稍后更新。他们有什么问题吗?冲突的任何参数? –

+0

我需要使用完整的输出。 – Mulvya

回答

3

介绍/首次和主视频的分辨率,帧率和时基不匹配。

转换你的片头/片尾这样,然后CONCAT:

ffmpeg -i intro.mp4 -s hd720 -r 30000/1001 -video_track_timescale 30k -c:a copy newintro.mp4 
+0

它的工作完美。我从你的答案中学到了很多东西。 Tks兄弟这么多! –