Skip to content
Snippets Groups Projects
  1. Jun 24, 2020
  2. Jun 19, 2020
  3. Jun 18, 2020
  4. Jun 17, 2020
  5. Jun 16, 2020
  6. Jun 12, 2020
  7. Jun 11, 2020
  8. Jun 10, 2020
  9. Jun 09, 2020
  10. Jun 08, 2020
    • Nicolas Dufresne's avatar
      rtptimerqueue: Fix leak on timer collision · 5b2ad315
      Nicolas Dufresne authored
      While the caller should make sure this does not happen, make sure timer
      collision are not silently ignored and leaked.
      
      Fixes #726
      
      Part-of: <gstreamer/gst-plugins-good!616>
      5b2ad315
    • Nicolas Dufresne's avatar
      rtpjitterbuffer: Keep JBUF lock while processing timers · b4f421e9
      Nicolas Dufresne authored
      Until now, do_expected_timeout() was shortly dropping the JBUF_LOCK in order
      to push RTX event event without causing deadlock. As a side effect, some
      CPU hung would happen as the timerqueue would get filled while looping over
      the due timers. To mitigate this, we were processing the lost timer first and
      placing into a queue the remainign to be processed later.
      
      In the gap caused by an unlock, we could endup receiving one of the seqnum
      present in the pending timers. In that case, the timer would not be found and
      a new one was created. When we then update the expected timer, the seqnum
      would already exist and the updated timer would be lost.
      
      In this patch we remove the unlock from do_expected_timeout() and place all
      pending RTX event into a queue (instead of pending timer). Then, as soon as
      we have selected a timer to wait (or if there is no timer to wait for) we send
      all the upstream RTX events. As we no longer unlock, we no longer need to pop
      more then one timer from the queue, and we do so with the lock held, which
      blocks any new colliding timers from being created.
      
      Part-of: <gstreamer/gst-plugins-good!616>
      b4f421e9
    • Guillaume Desmottes's avatar
      tests: vp9enc: enforce I420 format · 0594d2f9
      Guillaume Desmottes authored
      Test was not enforcing a video format on videotestsrc. I420 was picked
      as it was the first format in GST_VIDEO_FORMATS_ALL which will no longer
      be true (gst-plugins-base!689).
      
      Part-of: <gstreamer/gst-plugins-good!615>
      0594d2f9
    • Edward Hervey's avatar
      rtpjitterbuffer: Avoid deadlock on flush · 54810bf4
      Edward Hervey authored and Edward Hervey's avatar Edward Hervey committed
      When a GST_EVENT_FLUSH_START reaches the jitterbuffer, there is a chance that
      our task is currently blocking waiting for a timer.
      
      There was two problems:
      * That wait wasn't checking for flushing situations
      * The flushing handling wasn't waking up that conditional (to check whether it
      should abort)
      
      Part-of: <gstreamer/gst-plugins-good!608>
      54810bf4
  11. Jun 05, 2020
  12. Jun 04, 2020
  13. Jun 02, 2020
    • Stian Selnes's avatar
      vpxdec: Check that output width and height != 0 · 44e4de43
      Stian Selnes authored and Sebastian Dröge's avatar Sebastian Dröge committed
      For VP8 it's possible to signal width or height to be 0, but it does
      not make sense to do so. For VP9 it's impossible. Hence, we most
      likely have a corrupt stream. Trying to negotiate caps downstream with
      either width or height as 0 will fail with something like
      
      gst_video_decoder_negotiate_default: assertion 'GST_VIDEO_INFO_WIDTH (&state->info) != 0' failed
      
      Part-of: <gstreamer/gst-plugins-good!610>
      44e4de43
  14. May 28, 2020
  15. May 27, 2020
    • Sebastian Dröge's avatar
      rtspsrc: Use the correct type for storing the max-rtcp-rtp-time-diff property · b94b9988
      Sebastian Dröge authored
      It's an integer property and rtpbin also expects an integer. Passing it
      as a GstClockTime (guint64) to g_object_set() will cause problems, and
      on big endian MIPS apparently causes crashes.
      
      Fixes #737
      
      Part-of: <!605>
      b94b9988
    • Tim-Philipp Müller's avatar
      tests: fix meson test env setup to make sure we use the right gst-plugin-scanner · 5f91be7e
      Tim-Philipp Müller authored
      If core is built as a subproject (e.g. as in gst-build), make sure to use
      the gst-plugin-scanner from the built subproject. Without this, gstreamer
      might accidentally use the gst-plugin-scanner from the install prefix if
      that exists, which in turn might drag in gst library versions we didn't
      mean to drag in. Those gst library versions might then be older than
      what our current build needs, and might cause our newly-built plugins
      to get blacklisted in the test registry because they rely on a symbol
      that the wrongly-pulled in gst lib doesn't have.
      
      This should fix running of unit tests in gst-build when invoking
      meson test or ninja test from outside the devenv for the case where
      there is an older or different-version gst-plugin-scanner installed
      in the install prefix.
      
      In case no gst-plugin-scanner is installed in the install prefix, this
      will fix "GStreamer-WARNING: External plugin loader failed. This most
      likely means that the plugin loader helper binary was not found or
      could not be run. You might need to set the GST_PLUGIN_SCANNER
      environment variable if your setup is unusual." warnings when running
      the unit tests.
      
      In the case where we find GStreamer core via pkg-config we use
      a newly-added pkg-config var "pluginscannerdir" to get the right
      directory. This has the benefit of working transparently for both
      installed and uninstalled pkg-config files/setups.
      
      Part-of: <gstreamer/gst-plugins-good!603>
      5f91be7e
  16. May 26, 2020
  17. May 22, 2020
Loading