summaryrefslogtreecommitdiff
path: root/subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h
diff options
context:
space:
mode:
authorSeungha Yang <seungha@centricular.com>2022-11-05 01:07:02 +0900
committerGStreamer Marge Bot <gitlab-merge-bot@gstreamer-foundation.org>2022-11-16 13:12:38 +0000
commit2ede4011bfd6d4c0820fa1b5e9597ad76244ebfb (patch)
tree0c1e41d5dfe235c18509fe2863d5327022310771 /subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h
parenta40842545f54643e2cafead12afece952acf2c1b (diff)
codecs: Keep track of non-decoding-essential input state change
In theory, input caps can be updated anytime at non-keyframe or sequence boundary, such as HDR10 metadata, framerate, aspect-ratio or so. Those information update might not trigger ::new_sequence() or subclass may ignore the changes. By this commit, input state change will be tracked by baseclass and subclass will be able to know the non-decoding-essential update by checking the codec specific picture struct on ::output_picture() Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/3328>
Diffstat (limited to 'subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h')
-rw-r--r--subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h5
1 files changed, 5 insertions, 0 deletions
diff --git a/subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h b/subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h
index abfc07adb9..9fc3f65f53 100644
--- a/subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h
+++ b/subprojects/gst-plugins-bad/gst-libs/gst/codecs/gstvp8picture.h
@@ -22,6 +22,7 @@
#include <gst/codecs/codecs-prelude.h>
#include <gst/codecparsers/gstvp8parser.h>
+#include <gst/video/video.h>
G_BEGIN_DECLS
@@ -34,6 +35,7 @@ typedef struct _GstVp8Picture GstVp8Picture;
struct _GstVp8Picture
{
+ /*< private >*/
GstMiniObject parent;
GstClockTime pts;
@@ -46,6 +48,9 @@ struct _GstVp8Picture
const guint8 * data;
gsize size;
+ /* decoder input state if this picture is discont point */
+ GstVideoCodecState *discont_state;
+
gpointer user_data;
GDestroyNotify notify;
};