GES 1.14 -- How to achieve crossfade

David Ing ding at panopto.com
Thu Feb 21 19:27:57 UTC 2019


Amazing ... I had no idea that Gstreamer could interpolate parameters like
that.

I don't want to burden you with a code review ... it wouldn't be practical
anyway.  Your python example is very clear ... I can just extrapolate from
that.

Thank you!

On Thu, Feb 21, 2019 at 11:12 AM Thibault Saunier <tsaunier at gnome.org>
wrote:

> I knew it :-)
>
> Just pushed a simple example in python:
>
> https://gitlab.freedesktop.org/gstreamer/gst-editing-services/blob/master/examples/python/keyframes.py
>
> You should be able to extrapolate for any language you use (also I
> would be happy to review the port of that example to that language ;))
>
>
>
> Thibault.
>
> On Thu, Feb 21, 2019 at 1:56 PM David Ing <ding at panopto.com> wrote:
> >
> > I don't know how to do that.
> >
> > On Wed, Feb 20, 2019 at 3:59 PM Thibault Saunier <
> saunierthibault at gmail.com> wrote:
> >>
> >> Then you should keyframe the alpha child property of the source :)
> >>
> >> On Wed, Feb 20, 2019, 20:26 David Ing <ding at panopto.com> wrote:
> >>>
> >>> What if I did not want a transition between two clips "a" and "b", but
> instead I want clip "a" to transition into whatever the lower-priority
> layers had drawn?
> >>>
> >>> On Wed, Feb 20, 2019 at 2:12 PM David Ing <ding at panopto.com> wrote:
> >>>>
> >>>> Thank you!
> >>>>
> >>>> On Wed, Feb 20, 2019 at 2:00 PM Thibault Saunier <
> saunierthibault at gmail.com> wrote:
> >>>>>
> >>>>>
> >>>>>
> >>>>> On Wed, Feb 20, 2019, 18:44 David Ing <ding at panopto.com> wrote:
> >>>>>>
> >>>>>> Thibault, you said "Transitions happen between 2 overlapping
> clips".  Do you mean two clips within the same layer?
> >>>>>>
> >>>>>>
> >>>>>> Are you saying that this will achieve a 2-second crossfade from a
> --> b?
> >>>>>>
> >>>>>> Layer 1:
> >>>>>>
> >>>>>> GESSourceClip a
> >>>>>>
> >>>>>> starts at 0 seconds
> >>>>>> ends at 11 seconds
> >>>>>>
> >>>>>> GESTransitionClip c
> >>>>>>
> >>>>>> starts at 9 seconds
> >>>>>>
> >>>>>> ends at 11 seconds
> >>>>>>
> >>>>>> GESSourceClip b
> >>>>>>
> >>>>>> starts at 9 seconds
> >>>>>> ends at 20 seconds
> >>>>>
> >>>>>
> >>>>> That is correct yes :)
> >>>>>>
> >>>>>>
> >>>>>> On Wed, Feb 20, 2019 at 1:37 PM Thibault Saunier <
> saunierthibault at gmail.com> wrote:
> >>>>>>>
> >>>>>>> Hello David,
> >>>>>>>
> >>>>>>> Transitions happen between 2 overlapping clips so you need to make
> sure clips overlap at the point where you add them.
> >>>>>>>
> >>>>>>> Alternatively, you can use the GESTimeline::auto-transition
> property to automatically create transitions when 2 clips overlap.
> >>>>>>>
> >>>>>>> Regards,
> >>>>>>>
> >>>>>>> Thibault
> >>>>>>>
> >>>>>>> On Wed, Feb 20, 2019, 17:47 David Ing <ding at panopto.com> wrote:
> >>>>>>>>
> >>>>>>>> I am struggling to find a clean example for how to achieve a
> crossfade.
> >>>>>>>>
> >>>>>>>> I have a layer which contains two clips of type GESSourceClip:
> >>>>>>>>
> >>>>>>>> GESSourceClip a
> >>>>>>>>
> >>>>>>>> starts at 0 seconds
> >>>>>>>> ends at 9.999999999 seconds
> >>>>>>>>
> >>>>>>>> GESSourceClip b
> >>>>>>>>
> >>>>>>>> starts at 10 seconds
> >>>>>>>> ends at 20 seconds
> >>>>>>>>
> >>>>>>>>
> >>>>>>>> Now I want a 2 second crossfade from "a" to "b" ... but how?
> >>>>>>>>
> >>>>>>>> Do I create a GESTransitionClip and insert it into the layer
> between "a" and "b"?
> >>>>>>>>
> >>>>>>>> What about the timings.  Do I keep the timings for "a" and "b"
> unchanged, but set the transition clip as follows?
> >>>>>>>>
> >>>>>>>> starts at 9 seconds
> >>>>>>>> ends at 11 seconds
> >>>>>>>>
> >>>>>>>> Is it okay for the GESTransitionClip to overlap with
> GESSourceClip with respect to time?
> >>>>>>>> _______________________________________________
> >>>>>>>> gstreamer-devel mailing list
> >>>>>>>> gstreamer-devel at lists.freedesktop.org
> >>>>>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >>>>>>>
> >>>>>>> _______________________________________________
> >>>>>>> gstreamer-devel mailing list
> >>>>>>> gstreamer-devel at lists.freedesktop.org
> >>>>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >>>>>>
> >>>>>> _______________________________________________
> >>>>>> gstreamer-devel mailing list
> >>>>>> gstreamer-devel at lists.freedesktop.org
> >>>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >>>>>
> >>>>> _______________________________________________
> >>>>> gstreamer-devel mailing list
> >>>>> gstreamer-devel at lists.freedesktop.org
> >>>>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >>>
> >>> _______________________________________________
> >>> gstreamer-devel mailing list
> >>> gstreamer-devel at lists.freedesktop.org
> >>> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >>
> >> _______________________________________________
> >> gstreamer-devel mailing list
> >> gstreamer-devel at lists.freedesktop.org
> >> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> >
> > _______________________________________________
> > gstreamer-devel mailing list
> > gstreamer-devel at lists.freedesktop.org
> > https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20190221/c751166e/attachment.html>


More information about the gstreamer-devel mailing list