1. 29 Mar, 2012 1 commit
  2. 20 Mar, 2012 1 commit
    • Wim Taymans's avatar
      pad: improve docs of get/pull_range · f9c85a53
      Wim Taymans authored
      Improve the docs of the get/pull_range functions, define the lifetime of the
      buffer in case of errors and short reads.
      Make sure the code does what the docs say.
      f9c85a53
  3. 16 Mar, 2012 1 commit
    • Wim Taymans's avatar
      pad: change the semantics of get/pull_range a little · db1318ab
      Wim Taymans authored
      Make it so that one can specify a buffer for get/pull_range where the downstream
      element should write into. When passing NULL, upstream should allocate a buffer,
      like in 0.10.
      We also need to change the probes a little because before the pull probe, there
      could already be a buffer passed. This then allows us to use the same PROBE
      macro for before and after pulling.
      While we're at the probes, make the query probe more powerful by handling the
      GST_PAD_PROBE_DROP return value. Returning _DROP from a query probe will now
      return TRUE upstream and will not forward the probe to the peer or handler.
      Also handle _DROP for get/pull_range properly by not dispatching to the
      peer/handler or by generating EOS when the probe returns DROP and no buffer.
      Make filesrc handle the non-NULL buffer passed in the get_range function and
      skip the allocation in that case, writing directly into the downstream provided
      buffer.
      Update tests because now we need to make sure to not pass a random value in the
      buffer pointer to get/pull_range
      db1318ab
  4. 15 Mar, 2012 1 commit
  5. 14 Mar, 2012 4 commits
  6. 09 Mar, 2012 3 commits
    • Wim Taymans's avatar
      pad: also push sticky events on new event · 35241f35
      Wim Taymans authored
      Make a helper function check_sticky to check and push pending sticky events.
      Move the handling of the result of pushing the sticky event inside the
      push_event function, we need to mark the event as received when it was pushed
      correctly.
      Move the sticky events code outside of gst_pad_push_event_unchecked and
      make it purely handle sending the event to the peer.
      when pushing a sticky event, first store it on the pad. Then check and push any
      pending sticky events when we get a serialized or sticky event on a srcpad. This
      fixes the issue where sticky events are not pushed when an event is pushed.
      35241f35
    • Wim Taymans's avatar
      pad: store the received result from _foreach · 0054e6da
      Wim Taymans authored
      If the foreach function changes the received state of the sticky event, make
      sure we remember that.
      0054e6da
    • Wim Taymans's avatar
      pad: add comment · a8058183
      Wim Taymans authored
      a8058183
  7. 08 Mar, 2012 3 commits
  8. 02 Mar, 2012 1 commit
  9. 01 Mar, 2012 2 commits
  10. 21 Feb, 2012 1 commit
    • Wim Taymans's avatar
      pad: handle NULL callbacks · c105b467
      Wim Taymans authored
      When we have a matching NULL callback, also consider the 'callback' marshalled,
      this way blocking probes with a NULL callback actually work.
      c105b467
  11. 17 Feb, 2012 1 commit
    • Wim Taymans's avatar
      pad: make some errors critical · 386562f7
      Wim Taymans authored
      When we have no chain function or when we are operating the pad in the wrong
      mode, emit a critical instead of posting an error message. This is certainly a
      programming error and we cannot always post a message (like when the pad has no
      parent)
      386562f7
  12. 10 Feb, 2012 2 commits
  13. 08 Feb, 2012 2 commits
  14. 06 Feb, 2012 1 commit
  15. 02 Feb, 2012 1 commit
  16. 26 Jan, 2012 3 commits
  17. 25 Jan, 2012 1 commit
  18. 19 Jan, 2012 1 commit
  19. 18 Jan, 2012 1 commit
    • Sebastian Dröge's avatar
      pad: Don't forward the allocation query by default · 0d2adf5a
      Sebastian Dröge authored
      This has to be handled explicitely by elements to
      make sure that they support all the metas passed
      in the allocation query.
      Metas have to supported explicitely, otherwise the
      query will fail. All elements in a chain need to
      support a specific meta to allow its usage.
      0d2adf5a
  20. 10 Dec, 2011 1 commit
  21. 06 Dec, 2011 3 commits
  22. 05 Dec, 2011 1 commit
  23. 04 Dec, 2011 1 commit
  24. 28 Nov, 2011 1 commit
    • Wim Taymans's avatar
      pad: Handle sticky event errors · da74724f
      Wim Taymans authored
      Use GstFlowReturn to internally pass events between pads.
      When we sticky events cause an error, translate this error into a GstFlowReturn.
      Caps events will, for example, generate a NOT_NEGOTIATED return when the event
      function returns an error.
      This allows us then to refuse sending buffers if one of the sticky events is
      refused and generate a correct error return value.
      da74724f
  25. 25 Nov, 2011 1 commit
    • Wim Taymans's avatar
      pad: fix blocking probe emission · 933e8b23
      Wim Taymans authored
      If we are dealing with a blocking probe, only then check if one the
      blocking flags of the hook matches.
      Add some more debug.
      Make the pad unit test less racy.
      933e8b23
  26. 24 Nov, 2011 1 commit