Hi,
I am having trouble getting ffmpeg to preserve the timecode when changing video from an mkv to a flv. The mkv is h.264 and I am using -vcodec copy. I am doing this because I need to play the files over adobe flash player using the new 10.1 api appendBytes method that require the flv fileformat.
Here is the command line:
Quote:
"ffmpeg.exe -i '400-001.mkv' -vcodec copy -acodec libmp3lame -ab 64k -ar 44100 -copyts '400-001.flv'"
|
I thought this was what the -copyts flag was for but I get the same file with or without it.
I am using one of the ffmpeg autobuilds:
Quote:
FFmpeg version SVN-r24228, Copyright (c) 2000-2010 the FFmpeg developers
built on Jul 13 2010 04:18:07 with gcc 4.4.2
configuration: --enable-gpl --enable-version3 --enable-libgsm --enable-pthread
s --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --
enable-libopenjpeg --enable-libschroedinger --enable-libopencore_amrwb --enable-
libopencore_amrnb --enable-libvpx --arch=x86 --enable-runtime-cpudetect --enable
-libxvid --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-librtmp --ext
ra-libs='-lrtmp -lpolarssl -lws2_32 -lwinmm' --target-os=mingw32 --enable-avisyn
th --cross-prefix=i686-mingw32- --cc='ccache i686-mingw32-gcc' --enable-memalign
-hack
libavutil 50.22. 0 / 50.22. 0
libavcodec 52.83. 0 / 52.83. 0
libavformat 52.73. 0 / 52.73. 0
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.22. 0 / 1.22. 0
libswscale 0.11. 0 / 0.11. 0
|
I have attached two small clips so you can see what I am talking about. If you open the mkv file in vlc you can see that the timecode starts at 00:00:12 and goes to 00:00:13 give or take. The flv however says it starts at 00:00:00 and goes until 00:00:13, but runs out of video after 1 second.
Sorry for the small files but I have a 300kb upload limit.
Here is the ffmpeg -i for the file:
Quote:
FFmpeg version SVN-r24228, Copyright (c) 2000-2010 the FFmpeg developers
built on Jul 13 2010 04:18:07 with gcc 4.4.2
configuration: --enable-gpl --enable-version3 --enable-libgsm --enable-pthread
s --enable-libvorbis --enable-libtheora --enable-libspeex --enable-libmp3lame --
enable-libopenjpeg --enable-libschroedinger --enable-libopencore_amrwb --enable-
libopencore_amrnb --enable-libvpx --arch=x86 --enable-runtime-cpudetect --enable
-libxvid --enable-libx264 --extra-libs='-lx264 -lpthread' --enable-librtmp --ext
ra-libs='-lrtmp -lpolarssl -lws2_32 -lwinmm' --target-os=mingw32 --enable-avisyn
th --cross-prefix=i686-mingw32- --cc='ccache i686-mingw32-gcc' --enable-memalign
-hack
libavutil 50.22. 0 / 50.22. 0
libavcodec 52.83. 0 / 52.83. 0
libavformat 52.73. 0 / 52.73. 0
libavdevice 52. 2. 0 / 52. 2. 0
libavfilter 1.22. 0 / 1.22. 0
libswscale 0.11. 0 / 0.11. 0
[flv @ 002fc220] Estimating duration from bitrate, this may be inaccurate
Seems stream 0 codec frame rate differs from container frame rate: 47.95 (48000/
1001) -> 23.98 (48000/2002)
Input #0, flv, from 'C:\...\400-003.flv':
Metadata:
duration : 14
width : 320
height : 176
videodatarate : 0
framerate : 24
videocodecid : 7
filesize : 85589
Duration: 00:00:13.97, start: 12.429000, bitrate: N/A
Stream #0.0: Video: h264, yuv420p, 320x176, 23.98 tbr, 1k tbn, 47.95 tbc
At least one output file must be specified
|