E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_smart.c Log Message: * reorganize the way the gstreamer pipeline is built. Fix some usages of emotion_object_file_set() * move the frame_decode evas event to _emotion_frame_new() a,d replace it in _emotion_video_pos_update() by position_update * fix a mem leak in the gstreamer backend and in the smart object === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.40 retrieving revision 1.41 diff -u -3 -r1.40 -r1.41 --- emotion_smart.c 14 May 2008 21:39:33 - 1.40 +++ emotion_smart.c 15 May 2008 16:52:04 - 1.41 @@ -235,6 +235,7 @@ { int w, h; +if (sd-file) free(sd-file); sd-file = strdup(file); if (sd-module) { @@ -256,6 +257,8 @@ sd-module-file_close(sd-video); evas_object_image_size_set(sd-obj, 0, 0); } +if (sd-file) free(sd-file); +sd-file = NULL; } } @@ -838,6 +841,7 @@ E_SMART_OBJ_GET(sd, obj, E_OBJ_NAME); // printf(pix get set 1 %p\n, sd-obj); evas_object_image_pixels_dirty_set(sd-obj, 1); + evas_object_smart_callback_call(obj, frame_decode, NULL); } EAPI void @@ -851,7 +855,7 @@ if (len != sd-len) nlen = 1; sd-pos = pos; sd-len = len; - if (npos) evas_object_smart_callback_call(obj, frame_decode, NULL); + if (npos) evas_object_smart_callback_call(obj, position_update, NULL); if (nlen) evas_object_smart_callback_call(obj, length_change, NULL); } - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/gstreamer Modified Files: emotion_gstreamer.c emotion_gstreamer_pipeline.c Log Message: * reorganize the way the gstreamer pipeline is built. Fix some usages of emotion_object_file_set() * move the frame_decode evas event to _emotion_frame_new() a,d replace it in _emotion_video_pos_update() by position_update * fix a mem leak in the gstreamer backend and in the smart object === RCS file: /cvs/e/e17/libs/emotion/src/modules/gstreamer/emotion_gstreamer.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- emotion_gstreamer.c 13 May 2008 20:50:34 - 1.2 +++ emotion_gstreamer.c 15 May 2008 16:52:04 - 1.3 @@ -237,7 +237,7 @@ if (!emotion_video) return 0; - printf (Init gstreamer...\n); + fprintf (stderr, [Emotion] [gst] Init\n); ev = calloc(1, sizeof(Emotion_Gstreamer_Video)); if (!ev) return 0; @@ -249,14 +249,6 @@ if (!gst_init_check (NULL, NULL, error)) goto failure_gstreamer; - ev-pipeline = gst_pipeline_new (pipeline); - if (!ev-pipeline) - goto failure_pipeline; - - ev-eos_bus = gst_pipeline_get_bus (GST_PIPELINE (ev-pipeline)); - if (!ev-eos_bus) - goto failure_bus; - /* We allocate the sinks lists */ ev-video_sinks = ecore_list_new (); if (!ev-video_sinks) @@ -297,12 +289,6 @@ failure_audio_sinks: ecore_list_destroy (ev-video_sinks); failure_video_sinks: - gst_object_unref (GST_OBJECT (ev-eos_bus)); - failure_bus: - /* this call is not really necessary */ - gst_element_set_state (ev-pipeline, GST_STATE_NULL); - gst_object_unref (GST_OBJECT (ev-pipeline)); - failure_pipeline: failure_gstreamer: free (ev); @@ -318,19 +304,18 @@ if (!ev) return 0; - gst_element_set_state (ev-pipeline, GST_STATE_NULL); - gst_object_unref (GST_OBJECT (ev-pipeline)); - gst_object_unref (GST_OBJECT (ev-eos_bus)); + fprintf(stderr, [Emotion] [gst] shutdown\n); - ecore_list_destroy (ev-video_sinks); - ecore_list_destroy (ev-audio_sinks); + ecore_main_fd_handler_del(ev-fd_ev_handler); + + close(ev-fd_ev_write); + close(ev-fd_ev_read); /* FIXME: and the evas object ? */ if (ev-obj_data) free(ev-obj_data); - ecore_main_fd_handler_del(ev-fd_ev_handler); - close(ev-fd_ev_write); - close(ev-fd_ev_read); + ecore_list_destroy (ev-video_sinks); + ecore_list_destroy (ev-audio_sinks); free(ev); @@ -346,6 +331,19 @@ ev = (Emotion_Gstreamer_Video *)video; + fprintf(stderr, [Emotion] [gst] open\n); + + ev-pipeline = gst_pipeline_new (pipeline); + if (!ev-pipeline) + return 0; + + ev-eos_bus = gst_pipeline_get_bus (GST_PIPELINE (ev-pipeline)); + if (!ev-eos_bus) + { +gst_object_unref(ev-pipeline); +return 0; + } + /* Evas Object */ ev-obj = obj; @@ -370,6 +368,7 @@ fprintf (stderr, [Emotion] [gst] build CD Audio pipeline\n); if (!(emotion_pipeline_cdda_build (ev, device, track))) { fprintf (stderr, [Emotion] [gst] error while building CD Audio pipeline\n); +gst_object_unref(ev-pipeline); return 0; } } @@ -379,6 +378,7 @@ fprintf (stderr, [Emotion] [gst] build DVD pipeline \n); if (!(emotion_pipeline_dvd_build (ev, NULL))) { fprintf (stderr, [Emotion] [gst] error while building DVD pipeline\n); +gst_object_unref(ev-pipeline); return 0; } } @@ -387,6 +387,7 @@ fprintf (stderr, [Emotion] [gst] build URI pipeline \n); if (!(emotion_pipeline_uri_build (ev, file))) { fprintf (stderr, [Emotion] [gst] error while building URI pipeline\n); +gst_object_unref(ev-pipeline); return 0; } } @@ -401,6 +402,7 @@ fprintf (stderr, [Emotion] [gst] build file pipeline \n); if (!(emotion_pipeline_file_build (ev, filename))) { fprintf (stderr, [Emotion] [gst] error while building File pipeline\n); +gst_object_unref(ev-pipeline); return 0; } } @@ -414,20 +416,20 @@ vsink = (Emotion_Video_Sink *)ecore_list_first_goto (ev-video_sinks); if (vsink) { -g_print (video : \n); -g_print ( size : %dx%d\n, vsink-width, vsink-height); -g_print ( fps: %d/%d\n, vsink-fps_num, vsink-fps_den); -g_print ( fourcc : % GST_FOURCC_FORMAT \n, GST_FOURCC_ARGS (vsink-fourcc)); -g_print ( length : % GST_TIME_FORMAT \n\n, +fprintf (stderr, video : \n); +fprintf (stderr, size : %dx%d\n, vsink-width, vsink-height); +fprintf (stderr, fps: %d/%d\n, vsink-fps_num, vsink-fps_den); +fprintf (stderr, fourcc : % GST_FOURCC_FORMAT \n, GST_FOURCC_ARGS (vsink-fourcc)); +fprintf (stderr, length : % GST_TIME_FORMAT \n\n,
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/gstreamer Modified Files: emotion_gstreamer.c Log Message: remove debug message === RCS file: /cvs/e/e17/libs/emotion/src/modules/gstreamer/emotion_gstreamer.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emotion_gstreamer.c 15 May 2008 16:52:04 - 1.3 +++ emotion_gstreamer.c 15 May 2008 17:46:13 - 1.4 @@ -237,8 +237,6 @@ if (!emotion_video) return 0; - fprintf (stderr, [Emotion] [gst] Init\n); - ev = calloc(1, sizeof(Emotion_Gstreamer_Video)); if (!ev) return 0; @@ -304,8 +302,6 @@ if (!ev) return 0; - fprintf(stderr, [Emotion] [gst] shutdown\n); - ecore_main_fd_handler_del(ev-fd_ev_handler); close(ev-fd_ev_write); @@ -331,8 +327,6 @@ ev = (Emotion_Gstreamer_Video *)video; - fprintf(stderr, [Emotion] [gst] open\n); - ev-pipeline = gst_pipeline_new (pipeline); if (!ev-pipeline) return 0; @@ -478,7 +472,6 @@ { Emotion_Gstreamer_Video *ev; - fprintf(stderr, [Emotion] [gst] play %p\n, ev-pipeline); ev = (Emotion_Gstreamer_Video *)video; gst_element_set_state (ev-pipeline, GST_STATE_PLAYING); ev-play = 1; @@ -500,7 +493,6 @@ ev-eos_timer = NULL; } -/*fprintf(stderr, [Emotion] [gst] stop\n); */ gst_element_set_state (ev-pipeline, GST_STATE_PAUSED); ev-play = 0; } - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_smart.c Log Message: Don't set sd-video to NULL. sd-video is initialized only when emotion_object_init() is called. Hence, setting sd-video to NULL there implied that the code: emotion_object_init(o, module); emotion_object_file_set(o, file1); emotion_object_file_set(o, NULL); emotion_object_file_set(o, file2); seg fault. (such code is useful when you want to reset the same stream (file1 = file2). The other solution would be to destroy everything and recreating the pipeline, which is not nice) === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.39 retrieving revision 1.40 diff -u -3 -r1.39 -r1.40 --- emotion_smart.c 11 Nov 2007 16:02:02 - 1.39 +++ emotion_smart.c 14 May 2008 21:39:33 - 1.40 @@ -254,7 +254,6 @@ if (sd-video sd-module) { sd-module-file_close(sd-video); -sd-video = NULL; evas_object_image_size_set(sd-obj, 0, 0); } } - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/gstreamer Modified Files: emotion_gstreamer.c Log Message: Contrary to what gstremear's doc says, gst_deinit() does not clean what gst_init() allocates. Hence, 2 calls of the couple gst_init() / gst_deinit() fail miserabily. Gstreamer's dev says that the exported function gst_deinit() should not be called, so let's remove it... === RCS file: /cvs/e/e17/libs/emotion/src/modules/gstreamer/emotion_gstreamer.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- emotion_gstreamer.c 11 May 2008 18:52:29 - 1.1 +++ emotion_gstreamer.c 13 May 2008 20:50:34 - 1.2 @@ -303,7 +303,6 @@ gst_element_set_state (ev-pipeline, GST_STATE_NULL); gst_object_unref (GST_OBJECT (ev-pipeline)); failure_pipeline: - gst_deinit (); failure_gstreamer: free (ev); @@ -322,7 +321,6 @@ gst_element_set_state (ev-pipeline, GST_STATE_NULL); gst_object_unref (GST_OBJECT (ev-pipeline)); gst_object_unref (GST_OBJECT (ev-eos_bus)); - gst_deinit (); ecore_list_destroy (ev-video_sinks); ecore_list_destroy (ev-audio_sinks); - This SF.net email is sponsored by: Microsoft Defy all challenges. Microsoft(R) Visual Studio 2008. http://clk.atdmt.com/MRT/go/vse012070mrt/direct/01/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/gstreamer Log Message: Directory /cvs/e/e17/libs/emotion/src/modules/gstreamer added to the repository - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/gstreamer Added Files: Makefile.am emotion_gstreamer.c emotion_gstreamer.h emotion_gstreamer_pipeline.c emotion_gstreamer_pipeline.h emotion_gstreamer_pipeline_cdda.c emotion_gstreamer_pipeline_dvd.c emotion_gstreamer_pipeline_file.c emotion_gstreamer_pipeline_uri.c Log Message: put xine and gstreamer modules in their own subdir - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules/xine Added Files: Makefile.am emotion_xine.c emotion_xine.h emotion_xine_vo_out.c Log Message: put xine and gstreamer modules in their own subdir - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: Makefile.am Removed Files: emotion_gstreamer.c emotion_gstreamer.h emotion_gstreamer_pipeline.c emotion_gstreamer_pipeline.h emotion_xine.c emotion_xine.h emotion_xine_vo_out.c Log Message: put xine and gstreamer modules in their own subdir === RCS file: /cvs/e/e17/libs/emotion/src/modules/Makefile.am,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- Makefile.am 11 Nov 2007 09:12:08 - 1.12 +++ Makefile.am 11 May 2008 18:52:29 - 1.13 @@ -1,47 +1,4 @@ MAINTAINERCLEANFILES = Makefile.in -if BUILD_XINE_MODULE -XINE_LIB_NAME = xine.la -endif - -if BUILD_GSTREAMER_MODULE -GSTREAMER_LIB_NAME = gstreamer.la -endif - -AM_CPPFLAGS = \ --I$(top_srcdir) \ --I$(top_srcdir)/src/lib \ --I$(top_srcdir)/src/modules \ --DPACKAGE_BIN_DIR=\$(bindir)\ \ --DPACKAGE_LIB_DIR=\$(libdir)\ \ --DPACKAGE_DATA_DIR=\$(datadir)/$(PACKAGE)\ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ - -pkgdir = $(libdir)/emotion - -pkg_LTLIBRARIES = $(XINE_LIB_NAME) $(GSTREAMER_LIB_NAME) - -if BUILD_XINE_MODULE -xine_la_SOURCES = \ -emotion_xine.c \ -emotion_xine.h \ -emotion_xine_vo_out.c -xine_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @XINE_LIBS@ $(top_builddir)/src/lib/libemotion.la -lpthread -xine_la_LDFLAGS = -module -avoid-version -xine_la_DEPENDENCIES = $(top_builddir)/config.h -endif - -if BUILD_GSTREAMER_MODULE -gstreamer_la_SOURCES = \ -emotion_gstreamer.c \ -emotion_gstreamer.h \ -emotion_gstreamer_pipeline.c \ -emotion_gstreamer_pipeline.h -gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ $(top_builddir)/src/lib/libemotion.la -gstreamer_la_LDFLAGS = -module -avoid-version -gstreamer_la_DEPENDENCIES = $(top_builddir)/config.h -endif +SUBDIRS = xine gstreamer - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: put xine and gstreamer modules in their own subdir === RCS file: /cvs/e/e17/libs/emotion/configure.in,v retrieving revision 1.55 retrieving revision 1.56 diff -u -3 -r1.55 -r1.56 --- configure.in25 Jan 2008 03:35:48 - 1.55 +++ configure.in11 May 2008 18:52:29 - 1.56 @@ -125,6 +125,8 @@ src/Makefile src/lib/Makefile src/modules/Makefile +src/modules/xine/Makefile +src/modules/gstreamer/Makefile src/bin/Makefile data/Makefile debian/changelog - This SF.net email is sponsored by the 2008 JavaOne(SM) Conference Don't miss this year's exciting event. There's still time to save $100. Use priority code J8TL2D2. http://ad.doubleclick.net/clk;198757673;13503038;p?http://java.sun.com/javaone ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: Fix awk portability by removing the space between the -F flag and its arg. === RCS file: /cvs/e/e17/libs/emotion/configure.in,v retrieving revision 1.53 retrieving revision 1.54 diff -u -3 -r1.53 -r1.54 --- configure.in11 Nov 2007 09:12:07 - 1.53 +++ configure.in13 Nov 2007 07:13:51 - 1.54 @@ -22,10 +22,10 @@ define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl AC_PROG_LIBTOOL -VMAJ=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $1);}'` -VMIN=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $2);}'` -VMIC=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $3);}'` -SNAP=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $4);}'` +VMAJ=`echo $PACKAGE_VERSION | awk -F. '{printf(%s, $1);}'` +VMIN=`echo $PACKAGE_VERSION | awk -F. '{printf(%s, $2);}'` +VMIC=`echo $PACKAGE_VERSION | awk -F. '{printf(%s, $3);}'` +SNAP=`echo $PACKAGE_VERSION | awk -F. '{printf(%s, $4);}'` version_info=`expr $VMAJ + $VMIN`:$VMIC:$VMIN AC_SUBST(version_info) - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: Makefile.am Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/src/modules/Makefile.am,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- Makefile.am 31 Oct 2007 19:34:39 - 1.11 +++ Makefile.am 11 Nov 2007 09:12:08 - 1.12 @@ -1,4 +1,5 @@ -## Process this file with automake to produce Makefile.in + +MAINTAINERCLEANFILES = Makefile.in if BUILD_XINE_MODULE XINE_LIB_NAME = xine.la @@ -8,18 +9,21 @@ GSTREAMER_LIB_NAME = gstreamer.la endif -#AUTOMAKE_OPTIONS = 1.4 foreign - -MAINTAINERCLEANFILES = Makefile.in - -INCLUDES= -I$(top_srcdir) \ - -I$(top_srcdir)/src/lib \ - -I$(top_srcdir)/src/modules \ - @EVAS_CFLAGS@ @ECORE_CFLAGS@ @XINE_CFLAGS@ @GST_CFLAGS@ +AM_CPPFLAGS = \ +-I$(top_srcdir) \ +-I$(top_srcdir)/src/lib \ +-I$(top_srcdir)/src/modules \ +-DPACKAGE_BIN_DIR=\$(bindir)\ \ +-DPACKAGE_LIB_DIR=\$(libdir)\ \ +-DPACKAGE_DATA_DIR=\$(datadir)/$(PACKAGE)\ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ -pkgdir = $(libdir)/emotion +pkgdir = $(libdir)/emotion -pkg_LTLIBRARIES = $(XINE_LIB_NAME) $(GSTREAMER_LIB_NAME) +pkg_LTLIBRARIES = $(XINE_LIB_NAME) $(GSTREAMER_LIB_NAME) if BUILD_XINE_MODULE xine_la_SOURCES = \ @@ -27,8 +31,7 @@ emotion_xine.h \ emotion_xine_vo_out.c xine_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @XINE_LIBS@ $(top_builddir)/src/lib/libemotion.la -lpthread -xine_la_LDFLAGS = -module -avoid-version \ - -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +xine_la_LDFLAGS = -module -avoid-version xine_la_DEPENDENCIES = $(top_builddir)/config.h endif @@ -39,7 +42,6 @@ emotion_gstreamer_pipeline.c \ emotion_gstreamer_pipeline.h gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ $(top_builddir)/src/lib/libemotion.la -gstreamer_la_LDFLAGS = -module -avoid-version \ - -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +gstreamer_la_LDFLAGS = -module -avoid-version gstreamer_la_DEPENDENCIES = $(top_builddir)/config.h endif - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: Makefile.am configure.in Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/Makefile.am,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- Makefile.am 10 Jul 2007 00:13:23 - 1.11 +++ Makefile.am 11 Nov 2007 09:12:06 - 1.12 @@ -6,9 +6,9 @@ config.h.in config.sub configure install-sh \ ltconfig ltmain.sh missing mkinstalldirs \ stamp-h.in emotion_docs.tar emotion_docs.tar.gz \ - emotion.c acconfig.h debian/changelog + emotion.c acconfig.h debian/changelog depcomp -bin_SCRIPTS = +bin_SCRIPTS = EXTRA_DIST = README AUTHORS COPYING COPYING-PLAIN \ emotion.spec emotion.spec.in emotion.c.in gendoc Doxyfile \ === RCS file: /cvs/e/e17/libs/emotion/configure.in,v retrieving revision 1.52 retrieving revision 1.53 diff -u -3 -r1.52 -r1.53 --- configure.in31 Oct 2007 19:34:39 - 1.52 +++ configure.in11 Nov 2007 09:12:07 - 1.53 @@ -3,8 +3,11 @@ # get rid of that stupid cache mechanism rm -f config.cache -AC_INIT(configure.in) -AM_INIT_AUTOMAKE(emotion, 0.0.1.008) +AC_INIT(emotion, 0.0.1.008, [EMAIL PROTECTED]) +AC_PREREQ(2.52) +AC_CONFIG_SRCDIR(configure.in) + +AM_INIT_AUTOMAKE(1.6 dist-bzip2) AM_CONFIG_HEADER(config.h) AC_C_BIGENDIAN @@ -13,73 +16,18 @@ AM_PROG_CC_STDC AC_HEADER_STDC AC_C_CONST -AM_ENABLE_SHARED -AM_PROG_LIBTOOL - -if test x${bindir} = 'x${exec_prefix}/bin'; then - if test x${exec_prefix} = xNONE; then -if test x${prefix} = xNONE; then - bindir=${ac_default_prefix}/bin; -else - bindir=${prefix}/bin; -fi - else -if test x${prefix} = xNONE; then - bindir=${ac_default_prefix}/bin; -else - bindir=${prefix}/bin; -fi - fi -fi - -if test x${libdir} = 'x${exec_prefix}/lib'; then - if test x${exec_prefix} = xNONE; then -if test x${prefix} = xNONE; then - libdir=${ac_default_prefix}/lib; -else - libdir=${prefix}/lib; -fi - else -if test x${prefix} = xNONE; then - libdir=${ac_default_prefix}/lib; -else - libdir=${prefix}/lib; -fi - fi -fi - -dnl Set PACKAGE_DATA_DIR in config.h. -if test x${prefix} = xNONE; then - AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, ${ac_default_prefix}/share/${PACKAGE}, [Shared Data Directory]) -else - AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, ${prefix}/share/${PACKAGE}, [Shared Data Directory]) -fi -dnl Set PACKAGE_BIN_DIR in config.h. -if test x${bindir} = 'xNONE'; then - if test x${prefix} = xNONE; then -AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, ${ac_default_prefix}/bin, [Install Location for Executables]) - else -AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, ${prefix}/bin, [Install Location for Executables]) - fi -else - AC_DEFINE_UNQUOTED(PACKAGE_BIN_DIR, ${bindir}, [Install Location for Executables]) -fi - -dnl Set PACKAGE_LIB_DIR in config.h. -if test x${libdir} = 'xNONE'; then - if test x${prefix} = xNONE; then -AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, ${ac_default_prefix}/lib, [Install Location for Libraries]) - else -AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, ${prefix}/lib, [Install Location for Libraries]) - fi -else - AC_DEFINE_UNQUOTED(PACKAGE_LIB_DIR, ${libdir}, [Install Location for Libraries]) -fi - -dnl Set PACKAGE_SOURCE_DIR in config.h. -packagesrcdir=`cd $srcdir pwd` -AC_DEFINE_UNQUOTED(PACKAGE_SOURCE_DIR, ${packagesrcdir}, [Source Directory]) +AC_LIBTOOL_WIN32_DLL +define([AC_LIBTOOL_LANG_CXX_CONFIG], [:])dnl +define([AC_LIBTOOL_LANG_F77_CONFIG], [:])dnl +AC_PROG_LIBTOOL + +VMAJ=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $1);}'` +VMIN=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $2);}'` +VMIC=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $3);}'` +SNAP=`echo $PACKAGE_VERSION | awk -F . '{printf(%s, $4);}'` +version_info=`expr $VMAJ + $VMIN`:$VMIC:$VMIN +AC_SUBST(version_info) PKG_CHECK_MODULES(EVAS, [evas = 0.9.9]) PKG_CHECK_MODULES(EDJE, [edje = 0.5.0]) @@ -162,6 +110,7 @@ GSTCDDA_MSG=yes fi fi + if test $HAVE_XINE$HAVE_GSTREAMER = nono ; then AC_MSG_ERROR([Xine or Gstreamer must be installed to build emotion])
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/data Modified Files: Makefile.am Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/data/Makefile.am,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- Makefile.am 6 Feb 2006 08:31:29 - 1.8 +++ Makefile.am 11 Nov 2007 09:12:08 - 1.9 @@ -1,3 +1,6 @@ + +MAINTAINERCLEANFILES = Makefile.in + EDJE_CC = edje_cc EDJE_FLAGS = -v -id $(top_srcdir)/data -fd $(top_srcdir)/data @@ -38,4 +41,3 @@ clean-local: rm -f *.edj - - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src Modified Files: Makefile.am Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/src/Makefile.am,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- Makefile.am 18 Jun 2004 15:38:02 - 1.1 +++ Makefile.am 11 Nov 2007 09:12:08 - 1.2 @@ -1,3 +1,4 @@ -## Process this file with automake to produce Makefile.in + +MAINTAINERCLEANFILES = Makefile.in SUBDIRS = lib bin modules - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: Makefile.am Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/src/lib/Makefile.am,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- Makefile.am 31 Oct 2007 19:34:39 - 1.6 +++ Makefile.am 11 Nov 2007 09:12:08 - 1.7 @@ -1,13 +1,14 @@ -## Process this file with automake to produce Makefile.in - -AUTOMAKE_OPTIONS = 1.4 foreign MAINTAINERCLEANFILES = Makefile.in -INCLUDES= -I$(top_srcdir) \ - -I$(top_srcdir)/src/lib \ - @EVAS_CFLAGS@ \ - @ECORE_CFLAGS@ +AM_CPPFLAGS = \ +-I$(top_srcdir) \ +-I$(top_srcdir)/src/lib \ +-DPACKAGE_BIN_DIR=\$(bindir)\ \ +-DPACKAGE_LIB_DIR=\$(libdir)\ \ +-DPACKAGE_DATA_DIR=\$(datadir)/$(PACKAGE)\ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ lib_LTLIBRARIES = libemotion.la include_HEADERS = Emotion.h @@ -17,4 +18,4 @@ libemotion_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ libemotion_la_DEPENDENCIES = $(top_builddir)/config.h -libemotion_la_LDFLAGS = -version-info 0:1:0 +libemotion_la_LDFLAGS = -version-info @version_info@ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/bin Modified Files: Makefile.am Log Message: autostuff improvements: * use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE and check the required minimal versions. * add bzipped distribution archive * add AC_LIBTOOL_WIN32_DLL * forbid libtool to check fortran and c++ compilers * compute libtool versioning from the version of the package * pass the directories based on ${prefix} to the preoprocessor with the -D option * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS * remove useless -L flags in *_la_LDFLAGS * remove Makefile.in on maintainer-clean rule === RCS file: /cvs/e/e17/libs/emotion/src/bin/Makefile.am,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- Makefile.am 3 Sep 2005 19:07:24 - 1.2 +++ Makefile.am 11 Nov 2007 09:12:08 - 1.3 @@ -1,9 +1,15 @@ -## Process this file with automake to produce Makefile.in -INCLUDES = \ +MAINTAINERCLEANFILES = Makefile.in + +AM_CPPFLAGS = \ -I$(top_srcdir) \ -I$(top_srcdir)/src/lib \ [EMAIL PROTECTED]@ @ECORE_CFLAGS@ @EDJE_CFLAGS@ +-DPACKAGE_BIN_DIR=\$(bindir)\ \ +-DPACKAGE_LIB_DIR=\$(libdir)\ \ +-DPACKAGE_DATA_DIR=\$(datadir)/$(PACKAGE)\ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ \ [EMAIL PROTECTED]@ bin_PROGRAMS = \ emotion_test @@ -14,5 +20,3 @@ emotion_test_LDADD = \ @EVAS_LIBS@ @ECORE_LIBS@ @EDJE_LIBS@ \ $(top_builddir)/src/lib/libemotion.la - - - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_smart.c Log Message: Fix the play of 2 files. Patch by Nicolas Aguirre === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.38 retrieving revision 1.39 diff -u -3 -r1.38 -r1.39 --- emotion_smart.c 6 Nov 2007 16:59:50 - 1.38 +++ emotion_smart.c 11 Nov 2007 16:02:02 - 1.39 @@ -125,7 +125,10 @@ printf (Unable to load module %s\n, name); if (path_group) - ecore_path_group_del(path_group); + { +ecore_path_group_del(path_group); +path_group = NULL; + } return 0; } @@ -147,7 +150,11 @@ /* ecore_plugin_unload(plugin); */ - ecore_path_group_del(path_group); + if (path_group) + { +ecore_path_group_del(path_group); +path_group = NULL; + } } /***/ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_smart.c Log Message: now you can play several files without segfault === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.35 retrieving revision 1.36 diff -u -3 -r1.35 -r1.36 --- emotion_smart.c 31 Oct 2007 19:34:39 - 1.35 +++ emotion_smart.c 2 Nov 2007 11:58:59 - 1.36 @@ -85,17 +85,18 @@ /* Globals for the E Video Object */ /**/ static Evas_Smart *smart = NULL; +static group_id = -1; static unsigned char _emotion_module_open(const char *name, Evas_Object *obj, Emotion_Video_Module **mod, void **video) { Ecore_Plugin *plugin; - int group_id; char *tmp = NULL; Smart_Data *sd; E_SMART_OBJ_GET_RETURN(sd, obj, E_OBJ_NAME, 0); - group_id = ecore_path_group_new(emotion_module); + if (group_id 0) + group_id = ecore_path_group_new(emotion_module); tmp = getenv(EMOTION_MODULES_DIR); if (tmp) ecore_path_group_add(group_id, tmp); @@ -123,7 +124,9 @@ else printf (Unable to load module %s\n, name); - ecore_path_group_del(group_id); + if (group_id 0) + ecore_path_group_del(group_id); + return 0; } @@ -143,8 +146,8 @@ */ /* ecore_plugin_unload(plugin); - ecore_path_group_del(group_id); */ + ecore_path_group_del(group_id); } /***/ - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: Makefile.am emotion_gstreamer.c Log Message: * Use ecore_plugin instead of dlfcn * the modules names are now xine and gstreamer (it's useless to add the extension, as ecore_plugin do not need it). I'll fix eclair, etk_extra and ewl. * look for the modules in path that is pointed by the env variable EMOTION_MODULES_DIR first. * fix a leak in the gstreamer module * remove some trailing spaces === RCS file: /cvs/e/e17/libs/emotion/src/modules/Makefile.am,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- Makefile.am 7 May 2007 14:04:40 - 1.10 +++ Makefile.am 31 Oct 2007 19:34:39 - 1.11 @@ -1,11 +1,11 @@ ## Process this file with automake to produce Makefile.in if BUILD_XINE_MODULE -XINE_LIB_NAME=emotion_decoder_xine.la +XINE_LIB_NAME = xine.la endif if BUILD_GSTREAMER_MODULE -GSTREAMER_LIB_NAME = emotion_decoder_gstreamer.la +GSTREAMER_LIB_NAME = gstreamer.la endif #AUTOMAKE_OPTIONS = 1.4 foreign @@ -22,24 +22,24 @@ pkg_LTLIBRARIES = $(XINE_LIB_NAME) $(GSTREAMER_LIB_NAME) if BUILD_XINE_MODULE -emotion_decoder_xine_la_SOURCES = \ +xine_la_SOURCES = \ emotion_xine.c \ emotion_xine.h \ emotion_xine_vo_out.c -emotion_decoder_xine_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @XINE_LIBS@ $(top_builddir)/src/lib/libemotion.la -lpthread -emotion_decoder_xine_la_LDFLAGS = -module -avoid-version \ - -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs -emotion_decoder_xine_la_DEPENDENCIES = $(top_builddir)/config.h +xine_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @XINE_LIBS@ $(top_builddir)/src/lib/libemotion.la -lpthread +xine_la_LDFLAGS = -module -avoid-version \ + -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +xine_la_DEPENDENCIES = $(top_builddir)/config.h endif if BUILD_GSTREAMER_MODULE -emotion_decoder_gstreamer_la_SOURCES = \ +gstreamer_la_SOURCES = \ emotion_gstreamer.c \ emotion_gstreamer.h \ emotion_gstreamer_pipeline.c \ emotion_gstreamer_pipeline.h -emotion_decoder_gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ $(top_builddir)/src/lib/libemotion.la -emotion_decoder_gstreamer_la_LDFLAGS = -module -avoid-version \ - -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs -emotion_decoder_gstreamer_la_DEPENDENCIES = $(top_builddir)/config.h +gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ $(top_builddir)/src/lib/libemotion.la +gstreamer_la_LDFLAGS = -module -avoid-version \ + -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +gstreamer_la_DEPENDENCIES = $(top_builddir)/config.h endif === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.26 retrieving revision 1.27 diff -u -3 -r1.26 -r1.27 --- emotion_gstreamer.c 28 Oct 2007 03:59:23 - 1.26 +++ emotion_gstreamer.c 31 Oct 2007 19:34:39 - 1.27 @@ -328,6 +328,7 @@ ecore_list_destroy (ev-audio_sinks); /* FIXME: and the evas object ? */ + if (ev-obj_data) free(ev-obj_data); ecore_main_fd_handler_del(ev-fd_ev_handler); close(ev-fd_ev_write); - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: Makefile.am emotion_private.h emotion_smart.c Log Message: * Use ecore_plugin instead of dlfcn * the modules names are now xine and gstreamer (it's useless to add the extension, as ecore_plugin do not need it). I'll fix eclair, etk_extra and ewl. * look for the modules in path that is pointed by the env variable EMOTION_MODULES_DIR first. * fix a leak in the gstreamer module * remove some trailing spaces === RCS file: /cvs/e/e17/libs/emotion/src/lib/Makefile.am,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- Makefile.am 3 Sep 2005 19:07:24 - 1.5 +++ Makefile.am 31 Oct 2007 19:34:39 - 1.6 @@ -15,6 +15,6 @@ emotion_smart.c \ emotion_private.h -libemotion_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @dlopen_libs@ +libemotion_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ libemotion_la_DEPENDENCIES = $(top_builddir)/config.h libemotion_la_LDFLAGS = -version-info 0:1:0 === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_private.h,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- emotion_private.h 6 May 2007 05:03:18 - 1.14 +++ emotion_private.h 31 Oct 2007 19:34:39 - 1.15 @@ -4,6 +4,8 @@ #include Evas.h #include Ecore.h #include Ecore_Job.h +#include Ecore_Data.h +#include Ecore_Str.h #include stdlib.h #include stdio.h @@ -64,7 +66,7 @@ struct _Emotion_Video_Module { - unsigned char (*init) (Evas_Object *obj, void **video, Emotion_Module_Options *opt); + unsigned char (*init) (Evas_Object *obj, void **video, Emotion_Module_Options *opt); int(*shutdown) (void *video); unsigned char (*file_open) (const char *file, Evas_Object *obj, void *video); void (*file_close) (void *ef); @@ -119,8 +121,9 @@ double (*speed_get) (void *ef); int(*eject) (void *ef); const char * (*meta_get) (void *ef, int meta); - - void *handle; + + Ecore_Plugin*plugin; + int group_id; }; EAPI void *_emotion_video_get(Evas_Object *obj); @@ -136,5 +139,5 @@ EAPI void _emotion_file_ref_set(Evas_Object *obj, char *file, int num); EAPI void _emotion_spu_button_num_set(Evas_Object *obj, int num); EAPI void _emotion_spu_button_set(Evas_Object *obj, int button); - + #endif === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.34 retrieving revision 1.35 diff -u -3 -r1.34 -r1.35 --- emotion_smart.c 28 Oct 2007 10:19:09 - 1.34 +++ emotion_smart.c 31 Oct 2007 19:34:39 - 1.35 @@ -1,6 +1,5 @@ #include Emotion.h #include emotion_private.h -#include dlfcn.h #define E_SMART_OBJ_GET(smart, o, type) \ { \ @@ -34,7 +33,7 @@ { Emotion_Video_Module *module; void *video; - + char *module_name; char *file; @@ -43,12 +42,12 @@ double pos; double seek_pos; double len; - + Ecore_Job *job; - + unsigned char play : 1; unsigned char seek : 1; - + char *title; struct { char *info; @@ -90,56 +89,62 @@ static unsigned char _emotion_module_open(const char *name, Evas_Object *obj, Emotion_Video_Module **mod, void **video) { - void *handle; - char buf[4096]; + Ecore_Plugin *plugin; + int group_id; + char *tmp = NULL; Smart_Data *sd; - + E_SMART_OBJ_GET_RETURN(sd, obj, E_OBJ_NAME, 0); - snprintf(buf, sizeof(buf), %s%s, PACKAGE_LIB_DIR/emotion/, - name); - handle = dlopen(buf, RTLD_LAZY); - if (handle) + group_id = ecore_path_group_new(emotion_module); + tmp = getenv(EMOTION_MODULES_DIR); + if (tmp) + ecore_path_group_add(group_id, tmp); + ecore_path_group_add(group_id, PACKAGE_LIB_DIR/emotion/); + plugin = ecore_plugin_load(group_id, name, NULL); + if (plugin) { unsigned char (*func_module_open)(Evas_Object *, Emotion_Video_Module **, void **, Emotion_Module_Options *); - - func_module_open = dlsym(handle, module_open); + + func_module_open = ecore_plugin_symbol_get(plugin, module_open); if (func_module_open) { if (func_module_open(obj, mod, video, (sd-module_options))) { if (*mod) { - (*mod)-handle = handle; + (*mod)-plugin = plugin; + (*mod)-group_id = group_id; return 1; } } } - dlclose(handle); + ecore_plugin_unload(plugin); } else - { - char
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: * Use ecore_plugin instead of dlfcn * the modules names are now xine and gstreamer (it's useless to add the extension, as ecore_plugin do not need it). I'll fix eclair, etk_extra and ewl. * look for the modules in path that is pointed by the env variable EMOTION_MODULES_DIR first. * fix a leak in the gstreamer module * remove some trailing spaces === RCS file: /cvs/e/e17/libs/emotion/configure.in,v retrieving revision 1.51 retrieving revision 1.52 diff -u -3 -r1.51 -r1.52 --- configure.in26 Aug 2007 14:33:40 - 1.51 +++ configure.in31 Oct 2007 19:34:39 - 1.52 @@ -47,7 +47,7 @@ fi fi fi - + dnl Set PACKAGE_DATA_DIR in config.h. if test x${prefix} = xNONE; then AC_DEFINE_UNQUOTED(PACKAGE_DATA_DIR, ${ac_default_prefix}/share/${PACKAGE}, [Shared Data Directory]) @@ -169,9 +169,6 @@ AM_CONDITIONAL([BUILD_XINE_MODULE], [test $HAVE_XINE = yes]) AM_CONDITIONAL([BUILD_GSTREAMER_MODULE], [test $HAVE_GSTREAMER = yes]) -AC_CHECK_LIB(dl, dlopen, dlopen_libs=-ldl) -AC_SUBST(dlopen_libs) - AC_OUTPUT([ Makefile emotion.pc @@ -213,4 +210,3 @@ echo libraries..: $libdir echo headers: $includedir echo - - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/bin Modified Files: emotion_test_main.c Log Message: * Use ecore_plugin instead of dlfcn * the modules names are now xine and gstreamer (it's useless to add the extension, as ecore_plugin do not need it). I'll fix eclair, etk_extra and ewl. * look for the modules in path that is pointed by the env variable EMOTION_MODULES_DIR first. * fix a leak in the gstreamer module * remove some trailing spaces === RCS file: /cvs/e/e17/libs/emotion/src/bin/emotion_test_main.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- emotion_test_main.c 13 Mar 2007 02:30:14 - 1.15 +++ emotion_test_main.c 31 Oct 2007 19:34:39 - 1.16 @@ -51,13 +51,13 @@ main_start(int argc, char **argv) { int mode = 0; - + start_time = ecore_time_get(); if (!ecore_init()) return -1; ecore_app_args_set(argc, (const char **)argv); ecore_event_handler_add(ECORE_EVENT_SIGNAL_EXIT, main_signal_exit, NULL); if (!ecore_evas_init()) return -1; -#ifndef FB_ONLY +#ifndef FB_ONLY { int i; @@ -69,7 +69,7 @@ { int n, w, h; char buf[16], buf2[16]; - + n = sscanf(argv[i +1], %10[^x]x%10s, buf, buf2); if (n == 2) { @@ -97,7 +97,7 @@ #if HAVE_ECORE_EVAS_X if (mode == 0) ecore_evas = ecore_evas_software_x11_new(NULL, 0, 0, 0, startw, starth); -#endif +#endif #if HAVE_ECORE_EVAS_GL if (mode == 1) ecore_evas = ecore_evas_gl_x11_new(NULL, 0, 0, 0, startw, starth); @@ -108,7 +108,7 @@ #endif if (mode == 3) ecore_evas = ecore_evas_xrender_x11_new(NULL, 0, 0, 0, startw, starth); - + #else startw = 240; starth = 320; @@ -124,7 +124,7 @@ evas_image_cache_set(evas, 8 * 1024 * 1024); evas_font_cache_set(evas, 1 * 1024 * 1024); evas_font_path_append(evas, PACKAGE_DATA_DIR/data/fonts); - + edje_init(); edje_frametime_set(1.0 / 30.0); return 1; @@ -141,7 +141,7 @@ main_resize(Ecore_Evas *ee) { Evas_Coord w, h; - + evas_output_viewport_get(evas, NULL, NULL, w, h); bg_resize(w, h); } @@ -176,7 +176,7 @@ evas_object_move(o, 0, 0); evas_object_resize(o, startw, starth); evas_object_layer_set(o, -999); - evas_object_show(o); + evas_object_show(o); evas_object_focus_set(o, 1); evas_object_event_callback_add(o, EVAS_CALLBACK_KEY_DOWN, bg_key_down, NULL); o_bg = o; @@ -192,11 +192,11 @@ broadcast_event(Emotion_Event ev) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; emotion_object_event_simple_send(obj, ev); } @@ -206,7 +206,7 @@ bg_key_down(void *data, Evas * e, Evas_Object * obj, void *event_info) { Evas_Event_Key_Down *ev; - + ev = (Evas_Event_Key_Down *)event_info; if (!strcmp(ev-keyname, Escape)) ecore_main_loop_quit(); @@ -251,11 +251,11 @@ else if (!strcmp(ev-keyname, bracketleft)) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; emotion_object_audio_volume_set(obj, emotion_object_audio_volume_get(obj) - 0.1); } @@ -263,11 +263,11 @@ else if (!strcmp(ev-keyname, bracketright)) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; emotion_object_audio_volume_set(obj, emotion_object_audio_volume_get(obj) + 0.1); } @@ -275,11 +275,11 @@ else if (!strcmp(ev-keyname, v)) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; if (emotion_object_video_mute_get(obj)) emotion_object_video_mute_set(obj, 0); @@ -290,11 +290,11 @@ else if (!strcmp(ev-keyname, a)) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; if (emotion_object_audio_mute_get(obj)) { @@ -311,11 +311,11 @@ else if (!strcmp(ev-keyname, i)) { Evas_List *l; - + for (l = video_objs; l; l = l-next) { Evas_Object *obj; - + obj = l-data; printf(audio channels: %i\n, emotion_object_audio_channel_count(obj)); printf(video channels: %i\n, emotion_object_video_channel_count(obj)); @@ -390,7 +390,7 @@ video_obj_down_cb(void *data, Evas *ev, Evas_Object
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: ChangeLog Log Message: Update ChangeLog === RCS file: /cvs/e/e17/libs/emotion/ChangeLog,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- ChangeLog 1 Sep 2007 17:51:40 - 1.3 +++ ChangeLog 31 Oct 2007 20:16:37 - 1.4 @@ -1,3 +1,24 @@ +2007-10-31 Vincent Torri doursse at users dot sf dot net + + * configure.in: + * src/bin/emotion_test_main.c: + * src/lib/Makefile.am: + * src/lib/emotion_private.h: + * src/lib/emotion_smart.c: + * src/modules/Makefile.am: + * src/modules/emotion_gstreamer.c: + Use ecore_plugin instead of dlfcn + The modules names are now xine and gstreamer (it's useless to add + the extension, as ecore_plugin does not need it). + Look for the modules in path that is pointed by the env variable + EMOTION_MODULES_DIR first. + Fix a leak in the gstreamer module + Remove some trailing spaces + Fix bug #223 + + add the support of URI playback. Minor fixes. + Fix bug #114 + 2007-09-01 Vincent Torri doursse at users dot sf dot net * src/modules/emotion_gstreamer.c: (em_file_open): - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer_pipeline.c emotion_gstreamer_pipeline.h Log Message: * src/modules/emotion_gstreamer.c: (em_file_open): * src/modules/emotion_gstreamer_pipeline.c: (cb_handoff), (emotion_pipeline_dvd_build), (emotion_pipeline_uri_build), (emotion_pipeline_file_build), (_emotion_streams_sinks_get), (_emotion_video_sink_fill), (_emotion_audio_sink_fill): * src/modules/emotion_gstreamer_pipeline.h: add the support of URI playback. Minor fixes. Fix bug #114 === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- emotion_gstreamer.c 19 Aug 2007 14:11:38 - 1.24 +++ emotion_gstreamer.c 1 Sep 2007 17:51:40 - 1.25 @@ -366,21 +366,29 @@ device = NULL; sscanf (file,cdda://%d, track); } - printf (build cdda pipeline\n); + fprintf (stderr, [Emotion] [gst] build CD Audio pipeline\n); if (!(emotion_pipeline_cdda_build (ev, device, track))) { -printf (error building CA Audio pipeline\n); +fprintf (stderr, [Emotion] [gst] error while building CD Audio pipeline\n); return 0; } } /* Dvd */ else if (strstr (file, dvd://)) { - printf (build dvd pipeline \n); + fprintf (stderr, [Emotion] [gst] build DVD pipeline \n); if (!(emotion_pipeline_dvd_build (ev, NULL))) { -printf (error building DVD pipeline\n); +fprintf (stderr, [Emotion] [gst] error while building DVD pipeline\n); return 0; } } + /* http */ + else if (strstr (file, http://;)) { + fprintf (stderr, [Emotion] [gst] build URI pipeline \n); + if (!(emotion_pipeline_uri_build (ev, file))) { + fprintf (stderr, [Emotion] [gst] error while building URI pipeline\n); + return 0; + } + } /* Normal media file */ else { const char *filename; @@ -389,9 +397,9 @@ ? file + strlen (file://) : file; - printf (build file pipeline \n); + fprintf (stderr, [Emotion] [gst] build file pipeline \n); if (!(emotion_pipeline_file_build (ev, filename))) { -printf (error building File pipeline\n); +fprintf (stderr, [Emotion] [gst] error while building File pipeline\n); return 0; } } === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer_pipeline.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- emotion_gstreamer_pipeline.c25 Jul 2007 17:00:56 - 1.4 +++ emotion_gstreamer_pipeline.c1 Sep 2007 17:51:40 - 1.5 @@ -26,13 +26,17 @@ static Emotion_Video_Sink * _emotion_video_sink_new (Emotion_Gstreamer_Video *ev); -static void _emotion_video_sink_free (Emotion_Gstreamer_Video *ev, Emotion_Video_Sink *asink); +static void _emotion_video_sink_free (Emotion_Gstreamer_Video *ev, Emotion_Video_Sink *vsink); +static void _emotion_video_sink_fill (Emotion_Video_Sink *vsink, GstPad *pad, GstCaps *caps); + static Emotion_Audio_Sink * _emotion_audio_sink_new (Emotion_Gstreamer_Video *ev); static void _emotion_audio_sink_free (Emotion_Gstreamer_Video *ev, Emotion_Audio_Sink *asink); +static GstElement * _emotion_audio_sink_create (Emotion_Gstreamer_Video *ev, int index); +static void _emotion_audio_sink_fill (Emotion_Audio_Sink *asink, GstPad *pad, GstCaps *caps); static Emotion_Video_Sink * _emotion_visualization_sink_create (Emotion_Gstreamer_Video *ev, Emotion_Audio_Sink *asink); -static GstElement * _emotion_audio_sink_create (Emotion_Gstreamer_Video *ev, int index); +static void _emotion_streams_sinks_get (Emotion_Gstreamer_Video *ev, GstElement *decoder); gboolean emotion_pipeline_pause (GstElement *pipeline) @@ -78,7 +82,7 @@ write(ev-fd_ev_write, buf, sizeof(buf)); } else { - Emotion_Audio_Sink *asink; + Emotion_Audio_Sink *asink; asink = (Emotion_Audio_Sink *)ecore_list_index_goto (ev-audio_sinks, ev-audio_sink_nbr); _emotion_video_pos_update(ev-obj, ev-position, asink-length_time); } @@ -211,7 +215,7 @@ if (!emotion_pipeline_pause (ev-pipeline)) goto failure_gstreamer_pause; - while (no_more_pads == 0) { + while (no_more_pads == 0) { g_print (toto\n);} no_more_pads = 0; @@ -237,9 +241,6 @@ /* video stream */ if (g_str_has_prefix (str, video/mpeg)) { Emotion_Video_Sink *vsink; -GstStructure *structure; -const GValue *val; -GstQuery *query; GstPad
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: ChangeLog Log Message: * src/modules/emotion_gstreamer.c: (em_file_open): * src/modules/emotion_gstreamer_pipeline.c: (cb_handoff), (emotion_pipeline_dvd_build), (emotion_pipeline_uri_build), (emotion_pipeline_file_build), (_emotion_streams_sinks_get), (_emotion_video_sink_fill), (_emotion_audio_sink_fill): * src/modules/emotion_gstreamer_pipeline.h: add the support of URI playback. Minor fixes. Fix bug #114 === RCS file: /cvs/e/e17/libs/emotion/ChangeLog,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- ChangeLog 30 Mar 2006 01:33:37 - 1.2 +++ ChangeLog 1 Sep 2007 17:51:40 - 1.3 @@ -1,3 +1,14 @@ +2007-09-01 Vincent Torri doursse at users dot sf dot net + + * src/modules/emotion_gstreamer.c: (em_file_open): + * src/modules/emotion_gstreamer_pipeline.c: (cb_handoff), + (emotion_pipeline_dvd_build), (emotion_pipeline_uri_build), + (emotion_pipeline_file_build), (_emotion_streams_sinks_get), + (_emotion_video_sink_fill), (_emotion_audio_sink_fill): + * src/modules/emotion_gstreamer_pipeline.h: + add the support of URI playback. Minor fixes. + Fix bug #114 + Wed Mar 29 20:33:40 2006Michael Jennings (mej) Xine plugins seem to no longer be built. - This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now http://get.splunk.com/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: TODO Log Message: stuff to do for the gstreamer module === RCS file: /cvs/e/e17/libs/emotion/TODO,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- TODO2 Oct 2005 07:34:36 - 1.2 +++ TODO8 Jul 2007 19:16:08 - 1.3 @@ -14,4 +14,14 @@ * Add gststreamselector to support multiple video and audio streams. -* Add support of visualizations for audio files (Goom...) +* Add API for visualisation plugins +* Add http source (N. Aguirre) +* Add mms source +* Add rtsp source +* Add dvb source +* Add v4l2 source (no v4l1 source) (N. Aguirre) +* Add dvd source (waiting for the dvdnav gstreamer source plugin, though...) +* Add daap source +* Add upnp source +* Implement time shifting +* Add evas sink to gstreamer (in progress: V. Torri) - This SF.net email is sponsored by DB2 Express Download DB2 Express C - the FREE version of DB2 express and take control of your XML. No limits. Just data. Click to get it now. http://sourceforge.net/powerbar/db2/ ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer_pipeline.c emotion_gstreamer_pipeline.h Log Message: Fix a freeze when a file is not valid. Add support for DVD (but i works randomly...) === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- emotion_gstreamer.c 17 Jul 2006 17:11:04 - 1.18 +++ emotion_gstreamer.c 18 Jul 2006 19:04:38 - 1.19 @@ -370,11 +370,20 @@ return 0; } } + /* Dvd */ + else if (strstr (file, dvd://)) { + + printf (build dvd pipeline \n); + if (!(emotion_pipeline_dvd_build (ev, NULL))) { +printf (error building DVD pipeline\n); +return 0; + } + } /* Normal media file */ else { const char *filename; - filename = strstr (file,file://) + filename = strstr (file, file://) ? file + strlen (file://) : file; === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer_pipeline.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- emotion_gstreamer_pipeline.c17 Jul 2006 17:11:04 - 1.1 +++ emotion_gstreamer_pipeline.c18 Jul 2006 19:04:38 - 1.2 @@ -5,10 +5,19 @@ #include emotion_gstreamer.h -static void new_decoded_pad_cb (GstElement *decodebin, -GstPad *new_pad, -gbooleanlast, -gpointeruser_data); +static int no_more_pads = 0; + +static void file_new_decoded_pad_cb (GstElement *decodebin, + GstPad *new_pad, + gbooleanlast, + gpointeruser_data); + +static void dvd_pad_added_cb (GstElement *dvddemuxer, + GObject*new_pad, + gpointeruser_data); + +static void dvd_no_more_pads_cb (GstElement *dvddemuxer, + gpointeruser_data); static void cb_handoff (GstElement *fakesrc, GstBuffer *buffer, @@ -33,14 +42,12 @@ res = gst_element_set_state ((pipeline), GST_STATE_PAUSED); if (res == GST_STATE_CHANGE_FAILURE) { g_print (Emotion-Gstreamer ERROR: could not pause\n); - gst_object_unref (GST_OBJECT ((pipeline))); return 0; } res = gst_element_get_state ((pipeline), NULL, NULL, GST_CLOCK_TIME_NONE); if (res != GST_STATE_CHANGE_SUCCESS) { g_print (Emotion-Gstreamer ERROR: could not complete pause\n); - gst_object_unref (GST_OBJECT ((pipeline))); return 0; } @@ -97,7 +104,7 @@ cdiocddasrc = gst_element_factory_make (cdiocddasrc, src); if (!cdiocddasrc) { g_print (cdiocddasrc element missing. Install it.\n); - return 0; + goto failure_cdiocddasrc; } if (device) @@ -159,13 +166,175 @@ _emotion_video_sink_free (ev, vsink); failure_link: gst_bin_remove (GST_BIN (ev-pipeline), asink-sink); - gst_bin_remove (GST_BIN (ev-pipeline), cdiocddasrc); failure_gstreamer_sink: _emotion_audio_sink_free (ev, asink); failure_emotion_sink: - /* may be NULL because of gst_bin_remove above */ - if (cdiocddasrc) - gst_object_unref (GST_OBJECT (cdiocddasrc)); + gst_bin_remove (GST_BIN (ev-pipeline), cdiocddasrc); + failure_cdiocddasrc: + + return 0; +} + +int +emotion_pipeline_dvd_build (void *video, const char *device) +{ + GstElement *dvdreadsrc; + GstElement *dvddemux; + Emotion_Gstreamer_Video *ev; + + ev = (Emotion_Gstreamer_Video *)video; + if (!ev) return 0; + + dvdreadsrc = gst_element_factory_make (dvdreadsrc, src); + if (!dvdreadsrc) + goto failure_dvdreadsrc; + if (device) + g_object_set (G_OBJECT (dvdreadsrc), device, device, NULL); + + dvddemux = gst_element_factory_make (dvddemux, dvddemux); + if (!dvddemux) + goto failure_dvddemux; + g_signal_connect (dvddemux, pad-added, + G_CALLBACK (dvd_pad_added_cb), ev); + g_signal_connect (dvddemux, no-more-pads, + G_CALLBACK (dvd_no_more_pads_cb), ev); + + gst_bin_add_many (GST_BIN (ev-pipeline), dvdreadsrc, dvddemux, NULL); + if (!gst_element_link (dvdreadsrc, dvddemux)) + goto failure_link; + + if (!emotion_pipeline_pause (ev-pipeline)) + goto failure_gstreamer_pause; + + while (no_more_pads == 0) { + g_print (toto\n);} + no_more_pads = 0; + + /* We get the informations of streams */ + ecore_list_goto_first (ev-video_sinks); + ecore_list_goto_first (ev-audio_sinks); + + { + GstIterator *it; + gpointer
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: Makefile.am emotion_gstreamer.c Added Files: emotion_gstreamer_pipeline.h emotion_gstreamer_pipeline.c Log Message: put the build of the pipelines apart === RCS file: /cvs/e/e17/libs/emotion/src/modules/Makefile.am,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- Makefile.am 1 Feb 2006 06:21:52 - 1.8 +++ Makefile.am 17 Jul 2006 17:11:04 - 1.9 @@ -35,7 +35,9 @@ if BUILD_GSTREAMER_MODULE emotion_decoder_gstreamer_la_SOURCES = \ emotion_gstreamer.c \ -emotion_gstreamer.h +emotion_gstreamer.h \ +emotion_gstreamer_pipeline.c \ +emotion_gstreamer_pipeline.h emotion_decoder_gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ emotion_decoder_gstreamer_la_LDFLAGS = -module -avoid-version \ -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- emotion_gstreamer.c 25 Jun 2006 16:52:51 - 1.17 +++ emotion_gstreamer.c 17 Jul 2006 17:11:04 - 1.18 @@ -4,69 +4,14 @@ #include Emotion.h #include emotion_private.h #include emotion_gstreamer.h +#include emotion_gstreamer_pipeline.h -static gboolean -_emotion_pipeline_pause (GstElement *pipeline) -{ - GstStateChangeReturn res; - - res = gst_element_set_state ((pipeline), GST_STATE_PAUSED); - if (res == GST_STATE_CHANGE_FAILURE) { - g_print (Emotion-Gstreamer ERROR: could not pause\n); - gst_object_unref (GST_OBJECT ((pipeline))); - return 0; - } - - res = gst_element_get_state ((pipeline), NULL, NULL, GST_CLOCK_TIME_NONE); - if (res != GST_STATE_CHANGE_SUCCESS) { - g_print (Emotion-Gstreamer ERROR: could not complete pause\n); - gst_object_unref (GST_OBJECT ((pipeline))); - return 0; - } - - return 1; -} - - - -/* Callbacks to display the frame content */ - -static void cb_handoff (GstElement *fakesrc, - GstBuffer *buffer, - GstPad *pad, - gpointeruser_data); -static void new_decoded_pad_cb (GstElement *decodebin, -GstPad *new_pad, -gbooleanlast, -gpointeruser_data); - /* Callbacks to get the eos */ static int _eos_timer_fct (void *data); -GstElement * -make_queue () -{ - GstElement *queue = gst_element_factory_make (queue, NULL); - g_object_set (queue, - max-size-time, (guint64) 3 * GST_SECOND, - max-size-bytes, (guint32) 0, - max-size-buffers, (guint32) 0, NULL); - - return queue; -} - static int _em_fd_ev_active(void *data, Ecore_Fd_Handler *fdh); -static Emotion_Video_Sink * _emotion_video_sink_new (Emotion_Gstreamer_Video *ev); -static Emotion_Audio_Sink * _emotion_audio_sink_new (Emotion_Gstreamer_Video *ev); -static GstElement * _em_audio_sink_create (Emotion_Gstreamer_Video *ev, int index); -static Emotion_Video_Sink * _visualization_sink_create (); - -static int _cdda_pipeline_build (void *video, const char * device, unsigned int track); -static int _file_pipeline_build (void *video, const char *file); - -static int _cdda_track_count_get(void *video); /* Interface */ @@ -420,7 +365,7 @@ sscanf (file,cdda://%d, track); } printf (build cdda pipeline\n); - if (!(_cdda_pipeline_build (ev, device, track))) { + if (!(emotion_pipeline_cdda_build (ev, device, track))) { printf (error building CA Audio pipeline\n); return 0; } @@ -434,7 +379,7 @@ : file; printf (build file pipeline \n); - if (!(_file_pipeline_build (ev, filename))) { + if (!(emotion_pipeline_file_build (ev, filename))) { printf (error building File pipeline\n); return 0; } @@ -486,7 +431,7 @@ if (!emotion_object_play_get(ev-obj)) { printf( ... unpause\n); -_emotion_pipeline_pause (ev-pipeline); +emotion_pipeline_pause (ev-pipeline); } printf(EX stop\n); @@ -1068,7 +1013,6 @@ em_audio_channel_volume_get(void *video) { Emotion_Gstreamer_Video *ev; - double vol; ev = (Emotion_Gstreamer_Video *)video; @@ -1269,7 +1213,7 @@ case META_TRACK_COUNT: { int track_count; -track_count = _cdda_track_count_get (video); +track_count = emotion_pipeline_cdda_track_count_get (video); if (track_count 0) { char buf[64]; @@ -1315,99 +1259,6 @@ em_module.shutdown(video); } -/* Send the video frame to the evas object */ -static void
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: use goom and not goom2k4 as default visualization === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- emotion_gstreamer.c 21 May 2006 18:24:24 - 1.16 +++ emotion_gstreamer.c 25 Jun 2006 16:52:51 - 1.17 @@ -324,7 +324,7 @@ ev-ratio = 1.0; ev-video_sink_nbr = 0; ev-audio_sink_nbr = 0; - ev-vis = EMOTION_VIS_LIBVISUAL_GOOM; + ev-vis = EMOTION_VIS_GOOM; /* Create the file descriptors */ if (pipe(fds) == 0) { Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: fix volume for the gstreamer plugin === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.12 retrieving revision 1.13 diff -u -3 -r1.12 -r1.13 --- emotion_gstreamer.c 14 May 2006 14:32:45 - 1.12 +++ emotion_gstreamer.c 21 May 2006 10:23:15 - 1.13 @@ -1036,6 +1036,8 @@ double vol) { Emotion_Gstreamer_Video *ev; + Emotion_Audio_Sink *asink; + GstElement *volume; ev = (Emotion_Gstreamer_Video *)video; @@ -1043,21 +1045,28 @@ vol = 0.0; if (vol 100.0) vol = 100.0; - g_object_set (G_OBJECT (ev-pipeline), volume, -vol / 100.0, NULL); + volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); + if (!volume) return; + g_object_set (G_OBJECT (volume), volume, +vol / 10.0, NULL); + gst_object_unref (volume); } static double em_audio_channel_volume_get(void *video) { Emotion_Gstreamer_Video *ev; + GstElement *volume; double vol; ev = (Emotion_Gstreamer_Video *)video; - g_object_get (G_OBJECT (ev-pipeline), volume, vol, NULL); + volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); + if (!volume) return; + g_object_get (G_OBJECT (volume), volume, vol, NULL); + gst_object_unref (volume); - return vol*100.0; + return vol*10.0; } /* spu stuff */ @@ -1532,6 +1541,7 @@ GstElement *queue; GstElement *conv; GstElement *resample; + GstElement *volume; GstElement *sink; GstPad *audiopad; @@ -1540,14 +1550,15 @@ queue = gst_element_factory_make (queue, NULL); conv = gst_element_factory_make (audioconvert, NULL); resample = gst_element_factory_make (audioresample, NULL); + volume = gst_element_factory_make (volume, volume); if (index == 1) sink = gst_element_factory_make (autoaudiosink, NULL); else sink = gst_element_factory_make (fakesink, NULL); gst_bin_add_many (GST_BIN (audiobin), - queue, conv, resample, sink, NULL); - gst_element_link_many (queue, conv, resample, sink, NULL); + queue, conv, resample, volume, sink, NULL); + gst_element_link_many (queue, conv, resample, volume, sink, NULL); audiopad = gst_element_get_pad (queue, sink); gst_element_add_pad (audiobin, gst_ghost_pad_new (sink, audiopad)); --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer.h Log Message: fix audio mute === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.14 retrieving revision 1.15 diff -u -3 -r1.14 -r1.15 --- emotion_gstreamer.c 21 May 2006 10:26:09 - 1.14 +++ emotion_gstreamer.c 21 May 2006 11:13:05 - 1.15 @@ -1014,11 +1014,23 @@ int mute) { Emotion_Gstreamer_Video *ev; + GstElement *volume; ev = (Emotion_Gstreamer_Video *)video; + if (ev-audio_mute == mute) + return; + ev-audio_mute = mute; - /* FIXME: a faire ... */ + volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); + if (!volume) return; + + if (mute) + g_object_set (G_OBJECT (volume), volume, 0.0, NULL); + else + g_object_set (G_OBJECT (volume), volume, ev-volume / 10.0, NULL); + + gst_object_unref (volume); } static int @@ -1044,6 +1056,7 @@ vol = 0.0; if (vol 100.0) vol = 100.0; + ev-volume = vol; volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); if (!volume) return; g_object_set (G_OBJECT (volume), volume, @@ -1055,17 +1068,11 @@ em_audio_channel_volume_get(void *video) { Emotion_Gstreamer_Video *ev; - GstElement *volume; double vol; ev = (Emotion_Gstreamer_Video *)video; - volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); - if (!volume) return 0.0; - g_object_get (G_OBJECT (volume), volume, vol, NULL); - gst_object_unref (volume); - - return vol*10.0; + return ev-volume; } /* spu stuff */ @@ -1543,6 +1550,7 @@ GstElement *volume; GstElement *sink; GstPad *audiopad; + double vol; audiobin = gst_bin_new (NULL); @@ -1550,6 +1558,9 @@ conv = gst_element_factory_make (audioconvert, NULL); resample = gst_element_factory_make (audioresample, NULL); volume = gst_element_factory_make (volume, volume); + g_object_get (G_OBJECT (volume), volume, vol, NULL); + ev-volume = vol * 10.0; + if (index == 1) sink = gst_element_factory_make (autoaudiosink, NULL); else === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.h,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- emotion_gstreamer.h 22 Apr 2006 10:12:03 - 1.6 +++ emotion_gstreamer.h 21 May 2006 11:13:05 - 1.7 @@ -55,6 +55,7 @@ /* Characteristics of stream */ doubleposition; doubleratio; + doublevolume; volatile int seek_to; volatile int get_poslen; --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: volume is between 0 and 1, not 0 and 100 === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- emotion_gstreamer.c 21 May 2006 11:13:05 - 1.15 +++ emotion_gstreamer.c 21 May 2006 18:24:24 - 1.16 @@ -1028,7 +1028,7 @@ if (mute) g_object_set (G_OBJECT (volume), volume, 0.0, NULL); else - g_object_set (G_OBJECT (volume), volume, ev-volume / 10.0, NULL); + g_object_set (G_OBJECT (volume), volume, ev-volume * 10.0, NULL); gst_object_unref (volume); } @@ -1054,13 +1054,13 @@ if (vol 0.0) vol = 0.0; - if (vol 100.0) - vol = 100.0; + if (vol 1.0) + vol = 1.0; ev-volume = vol; volume = gst_bin_get_by_name (GST_BIN (ev-pipeline), volume); if (!volume) return; g_object_set (G_OBJECT (volume), volume, -vol / 10.0, NULL); +vol * 10.0, NULL); gst_object_unref (volume); } @@ -1559,7 +1559,7 @@ resample = gst_element_factory_make (audioresample, NULL); volume = gst_element_factory_make (volume, volume); g_object_get (G_OBJECT (volume), volume, vol, NULL); - ev-volume = vol * 10.0; + ev-volume = vol / 10.0; if (index == 1) sink = gst_element_factory_make (autoaudiosink, NULL); --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: add track count in the metadata and fix a bit the _close function. It needs more cara, though === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- emotion_gstreamer.c 6 May 2006 13:17:50 - 1.11 +++ emotion_gstreamer.c 14 May 2006 14:32:45 - 1.12 @@ -476,6 +476,7 @@ Emotion_Gstreamer_Video *ev; GstIterator *iter; gpointer data; + gboolean done; ev = (Emotion_Gstreamer_Video *)video; if (!ev) @@ -487,17 +488,42 @@ printf( ... unpause\n); _emotion_pipeline_pause (ev-pipeline); } + printf(EX stop\n); - if (ev-pipeline) - gst_element_set_state (ev-pipeline, GST_STATE_READY); + gst_element_set_state (ev-pipeline, GST_STATE_READY); /* we remove all the elements in the pipeline */ iter = gst_bin_iterate_elements (GST_BIN (ev-pipeline)); - while (gst_iterator_next (iter, data) == GST_ITERATOR_OK) { - GstElement *element; + done = FALSE; + while (!done) { + switch (gst_iterator_next (iter, data)) { + case GST_ITERATOR_OK: { + GstElement *element; + + element = GST_ELEMENT (data); + if (element) { + gst_bin_remove (GST_BIN (ev-pipeline), element); + } + break; + } + case GST_ITERATOR_RESYNC: { + GstElement *element; - element = GST_ELEMENT (data); - gst_bin_remove (GST_BIN (ev-pipeline), element); + element = GST_ELEMENT (data); + if (element) { + gst_bin_remove (GST_BIN (ev-pipeline), element); + } + gst_iterator_resync (iter); + break; + } + case GST_ITERATOR_ERROR: + printf(error iter\n); + done = TRUE; + break; + case GST_ITERATOR_DONE: + done = TRUE; + break; + } } gst_iterator_free (iter); @@ -1225,6 +1251,19 @@ #endif if (str) done = TRUE; break; + case META_TRACK_COUNT: { +int track_count; + +track_count = _cdda_track_count_get (video); +if (track_count 0) { + char buf[64]; + + g_snprintf (buf, 64, %d, track_count); + str = g_strdup (buf); + done = TRUE; +} +break; + } } break; } @@ -1681,12 +1720,6 @@ if (!_emotion_pipeline_pause (ev-pipeline)) goto failure_gstreamer_pause; - - { - gint tracks_count; - tracks_count = _cdda_track_count_get(ev); - g_print (Tracks count : %d\n, tracks_count); - } { GstQuery *query; --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: Emotion.h emotion_private.h Log Message: add track count in the metadata === RCS file: /cvs/e/e17/libs/emotion/src/lib/Emotion.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- Emotion.h 2 Oct 2005 07:34:36 - 1.9 +++ Emotion.h 14 May 2006 14:32:02 - 1.10 @@ -49,7 +49,8 @@ EMOTION_META_INFO_TRACK_YEAR, EMOTION_META_INFO_TRACK_GENRE, EMOTION_META_INFO_TRACK_COMMENT, - EMOTION_META_INFO_TRACK_DISC_ID + EMOTION_META_INFO_TRACK_DISC_ID, + EMOTION_META_INFO_TRACK_COUNT }; typedef enum _Emotion_ModuleEmotion_Module; === RCS file: /cvs/e/e17/libs/emotion/src/lib/emotion_private.h,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- emotion_private.h 12 Mar 2006 09:56:08 - 1.11 +++ emotion_private.h 14 May 2006 14:32:02 - 1.12 @@ -18,6 +18,7 @@ #define META_TRACK_ALBUM 5 #define META_TRACK_YEAR 6 #define META_TRACK_DISCID 7 +#define META_TRACK_COUNT 8 typedef enum _Emotion_Format Emotion_Format; typedef enum _Emotion_Vis Emotion_Vis; --- Using Tomcat but need to do more? Need to support web services, security? Get stuff done quickly with pre-integrated technology to make your job easier Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo http://sel.as-us.falkag.net/sel?cmd=lnkkid=120709bid=263057dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer.h Log Message: EOS signal. Easier than expected :) === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- emotion_gstreamer.c 20 Apr 2006 18:23:48 - 1.9 +++ emotion_gstreamer.c 22 Apr 2006 10:12:03 - 1.10 @@ -41,6 +41,8 @@ gbooleanlast, gpointeruser_data); +/* Callbacks to get the eos */ +static int _eos_timer_fct (void *data); GstElement * make_queue () @@ -300,8 +302,8 @@ if (!ev-pipeline) goto failure_pipeline; - ev-bus = gst_pipeline_get_bus (GST_PIPELINE (ev-pipeline)); - if (!ev-bus) + ev-eos_bus = gst_pipeline_get_bus (GST_PIPELINE (ev-pipeline)); + if (!ev-eos_bus) goto failure_bus; /* We allocate the sinks lists */ @@ -344,7 +346,7 @@ failure_audio_sinks: ecore_list_destroy (ev-video_sinks); failure_video_sinks: - gst_object_unref (GST_OBJECT (ev-bus)); + gst_object_unref (GST_OBJECT (ev-eos_bus)); failure_bus: /* this call is not really necessary */ gst_element_set_state (ev-pipeline, GST_STATE_NULL); @@ -368,7 +370,7 @@ gst_element_set_state (ev-pipeline, GST_STATE_NULL); gst_object_unref (GST_OBJECT (ev-pipeline)); - gst_object_unref (GST_OBJECT (ev-bus)); + gst_object_unref (GST_OBJECT (ev-eos_bus)); gst_deinit (); ecore_list_destroy (ev-video_sinks); @@ -393,7 +395,6 @@ Emotion_Gstreamer_Video *ev; ev = (Emotion_Gstreamer_Video *)video; - printf (Open file gstreamer... %s\n, file); /* Evas Object */ ev-obj = obj; @@ -501,6 +502,12 @@ /* we clear the sink lists */ ecore_list_clear (ev-video_sinks); ecore_list_clear (ev-audio_sinks); + + /* shutdown eos */ + if (ev-eos_timer) { + ecore_timer_del (ev-eos_timer); + ev-eos_timer = NULL; + } } static void @@ -512,6 +519,9 @@ ev = (Emotion_Gstreamer_Video *)video; gst_element_set_state (ev-pipeline, GST_STATE_PLAYING); ev-play = 1; + + /* eos */ + ev-eos_timer = ecore_timer_add (0.1, _eos_timer_fct, ev); } static void @@ -523,6 +533,12 @@ gst_element_set_state (ev-pipeline, GST_STATE_PAUSED); ev-play = 0; + + /* shutdown eos */ + if (ev-eos_timer) { + ecore_timer_del (ev-eos_timer); + ev-eos_timer = NULL; + } } static void @@ -1311,7 +1327,6 @@ ev = (Emotion_Gstreamer_Video *)user_data; caps = gst_pad_get_caps (new_pad); str = gst_caps_to_string (caps); -/*g_print (New pad : %s\n, str); */ /* video stream */ if (g_str_has_prefix (str, video/)) { Emotion_Video_Sink *vsink; @@ -1643,39 +1658,6 @@ return bin; } -static gboolean -_bus_call (GstBus *bus, - GstMessage *msg, - gpointerdata) -{ - Emotion_Gstreamer_Video *ev; - - ev = (Emotion_Gstreamer_Video *)data; - if (!ev) return 0; - - switch (GST_MESSAGE_TYPE (msg)) { - case GST_MESSAGE_EOS: - g_print (End-of-stream\n); - break; - case GST_MESSAGE_ERROR: { - gchar *debug; - GError *err; - - gst_message_parse_error (msg, err, debug); - g_free (debug); - - g_print (Error: %s\n, err-message); - g_error_free (err); - - break; - } - default: - break; - } - - return TRUE; -} - static int _cdda_pipeline_build (void *video, const char * device, unsigned int track) { @@ -1873,7 +1855,6 @@ gint64 time; gst_query_parse_duration (query, NULL, time); - g_print ( duration : % GST_TIME_FORMAT \n\n, GST_TIME_ARGS (time)); asink-length_time = (double)time / (double)GST_SECOND; } gst_query_unref (query); @@ -1893,7 +1874,6 @@ GstElement *visbin; g_snprintf (buf, 128, visbin%d, index); - g_print (vis : %s\n, buf); visbin = gst_bin_get_by_name (GST_BIN (ev-pipeline), buf); if (visbin) { GstPad *srcpad; @@ -1930,8 +1910,6 @@ G_CALLBACK (cb_handoff), ev); } } - - gst_bus_add_watch (ev-bus, _bus_call, ev); return 1; @@ -1945,4 +1923,42 @@ gst_object_unref (GST_OBJECT (filesrc)); return 0; +} + +int _eos_timer_fct (void *data) +{ + Emotion_Gstreamer_Video *ev; + GstMessage *msg; + + ev = (Emotion_Gstreamer_Video *)data; + while ((msg = gst_bus_poll (ev-eos_bus, GST_MESSAGE_ERROR | GST_MESSAGE_EOS, 0))) { + switch (GST_MESSAGE_TYPE(msg)) { + case GST_MESSAGE_ERROR: { + gchar *debug; + GError *err; + + gst_message_parse_error (msg, err, debug); + g_free (debug); + +
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer.h Log Message: LOTS of checks added. Fix the seek a bit (gstreamer plugins have problems with seek, btw). It's now possible to mute the video, but it's not the correct fix. Metadata can be grabbed. Beginning of the code for the eos (the way it is done is too close to glib to be done easily) === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- emotion_gstreamer.c 11 Apr 2006 23:31:03 - 1.8 +++ emotion_gstreamer.c 20 Apr 2006 18:23:48 - 1.9 @@ -6,30 +6,29 @@ #include emotion_gstreamer.h -#define EMOTION_PIPELINE_PAUSE(pipeline) \ -{ \ - GstStateChangeReturn res; \ - \ - res = gst_element_set_state ((pipeline), GST_STATE_PAUSED); \ - if (res == GST_STATE_CHANGE_FAILURE) { \ - g_print (Emotion-Gstreamer ERROR: could not pause\n); \ - gst_object_unref (GST_OBJECT ((pipeline))); \ - return 0; \ - } \ - res = gst_element_get_state ((pipeline), NULL, NULL, GST_CLOCK_TIME_NONE); \ - if (res != GST_STATE_CHANGE_SUCCESS) { \ - g_print (Emotion-Gstreamer ERROR: could not complete pause\n); \ - gst_object_unref (GST_OBJECT ((pipeline))); \ - return 0; \ - } \ -} +static gboolean +_emotion_pipeline_pause (GstElement *pipeline) +{ + GstStateChangeReturn res; + + res = gst_element_set_state ((pipeline), GST_STATE_PAUSED); + if (res == GST_STATE_CHANGE_FAILURE) { + g_print (Emotion-Gstreamer ERROR: could not pause\n); + gst_object_unref (GST_OBJECT ((pipeline))); + return 0; + } + + res = gst_element_get_state ((pipeline), NULL, NULL, GST_CLOCK_TIME_NONE); + if (res != GST_STATE_CHANGE_SUCCESS) { + g_print (Emotion-Gstreamer ERROR: could not complete pause\n); + gst_object_unref (GST_OBJECT ((pipeline))); + return 0; + } + return 1; +} -/* Callbacks to handle errors and EOS */ -static void cb_end_of_stream (GstElement *thread, - gpointerdata); -static gboolean cb_idle_eos (gpointer data); /* Callbacks to display the frame content */ @@ -279,6 +278,7 @@ void**emotion_video) { Emotion_Gstreamer_Video *ev; + GError *error; int fds[2]; if (!emotion_video) @@ -288,16 +288,30 @@ ev = calloc(1, sizeof(Emotion_Gstreamer_Video)); if (!ev) return 0; + ev-obj = obj; ev-obj_data = NULL; /* Initialization of gstreamer */ - gst_init (NULL, NULL); + if (!gst_init_check (NULL, NULL, error)) + goto failure_gstreamer; + + ev-pipeline = gst_pipeline_new (pipeline); + if (!ev-pipeline) + goto failure_pipeline; + + ev-bus = gst_pipeline_get_bus (GST_PIPELINE (ev-pipeline)); + if (!ev-bus) + goto failure_bus; /* We allocate the sinks lists */ ev-video_sinks = ecore_list_new (); + if (!ev-video_sinks) + goto failure_video_sinks; ecore_list_set_free_cb(ev-video_sinks, ECORE_FREE_CB(free)); ev-audio_sinks = ecore_list_new (); + if (!ev-audio_sinks) + goto failure_audio_sinks; ecore_list_set_free_cb(ev-audio_sinks, ECORE_FREE_CB(free)); *emotion_video = ev; @@ -320,8 +334,27 @@ NULL, NULL); ecore_main_fd_handler_active_set(ev-fd_ev_handler, ECORE_FD_READ); } + else + goto failure_pipe; return 1; + + failure_pipe: + ecore_list_destroy (ev-audio_sinks); + failure_audio_sinks: + ecore_list_destroy (ev-video_sinks); + failure_video_sinks: + gst_object_unref (GST_OBJECT (ev-bus)); + failure_bus: + /* this call is not really necessary */ + gst_element_set_state (ev-pipeline, GST_STATE_NULL); + gst_object_unref (GST_OBJECT (ev-pipeline)); + failure_pipeline: + gst_deinit (); + failure_gstreamer: + free (ev); + + return 0; } static int @@ -330,9 +363,13 @@ Emotion_Gstreamer_Video *ev; ev = (Emotion_Gstreamer_Video *)video; + if (!ev) + return 0; gst_element_set_state (ev-pipeline, GST_STATE_NULL); gst_object_unref (GST_OBJECT (ev-pipeline)); + gst_object_unref (GST_OBJECT (ev-bus)); + gst_deinit (); ecore_list_destroy (ev-video_sinks); ecore_list_destroy (ev-audio_sinks); @@ -380,7 +417,10 @@ sscanf (file,cdda://%d, track); } printf (build cdda pipeline\n); - _cdda_pipeline_build (ev, device, track); + if (!(_cdda_pipeline_build (ev, device, track))) { +printf (error building CA Audio pipeline\n); +return 0; + } } /* Normal media file */ else { @@ -431,6 +471,8 @@ em_file_close(void *video) { Emotion_Gstreamer_Video *ev; + GstIterator *iter; + gpointer data; ev =
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: use autoaudiosink instead of alsasink (for platform != linux). Lots of checks are missing, btw. I need to fix that. === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- emotion_gstreamer.c 2 Apr 2006 14:36:54 - 1.6 +++ emotion_gstreamer.c 11 Apr 2006 12:35:23 - 1.7 @@ -1358,7 +1358,7 @@ conv = gst_element_factory_make (audioconvert, NULL); resample = gst_element_factory_make (audioresample, NULL); if (index == 1) - sink = gst_element_factory_make (alsasink, NULL); + sink = gst_element_factory_make (autoaudiosink, NULL); else sink = gst_element_factory_make (fakesink, NULL); --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: emotion.spec.in Log Message: suggest gstreamer 0.10 package, and not 0.8 === RCS file: /cvs/e/e17/libs/emotion/emotion.spec.in,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emotion.spec.in 30 Mar 2006 07:15:25 - 1.3 +++ emotion.spec.in 2 Apr 2006 13:42:51 - 1.4 @@ -12,7 +12,7 @@ Vendor: %{?_vendorinfo:%{_vendorinfo}}%{!?_vendorinfo:The Enlightenment Project (http://www.enlightenment.org/)} Distribution: %{?_distribution:%{_distribution}}%{!?_distribution:%{_vendor}} #BuildSuggests: xorg-x11-devel libxine1-devel xine-lib-devel -#BuildSuggests: gstreamer-devel gstreamer-plugins-devel gstreamer-plugins-base-devel +#BuildSuggests: gstreamer-devel gstreamer-plugins-base-devel gstreamer-ffmpeg BuildRequires: XFree86-devel eet-devel evas-devel edje-devel BuildRequires: /usr/bin/xine-config BuildRoot: %{_tmppath}/%{name}-%{version}-root --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: support of cd audio. If n is track you want to play, use as filename : cdda://n. If you want to choose a specific device from your player : cdda:///my/device#n or cdda:///my/device?n. Default device is /dev/cdrom. Also, support of file:///my/file as filename. Thanks to captainigloo === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- emotion_gstreamer.c 12 Mar 2006 09:56:13 - 1.4 +++ emotion_gstreamer.c 2 Apr 2006 13:53:06 - 1.5 @@ -6,18 +6,31 @@ #include emotion_gstreamer.h +#define EMOTION_PIPELINE_PAUSE(pipeline) \ +{ \ + GstStateChangeReturn res; \ + \ + res = gst_element_set_state ((pipeline), GST_STATE_PAUSED); \ + if (res == GST_STATE_CHANGE_FAILURE) { \ + g_print (Emotion-Gstreamer ERROR: could not pause\n); \ + gst_object_unref (GST_OBJECT ((pipeline))); \ + return 0; \ + } \ + res = gst_element_get_state ((pipeline), NULL, NULL, GST_CLOCK_TIME_NONE); \ + if (res != GST_STATE_CHANGE_SUCCESS) { \ + g_print (Emotion-Gstreamer ERROR: could not complete pause\n); \ + gst_object_unref (GST_OBJECT ((pipeline))); \ + return 0; \ + } \ +} + + /* Callbacks to handle errors and EOS */ static void cb_end_of_stream (GstElement *thread, gpointerdata); static gboolean cb_idle_eos (gpointer data); -static void cb_thread_error (GstElement *thread, -GstElement *source, -GError *error, -gchar *debug, -gpointerdata); - /* Callbacks to display the frame content */ static void cb_handoff (GstElement *fakesrc, @@ -29,100 +42,176 @@ gbooleanlast, gpointeruser_data); + GstElement * make_queue () { GstElement *queue = gst_element_factory_make (queue, NULL); - g_object_set (queue, - max-size-time, (guint64) 3 * GST_SECOND, - max-size-bytes, (guint32) 0, + g_object_set (queue, + max-size-time, (guint64) 3 * GST_SECOND, + max-size-bytes, (guint32) 0, max-size-buffers, (guint32) 0, NULL); return queue; } static int _em_fd_ev_active(void *data, Ecore_Fd_Handler *fdh); -static GstElement *_em_audio_sink_create (Emotion_Gstreamer_Video *ev, - int index); + +static Emotion_Video_Sink * _emotion_video_sink_new (Emotion_Gstreamer_Video *ev); +static Emotion_Audio_Sink * _emotion_audio_sink_new (Emotion_Gstreamer_Video *ev); +static GstElement * _em_audio_sink_create (Emotion_Gstreamer_Video *ev, int index); +static Emotion_Video_Sink * _visualization_sink_create (); + +static int _cdda_pipeline_build (void *video, const char * device, unsigned int track); +static int _file_pipeline_build (void *video, const char *file); /* Interface */ -static unsigned char em_init(Evas_Object *obj, -void **emotion_video); -static int em_shutdown(void *video); -static unsigned char em_file_open(const char *file, - Evas_Object *obj, - void*video); -static void em_file_close(void *video); -static void em_play(void *video, - double pos); -static void em_stop(void *video); -static void em_size_get(void *video, - int *width, - int *height); -static void em_pos_set(void *video, - double pos); -static void em_vis_set(void *video, - Emotion_Vis vis); -static double em_len_get(void *video); -static int em_fps_num_get(void *video); -static int em_fps_den_get(void *video); -static double em_fps_get(void *video); -static double em_pos_get(void *video); -static Emotion_Vis em_vis_get(void *video); -static double em_ratio_get(void *video); - -static int em_video_handled(void *video); -static int em_audio_handled(void *video); - -static int em_seekable(void *video); -static void em_frame_done(void *video); -static Emotion_Format em_format_get(void *video); -static void em_video_data_size_get(void *video, int *w, int *h); -static int em_yuv_rows_get(void *video, int w, int h, unsigned char **yrows, unsigned char **urows, unsigned char **vrows); -static int em_bgra_data_get(void *video, unsigned char **bgra_data); -static void em_event_feed(void *video, int event); -static void em_event_mouse_button_feed(void *video, int button, int x, int y); -static void em_event_mouse_move_feed(void *video, int x, int y); - -static int em_video_channel_count(void *video); -static void em_video_channel_set(void
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c Log Message: segfault when cdiocddasrc element is missing fixed. We need it for cd audio. === RCS file: /cvs/e/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- emotion_gstreamer.c 2 Apr 2006 13:53:06 - 1.5 +++ emotion_gstreamer.c 2 Apr 2006 14:36:54 - 1.6 @@ -1510,7 +1510,7 @@ cdiocddasrc = gst_element_factory_make (cdiocddasrc, src); if (!cdiocddasrc) { - gst_object_unref (GST_OBJECT (ev-pipeline)); + g_print (cdiocddasrc element missing. Install it.\n); return 0; } --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/m4 Modified Files: gst-element-check.m4 Log Message: check cdda support during configure === RCS file: /cvs/e/e17/libs/emotion/m4/gst-element-check.m4,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- gst-element-check.m44 Feb 2006 13:46:19 - 1.1 +++ gst-element-check.m42 Apr 2006 18:26:27 - 1.2 @@ -1,9 +1,6 @@ dnl Perform a check for a GStreamer element using gst-inspect dnl Thomas Vander Stichele thomas at apestaart dot org dnl Last modification: 25/01/2005 -dnl -dnl Modified by Vincent Torri vtorri at univ-evry dot fr -dnl Last modification: 19/10/2005 dnl AM_GST_ELEMENT_CHECK(ELEMENT-NAME, ACTION-IF-FOUND, ACTION-IF-NOT-FOUND) @@ -14,24 +11,13 @@ fi if test x$GST_INSPECT != x; then -AC_MSG_CHECKING(GStreamer element $1 with $GST_INSPECT) +AC_MSG_CHECKING(GStreamer element $1) if [ $GST_INSPECT $1 /dev/null 2 /dev/null ]; then AC_MSG_RESULT(found.) $2 else AC_MSG_RESULT(not found.) - AC_CHECK_PROG(GST_INSPECT_0_8, gst-inspect-0.8, gst-inspect-0.8, []) - - if test x$GST_INSPECT_0_8 != x; then -AC_MSG_CHECKING(GStreamer element $1 with $GST_INSPECT_0_8) -if [ $GST_INSPECT_0_8 $1 /dev/null 2 /dev/null ]; then - AC_MSG_RESULT(found.) - $2 -else - AC_MSG_RESULT(not found.) - $3 -fi - fi + $3 fi fi ]) --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: check cdda support during configure === RCS file: /cvs/e/e17/libs/emotion/configure.in,v retrieving revision 1.33 retrieving revision 1.34 diff -u -3 -r1.33 -r1.34 --- configure.in12 Feb 2006 22:21:29 - 1.33 +++ configure.in2 Apr 2006 18:26:27 - 1.34 @@ -178,6 +178,11 @@ [ffmpeg], [HAVE_GSTFFMPEG=yes], [HAVE_GSTFFMPEG=no]) + +AM_GST_ELEMENT_CHECK( + [cdiocddasrc], + [HAVE_GSTCDIOCDDASRC=yes], + [HAVE_GSTCDIOCDDASRC=no]) fi if test $enable_gstreamer$HAVE_GSTREAMER = yesno ; then AC_MSG_RESULT(gstreamer not found) @@ -187,7 +192,7 @@ GSTPLUG_MSG=no else AC_MSG_WARN([You should install gstreamer plugins and gst-ffmpeg to properly decode your video and audio files]) - GSTPLUG_MSG=no (you should install gst-plugins and gst-ffmpeg) + GSTPLUG_MSG=no (you should install gst-plugins-base and gst-ffmpeg) fi else if test $HAVE_GSTFFMPEG = no; then @@ -195,7 +200,7 @@ GSTPLUG_MSG=no else AC_MSG_WARN([You should install gstreamer plugins and gst-ffmpeg to properly decode your video and audio files]) - GSTPLUG_MSG=no (you should install gst-plugins and gst-ffmpeg) + GSTPLUG_MSG=no (you should install gst-plugins-base and gst-ffmpeg) fi requirements=$requirements gstreamer GSTPLUG_MSG=yes @@ -203,6 +208,13 @@ requirements=$requirements gstreamer GSTPLUG_MSG=yes fi + if test $HAVE_GSTCDIOCDDASRC = no; then + AC_MSG_WARN([You should install gstreamer-plugins-good and make sure that the cdiocddasrc element is installed]) + GSTCDDA_MSG=no (you should install gst-plugins-good and the cdiocddasrc element) +else + requirements=$requirements gstreamer + GSTCDDA_MSG=yes + fi fi if test $HAVE_XINE$HAVE_GSTREAMER = nono ; then AC_MSG_ERROR([Xine or Gstreamer must be installed to build emotion]) @@ -249,6 +261,7 @@ echo Gstreamer..: $HAVE_GSTREAMER echo Gstreamer plugins..: $GSTPLUG_MSG echo Gstreamer FFmpeg...: $HAVE_GSTFFMPEG +echo Gstreamer CDDA.: $GSTCDDA_MSG echo echo Compilation..: make echo --- This SF.Net email is sponsored by xPML, a groundbreaking scripting language that extends applications into web and mobile media. Attend the live webcast and join the prime developer group breaking into this new coding territory! http://sel.as-us.falkag.net/sel?cmd=lnkkid=110944bid=241720dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.h emotion_gstreamer.c emotion_xine.h emotion_xine.c Log Message: visualization stuff for emotion_gstreamer. There's a gstreamer bug on the duration of mp3 files (). ogg files are handles correctly === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_gstreamer.h,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emotion_gstreamer.h 6 Feb 2006 13:38:08 - 1.3 +++ emotion_gstreamer.h 12 Mar 2006 09:56:13 - 1.4 @@ -60,6 +60,7 @@ int fd_ev_write; Ecore_Fd_Handler *fd_ev_handler; + Emotion_Vis vis; unsigned char play : 1; unsigned char video_mute : 1; === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- emotion_gstreamer.c 6 Feb 2006 13:38:08 - 1.3 +++ emotion_gstreamer.c 12 Mar 2006 09:56:13 - 1.4 @@ -6,7 +6,6 @@ #include emotion_gstreamer.h - /* Callbacks to handle errors and EOS */ static void cb_end_of_stream (GstElement *thread, gpointerdata); @@ -30,7 +29,21 @@ gbooleanlast, gpointeruser_data); +GstElement * +make_queue () +{ + GstElement *queue = gst_element_factory_make (queue, NULL); + g_object_set (queue, + max-size-time, (guint64) 3 * GST_SECOND, + max-size-bytes, (guint32) 0, + max-size-buffers, (guint32) 0, NULL); + + return queue; +} + static int _em_fd_ev_active(void *data, Ecore_Fd_Handler *fdh); +static GstElement *_em_audio_sink_create (Emotion_Gstreamer_Video *ev, + int index); /* Interface */ @@ -49,11 +62,14 @@ int *height); static void em_pos_set(void *video, double pos); +static void em_vis_set(void *video, + Emotion_Vis vis); static double em_len_get(void *video); static int em_fps_num_get(void *video); static int em_fps_den_get(void *video); static double em_fps_get(void *video); static double em_pos_get(void *video); +static Emotion_Vis em_vis_get(void *video); static double em_ratio_get(void *video); static int em_video_handled(void *video); @@ -120,11 +136,13 @@ em_stop, /* stop */ em_size_get, /* size_get */ em_pos_set, /* pos_set */ + em_vis_set, /* vis_set */ em_len_get, /* len_get */ em_fps_num_get, /* fps_num_get */ em_fps_den_get, /* fps_den_get */ em_fps_get, /* fps_get */ em_pos_get, /* pos_get */ + em_vis_get, /* vis_get */ em_ratio_get, /* ratio_get */ em_video_handled, /* video_handled */ em_audio_handled, /* audio_handled */ @@ -201,8 +219,8 @@ decodebin = gst_element_factory_make (decodebin, decodebin); if (!decodebin) gst_object_unref (GST_OBJECT (ev-pipeline)); - g_signal_connect (decodebin, new-decoded-pad, -G_CALLBACK (new_decoded_pad_cb), ev); + g_signal_connect (decodebin, new-decoded-pad, + G_CALLBACK (new_decoded_pad_cb), ev); gst_bin_add_many (GST_BIN (ev-pipeline), filesrc, decodebin, NULL); gst_element_link (filesrc, decodebin); @@ -217,11 +235,14 @@ /* Default values */ ev-ratio = 1.0; + ev-video_sink_nbr = 0; + ev-audio_sink_nbr = 0; + ev-vis = EMOTION_VIS_LIBVISUAL_GOOM; /* Create the file descriptors */ if (pipe(fds) == 0) { - ev-fd_ev_read = fds[0]; +ev-fd_ev_read = fds[0]; ev-fd_ev_write = fds[1]; fcntl(ev-fd_ev_read, F_SETFL, O_NONBLOCK); ev-fd_ev_handler = ecore_main_fd_handler_add(ev-fd_ev_read, @@ -269,7 +290,7 @@ GstStateChangeReturn res; ev = (Emotion_Gstreamer_Video *)video; - printf (Open file gstreamer...\n); + printf (Open file gstreamer... %s\n, file); /* Evas Object */ ev-obj = obj; @@ -310,7 +331,6 @@ caps = gst_pad_get_caps (pad); str = gst_caps_to_string (caps); -g_print (%s\n, str); /* video stream */ if (g_str_has_prefix (str, video/)) { Emotion_Video_Sink *vsink; @@ -324,6 +344,8 @@ gst_structure_get_int (structure, width, vsink-width); gst_structure_get_int (structure, height, vsink-height); + vsink-fps_num = 1; + vsink-fps_den = 1; val = gst_structure_get_value (structure, framerate); if (val) { vsink-fps_num = gst_value_get_fraction_numerator (val); @@ -358,11 +380,11 @@ Emotion_Audio_Sink *asink; GstStructure *structure; GstQuery
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_private.h Log Message: visualization stuff for emotion_gstreamer. There's a gstreamer bug on the duration of mp3 files (). ogg files are handles correctly === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/emotion_private.h,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- emotion_private.h 4 Feb 2006 13:43:13 - 1.10 +++ emotion_private.h 12 Mar 2006 09:56:08 - 1.11 @@ -20,6 +20,7 @@ #define META_TRACK_DISCID 7 typedef enum _Emotion_Format Emotion_Format; +typedef enum _Emotion_Vis Emotion_Vis; typedef struct _Emotion_Video_Module Emotion_Video_Module; enum _Emotion_Format @@ -31,61 +32,85 @@ EMOTION_FORMAT_BGRA }; +enum _Emotion_Vis +{ + EMOTION_VIS_GOOM, + EMOTION_VIS_LIBVISUAL_BUMPSCOPE, + EMOTION_VIS_LIBVISUAL_CORONA, + EMOTION_VIS_LIBVISUAL_DANCING_PARTICLES, + EMOTION_VIS_LIBVISUAL_GDKPIXBUF, + EMOTION_VIS_LIBVISUAL_G_FORCE, + EMOTION_VIS_LIBVISUAL_GOOM, + EMOTION_VIS_LIBVISUAL_INFINITE, + EMOTION_VIS_LIBVISUAL_JAKDAW, + EMOTION_VIS_LIBVISUAL_JESS, + EMOTION_VIS_LIBVISUAL_LV_ANALYSER, + EMOTION_VIS_LIBVISUAL_LV_FLOWER, + EMOTION_VIS_LIBVISUAL_LV_GLTEST, + EMOTION_VIS_LIBVISUAL_LV_SCOPE, + EMOTION_VIS_LIBVISUAL_MADSPIN, + EMOTION_VIS_LIBVISUAL_NEBULUS, + EMOTION_VIS_LIBVISUAL_OINKSIE, + EMOTION_VIS_LIBVISUAL_PLASMA +}; + struct _Emotion_Video_Module { unsigned char (*init) (Evas_Object *obj, void **video); - int (*shutdown) (void *video); - unsigned char (*file_open) (const char *file, Evas_Object *obj, void *video); - void (*file_close) (void *ef); - void (*play) (void *ef, double pos); - void (*stop) (void *ef); - void (*size_get) (void *ef, int *w, int *h); - void (*pos_set) (void *ef, double pos); - double (*len_get) (void *ef); - int (*fps_num_get) (void *ef); - int (*fps_den_get) (void *ef); - double (*fps_get) (void *ef); - double (*pos_get) (void *ef); - double (*ratio_get) (void *ef); - int (*video_handled) (void *ef); - int (*audio_handled) (void *ef); - int (*seekable) (void *ef); - void (*frame_done) (void *ef); + int(*shutdown) (void *video); + unsigned char (*file_open) (const char *file, Evas_Object *obj, void *video); + void (*file_close) (void *ef); + void (*play) (void *ef, double pos); + void (*stop) (void *ef); + void (*size_get) (void *ef, int *w, int *h); + void (*pos_set) (void *ef, double pos); + void (*vis_set) (void *ef, Emotion_Vis vis); + double (*len_get) (void *ef); + int(*fps_num_get) (void *ef); + int(*fps_den_get) (void *ef); + double (*fps_get) (void *ef); + double (*pos_get) (void *ef); + Emotion_Vis(*vis_get) (void *ef); + double (*ratio_get) (void *ef); + int(*video_handled) (void *ef); + int(*audio_handled) (void *ef); + int(*seekable) (void *ef); + void (*frame_done) (void *ef); Emotion_Format (*format_get) (void *ef); - void (*video_data_size_get) (void *ef, int *w, int *h); - int (*yuv_rows_get) (void *ef, int w, int h, unsigned char **yrows, unsigned char **urows, unsigned char **vrows); - int (*bgra_data_get) (void *ef, unsigned char **bgra_data); - void (*event_feed) (void *ef, int event); - void (*event_mouse_button_feed) (void *ef, int button, int x, int y); - void (*event_mouse_move_feed) (void *ef, int x, int y); - int (*video_channel_count) (void *ef); - void (*video_channel_set) (void *ef, int channel); - int (*video_channel_get) (void *ef); - const char * (*video_channel_name_get) (void *ef, int channel); - void (*video_channel_mute_set) (void *ef, int mute); - int (*video_channel_mute_get) (void *ef); - int (*audio_channel_count) (void *ef); - void (*audio_channel_set) (void *ef, int channel); - int (*audio_channel_get) (void *ef); - const char * (*audio_channel_name_get) (void *ef, int channel); - void (*audio_channel_mute_set) (void *ef, int mute); - int (*audio_channel_mute_get) (void *ef); - void (*audio_channel_volume_set) (void *ef, double vol); - double (*audio_channel_volume_get) (void *ef); - int (*spu_channel_count) (void *ef); - void (*spu_channel_set) (void *ef, int channel); - int (*spu_channel_get) (void *ef); - const char * (*spu_channel_name_get) (void *ef, int channel); - void (*spu_channel_mute_set) (void
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: missing test === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- configure.in9 Feb 2006 06:12:39 - 1.31 +++ configure.in12 Feb 2006 22:16:46 - 1.32 @@ -196,6 +196,9 @@ fi requirements=$requirements gstreamer GSTPLUG_MSG=yes +else + requirements=$requirements gstreamer + GSTPLUG_MSG=yes fi fi if test $HAVE_XINE$HAVE_GSTREAMER = nono ; then --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: better Ecore_X.h detection === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.32 retrieving revision 1.33 diff -u -3 -r1.32 -r1.33 --- configure.in12 Feb 2006 22:16:46 - 1.32 +++ configure.in12 Feb 2006 22:21:29 - 1.33 @@ -123,7 +123,10 @@ [ ], [ AC_MSG_ERROR(Ecore isn't installed)] ) +save_CPPFLAGS=$CPPFLAGS +CPPFLAGS=$CPPFLAGS $ECORE_CFLAGS AC_CHECK_HEADERS(Ecore_X.h Ecore_Fb.h) +CPPFLAGS=$save_CPPFLAGS AC_PATH_GENERIC(embryo, 0.9.1, [ ], --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer.h Log Message: fixes... === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- emotion_gstreamer.c 4 Feb 2006 13:43:13 - 1.2 +++ emotion_gstreamer.c 6 Feb 2006 13:38:08 - 1.3 @@ -1204,27 +1204,28 @@ static int _em_fd_ev_active(void *data, Ecore_Fd_Handler *fdh) { - int fd; - int len; - void *buf[1]; - unsigned char *frame_data; - Emotion_Gstreamer_Video *ev; - GstBuffer *buffer; + int fd; + int len; + void *buf[1]; + unsigned char *frame_data; + Emotion_Gstreamer_Video *ev; + GstBuffer *buffer; - ev = data; - fd = ecore_main_fd_handler_fd_get(fdh); + ev = data; + fd = ecore_main_fd_handler_fd_get(fdh); - while ((len = read(fd, buf, sizeof(buf))) 0) -{ - if (len == sizeof(buf)) -{ - frame_data = buf[0]; - buffer = buf[1]; - _emotion_frame_new(ev-obj); - len = ((Emotion_Video_Sink *)ecore_list_goto_first(ev-video_sinks))-length_time; - _emotion_video_pos_update(ev-obj, ev-position, len); + while ((len = read(fd, buf, sizeof(buf))) 0) + { +if (len == sizeof(buf)) + { + Emotion_Video_Sink *vsink; -} -} + frame_data = buf[0]; + buffer = buf[1]; + _emotion_frame_new(ev-obj); + vsink = (Emotion_Video_Sink *)ecore_list_goto_index (ev-video_sinks, ev-video_sink_nbr); + _emotion_video_pos_update(ev-obj, ev-position, vsink-length_time); + } + } return 1; } === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_gstreamer.h,v retrieving revision 1.2 retrieving revision 1.3 diff -u -3 -r1.2 -r1.3 --- emotion_gstreamer.h 4 Feb 2006 13:43:13 - 1.2 +++ emotion_gstreamer.h 6 Feb 2006 13:38:08 - 1.3 @@ -49,7 +49,7 @@ unsigned char*obj_data; /* Characteristics of stream */ - int position; + doubleposition; doubleratio; volatile int seek_to; --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/data Modified Files: theme.edc Log Message: fix === RCS file: /cvsroot/enlightenment/e17/libs/emotion/data/theme.edc,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- theme.edc 6 Feb 2006 08:31:29 - 1.6 +++ theme.edc 6 Feb 2006 13:56:15 - 1.7 @@ -1105,6 +1105,7 @@ description { state: default 0.0; align: 1.0 1.0; + fixed: 1 1; rel1 { relative: 1.0 1.0; offset: -2-2; --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: emotion_gstreamer.c emotion_gstreamer.h emotion_xine.c emotion_xine_vo_out.c Log Message: gstreamer 0.10 port. There's a problem with the seek, no evas sink yet === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/emotion_gstreamer.c,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- emotion_gstreamer.c 2 Oct 2005 07:34:36 - 1.1 +++ emotion_gstreamer.c 4 Feb 2006 13:43:13 - 1.2 @@ -1,24 +1,13 @@ #include unistd.h #include fcntl.h -#include math.h #include Emotion.h #include emotion_private.h #include emotion_gstreamer.h -static Emotion_Gstreamer_Video *em_v; -static int id_new_pad; -static int id_no_more_pad; -static int count = 0; -static int video_streams_count = 0; -static int audio_streams_count = 0; - - -static void _em_set_pipeline_info (Emotion_Gstreamer_Video *ev); - -/* Callbacks to get stream information */ +/* Callbacks to handle errors and EOS */ static void cb_end_of_stream (GstElement *thread, gpointerdata); @@ -30,28 +19,16 @@ gchar *debug, gpointerdata); -static void cb_new_pad (GstElement *decodebin, - GstPad *pad, - gbooleanlast, - gpointerdata); - -static void cb_no_more_pad (GstElement *decodebin, - gpointerdata); - -static void cb_caps_video_set (GObject*obj, - GParamSpec *pspec, - gpointerdata); - -static void cb_caps_audio_set (GObject*obj, - GParamSpec *pspec, - gpointerdata); - /* Callbacks to display the frame content */ static void cb_handoff (GstElement *fakesrc, GstBuffer *buffer, GstPad *pad, gpointeruser_data); +static void new_decoded_pad_cb (GstElement *decodebin, +GstPad *new_pad, +gbooleanlast, +gpointeruser_data); static int _em_fd_ev_active(void *data, Ecore_Fd_Handler *fdh); @@ -73,10 +50,15 @@ static void em_pos_set(void *video, double pos); static double em_len_get(void *video); +static int em_fps_num_get(void *video); +static int em_fps_den_get(void *video); static double em_fps_get(void *video); static double em_pos_get(void *video); static double em_ratio_get(void *video); +static int em_video_handled(void *video); +static int em_audio_handled(void *video); + static int em_seekable(void *video); static void em_frame_done(void *video); static Emotion_Format em_format_get(void *video); @@ -126,13 +108,73 @@ static int em_eject(void *video); static const char *em_meta_get(void *video, int meta); +/* Module interface */ + +static Emotion_Video_Module em_module = +{ + em_init, /* init */ + em_shutdown, /* shutdown */ + em_file_open, /* file_open */ + em_file_close, /* file_close */ + em_play, /* play */ + em_stop, /* stop */ + em_size_get, /* size_get */ + em_pos_set, /* pos_set */ + em_len_get, /* len_get */ + em_fps_num_get, /* fps_num_get */ + em_fps_den_get, /* fps_den_get */ + em_fps_get, /* fps_get */ + em_pos_get, /* pos_get */ + em_ratio_get, /* ratio_get */ + em_video_handled, /* video_handled */ + em_audio_handled, /* audio_handled */ + em_seekable, /* seekable */ + em_frame_done, /* frame_done */ + em_format_get, /* format_get */ + em_video_data_size_get, /* video_data_size_get */ + em_yuv_rows_get, /* yuv_rows_get */ + em_bgra_data_get, /* bgra_data_get */ + em_event_feed, /* event_feed */ + em_event_mouse_button_feed, /* event_mouse_button_feed */ + em_event_mouse_move_feed, /* event_mouse_move_feed */ + em_video_channel_count, /* video_channel_count */ + em_video_channel_set, /* video_channel_set */ + em_video_channel_get, /* video_channel_get */ + em_video_channel_name_get, /* video_channel_name_get */ + em_video_channel_mute_set, /* video_channel_mute_set */ + em_video_channel_mute_get, /* video_channel_mute_get */ + em_audio_channel_count, /* audio_channel_count */ + em_audio_channel_set, /* audio_channel_set */ + em_audio_channel_get, /* audio_channel_get */ + em_audio_channel_name_get, /* audio_channel_name_get */ + em_audio_channel_mute_set, /* audio_channel_mute_set */ + em_audio_channel_mute_get, /* audio_channel_mute_get */ + em_audio_channel_volume_set, /* audio_channel_volume_set */ + em_audio_channel_volume_get, /* audio_channel_volume_get */ + em_spu_channel_count, /* spu_channel_count */ +
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_private.h emotion_smart.c Log Message: gstreamer 0.10 port. There's a problem with the seek, no evas sink yet === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/emotion_private.h,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- emotion_private.h 5 Sep 2005 11:00:22 - 1.9 +++ emotion_private.h 4 Feb 2006 13:43:13 - 1.10 @@ -24,9 +24,11 @@ enum _Emotion_Format { - EMOTION_YV12, - EMOTION_YUY2, /* unused for now since evas does not support yuy2 format */ - EMOTION_BGRA + EMOTION_FORMAT_NONE, + EMOTION_FORMAT_I420, + EMOTION_FORMAT_YV12, + EMOTION_FORMAT_YUY2, /* unused for now since evas does not support yuy2 format */ + EMOTION_FORMAT_BGRA }; struct _Emotion_Video_Module @@ -40,6 +42,8 @@ void (*size_get) (void *ef, int *w, int *h); void (*pos_set) (void *ef, double pos); double (*len_get) (void *ef); + int (*fps_num_get) (void *ef); + int (*fps_den_get) (void *ef); double (*fps_get) (void *ef); double (*pos_get) (void *ef); double (*ratio_get) (void *ef); === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- emotion_smart.c 23 Jan 2006 03:00:35 - 1.20 +++ emotion_smart.c 4 Feb 2006 13:43:13 - 1.21 @@ -1003,7 +1003,7 @@ ih = h; } format = sd-module-format_get(sd-video); - if (format == EMOTION_YV12) + if ((format == EMOTION_FORMAT_YV12) || (format == EMOTION_FORMAT_I420)) { unsigned char **rows; Evas_Pixel_Import_Source ps; @@ -1029,7 +1029,7 @@ evas_object_image_pixels_dirty_set(obj, 0); free(ps.rows); } - else if (format == EMOTION_BGRA) + else if (format == EMOTION_FORMAT_BGRA) { unsigned char *bgra_data; if (sd-module-bgra_data_get(sd-video, bgra_data)); --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: gstreamer 0.10 port. There's a problem with the seek, no evas sink yet === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.29 retrieving revision 1.30 diff -u -3 -r1.29 -r1.30 --- configure.in25 Jan 2006 01:22:35 - 1.29 +++ configure.in4 Feb 2006 13:43:13 - 1.30 @@ -157,9 +157,9 @@ if test $enable_gstreamer != no ; then dnl Gstreamer version requirement - GST_REQS=0.8.10 - GSTPLUG_REQS=0.8.10 - GST_MAJORMINOR=0.8 + GST_REQS=0.10.2 + GSTPLUG_REQS=0.10.1 + GST_MAJORMINOR=0.10 PKG_CHECK_MODULES(GST, \ gstreamer-$GST_MAJORMINOR = $GST_REQS, @@ -167,14 +167,19 @@ AC_MSG_RESULT($HAVE_GSTREAMER) PKG_CHECK_MODULES(GSTPLUG, \ - gstreamer-plugins-$GST_MAJORMINOR = $GSTPLUG_REQS, + gstreamer-plugins-base-$GST_MAJORMINOR = $GSTPLUG_REQS, HAVE_GSTPLUG=yes, HAVE_GSTPLUG=no) AC_MSG_RESULT($HAVE_GSTPLUG) + +AM_GST_ELEMENT_CHECK( + [ffmpeg], + [HAVE_GSTFFMPEG=yes], + [HAVE_GSTFFMPEG=no]) fi if test $enable_gstreamer$HAVE_GSTREAMER = yesno ; then AC_MSG_ERROR(gstreamer not found) fi -if test $HAVE_GSTPLUG = no ; then +if test $HAVE_GSTPLUG = no -o test $HAVE_GSTFFMPEG = no; then if test $HAVE_GSTREAMER = no ; then GSTPLUG_MSG=no else @@ -230,6 +235,7 @@ echo Xine...: $HAVE_XINE echo Gstreamer..: $HAVE_GSTREAMER echo Gstreamer plugins..: $GSTPLUG_MSG +echo Gstreamer FFmpeg...: $HAVE_GSTFFMPEG echo echo Compilation..: make echo --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/m4 Added Files: gst-element-check.m4 Log Message: gstreamer element check --- This SF.net email is sponsored by: Splunk Inc. Do you grep through log files for problems? Stop! Download the new AJAX search engine that makes searching your log files as easy as surfing the web. DOWNLOAD SPLUNK! http://sel.as-us.falkag.net/sel?cmd=lnkkid=103432bid=230486dat=121642 ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: fix typo and add warning === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- configure.in2 Oct 2005 08:07:56 - 1.17 +++ configure.in2 Oct 2005 12:56:17 - 1.18 @@ -154,6 +154,13 @@ gstreamer-plugins-$GST_MAJORMINOR = $GSTPLUG_REQS, HAVE_GSTPLUG=yes, HAVE_GSTPLUG=no) +if test ${HAVE_GSTPLUG} = no ; then + AC_MSG_WARN([You should install gstreamer plugins and gst-ffmpeg to decode properly your video and audio files]) + GSTPLUG_MSG=no (you should install gst-plugins and gst-ffmpeg) +else + GSTPLUG_MSG=yes +fi + AC_SUBST(GST_CFLAGS) AC_SUBST(GST_LIBS) @@ -200,7 +207,7 @@ echo Modules: echo Xine...: $HAVE_XINE echo Gstreamer..: $HAVE_GSTREAMER -echo Gsteamer plugins...: $HAVE_GSTPLUG +echo Gstreamer plugins..: $GSTPLUG_MSG echo echo Compilation..: make echo --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: emotion_smart.c Log Message: remove printf === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.17 retrieving revision 1.18 diff -u -3 -r1.17 -r1.18 --- emotion_smart.c 2 Oct 2005 07:34:36 - 1.17 +++ emotion_smart.c 2 Oct 2005 12:19:36 - 1.18 @@ -98,13 +98,11 @@ snprintf(buf, sizeof(buf), %s%s, PACKAGE_LIB_DIR/emotion/, name); - printf (module : %s\n, buf); handle = dlopen(buf, RTLD_NOW | RTLD_GLOBAL); if (handle) { unsigned char (*func_module_open)(Evas_Object *, Emotion_Video_Module **, void **); - printf (module opened\n); func_module_open = dlsym(handle, module_open); if (func_module_open) { @@ -120,7 +118,7 @@ { char *err; err = dlerror(); - printf (pas de module : %s\n, err); + printf (No module. Error: %s\n, err); } return 0; } @@ -173,12 +171,6 @@ sd-pos = 0; sd-seek_pos = 0; sd-len = 0; - - if (!sd-module || !sd-video) - { -if (!_emotion_module_open(module_filename, obj, sd-module, sd-video)) - return 0; - } if (!sd-module || !sd-video) if (!_emotion_module_open(module_filename, obj, sd-module, sd-video)) @@ -251,11 +243,9 @@ { Smart_Data *sd; - printf (play get\n); E_SMART_OBJ_GET_RETURN(sd, obj, E_OBJ_NAME, 0); - printf (play get1\n); if (!sd-video) return 0; - printf (play get2\n); + return sd-play; } @@ -826,7 +816,7 @@ Smart_Data *sd; int iw, ih; int changed = 0; - printf (frame resize %d %d\n, w, h); + E_SMART_OBJ_GET(sd, obj, E_OBJ_NAME); evas_object_image_size_get(sd-obj, iw, ih); if ((w != iw) || (h != ih)) --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/bin Modified Files: emotion_test_main.c Log Message: emotion can use gstreamer, now === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/bin/emotion_test_main.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- emotion_test_main.c 5 Sep 2005 16:30:09 - 1.10 +++ emotion_test_main.c 2 Oct 2005 07:34:36 - 1.11 @@ -715,7 +715,7 @@ static void -init_video_object(char *file) +init_video_object(char *module_filename, char *filename) { Evas_Object *o, *oe; int iw, ih; @@ -724,8 +724,10 @@ /* basic video object setup */ - o = emotion_object_add(evas); - emotion_object_file_set(o, file); + o = emotion_object_add(evas); + if (!emotion_object_init(o, module_filename)) + return; + emotion_object_file_set(o, filename); emotion_object_play_set(o, 1); evas_object_move(o, 0, 0); evas_object_resize(o, 320, 240); @@ -806,11 +808,14 @@ int main(int argc, char **argv) { + char *module_filename; int i; if (main_start(argc, argv) 1) return -1; bg_setup(); + module_filename = emotion_decoder_xine.so; + for (i = 1; i argc; i++) { if (((!strcmp(argv[i], -g)) || @@ -822,7 +827,7 @@ (!strcmp(argv[i], --help { printf(Usage:\n); -printf( %s [-gl] [-g WxH] \n, argv[0]); +printf( %s [-gl] [-g WxH] [-xine] [-gstreamer] filename\n, argv[0]); exit(-1); } else if (!strcmp(argv[i], -gl)) @@ -831,9 +836,18 @@ else if (!strcmp(argv[i], -fb)) { } - else + else if (!strcmp(argv[i], -xine)) + { + module_filename = emotion_decoder_xine.so; + } + else if (!strcmp(argv[i], -gstreamer)) + { + module_filename = emotion_decoder_gstreamer.so; + } +else { -init_video_object(argv[i]); + printf (module : %s\n, module_filename); +init_video_object(module_filename, argv[i]); } } --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in AUTHORS TODO emotion.c.in Log Message: emotion can use gstreamer, now === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- configure.in3 Sep 2005 19:07:24 - 1.15 +++ configure.in2 Oct 2005 07:34:36 - 1.16 @@ -130,17 +130,40 @@ ) AC_PATH_GENERIC(xine, 1.0.0, - [ ], - [ AC_MSG_ERROR(Xine isn't installed)] + [HAVE_XINE=yes], + [HAVE_XINE=no] ) xine_plugins=`$XINE_CONFIG --plugindir` AC_SUBST(xine_plugins) +dnl gstreamer +gstreamer_cflags= +gstreamer_libs= + +dnl Gstreamer version requirement +GST_REQS=0.8.10 +GSTPLUG_REQS=0.8.10 +GST_MAJORMINOR=0.8 + +PKG_CHECK_MODULES(GST, \ + gstreamer-$GST_MAJORMINOR = $GST_REQS, + HAVE_GSTREAMER=yes, HAVE_GSTREAMER=no) + +AC_SUBST(GST_CFLAGS) +AC_SUBST(GST_LIBS) + +if test ${HAVE_XINE} = no test ${HAVE_GSTREAMER} = no ; then + AC_MSG_ERROR([Xine or Gstreamer must be installed to build emotion]) +fi + +AM_CONDITIONAL([BUILD_XINE_MODULE], [test $HAVE_XINE = yes]) +AM_CONDITIONAL([BUILD_GSTREAMER_MODULE], [test $HAVE_GSTREAMER = yes]) + AC_CHECK_LIB(dl, dlopen, dlopen_libs=-ldl) AC_SUBST(dlopen_libs) -requirements=eet evas ecore edje libxine +requirements=eet evas ecore edje libxine gstreamer AC_SUBST(requirements) AC_OUTPUT([ @@ -156,3 +179,31 @@ ],[ chmod +x emotion-config ]) + + +# +## Info + +echo +echo +echo +echo +echo $PACKAGE $VERSION +echo +echo +echo Configuration Options Summary: +echo +echo Modules: +echo Xine...: $HAVE_XINE +echo Gstreamer..: $HAVE_GSTREAMER +echo +echo Compilation..: make +echo +echo Installation.: make install +echo +echo prefix.: $prefix +echo binaries...: $bindir +echo libraries..: $libdir +echo headers: $includedir +echo + === RCS file: /cvsroot/enlightenment/e17/libs/emotion/AUTHORS,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- AUTHORS 18 Jun 2004 15:38:01 - 1.1 +++ AUTHORS 2 Oct 2005 07:34:36 - 1.2 @@ -1,2 +1,3 @@ The Rasterman (Carsten Haitzler) [EMAIL PROTECTED] - +doursse (Vincent Torri) [EMAIL PROTECTED] +captainigloo === RCS file: /cvsroot/enlightenment/e17/libs/emotion/TODO,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- TODO24 Apr 2005 14:23:05 - 1.1 +++ TODO2 Oct 2005 07:34:36 - 1.2 @@ -1,2 +1,17 @@ + +Emotion smart object + + + +Xine module +--- + * Fix seek and get_pos threads delete bugs (infinite loop) * Add support of visualizations for audio files (Goom...) + + +Gstreamer module + + +* Add gststreamselector to support multiple video and audio streams. +* Add support of visualizations for audio files (Goom...) === RCS file: /cvsroot/enlightenment/e17/libs/emotion/emotion.c.in,v retrieving revision 1.1 retrieving revision 1.2 diff -u -3 -r1.1 -r1.2 --- emotion.c.in18 Jun 2004 15:38:01 - 1.1 +++ emotion.c.in2 Oct 2005 07:34:36 - 1.2 @@ -9,7 +9,7 @@ @mainpage Emotion Library Documentation @image html emotion.png [EMAIL PROTECTED] 0.0.1 [EMAIL PROTECTED] @VERSION@ @author Carsten Haitzler [EMAIL PROTECTED] @date 2003-2004 --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/modules Modified Files: Makefile.am Added Files: emotion_gstreamer.c emotion_gstreamer.h Log Message: emotion can use gstreamer, now === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/modules/Makefile.am,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- Makefile.am 3 Sep 2005 19:07:24 - 1.5 +++ Makefile.am 2 Oct 2005 07:34:36 - 1.6 @@ -1,6 +1,13 @@ ## Process this file with automake to produce Makefile.in +if BUILD_XINE_MODULE SUBDIRS = xine +XINE_LIB_NAME=emotion_decoder_xine.la +endif + +if BUILD_GSTREAMER_MODULE +GSTREAMER_LIB_NAME = emotion_decoder_gstreamer.la +endif #AUTOMAKE_OPTIONS = 1.4 foreign @@ -9,15 +16,28 @@ INCLUDES= -I$(top_srcdir) \ -I$(top_srcdir)/src/lib \ -I$(top_srcdir)/src/modules \ - @EVAS_CFLAGS@ @ECORE_CFLAGS@ @XINE_CFLAGS@ + @EVAS_CFLAGS@ @ECORE_CFLAGS@ @XINE_CFLAGS@ @GST_CFLAGS@ + +pkgdir = $(libdir)/emotion -pkgdir = $(libdir)/emotion +pkg_LTLIBRARIES = $(XINE_LIB_NAME) $(GSTREAMER_LIB_NAME) -pkg_LTLIBRARIES = emotion_decoder_xine.la -emotion_decoder_xine_la_SOURCES = \ +if BUILD_XINE_MODULE +emotion_decoder_xine_la_SOURCES = \ emotion_xine.c \ emotion_xine.h emotion_decoder_xine_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @XINE_LIBS@ emotion_decoder_xine_la_LDFLAGS = -module -avoid-version \ -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs emotion_decoder_xine_la_DEPENDENCIES = $(top_builddir)/config.h +endif + +if BUILD_GSTREAMER_MODULE +emotion_decoder_gstreamer_la_SOURCES = \ +emotion_gstreamer.c \ +emotion_gstreamer.h +emotion_decoder_gstreamer_la_LIBADD = @EVAS_LIBS@ @ECORE_LIBS@ @GST_LIBS@ +emotion_decoder_gstreamer_la_LDFLAGS = -module -avoid-version \ + -L$(top_builddir)/src/lib -L$(top_builddir)/src/lib/.libs +emotion_decoder_gstreamer_la_DEPENDENCIES = $(top_builddir)/config.h +endif --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/src/lib Modified Files: Emotion.h emotion_smart.c Log Message: emotion can use gstreamer, now === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/Emotion.h,v retrieving revision 1.8 retrieving revision 1.9 diff -u -3 -r1.8 -r1.9 --- Emotion.h 4 Sep 2005 18:58:11 - 1.8 +++ Emotion.h 2 Oct 2005 07:34:36 - 1.9 @@ -3,6 +3,12 @@ #include Evas.h +enum _Emotion_Module +{ + EMOTION_MODULE_XINE, + EMOTION_MODULE_GSTREAMER +}; + enum _Emotion_Event { EMOTION_EVENT_MENU1, // Escape Menu @@ -46,6 +52,7 @@ EMOTION_META_INFO_TRACK_DISC_ID }; +typedef enum _Emotion_ModuleEmotion_Module; typedef enum _Emotion_Event Emotion_Event; typedef enum _Emotion_Meta_Info Emotion_Meta_Info; @@ -58,8 +65,8 @@ /* api calls available */ Evas_Object *emotion_object_add (Evas *evas); -Evas_Boolemotion_object_init (Evas_Object *obj); -void emotion_object_file_set (Evas_Object *obj, const char *file); +Evas_Boolemotion_object_init (Evas_Object *obj, const char *module_filename); +void emotion_object_file_set (Evas_Object *obj, const char *filename); const char *emotion_object_file_get (Evas_Object *obj); void emotion_object_play_set (Evas_Object *obj, Evas_Bool play); Evas_Boolemotion_object_play_get (Evas_Object *obj); === RCS file: /cvsroot/enlightenment/e17/libs/emotion/src/lib/emotion_smart.c,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- emotion_smart.c 30 Aug 2005 23:40:34 - 1.16 +++ emotion_smart.c 2 Oct 2005 07:34:36 - 1.17 @@ -35,6 +35,8 @@ Emotion_Video_Module *module; void *video; + char *module_name; + char *file; Evas_Object *obj; double ratio; @@ -94,12 +96,15 @@ void *handle; char buf[4096]; - snprintf(buf, sizeof(buf), %s/%s, PACKAGE_LIB_DIR/emotion/, name); + snprintf(buf, sizeof(buf), %s%s, PACKAGE_LIB_DIR/emotion/, + name); + printf (module : %s\n, buf); handle = dlopen(buf, RTLD_NOW | RTLD_GLOBAL); if (handle) { unsigned char (*func_module_open)(Evas_Object *, Emotion_Video_Module **, void **); + printf (module opened\n); func_module_open = dlsym(handle, module_open); if (func_module_open) { @@ -111,6 +116,12 @@ } dlclose(handle); } + else + { + char *err; + err = dlerror(); + printf (pas de module : %s\n, err); + } return 0; } @@ -129,6 +140,9 @@ /***/ /* Externally accessible calls */ /***/ + + + Evas_Object * emotion_object_add(Evas *evas) { @@ -137,7 +151,7 @@ } Evas_Bool -emotion_object_init(Evas_Object *obj) +emotion_object_init(Evas_Object *obj, const char *module_filename) { Smart_Data *sd; @@ -162,10 +176,14 @@ if (!sd-module || !sd-video) { -if (!_emotion_module_open(emotion_decoder_xine.so, obj, sd-module, sd-video)) +if (!_emotion_module_open(module_filename, obj, sd-module, sd-video)) return 0; } + if (!sd-module || !sd-video) + if (!_emotion_module_open(module_filename, obj, sd-module, sd-video)) + return 0; + return 1; } @@ -177,27 +195,22 @@ E_SMART_OBJ_GET(sd, obj, E_OBJ_NAME); if ((file) (sd-file) (!strcmp(file, sd-file))) return; - if ((file) (strlen(file) 0)) { int w, h; - - if (!emotion_object_init(obj)) - return; sd-file = strdup(file); if (sd-module) { -sd-module-file_close(sd-video); -evas_object_image_size_set(sd-obj, 0, 0); + sd-module-file_close(sd-video); + evas_object_image_size_set(sd-obj, 0, 0); } if (!sd-module-file_open(sd-file, obj, sd-video)) - return; + return; sd-module-size_get(sd-video, w, h); evas_object_image_size_set(sd-obj, w, h); sd-ratio = sd-module-ratio_get(sd-video); sd-pos = 0.0; - if (sd-play) - sd-module-play(sd-video, 0.0); + if (sd-play) sd-module-play(sd-video, 0.0); } else { @@ -238,8 +251,11 @@ { Smart_Data *sd; + printf (play get\n); E_SMART_OBJ_GET_RETURN(sd, obj, E_OBJ_NAME, 0); + printf (play get1\n); if (!sd-video) return 0; + printf (play get2\n); return sd-play; } @@ -810,7 +826,7 @@ Smart_Data *sd; int iw, ih; int changed = 0; - + printf (frame resize %d %d\n, w, h); E_SMART_OBJ_GET(sd,
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion Modified Files: configure.in Log Message: check for optional gstreamer plugins (if you don't have it, you'll decode nothing :)). Also, i forgot to say that there's a small api breakage === RCS file: /cvsroot/enlightenment/e17/libs/emotion/configure.in,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- configure.in2 Oct 2005 07:34:36 - 1.16 +++ configure.in2 Oct 2005 08:07:56 - 1.17 @@ -150,6 +150,10 @@ gstreamer-$GST_MAJORMINOR = $GST_REQS, HAVE_GSTREAMER=yes, HAVE_GSTREAMER=no) +PKG_CHECK_MODULES(GSTPLUG, \ + gstreamer-plugins-$GST_MAJORMINOR = $GSTPLUG_REQS, + HAVE_GSTPLUG=yes, HAVE_GSTPLUG=no) + AC_SUBST(GST_CFLAGS) AC_SUBST(GST_LIBS) @@ -196,6 +200,7 @@ echo Modules: echo Xine...: $HAVE_XINE echo Gstreamer..: $HAVE_GSTREAMER +echo Gsteamer plugins...: $HAVE_GSTPLUG echo echo Compilation..: make echo --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
E CVS: libs/emotion doursse
Enlightenment CVS committal Author : doursse Project : e17 Module : libs/emotion Dir : e17/libs/emotion/data Modified Files: theme.edc Log Message: fix a problem when the video is larger than the display (like HD materials) === RCS file: /cvsroot/enlightenment/e17/libs/emotion/data/theme.edc,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- theme.edc 24 Sep 2005 09:06:30 - 1.4 +++ theme.edc 1 Oct 2005 08:30:34 - 1.5 @@ -445,6 +445,7 @@ name: video_progress_img; mouse_events: 0; clip_to: panel_clip; +fixed: 1 1; description { state: default 0.0; min: 9 16; --- This SF.Net email is sponsored by: Power Architecture Resource Center: Free content, downloads, discussions, and more. http://solutions.newsforge.com/ibmarch.tmpl ___ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs