The State of FindFFMPEG.cmake

Michael Jansen info at michael-jansen.biz
Wed Jun 22 17:40:43 CEST 2011


The original is not better. I can't compile kdemultimedia currently because 
they did a source incompatible change. At least i think i have the original 
here. The opensuse package is not specific about that.

.../kdemultimedia/ffmpegthumbs/ffmpegthumbnailer/moviedecoder.cpp:125:64: 
error: 'CODEC_TYPE_VIDEO' was not declared in this scope

i hope no distro really incorporates the fork unless they rename their libs. 
We should probably ask on our packager list. They claim Ubuntu, Gentoo, Debian 
and OpenEmbedded already did. We have enough problems already. Don't need 
more.

Mike

On Wednesday 22 June 2011 16:57:45 Pau Garcia i Quiles wrote:
> Hi,
> 
> On top of that, there is the issue with libav, the fork of ffmpeg which is
> using the same library names, include directories, etc but changing APIs and
> IIRC even moving some functionality from one library to another.
> 
> I don't know if the reasons behind the fork were justified or not, but what
> is certain is it was executed in a very very unfriendly and dirty way,
> trying to harm and confuse as much as possible :-/
> 
> 
> 2011/6/22 Michael Jansen <info at michael-jansen.biz>
> 
> > Hi
> > 
> > We have four different files of that style flying aroung in kde
> > 
> > strigi/libstreamanalyzer/cmake/FindFFMPEG.cmake
> > kdelibs/cmake/modules/FindFFmpeg.cmake
> > kdemultimedia/cmake/modules/FindFFMPEG.cmake
> > amarok/cmake/modules/FindFFmpeg.cmake
> > 
> > They best is the kdelibs one. Some are plain out problematic. They for
> > example
> > look up their header with PATH_SUFFIX libavcodec but include with
> > <libavcodec/avcodec.h> (kdemultimedia). which break the build for some
> > of
> > us.
> > 
> > The others seem to stem from the fact that they need different parts of
> > ffmpeg. amarok only looks for avcodec and avformat. kdemultimedia looks
> > for swscale additionaly.
> > 
> > I tried to clean up the stuff with the attached file. Please review. It
> > uses
> > the components approach.
> > 
> > Questions: There seems to be no way to check for a ffmpeg version
> > because
> > it
> > has no global one. Perhaps it is a bad idea to look for ffmpeg and
> > instead provide one FindXYZ.cmake file for each component. For now i
> > export the individual version so potential users can check themselve.
> > 
> > There are some @QUESTION comments in that script.
> > 
> > And i have a problem with macro_optional_find_package and the analog
> > thing from strigi. They do not account for potential COMPONENT
> > arguments to the required module. Another argument for a split
> > find_package for each component?
> > Without a solution to that problem this file is useless. All modules use
> > the
> > macros to find ffmpeg.
> > 
> > Mike
> > 
> > 
> > _______________________________________________
> > Kde-buildsystem mailing list
> > Kde-buildsystem at kde.org
> > https://mail.kde.org/mailman/listinfo/kde-buildsystem


More information about the Kde-buildsystem mailing list