summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2017-09-05 12:56:44 +0100
committerTim-Philipp Müller <tim@centricular.com>2017-09-05 13:59:06 +0100
commit7fe68aee7dea667f9fa9df91315e4dc8c8e44284 (patch)
tree6e13bbe512c87e42c9204610f0a9b2a525919022
parent27b6f0f0437079bd77eef8147634d8377db145c6 (diff)
downloadgstreamer-plugins-good-7fe68aee7dea667f9fa9df91315e4dc8c8e44284.tar.gz
rtph265depay: fix keyunit detection
https://bugzilla.gnome.org/show_bug.cgi?id=787254
-rw-r--r--gst/rtp/gstrtph265depay.c10
1 files changed, 9 insertions, 1 deletions
diff --git a/gst/rtp/gstrtph265depay.c b/gst/rtp/gstrtph265depay.c
index 677a3a49b..783ed1d45 100644
--- a/gst/rtp/gstrtph265depay.c
+++ b/gst/rtp/gstrtph265depay.c
@@ -928,7 +928,15 @@ gst_rtp_h265_complete_au (GstRtpH265Depay * rtph265depay,
|| ((nt) == GST_H265_NAL_SLICE_IDR_N_LP)\
|| ((nt) == GST_H265_NAL_SLICE_CRA_NUT) )
-#define NAL_TYPE_IS_KEY(nt) (NAL_TYPE_IS_PARAMETER_SET(nt) || NAL_TYPE_IS_CODED_SLICE_SEGMENT(nt))
+/* Intra random access point */
+#define NAL_TYPE_IS_IRAP(nt) (((nt) == GST_H265_NAL_SLICE_BLA_W_LP) \
+ || ((nt) == GST_H265_NAL_SLICE_BLA_W_RADL) \
+ || ((nt) == GST_H265_NAL_SLICE_BLA_N_LP) \
+ || ((nt) == GST_H265_NAL_SLICE_IDR_W_RADL) \
+ || ((nt) == GST_H265_NAL_SLICE_IDR_N_LP) \
+ || ((nt) == GST_H265_NAL_SLICE_CRA_NUT))
+
+#define NAL_TYPE_IS_KEY(nt) (NAL_TYPE_IS_PARAMETER_SET(nt) || NAL_TYPE_IS_IRAP(nt))
static GstBuffer *
gst_rtp_h265_depay_handle_nal (GstRtpH265Depay * rtph265depay, GstBuffer * nal,