在过去的4个小时里,我一直试图将2个.flv文件合并到一个使用ffmpeg(或者一般只是C#)。
这是我到目前为止所得到的: 我已将这两个视频转换为.mp4视频:
"-i " + videoFileLocation + " -c copy -copyts " + newConvertedFileLocation
然后我使用以下两个.mp4文件合并为一个文件: (txtPath是具有两个mp4文件位置的文本文件)
"-f concat -i " + txtPath + " -c copy " + saveLocation
最终会出现一个mp4文件,其中包含两个视频组合,但有以下错误:
第一个视频的长度为 0:05
第二个视频的长度 6:11
然而,合并视频的长度出于某种原因 07:51 - 因此视频的播放速度应该低于应有的速度。
此外,音频与视频异步。
我在这里做错了什么?
我之前没有使用过ffmpeg,我只是想让它工作。
非常感谢任何帮助!
这里要求的是运行'ffmpeg -i input1.flv -i input2.flv'的输出:
ffmpeg version 2.7 Copyright (c) 2000-2015 the FFmpeg developers built with gcc 4.9.2 (GCC)...
Input #0, mov,mp4,m4a,3gp,3g2,mj2, from 'filepath\input1.flv': Metadata:
major_brand : isom
minor_version : 512
compatible_brands: isomiso2avc1mp41
creation_time : 1970-01-01 00:00:00
encoder : Lavf53.24.2 Duration: 00:00:05.31, start: 0.000000, bitrate: 1589 kb/s
Stream #0:0(und): Video: h264 (Main) (avc1 / 0x31637661), yuv420p, 1280x720 [SAR 1:1 DAR 16:9], 1205 kb/s, 25 fps, 25 tbr, 12800 tbn, 50 tbc (default)
Metadata:
creation_time : 1970-01-01 00:00:00
handler_name : VideoHandler
Stream #0:1(und): Audio: aac (LC) (mp4a / 0x6134706D), 48000 Hz, 5.1, fltp, 384 kb/s (default)
Metadata:
creation_time : 1970-01-01 00:00:00
handler_name : SoundHandler Input #1, flv, from 'filepath\input2.flv': Metadata:
audiosize : 4476626
canSeekToEnd : true
datasize : 23876671
videosize : 19004263
hasAudio : true
hasCuePoints : false
hasKeyframes : true
hasMetadata : true
hasVideo : true
lasttimestamp : 372
metadatacreator : flvtool++ (Facebook, Motion project, dweatherford)
totalframes : 9298
encoder : Lavf56.36.100 Duration: 00:06:11.92, start: 0.080000, bitrate: 513 kb/s
Stream #1:0: Video: h264 (High), yuv420p, 646x364 [SAR 1:1 DAR 323:182], 400 kb/s, 25 fps, 25 tbr, 1k tbn, 50 tbc
Stream #1:1: Audio: aac (LC), 44100 Hz, stereo, fltp, 96 kb/s At least one output file must be specified