mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-03 15:06:34 +00:00
videoparsers: Disable gst_base_parse_set_infer_ts
From the documentation of gst_base_parse_set_infer_ts, it should be disabled for non-audio data. Currently just disabling for all video parsers that have reordered data: h264, h265, mpeg, mpeg4, vc1. Was already disabled in h263.
This commit is contained in:
parent
397a9edb35
commit
851682629e
5 changed files with 8 additions and 0 deletions
|
@ -162,6 +162,7 @@ gst_h264_parse_init (GstH264Parse * h264parse)
|
|||
{
|
||||
h264parse->frame_out = gst_adapter_new ();
|
||||
gst_base_parse_set_pts_interpolation (GST_BASE_PARSE (h264parse), FALSE);
|
||||
gst_base_parse_set_infer_ts (GST_BASE_PARSE (h264parse), FALSE);
|
||||
GST_PAD_SET_ACCEPT_INTERSECT (GST_BASE_PARSE_SINK_PAD (h264parse));
|
||||
GST_PAD_SET_ACCEPT_TEMPLATE (GST_BASE_PARSE_SINK_PAD (h264parse));
|
||||
|
||||
|
|
|
@ -164,6 +164,7 @@ gst_h265_parse_init (GstH265Parse * h265parse)
|
|||
{
|
||||
h265parse->frame_out = gst_adapter_new ();
|
||||
gst_base_parse_set_pts_interpolation (GST_BASE_PARSE (h265parse), FALSE);
|
||||
gst_base_parse_set_infer_ts (GST_BASE_PARSE (h265parse), FALSE);
|
||||
GST_PAD_SET_ACCEPT_INTERSECT (GST_BASE_PARSE_SINK_PAD (h265parse));
|
||||
GST_PAD_SET_ACCEPT_TEMPLATE (GST_BASE_PARSE_SINK_PAD (h265parse));
|
||||
}
|
||||
|
|
|
@ -185,6 +185,7 @@ gst_mpeg4vparse_init (GstMpeg4VParse * parse)
|
|||
parse->last_report = GST_CLOCK_TIME_NONE;
|
||||
|
||||
gst_base_parse_set_pts_interpolation (GST_BASE_PARSE (parse), FALSE);
|
||||
gst_base_parse_set_infer_ts (GST_BASE_PARSE (parse), FALSE);
|
||||
GST_PAD_SET_ACCEPT_INTERSECT (GST_BASE_PARSE_SINK_PAD (parse));
|
||||
GST_PAD_SET_ACCEPT_TEMPLATE (GST_BASE_PARSE_SINK_PAD (parse));
|
||||
}
|
||||
|
|
|
@ -174,6 +174,7 @@ gst_mpegv_parse_init (GstMpegvParse * parse)
|
|||
parse->config_flags = FLAG_NONE;
|
||||
|
||||
gst_base_parse_set_pts_interpolation (GST_BASE_PARSE (parse), FALSE);
|
||||
gst_base_parse_set_infer_ts (GST_BASE_PARSE (parse), FALSE);
|
||||
GST_PAD_SET_ACCEPT_INTERSECT (GST_BASE_PARSE_SINK_PAD (parse));
|
||||
GST_PAD_SET_ACCEPT_TEMPLATE (GST_BASE_PARSE_SINK_PAD (parse));
|
||||
}
|
||||
|
|
|
@ -251,6 +251,10 @@ gst_vc1_parse_init (GstVC1Parse * vc1parse)
|
|||
gst_vc1_parse_reset (vc1parse);
|
||||
GST_PAD_SET_ACCEPT_INTERSECT (GST_BASE_PARSE_SINK_PAD (vc1parse));
|
||||
GST_PAD_SET_ACCEPT_TEMPLATE (GST_BASE_PARSE_SINK_PAD (vc1parse));
|
||||
|
||||
/* We have reordered frames - don't interpolate PTS */
|
||||
gst_base_parse_set_pts_interpolation (GST_BASE_PARSE (vc1parse), FALSE);
|
||||
gst_base_parse_set_infer_ts (GST_BASE_PARSE (vc1parse), FALSE);
|
||||
}
|
||||
|
||||
static void
|
||||
|
|
Loading…
Reference in a new issue