Skip to content
  • Andy Wingo Wingo's avatar
    libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate):... · a1737687
    Andy Wingo Wingo authored
    libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate): (gst_base_transform_init, gst_base_transform_sink_activa...
    
    Original commit message from CVS:
    2007-01-12  Andy Wingo  <wingo@pobox.com>
    
    * libs/gst/base/gstbasetransform.c (_GstBaseTransformPrivate):
    (gst_base_transform_init, gst_base_transform_sink_activate_push)
    (gst_base_transform_src_activate_pull):
    Track the activation mode.
    (gst_base_transform_setcaps): In pull mode, when activating the
    src pad, after activating the sink pad, activate the sink pad's
    peer, as discussed in part-negotiation.txt.
    
    * libs/gst/base/gstbasesrc.h:
    * libs/gst/base/gstbasesrc.c (gst_base_src_fixate): Add fixate
    vmethod, as in basesink.
    
    * libs/gst/base/gstbasesink.h: Reformat docs, add fixate vmethod.
    
    * libs/gst/base/gstbasesink.c (gst_base_sink_pad_setcaps): In pull
    mode, first proxy the setcaps to the peer pad.
    (gst_base_sink_pad_fixate): Add a fixate function that calls the
    new fixate vmethod.
    (gst_base_sink_default_activate_pull): Rename from
    gst_base_sink_activate_pull.
    (gst_base_sink_negotiate_pull): New function, performs negotiation
    in pull mode before calling ::activate_pull().
    (gst_base_sink_pad_activate_pull): Actually call the activate_pull
    vmethod instead of the default implementation. I have no idea how
    this worked before. Negotiate before calling activate_pull.
    a1737687