This forum has been archived. All content is frozen. Please use KDE Discuss instead.

kdenlive SVN compilation problem with latest ffmpeg

Tags: None
(comma "," separated)
jmpoure_drupal
Registered Member
Posts
735
Karma
0

Hello,



This was noticed by JB.

compiling kdenlive svn fails with latest ffmpeg :



Quote:
[ 53%] Building CXX object kdenlive/CMakeFiles/kdenlive.dir/krender.o

In file included from /home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:28:

/usr/include/ffmpeg/libavformat/avformat.h:40:32: error: libavcodec/avcodec.h: Aucun fichier ou répertoire de ce type

/usr/include/ffmpeg/libavformat/avformat.h:170:5: warning: "AV_VERSION_INT" is not defined

/usr/include/ffmpeg/libavformat/avformat.h:170:5: error: missing binary operator before token "("

/usr/include/ffmpeg/libavformat/avformat.h:549:5: warning: "AV_VERSION_INT" is not defined

/usr/include/ffmpeg/libavformat/avformat.h:549:5: error: missing binary operator before token "("

In file included from /home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:28:

/usr/include/ffmpeg/libavformat/avformat.h:135: error: expected initializer before ‘attribute_deprecated’

/usr/include/ffmpeg/libavformat/avformat.h:155: error: ‘AVRational’ does not name a type

/usr/include/ffmpeg/libavform

at/avformat.h:160: error: use of enum ‘PixelFormat’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:194: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:195: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:211: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:313: error: ISO C++ forbids declaration of ‘AVCodecContext’ with no type

/usr/include/ffmpeg/libavformat/avformat.h:313: error: expected ‘;’ before ‘*’ token

/usr/include/ffmpeg/libavformat/avformat.h:322: error: ‘AVRational’ does not name a type

/usr/include/ffmpeg/libavformat/avformat.h:336: error: ‘AVRational’ does not name a type

/usr/include/ffmpeg/libavformat/avformat.h:340: error: use of enum ‘AVDiscard’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:399: error: use of enum ‘AVDiscard’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:409: error: ‘AVRational’ does not name a type

/usr/include/ffmpeg/libavformat/avformat.h:424: error: ISO C++ forbids declaration of ‘AVClass’ with no type

/usr/include/ffmpeg/libavformat/avformat.h:424: error: expected ‘;’ before ‘*’ token

/usr/include/ffmpeg/libavformat/avformat.h:510: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:515: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:520: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:557: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:557: error: invalid type in declaration before ‘;’ token

/usr/include/ffmpeg/libavformat/avformat.h:573: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:574: error: use of enum ‘CodecType’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:574: error: invalid type in declaration before ‘;’ token

/usr/include/ffmpeg/libavformat/avformat.h:625: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:625: error: invalid type in declaration before ‘;’ token

/usr/include/ffmpeg/libavformat/avformat.h:626: error: use of enum ‘CodecID’ without previous declaration

/usr/include/ffmpeg/libavformat/avformat.h:785: error: ‘AVRational’ has not been declared

/usr/include/ffmpeg/libavformat/avformat.h:933: error: expected constructor, destructor, or type conversion before ‘int’

/usr/include/ffmpeg/libavformat/avformat.h:939: error: expected constructor, destructor, or type conversion before ‘int’

In file included from /home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:35:

/usr/share/qt3/include/qxml.h:227: warning: ‘class QXmlReader’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:410: warning: ‘class QXmlContentHandler’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:427: warning: ‘class QXmlErrorHandler’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:436: warning: ‘class QXmlDTDHandler’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:444: warning: ‘class QXmlEntityResolver’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:451: warning: ‘class QXmlLexicalHandler’ has virtual functions but non-virtual destructor

/usr/share/qt3/include/qxml.h:464: warning: ‘class QXmlDeclHandler’ has virtual functions but non-virtual destructor

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.h: In constructor ‘KRender::KRender(const QString&, QWidget*, const char*, int, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.h:204: warning: ‘KRender::m_externalwinid’ will be initialized after

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.h:184: warning: ‘double KRender::m_framePosition’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:73: warning: when initialized here

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.h:187: warning: ‘KRender::m_generateScenelist’ will be initialized after

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.h:156: warning: ‘bool KRender::isBlocked’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:73: warning: when initialized here

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:88: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:93: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:119: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: At global scope:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:171: warning: unused parameter ‘self’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘int KRender::resetRendererProfile(char*)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:202: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:228: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘QPixmap KRender::extractFrame(int, int, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:300: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘QPixmap KRender::getVideoThumbnail(QString, int, int, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:349: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::getImage(KURL, int, QPoint)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:370: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::getFileProperties(KURL, uint)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:461: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:479: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:506: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:507: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:508: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:509: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:517: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:518: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:519: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:520: error: ‘struct AVStream’ has no member named ‘codec’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::setSceneList(QDomDocument, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:615: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:659: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘const GenTime& KRender::seekPosition() const’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:901: warning: returning reference to temporary

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:902: warning: returning reference to temporary

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: At global scope:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:931: warning: unused parameter ‘srcFileName’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:931: warning: unused parameter ‘port’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:931: warning: unused parameter ‘startTime’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:931: warning: unused parameter ‘endTime’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::exportCurrentFrame(KURL, bool)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:947: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltCheckLength()’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:995: warning: passing ‘double’ for argument 2 to ‘int Mlt::Playlist::remove_region(int, int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:997: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltInsertClip(int, GenTime, QString)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1030: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1034: warning: passing ‘double’ for argument 1 to ‘int Mlt::Playlist::insert_at(int, Mlt::Producer&, int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltCutClip(int, GenTime)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1052: warning: passing ‘double’ for argument 1 to ‘int Mlt::Playlist::split_at(int, bool)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltRemoveClip(int, GenTime)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1066: warning: passing ‘double’ for argument 1 to ‘int Mlt::Playlist::get_clip_index_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltRemoveEffect(int, GenTime, QString, QString, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1082: warning: passing ‘double’ for argument 1 to ‘Mlt::Producer* Mlt::Playlist::get_clip_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltAddEffect(int, GenTime, QString, QString, QMap)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1122: warning: passing ‘double’ for argument 1 to ‘Mlt::Producer* Mlt::Playlist::get_clip_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltEditEffect(int, GenTime, int, QString, QString, QMap)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1186: warning: passing ‘double’ for argument 1 to ‘Mlt::Producer* Mlt::Playlist::get_clip_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltResizeClipEnd(int, GenTime, GenTime, GenTime)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1228: warning: passing ‘double’ for argument 1 to ‘bool Mlt::Playlist::is_blank_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1230: warning: passing ‘double’ for argument 1 to ‘int Mlt::Playlist::get_clip_index_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1233: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1236: warning: passing ‘double’ for argument 2 to ‘int Mlt::Playlist::resize_clip(int, int, int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltResizeClipStart(int, GenTime, GenTime, GenTime, GenTime, GenTime)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1284: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1289: warning: passing ‘double’ for argument 1 to ‘bool Mlt::Playlist::is_blank_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1291: warning: passing ‘double’ for argument 1 to ‘int Mlt::Playlist::get_clip_index_at(int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1294: warning: passing ‘double’ for argument 2 to ‘int Mlt::Playlist::resize_clip(int, int, int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1294: warning: passing ‘double’ for argument 3 to ‘int Mlt::Playlist::resize_clip(int, int, int)’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1297: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltMoveClip(int, int, int, int)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1337: warning: unused variable ‘multiprod’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltMoveTransition(QString, int, int, GenTime, GenTime, GenTime, GenTime)’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1374: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1376: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1377: warning: converting to ‘int’ from ‘double’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: In member function ‘void KRender::mltSavePlaylist()’:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:1437: warning: deprecated conversion from string constant to ‘char*’

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp: At global scope:

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/krender.cpp:171: warning: ‘void consumer_stopped(mlt_consumer_s*, KRender*, mlt_frame_s*)’ defined but not used

make[2]: *** [kdenlive/CMakeFiles/kdenlive.dir/krender.o] Erreur 1

make[1]: *** [kdenlive/CMakeFiles/kdenlive.dir/all] Erreur 2

make: *** [all] Erreur 2



Any idea how to fix this problem?

phillc
Registered Member
Posts
5
Karma
0

You probably need to update the include path in the file krender.cpp and then re-compile Kdenlive.



I had the same problem with Open Movie Editor and here's how I fixed it:



http://stream0.org/2008/05/new-ffmpeg-c ... s-loc.html



The later versions of FFmpeg broke quite a few pieces of software. OME has released a new version that now works with recent FFmpeg SVN snapshots, but for Kdenlive in the meantime you might need to make these manual edits.





Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], rockscient