va: filter: Add past and future frames in GstVaSample.
authorVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Tue, 24 Aug 2021 11:53:12 +0000 (13:53 +0200)
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>
Fri, 10 Sep 2021 15:48:23 +0000 (17:48 +0200)
And add them in the pipeline structure if they are provided.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/2495>

sys/va/gstvafilter.c
sys/va/gstvafilter.h

index 23edb7e..ebf9e97 100644 (file)
@@ -1561,6 +1561,10 @@ _create_pipeline_buffer (GstVaFilter * self, GstVaSample * src,
     .output_color_standard = self->output_color_standard,
     .filters = va_filters,
     .num_filters = num_filters,
+    .forward_references = src->forward_references,
+    .num_forward_references = src->num_forward_references,
+    .backward_references = src->backward_references,
+    .num_backward_references = src->num_backward_references,
     .rotation_state = self->rotation,
     .mirror_state = self->mirror,
     .input_surface_flag = src->flags,
index 8abaeff..4330b9b 100644 (file)
@@ -61,6 +61,12 @@ struct _GstVaSample
   GstBuffer *buffer;
   guint32 flags;
 
+  /* references for (de)interlacing */
+  VASurfaceID *forward_references;
+  guint num_forward_references;
+  VASurfaceID *backward_references;
+  guint num_backward_references;
+
   /*< private >*/
   VASurfaceID surface;
   VARectangle rect;