[FFmpeg-user] frame drop while making video from image
anshul
anshul.ffmpeg at gmail.com
Wed Dec 11 11:32:18 CET 2013
I am using below ffmpeg command
ffmpeg -y -loglevel 'debug' -r 1/5 -f concat -i /tmp/tmpk7FXmb
-pix_fmt yuv420p -s 640x480
"output/Great_Lakes_region_timeshare_camp.mp4" 2> log.txt
I have only 25 image from what i want to make movie my fourth image is
dropped
Console output with value of duration,ost->sync_opts,in_picture->pts and
delta
ffmpeg version N-58950-g8e5a298 Copyright (c) 2000-2013 the FFmpeg
developers
built on Dec 10 2013 12:36:38 with gcc 4.7 (SUSE Linux)
configuration: --disable-optimizations
libavutil 52. 58.100 / 52. 58.100
libavcodec 55. 45.100 / 55. 45.100
libavformat 55. 22.100 / 55. 22.100
libavdevice 55. 5.102 / 55. 5.102
libavfilter 3. 92.100 / 3. 92.100
libswscale 2. 5.101 / 2. 5.101
libswresample 0. 17.104 / 0. 17.104
Input #0, concat, from '/tmp/tmpk7FXmb':
Duration: N/A, start: 0.000000, bitrate: N/A
Stream #0:0: Video: mjpeg, yuvj444p(pc), 640x480 [SAR 72:72 DAR
4:3], 25 tbr, 25 tbn, 25 tbc
[swscaler @ 0xb1b4040] deprecated pixel format used, make sure you did
set range correctly
Output #0, mp4, to 'output/Great_Lakes_region_timeshare_camp.mp4':
Metadata:
encoder : Lavf55.22.100
Stream #0:0: Video: mpeg4 ( [0][0][0] / 0x0020), yuv420p, 640x480
[SAR 1:1 DAR 4:3], q=2-31, 200 kb/s, 16384 tbn, 0.20 tbc
Stream mapping:
Stream #0:0 -> #0:0 (mjpeg -> mpeg4)
Press [q] to stop, [?] for help
duration1.000000 ost->sync_opts= 0 in_picture->pts=0 delta= 1.000000
Input stream #0:0 frame changed from size:640x480 fmt:yuvj444p to
size:279x181 fmt:yuvj420p
[swscaler @ 0xb483cc0] deprecated pixel format used, make sure you did
set range correctly
duration1.000000 ost->sync_opts= 1 in_picture->pts=0 delta= 0.000000
Input stream #0:0 frame changed from size:279x181 fmt:yuvj420p to
size:270x187 fmt:yuvj420p
[swscaler @ 0xb463200] deprecated pixel format used, make sure you did
set range correctly
duration1.000000 ost->sync_opts= 2 in_picture->pts=0 delta= -1.000000
Input stream #0:0 frame changed from size:270x187 fmt:yuvj420p to
size:279x181 fmt:yuvj420p
[swscaler @ 0xb463200] deprecated pixel format used, make sure you did
set range correctly
duration1.000000 ost->sync_opts= 3 in_picture->pts=0 delta= -2.000000
Input stream #0:0 frame changed from size:279x181 fmt:yuvj420p to
size:640x480 fmt:yuvj444p
[swscaler @ 0xb463200] deprecated pixel format used, make sure you did
set range correctly
duration1.000000 ost->sync_opts= 3 in_picture->pts=0 delta= -2.000000
duration1.000000 ost->sync_opts= 3 in_picture->pts=1 delta= -1.000000
duration1.000000 ost->sync_opts= 4 in_picture->pts=2 delta= -1.000000
duration1.000000 ost->sync_opts= 5 in_picture->pts=3 delta= -1.000000
duration1.000000 ost->sync_opts= 6 in_picture->pts=4 delta= -1.000000
duration1.000000 ost->sync_opts= 7 in_picture->pts=5 delta= -1.000000
duration1.000000 ost->sync_opts= 8 in_picture->pts=6 delta= -1.000000
duration1.000000 ost->sync_opts= 9 in_picture->pts=7 delta= -1.000000
duration1.000000 ost->sync_opts= 10 in_picture->pts=8 delta= -1.000000
duration1.000000 ost->sync_opts= 11 in_picture->pts=9 delta= -1.000000
duration1.000000 ost->sync_opts= 12 in_picture->pts=10 delta= -1.000000
duration1.000000 ost->sync_opts= 13 in_picture->pts=11 delta= -1.000000
duration1.000000 ost->sync_opts= 14 in_picture->pts=12 delta= -1.000000
duration1.000000 ost->sync_opts= 15 in_picture->pts=13 delta= -1.000000
duration1.000000 ost->sync_opts= 16 in_picture->pts=14 delta= -1.000000
duration1.000000 ost->sync_opts= 17 in_picture->pts=15 delta= -1.000000
duration1.000000 ost->sync_opts= 18 in_picture->pts=16 delta= -1.000000
duration1.000000 ost->sync_opts= 19 in_picture->pts=17 delta= -1.000000
duration1.000000 ost->sync_opts= 20 in_picture->pts=18 delta= -1.000000
duration1.000000 ost->sync_opts= 21 in_picture->pts=19 delta= -1.000000
duration1.000000 ost->sync_opts= 22 in_picture->pts=20 delta= -1.000000
duration1.000000 ost->sync_opts= 23 in_picture->pts=21 delta= -1.000000
frame= 24 fps=0.0 q=2.0 Lsize= 156kB time=00:02:00.00 bitrate=
10.7kbits/s dup=0 drop=2
video:155kB audio:0kB subtitle:0 global headers:0kB muxing overhead
0.580371%
I think in_picture->pts is not increasing quite well
I also don't undestand why it is changing my image to yuv444p ,according
to line one line from log
Input stream #0:0 frame changed from size:279x181 fmt:yuvj420p to
size:640x480 fmt:yuvj444p
I never asked ffmpeg to convert in pixel format to yuv444p, i asked for
yuv420p
I feel there is no problem in image, because in list of image i gave 2nd
and forth image same,
if it has converted yuv444p to yuv420p then nnext time when same image
come, it should
do same conversion properly
Please point me some document, so that I can make my timing
understanding good, It look like
these concepts of mine are weak
If all image are in yuv420p format already, then frame drop is not observed
More information about the ffmpeg-user
mailing list