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

Big Kdenlive update, please read

Tags: None
(comma "," separated)
j-b-m
Registered Member
Posts
804
Karma
1

Big Kdenlive update, please read

Sun Nov 11, 2007 8:30 pm

Hello everyone.



Have been very silent these last weeks, but I really needed a pause. I just commited some big changes in Kdenlive svn.

Most important changes:



Kdenlive now uses the MLT functions to manipulate the playlist, which means:

- All playlist operations (move, resize, cut, ...) are about 100% faster

- You can add effects, change parameters, add clips, etc while playing the timeline for more fun

- On the other side, as it is quite a big change, there might be some regressions in simple operations, this is still a bit experimental. Sometimes the timeline can become broken (especially transitions). If this happens, you can use the menu entry: View->Sync Timeline, that should repair the thing.



Effects are now created from XML files from the effects subdirectory.

It means that when a new effect is added to MLT, a simple XML file describing its parameters should be all that is needed to get the effect in Kdenlive



CMake is now required to compile Kdenlive

This means that to compile you have to do the following in source directory:

cmake .

make

sudo make install

To install in a folder other than /usr/local, use following cmake command before installing:

cmake . -DCMAKE_INSTALL_PREFIX=/path/to/your/install/folder

You may need to do a "make clean" when switching from the old build system to the new one.



There are probably a few things that are not working correctly with these changes (I still have an MLT patch to apply to fix a timeline imprecision), but it is worth the trouble if you consider the incredible speed gain.



Have fun & regards



jb

jmpoure_drupal
Registered Member
Posts
735
Karma
0

Thanks for the hard work.

jmpoure_drupal
Registered Member
Posts
735
Karma
0

Quote:
if g++ -DHAVE_CONFIG_H -I. -I. -I.. -I/usr/include/kde -I/usr/share/qt3/include -I. -I/usr/include -I/usr/include/mlt -D_REENTRANT -D__STDC_CONSTANT_MACROS -DQT_THREAD_SUPPORT -D_REENTRANT -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -fno-builtin -g3 -fno-inline -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DMLT_PREFIX=\""/usr"\" -DENABLE_FIREWIRE -MT kmonitor.moc.o -MD -MP -MF ".deps/kmonitor.moc.Tpo" -c -o kmonitor.moc.o kmonitor.moc.cpp; \

then mv -f ".deps/kmonitor.moc.Tpo" ".deps/kmonitor.moc.Po"; else rm -f ".deps/kmonitor.moc.Tpo"; exit 1; fi

/bin/sh ../libtool --silent --tag=CXX --mode=link g++ -Wno-long-long -Wundef -ansi -D_XOPEN_SOURCE=500 -D_BSD_SOURCE -Wcast-align -Wchar-subscripts -Wall -W -Wpointer-arith -fno-builtin -g3 -fno-inline -Wformat-security -Wmissing-format-attribute -Wno-non-virtual-dtor -fno-exceptions -fno-check-new -fno-common -DMLT_PREFIX=\""/usr"\" -DENABLE_FIREWIRE -o kdenlive -L/usr/share/qt3/lib -R /usr/lib -R /usr/lib -R /usr/share/qt3/lib -L/usr/lib -lmlt -lmlt++ avfilelist.o aviconviewitem.o avlistviewitem.o baselistviewitem.o capturemonitor.o clipdrag.o clipmanager.o clipproperties.o clippropertiesdialog.o configureprojectdialog.o createslideshowclip.o displayaudiodesc.o displayvideodesc.o docclipavfile.o docclipbase.o docclipbaselist.o docclipproject.o docclipref.o docclipreflist.o doccliptextfile.o docclipvirtual.o docsubclip.o doctrackbase.o doctrackbaselist.o doctrackclipiterator.o doctrackdecorator.o doctracksound.o doctrackvideo.o documentbasenode.o documentclipnode.o documentgroupnode.o documentmacrocommands.o dynamicToolTip.o effect.o effectcomplexkeyframe.o effectdesc.o effectdescriptionlist.o effectdoublekeyframe.o effectdrag.o effectkeyframe.o effectlistdialog.o effectparamcomplexdesc.o effectparamdesc.o effectparamdescfactory.o effectparamdialog.o effectparamdoubledesc.o effectparameter.o effectstack.o effectstackdialog.o effectstacklistview.o exportdvddialog.o exportwidget.o flatbutton.o folderlistviewitem.o gentime.o initeffects.o kaddclipcommand.o kaddeffectcommand.o kaddmarkercommand.o kaddrefclipcommand.o kaddtransitioncommand.o kclipplacer.o kdenlive.o kdenlivedoc.o kdenlivesetupdlg.o kdenlivesplash.o keditclipcommand.o keditmarkercommand.o kfixedruler.o kmmclipkeyframepanel.o kmmeditpanel.o kmmmonitor.o kmmrecpanel.o kmmrulerpanel.o kmmscreen.o kmmtimeline.o kmmtrackkeyframepanel.o kmmtrackpanel.o kmmtracksoundpanel.o kmmtrackvideopanel.o kmonitor.o kmoveclipscommand.o kplacer.o krender.o krendermanager.o kresizecommand.o krollcommand.o kruler.o krulermodel.o krulersliderbase.o krulertimemodel.o kscalableruler.o kselectclipcommand.o kthumb.o ktimeline.o ktrackpanel.o ktrackplacer.o ktrackview.o listviewtagsearch.o loadprojectfilter.o loadprojectkinofilter.o loadprojectnativefilter.o main.o monitormanager.o newproject.o newstuff.o playlist.o printproperties.o projectformatmanager.o projecticonview.o projectlist.o projectlistview.o rangelist.o saveprojectfilter.o saveprojectnativefilter.o saveprojectscenelistfilter.o snaptogrid.o timecode.o titlewidget.o trackpanelclipmovefunction.o trackpanelclipresizefunction.o trackpanelcliprollfunction.o trackpanelclipslipfunction.o trackpanelfunction.o trackpanelfunctionfactory.o trackpanelkeyframefunction.o trackpanelmarkerfunction.o trackpanelrazorfunction.o trackpanelselectnonefunction.o trackpanelspacerfunction.o trackpaneltransitionmovefunction.o trackpaneltransitionresizefunction.o trackviewaudiobackgrounddecorator.o trackviewbackgrounddecorator.o trackviewdecorator.o trackviewdoublekeyframedecorator.o trackviewmarkerdecorator.o trackviewnamedecorator.o trackviewtransitiondecorator.o trackviewvideobackgrounddecorator.o transition.o transitiondialog.o transitionpipwidget.o transitionstack.o transitionwipewidget.o westleylistviewitem.o addmarker_ui.o addtrackdialog_ui.o clipproperties_ui.o configcapture_ui.o confighard_ui.o configinterface_ui.o configmisc_ui.o configproject_ui.o configtimeline_ui.o configtitler_ui.o configureproject_ui.o createcolorclip_ui.o createimageclip_ui.o createslideshowclip_ui.o editencoder_ui.o editmetadata_ui.o effectstackdialog_ui.o exportbasewidget_ui.o exportdvd_ui.o firstrun_ui.o fixplaylist_ui.o kmmeditpanel_ui.o kmmrecpanel_ui.o kmmrulerpanel_ui.o loadprogress_ui.o newproject_ui.o projectview_ui.o titlebasewidget_ui.o trackheader_ui.o transitionaudiofade_ui.o transitioncrossfade_ui.o transitionlumafile_ui.o transitionpip_ui.o transitionwipe_ui.o kdenlivesettings.o kmmmonitor.moc.o trackpanelcliprollfunction.moc.o kruler.moc.o projectlistview.moc.o kscalableruler.moc.o kmmrecpanel.moc.o kdenlivesetupdlg.moc.o trackpanelclipslipfunction.moc.o exportdvddialog.moc.o trackpanelclipresizefunction.moc.o kmmtrackvideopanel.moc.o kmmscreen.moc.o docclipbase.moc.o createslideshowclip.moc.o docclipproject.moc.o doccliptextfile.moc.o effectlistdialog.moc.o kmmeditpanel.moc.o configureprojectdialog.moc.o doctrackbase.moc.o trackpanelrazorfunction.moc.o effectdrag.moc.o docclipref.moc.o kmmtracksoundpanel.moc.o docclipvirtual.moc.o clipproperties.moc.o kmmclipkeyframepanel.moc.o ktimeline.moc.o docsubclip.moc.o docclipavfile.moc.o kthumb.moc.o trackpanelspacerfunction.moc.o kdenlive.moc.o flatbutton.moc.o kmmtrackkeyframepanel.moc.o krender.moc.o titlewidget.moc.o krendermanager.moc.o trackpanelmarkerfunction.moc.o effectstackdialog.moc.o kmmtrackpanel.moc.o listviewtagsearch.moc.o projecticonview.moc.o newproject.moc.o capturemonitor.moc.o transitionpipwidget.moc.o monitormanager.moc.o clippropertiesdialog.moc.o trackpaneltransitionmovefunction.moc.o trackviewaudiobackgrounddecorator.moc.o effectstacklistview.moc.o ktrackview.moc.o exportwidget.moc.o transitionwipewidget.moc.o trackpaneltransitionresizefunction.moc.o trackpanelclipmovefunction.moc.o effectparamdialog.moc.o playlist.moc.o ktrackpanel.moc.o kmmrulerpanel.moc.o trackpanelfunction.moc.o trackpanelkeyframefunction.moc.o kfixedruler.moc.o kdenlivedoc.moc.o clipmanager.moc.o projectlist.moc.o transitiondialog.moc.o kmonitor.moc.o -lkdeprint -lkio -lkdeui -lkdecore -lqt-mt -lz -lpng -lz -lm -lXext -lX11 -lSM -lICE -lpthread -liec61883 -lknewstuff

documentmacrocommands.o: In function `Command::DocumentMacroCommands::razorSelectedClipsAt(Gui::KdenliveApp*, KdenliveDoc*, GenTime const&)':

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/documentmacrocommands.cpp:66: undefined reference to `Command::KRazorClipsCommand::KRazorClipsCommand(Gui::KdenliveApp*, KdenliveDoc*, DocTrackBase&, GenTime)'

trackpanelrazorfunction.o: In function `TrackPanelRazorFunction::mousePressed(Gui::KTrackPanel*, QMouseEvent*)':

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/trackpanelrazorfunction.cpp:97: undefined reference to `Command::KRazorClipsCommand::KRazorClipsCommand(Gui::KdenliveApp*, KdenliveDoc*, DocTrackBase&, GenTime)'

trackpaneltransitionmovefunction.o: In function `TrackPanelTransitionMoveFunction::mouseReleased(Gui::KTrackPanel*, QMouseEvent*)':

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/trackpaneltransitionmovefunction.cpp:186: undefined reference to `Command::KMoveTransitionCommand::KMoveTransitionCommand(KdenliveDoc*, DocClipRef*, Transition*, GenTime, GenTime, GenTime, GenTime)'

trackpaneltransitionresizefunction.o: In function `TrackPanelTransitionResizeFunction::mouseReleased(Gui::KTrackPanel*, QMouseEvent*)':

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/trackpaneltransitionresizefunction.cpp:199: undefined reference to `Command::KMoveTransitionCommand::KMoveTransitionCommand(KdenliveDoc*, DocClipRef*, Transition*, GenTime, GenTime, GenTime, GenTime)'

/home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive/trackpaneltransitionresizefunction.cpp:203: undefined reference to `Command::KMoveTransitionCommand::KMoveTransitionCommand(KdenliveDoc*, DocClipRef*, Transition*, GenTime, GenTime, GenTime, GenTime)'

collect2: ld returned 1 exit status

make[2]: *** [kdenlive] Erreur 1

make[2]: quittant le répertoire « /home/jmpoure/logiciels/kdenlive/kdenlive/kdenlive »

make[1]: *** [all-recursive] Erreur 1

make[1]: quittant le répertoire « /home/jmpoure/logiciels/kdenlive/kdenlive »

make: *** [all] Erreur 2


In SVN log, it is written now cmake is required.

Is this the reasons why it does not compile?



Kind regards,

Jean-Michel

rudlavibizon
Registered Member
Posts
18
Karma
0

Just had it installed with

cmake .
make
make install
. Yep, it's faster but there seems to be a problem with cutting clips on timeline with split clip tool and that is one part remains viewable in clip monitor when the cursor is on it and the other does not. Anyway, "sync timeline" seems to solve this and other bugs.

Cheers

Bane


jmpoure_drupal
Registered Member
Posts
735
Karma
0

How to define target directory, i.e. prefix=/usr?

jmpoure_drupal
Registered Member
Posts
735
Karma
0

Re: Big Kdenlive update, please read

Tue Nov 13, 2007 12:40 pm

Okay, I could define the /usr directory.

Now a compilation failure:



CMakeFiles/kdenlive.dir/fixplaylist_ui.o:fixplaylist_ui.cpp:(.text+0xd0): first defined here

CMakeFiles/kdenlive.dir/fixplaylist_ui.moc.o:(.bss+0x0): multiple definition of `FixPlayList_UI::metaObj'

CMakeFiles/kdenlive.dir/fixplaylist_ui.o:(.bss+0x0): first defined here

CMakeFiles/kdenlive.dir/fixplaylist_ui.moc.o: In function `FixPlayList_UI::qt_invoke(int, QUObject*)':

fixplaylist_ui.moc.cpp:(.text+0x190): multiple definition of `FixPlayList_UI::qt_invoke(int, QUObject*)'

CMakeFiles/kdenlive.dir/fixplaylist_ui.o:fixplaylist_ui.cpp:(.text+0x190): first defined here

CMakeFiles/kdenlive.dir/fixplaylist_ui.moc.o: In function `FixPlayList_UI::trUtf8(char const*, char const*)':

fixplaylist_ui.moc.cpp:(.text+0x200): multiple definition of `FixPlayList_UI::trUtf8(char const*, char const*)'

CMakeFiles/kdenlive.dir/fixplaylist_ui.o:fixplaylist_ui.cpp:(.text+0x200): first defined here

CMakeFiles/kdenlive.dir/fixplaylist_ui.moc.o: In function `FixPlayList_UI::tr(char const*, char const*)':

fixplaylist_ui.moc.cpp:(.text+0x250): multiple definition of `FixPlayList_UI::tr(char const*, char const*)'

CMakeFiles/kdenlive.dir/fixplaylist_ui.o:fixplaylist_ui.cpp:(.text+0x250): first defined here

collect2: ld returned 1 exit status

make[2]: *** [kdenlive/kdenlive] Erreur 1

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

make: *** [all] Erreur 2

jmpoure@debian:~/logiciels/kdenlive/kdenlive$ svn update



Récupération de la référence externe vers 'admin'

Référence externe à la révision 736064.



À la révision 1722.

j-b-m
Registered Member
Posts
804
Karma
1

Can you try to do a "make clean" or "make distclean" and then follow cmake instructions:



cmake .

make

make install



regards

jmpoure_drupal
Registered Member
Posts
735
Karma
0

Works for me, thanks.

cmake -DCMAKE_INSTALL_PREFIX=/usr .

make

make install

jmpoure_drupal
Registered Member
Posts
735
Karma
0

Re: Big Kdenlive update, please read

Fri Nov 16, 2007 11:15 am

How can I enable the old full-debug option?

oss_tester
Registered Member
Posts
28
Karma
0

I am having problems compiling this. Could you please put a detailled instruction into the wiki?



And also, could anyone build packages? Due to numerous bugs, 0.5 is not really useable, but as you describe it, 0.6 svn might do.



Have a nice weekend and many thanks for the hard work!!!!!!!!!!!!





Bookmarks



Who is online

Registered users: Bing [Bot], Google [Bot], lockheed, Sogou [Bot]