Hello there!
There are a few problems with the videostab module that currently make it
unusable in Kdenlive.
First, the filter crashes if more than one instance is used, because of the
way lanc_kernel is used.
This is reproducible for me with:
melt stab.mlt stab.mlt
(stab.mlt being a stabilized clip, playing it twice brings the crash).
The crash happens when quitting melt, trying to close the 2 instances of the
filter creates a double free corruption crash on lanc_kernel:
*** glibc detected *** /usr/local/bin/melt: double free or corruption (!prev):
0x081dfa60 ***
Thread 1 (Thread 0xb7def6c0 (LWP 9788)):
#0 0xb7fdf424 in __kernel_vsyscall ()
#1 0xb7e22c8f in __GI_raise (sig=6) at
../nptl/sysdeps/unix/sysv/linux/raise.c:64
#2 0xb7e262b5 in __GI_abort () at abort.c:92
#3 0xb7e58dfc in __libc_message (do_abort=2, fmt=0xb7f32080 "*** glibc
detected *** %s: %s: 0x%s ***\n")
at ../sysdeps/unix/sysv/linux/libc_fatal.c:189
#4 0xb7e63bc2 in malloc_printerr (action=<optimized out>, str=<optimized
out>, ptr=0x81dfa60) at malloc.c:6283
#5 0xb7e64862 in _int_free (av=0xb7f6e400, p=0x81dfa58) at malloc.c:4795
#6 0xb7e6794d in __GI___libc_free (mem=0x81dfa60) at malloc.c:3738
#7 0xb7a5d33f in free_lanc_kernels () at stab/utils.c:114
#8 0xb7a5216b in filter_close (parent=0x81c4228) at filter_videostab.c:190
#9 0xb7fa6f94 in mlt_filter_close (self=0x81c4228) at mlt_filter.c:371
#10 mlt_filter_close (self=0x81c4228) at mlt_filter.c:365
#11 0xb7f9e576 in mlt_service_detach (self=0x81959e0, filter=0x81c4228) at
mlt_service.c:601
#12 0xb7f9e629 in mlt_service_close (self=0x81959e0) at mlt_service.c:661
#13 mlt_service_close (self=0x81959e0) at mlt_service.c:646
#14 0xb7f9f0ea in mlt_producer_close (self=0x81959e0) at mlt_producer.c:1032
#15 mlt_producer_close (self=0x81959e0) at mlt_producer.c:1008
#16 0xb7fa1dda in mlt_playlist_close (self=0x81959e0) at mlt_playlist.c:1845
#17 mlt_playlist_close (self=0x81959e0) at mlt_playlist.c:1832
#18 0xb7f9f0c6 in mlt_producer_close (self=0x81959e0) at mlt_producer.c:1016
Second problem, it fails to compile for me (and a few others as reported on
the forum) with this message:
/usr/lib/gcc/i686-linux-gnu/4.6.1/include/emmintrin.h:32:3: error: #error
"SSE2 instruction set not enabled"
make[2]: *** [depend] Error 1
make[1]: *** [depend] Error 1
make: *** [all] Error 1
The patch below fixes compilation for me, but not sure if this will work for
everyone, there should probably be some sort of tests for SSE2
----------------------------------------------------------------------------
diff --git a/src/modules/videostab/Makefile b/src/modules/videostab/Makefile
index 39ac816..a733dac 100644
--- a/src/modules/videostab/Makefile
+++ b/src/modules/videostab/Makefile
@@ -1,4 +1,4 @@
-CFLAGS += -I../..
+CFLAGS += -I../.. -msse2
LDFLAGS += -L../../framework -lmlt -lm
Thanks, and regards
jb
------------------------------------------------------------------------------
Ridiculously easy VDI. With Citrix VDI-in-a-Box, you don't need a complex
infrastructure or vast IT resources to deliver seamless, secure access to
virtual desktops. With this all-in-one solution, easily deploy virtual
desktops for less than the cost of PCs and save 60% on VDI infrastructure
costs. Try it free! http://p.sf.net/sfu/Citrix-VDIinabox
_______________________________________________
Mlt-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/mlt-devel