合并视频后,持续时间过长-ffmpeg [英] After merge videos, the duration is too long - ffmpeg

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

问题描述

我有包含内容的文件txt

I have file txt with content

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

,持续时间为10s178s13s.

我使用ffmpeg通过以下命令将3个文件合并为一个文件:

I use ffmpeg to merge 3 files into one with below command:

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

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

The duration of endfile.mp4 is longer 11 mins (660s).

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

我的英语真的太糟糕了.抱歉:)
本周好工作!

My English really too bad. Sorry for it :)
Good working this week!

P/S文件的详细信息:

P/S Details infor of files:

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>

推荐答案

简介/结尾和主要视频的分辨率,帧频和时基不匹配.

The resolution, frames rates and timebase of the intro/outro and main videos don't match.

像这样转换您的前奏/后奏,然后进行转换:

Convert your intro/outro like this and then concat:

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

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

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