From: <en...@ke...> - 2007-08-27 20:00:53
|
CVS Root: /cvs/gstreamer Module: gstreamer Changes by: ensonic Date: Mon Aug 27 2007 20:00:53 UTC Log message: * docs/random/ensonic/dynlink.txt: More thoughs on this. * plugins/elements/gstcapsfilter.c: Add bugzilla ticket number to FIXME comment. Modified files: . : ChangeLog docs/random/ensonic: dynlink.txt plugins/elements: gstcapsfilter.c Links: http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/ChangeLog.diff?r1=1.3385&r2=1.3386 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/docs/random/ensonic/dynlink.txt.diff?r1=1.3&r2=1.4 http://freedesktop.org/cgi-bin/viewcvs.cgi/gstreamer/gstreamer/plugins/elements/gstcapsfilter.c.diff?r1=1.28&r2=1.29 ====Begin Diffs==== Index: ChangeLog =================================================================== RCS file: /cvs/gstreamer/gstreamer/ChangeLog,v retrieving revision 1.3385 retrieving revision 1.3386 diff -u -d -r1.3385 -r1.3386 --- ChangeLog 24 Aug 2007 21:53:39 -0000 1.3385 +++ ChangeLog 27 Aug 2007 20:00:33 -0000 1.3386 @@ -1,3 +1,11 @@ +2007-08-27 Stefan Kost <en...@us...> + + * docs/random/ensonic/dynlink.txt: + More thoughs on this. + * plugins/elements/gstcapsfilter.c: + Add bugzilla ticket number to FIXME comment. 2007-08-24 Wim Taymans <wim...@gm...> * docs/design/part-TODO.txt: Index: dynlink.txt RCS file: /cvs/gstreamer/gstreamer/docs/random/ensonic/dynlink.txt,v retrieving revision 1.3 retrieving revision 1.4 diff -u -d -r1.3 -r1.4 --- dynlink.txt 20 Jul 2007 07:26:39 -0000 1.3 +++ dynlink.txt 27 Aug 2007 20:00:38 -0000 1.4 @@ -1,6 +1,8 @@ $Id$ Currently its only save to link/unlink elements/pad when pipeline is in READY. +Belowe some thoughts. See http://bugzilla.gnome.org/show_bug.cgi?id=435487 +for patches. = current api = @@ -41,10 +43,10 @@ == swapping out an elelment == - * we have: e1 ! e2 ! e6 - * we have: e1 ! e2 ! e3 ! e6 - * we want: e1 ! e4 ! e5 ! e6 - * we want: e1 ! e3 ! e6 +* we have: e1 ! e2 ! e6 +* we have: e1 ! e2 ! e3 ! e6 +* we want: e1 ! e4 ! e5 ! e6 +* we want: e1 ! e3 ! e6 gst_element_swap_linked(e1, e4, e5, e6); gst_pads_insert_link (e1.src, e4.sink, e5.src, e6.sink); @@ -53,10 +55,35 @@ connect e1.src, e4.sink connect e5.src, e6.sink - = thoughts = * I don't think we need api for pads * Should current api check for the state? * do we want to swapp multiple elements at once +== events == +* tee and adder need special treatment + * both would need to cache an accumulated segment + * tee + * would also cache tags + * when linkfunc is called, it can send out the segment and the tags + * when all pads got unlinked it could clear the segment + * adder + * when linkfunc gets called it sends a seek-event += ideas = +== dynlinkpoint == +* use cases + * its ment to be used with one side disconnected to allow to connect elements + at runtime + * it can be used in a pipeline to remove/insert elements at runtime +* element with 1 source- and 1 sinkpad +* when both connected it passes data thru +* if src is not connected it drops received buffers +* if sink is not conected + * it does not push + * it creates silence on pull +* events + * it caches events + * down: newsegment, tags, buffersize + * up: seek (needs to be modified) + * when other-pad get connected it pushes events depending on direction Index: gstcapsfilter.c RCS file: /cvs/gstreamer/gstreamer/plugins/elements/gstcapsfilter.c,v retrieving revision 1.28 retrieving revision 1.29 diff -u -d -r1.28 -r1.29 --- gstcapsfilter.c 24 Jul 2007 12:32:31 -0000 1.28 +++ gstcapsfilter.c 27 Aug 2007 20:00:39 -0000 1.29 @@ -149,7 +149,9 @@ GST_DEBUG_OBJECT (capsfilter, "set new caps %" GST_PTR_FORMAT, new_caps); - /* FIXME: Need to activate these caps on the pads */ + /* FIXME: Need to activate these caps on the pads + * http://bugzilla.gnome.org/show_bug.cgi?id=361718 + */ break; } default: |