[FFmpeg-user] Possible feature additions for concatenating video files
dg1727 at hushmail.com
dg1727 at hushmail.com
Wed Jan 4 21:58:01 CET 2012
Hello,
I am trying to concatenate (on Ubuntu Linux), without transcoding,
some FLV files which have H.264 video and AAC audio. They were
originally split from a longer video, so the frame rates must have
been the same originally.
First I changed the container from FLV to MP4 [1] as follows:
for f in *.flv; do \
ffmpeg -i "$f" -vcodec copy -acodec copy "${f%.flv}.mp4"; \
done
Next, I tried to concatenate the MP4 files using MP4Box. The
resulting file had the audio out of sync with the video. Then I
found, using "MP4Box -info", that the audio duration of each file
was different from the video duration, so [2] MP4Box didn't
concatenate the videos in the way I expected.
I browsed the discussion in [3], which told me that sometimes the
video-frames-per-second field of a video file is in error so that
software computes the wrong video duration from this field.
Indeed, calculating from the audio duration of one of my files
produced a video FPS of about 24.9787 instead of the 25.0000
indicated by the reported video duration. It seems like 24.9787 is
the correct value. I then thought of the following proposed
feature:
A. An option in FFmpeg to assume that the input file is correct
(audio and video have the same duration) except that only the video-
FPS field is wrong. This option would change only the video-FPS
field to make the computed video duration match the audio duration.
Preferably, this option could be given to the "ffmpeg" command in
the FLV-to-MP4 step listed above.
Also, I found a couple of software tools that gave me warnings
like, "This file uses H.264. If there are B-frames, something may
not work right." So I would also like the following feature:
B. A feature (maybe in ffprobe?) which reports the total number of
I-frames, P-frames, and B-frames in a given video stream (any
format, not just H.264). This way, if the file has no B-frames, I
can happily use tools on it that warn me that B-frames may cause
problems.
Do proposed features A and B already exist? If not, should I make
tickets in Trac to request that these features be added to FFmpeg?
If these features exist in software other than FFmpeg, I would be
interested to know that, but I would still like these features to
be in FFmpeg to make it more of a "one-stop shop." I hope these
features would not be hard to add to FFmpeg anyway.
I appreciate any comments.
[1] http://ubuntuforums.org/showthread.php?t=1687798&page=2
[2] comment 5 on
http://sourceforge.net/projects/gpac/forums/forum/287547/topic/48156
01
[3] http://forum.doom9.org/archive/index.php/t-157642.html
More information about the ffmpeg-user
mailing list