summaryrefslogtreecommitdiff
path: root/libs/gst/base/gstbasesink.c
diff options
context:
space:
mode:
Diffstat (limited to 'libs/gst/base/gstbasesink.c')
-rw-r--r--libs/gst/base/gstbasesink.c24
1 files changed, 12 insertions, 12 deletions
diff --git a/libs/gst/base/gstbasesink.c b/libs/gst/base/gstbasesink.c
index 046fd11e68..3556e024dc 100644
--- a/libs/gst/base/gstbasesink.c
+++ b/libs/gst/base/gstbasesink.c
@@ -402,7 +402,7 @@ static GstFlowReturn gst_base_sink_pad_buffer_alloc (GstPad * pad,
402 402
403/* check if an object was too late */ 403/* check if an object was too late */
404static gboolean gst_base_sink_is_too_late (GstBaseSink * basesink, 404static gboolean gst_base_sink_is_too_late (GstBaseSink * basesink,
405 GstMiniObject * obj, GstClockTime start, GstClockTime stop, 405 GstMiniObject * obj, GstClockTime rstart, GstClockTime rstop,
406 GstClockReturn status, GstClockTimeDiff jitter); 406 GstClockReturn status, GstClockTimeDiff jitter);
407static GstFlowReturn gst_base_sink_preroll_object (GstBaseSink * basesink, 407static GstFlowReturn gst_base_sink_preroll_object (GstBaseSink * basesink,
408 guint8 obj_type, GstMiniObject * obj); 408 guint8 obj_type, GstMiniObject * obj);
@@ -2778,7 +2778,7 @@ gst_base_sink_reset_qos (GstBaseSink * sink)
2778 2778
2779/* Checks if the object was scheduled too late. 2779/* Checks if the object was scheduled too late.
2780 * 2780 *
2781 * start/stop contain the raw timestamp start and stop values 2781 * rstart/rstop contain the running_time start and stop values
2782 * of the object. 2782 * of the object.
2783 * 2783 *
2784 * status and jitter contain the return values from the clock wait. 2784 * status and jitter contain the return values from the clock wait.
@@ -2787,7 +2787,7 @@ gst_base_sink_reset_qos (GstBaseSink * sink)
2787 */ 2787 */
2788static gboolean 2788static gboolean
2789gst_base_sink_is_too_late (GstBaseSink * basesink, GstMiniObject * obj, 2789gst_base_sink_is_too_late (GstBaseSink * basesink, GstMiniObject * obj,
2790 GstClockTime start, GstClockTime stop, 2790 GstClockTime rstart, GstClockTime rstop,
2791 GstClockReturn status, GstClockTimeDiff jitter) 2791 GstClockReturn status, GstClockTimeDiff jitter)
2792{ 2792{
2793 gboolean late; 2793 gboolean late;
@@ -2813,25 +2813,25 @@ gst_base_sink_is_too_late (GstBaseSink * basesink, GstMiniObject * obj,
2813 goto not_buffer; 2813 goto not_buffer;
2814 2814
2815 /* can't do check if we don't have a timestamp */ 2815 /* can't do check if we don't have a timestamp */
2816 if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (start))) 2816 if (G_UNLIKELY (!GST_CLOCK_TIME_IS_VALID (rstart)))
2817 goto no_timestamp; 2817 goto no_timestamp;
2818 2818
2819 /* we can add a valid stop time */ 2819 /* we can add a valid stop time */
2820 if (GST_CLOCK_TIME_IS_VALID (stop)) 2820 if (GST_CLOCK_TIME_IS_VALID (rstop))
2821 max_lateness += stop; 2821 max_lateness += rstop;
2822 else 2822 else
2823 max_lateness += start; 2823 max_lateness += rstart;
2824 2824
2825 /* if the jitter bigger than duration and lateness we are too late */ 2825 /* if the jitter bigger than duration and lateness we are too late */
2826 if ((late = start + jitter > max_lateness)) { 2826 if ((late = rstart + jitter > max_lateness)) {
2827 GST_CAT_DEBUG_OBJECT (GST_CAT_PERFORMANCE, basesink, 2827 GST_CAT_DEBUG_OBJECT (GST_CAT_PERFORMANCE, basesink,
2828 "buffer is too late %" GST_TIME_FORMAT 2828 "buffer is too late %" GST_TIME_FORMAT
2829 " > %" GST_TIME_FORMAT, GST_TIME_ARGS (start + jitter), 2829 " > %" GST_TIME_FORMAT, GST_TIME_ARGS (rstart + jitter),
2830 GST_TIME_ARGS (max_lateness)); 2830 GST_TIME_ARGS (max_lateness));
2831 /* !!emergency!!, if we did not receive anything valid for more than a 2831 /* !!emergency!!, if we did not receive anything valid for more than a
2832 * second, render it anyway so the user sees something */ 2832 * second, render it anyway so the user sees something */
2833 if (GST_CLOCK_TIME_IS_VALID (priv->last_in_time) && 2833 if (GST_CLOCK_TIME_IS_VALID (priv->last_in_time) &&
2834 start - priv->last_in_time > GST_SECOND) { 2834 rstart - priv->last_in_time > GST_SECOND) {
2835 late = FALSE; 2835 late = FALSE;
2836 GST_ELEMENT_WARNING (basesink, CORE, CLOCK, 2836 GST_ELEMENT_WARNING (basesink, CORE, CLOCK,
2837 (_("A lot of buffers are being dropped.")), 2837 (_("A lot of buffers are being dropped.")),
@@ -2844,10 +2844,10 @@ gst_base_sink_is_too_late (GstBaseSink * basesink, GstMiniObject * obj,
2844 2844
2845done: 2845done:
2846 if (!late || !GST_CLOCK_TIME_IS_VALID (priv->last_in_time)) { 2846 if (!late || !GST_CLOCK_TIME_IS_VALID (priv->last_in_time)) {
2847 priv->last_in_time = start; 2847 priv->last_in_time = rstart;
2848 /* the next allowed input timestamp */ 2848 /* the next allowed input timestamp */
2849 if (priv->throttle_time > 0) 2849 if (priv->throttle_time > 0)
2850 priv->earliest_in_time = start + priv->throttle_time; 2850 priv->earliest_in_time = rstart + priv->throttle_time;
2851 } 2851 }
2852 return late; 2852 return late;
2853 2853
'/~miku/drm-intel/log/Documentation/cachetlb.txt?h=88910&id=c7ed326fa7cafb83ced5a8b02517a61672fe9e90'>logplain d---------cdrom198logplain d---------cgroups584logplain -rw-r--r--circular-buffers.txt8565logplain -rw-r--r--clk.txt11668logplain -rw-r--r--coccinelle.txt9242logplain d---------connector186logplain d---------console39logplain d---------cpu-freq459logplain -rw-r--r--cpu-hotplug.txt17240logplain -rw-r--r--cpu-load.txt3110logplain d---------cpuidle151logplain -rw-r--r--cputopology.txt3936logplain -rw-r--r--crc32.txt8732logplain d---------cris34logplain d---------crypto178logplain -rw-r--r--dcdbas.txt3709logplain -rw-r--r--debugging-modules.txt954logplain -rw-r--r--debugging-via-ohci1394.txt7575logplain -rw-r--r--dell_rbu.txt4972logplain d---------development-process313logplain d---------device-mapper890logplain -rw-r--r--devices.txt119023logplain d---------devicetree164logplain -rw-r--r--digsig.txt2873logplain -rw-r--r--dma-buf-sharing.txt21228logplain -rw-r--r--dmaengine.txt7742logplain -rw-r--r--dmatest.txt3457logplain -rw-r--r--dontdiff2543logplain d---------driver-model391logplain d---------dvb555logplain -rw-r--r--dynamic-debug-howto.txt12946logplain d---------early-userspace79logplain -rw-r--r--edac.txt24901logplain -rw-r--r--efi-stub.txt3282logplain -rw-r--r--eisa.txt7289logplain -rw-r--r--email-clients.txt8970logplain d---------extcon56logplain d---------fault-injection147logplain d---------fb1355log