#StackBounty: #command-line #video #ffmpeg #avconv #video-editing Incorrect scene change detection with avconv

Bounty: 200

According to this article
I used successfully the command

$ ffmpeg -vf "select='eq(pict_type,I)'" -i somevideo.mp4 -vsync 0 -f image2 /tmp/thumbnails-%02d.jpg

I tried the second command:

$ ffmpeg -vf "select='gt(scene,0.9)'" -i somevideo.mp4 -vsync 0 -f image2 /tmp/thumbnails-%02d.jpg

but ended with error:

Undefined constant or missing '(' in 'scene'

Because

$ ffmpeg -version
ffmpeg version 0.8.17-4:0.8.17-0ubuntu0.12.04.1, Copyright (c) 2000-2014 the Libav developers
  built on Mar 16 2015 13:28:23 with gcc 4.6.3
The ffmpeg program is only provided for script compatibility and will be removed
in a future release. It has been deprecated in the Libav project to allow for
incompatible command line syntax improvements in its replacement called avconv
(see Changelog for details). Please use avconv instead.
ffmpeg 0.8.17-4:0.8.17-0ubuntu0.12.04.1
libavutil    51. 22. 3 / 51. 22. 3
libavcodec   53. 35. 0 / 53. 35. 0
libavformat  53. 21. 1 / 53. 21. 1
libavdevice  53.  2. 0 / 53.  2. 0
libavfilter   2. 15. 0 /  2. 15. 0
libswscale    2.  1. 0 /  2.  1. 0
libpostproc  52.  0. 0 / 52.  0. 0

I tried to use rather avconv. It runs both commands successfully, but in both cases it generates incorrect results (too many frames, so seemingly ignoring the video filter expression).

How can I correct my ffmpeg or avconv to give the right results?


Get this bounty!!!

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.