From 714d31ce308e1d2067da494553251876aa9f68e4 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Tim-Philipp=20M=C3=BCller?= Date: Fri, 5 Feb 2016 18:18:31 +0000 Subject: [PATCH] rtp: h265: remove codecparser dependency from h265 payloader/depayloader Looks like it just uses the NAL enums and nothing else from the codecparsers, and that's the only reason it had to be moved from -good to -bad when it was originally added. We can probably keep those NAL enums up to date enough, so let's remove the codecparser dependency so it can be moved back into -good. https://bugzilla.gnome.org/show_bug.cgi?id=761606 --- gst/rtp/gstrtph265depay.h | 2 +- gst/rtp/gstrtph265pay.h | 2 +- gst/rtp/gstrtph265types.h | 76 +++++++++++++++++++++++++++++++++++++++ 3 files changed, 78 insertions(+), 2 deletions(-) create mode 100644 gst/rtp/gstrtph265types.h diff --git a/gst/rtp/gstrtph265depay.h b/gst/rtp/gstrtph265depay.h index dba837d544..0a919c9182 100644 --- a/gst/rtp/gstrtph265depay.h +++ b/gst/rtp/gstrtph265depay.h @@ -24,7 +24,7 @@ #include #include #include -#include +#include "gstrtph265types.h" G_BEGIN_DECLS #define GST_TYPE_RTP_H265_DEPAY \ diff --git a/gst/rtp/gstrtph265pay.h b/gst/rtp/gstrtph265pay.h index a3fa692ba4..80d3c123b9 100644 --- a/gst/rtp/gstrtph265pay.h +++ b/gst/rtp/gstrtph265pay.h @@ -24,7 +24,7 @@ #include #include #include -#include +#include "gstrtph265types.h" G_BEGIN_DECLS #define GST_TYPE_RTP_H265_PAY \ diff --git a/gst/rtp/gstrtph265types.h b/gst/rtp/gstrtph265types.h new file mode 100644 index 0000000000..b2692e9942 --- /dev/null +++ b/gst/rtp/gstrtph265types.h @@ -0,0 +1,76 @@ +/* GStreamer H.265 parser types + * Copyright (C) 2013 Intel Corporation + * Copyright (C) 2013 Sreerenj Balachandran + * + * Contact: Sreerenj Balachandran + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the + * Free Software Foundation, Inc., 51 Franklin St, Fifth Floor, + * Boston, MA 02110-1301, USA. + */ + +#ifndef __GST_RTP_H265_TYPES_H__ +#define __GST_RTP_H265_TYPES_H__ + +#include + +G_BEGIN_DECLS + +typedef enum +{ + GST_H265_NAL_SLICE_TRAIL_N = 0, + GST_H265_NAL_SLICE_TRAIL_R = 1, + GST_H265_NAL_SLICE_TSA_N = 2, + GST_H265_NAL_SLICE_TSA_R = 3, + GST_H265_NAL_SLICE_STSA_N = 4, + GST_H265_NAL_SLICE_STSA_R = 5, + GST_H265_NAL_SLICE_RADL_N = 6, + GST_H265_NAL_SLICE_RADL_R = 7, + GST_H265_NAL_SLICE_RASL_N = 8, + GST_H265_NAL_SLICE_RASL_R = 9, + GST_H265_NAL_SLICE_BLA_W_LP = 16, + GST_H265_NAL_SLICE_BLA_W_RADL = 17, + GST_H265_NAL_SLICE_BLA_N_LP = 18, + GST_H265_NAL_SLICE_IDR_W_RADL = 19, + GST_H265_NAL_SLICE_IDR_N_LP = 20, + GST_H265_NAL_SLICE_CRA_NUT = 21, + GST_H265_NAL_VPS = 32, + GST_H265_NAL_SPS = 33, + GST_H265_NAL_PPS = 34, + GST_H265_NAL_AUD = 35, + GST_H265_NAL_EOS = 36, + GST_H265_NAL_EOB = 37, + GST_H265_NAL_FD = 38, + GST_H265_NAL_PREFIX_SEI = 39, + GST_H265_NAL_SUFFIX_SEI = 40 +} GstH265NalUnitType; + +#define RESERVED_NON_IRAP_SUBLAYER_NAL_TYPE_MIN 10 +#define RESERVED_NON_IRAP_SUBLAYER_NAL_TYPE_MAX 15 + +#define RESERVED_IRAP_NAL_TYPE_MIN 22 +#define RESERVED_IRAP_NAL_TYPE_MAX 23 + +#define RESERVED_NON_IRAP_NAL_TYPE_MIN 24 +#define RESERVED_NON_IRAP_NAL_TYPE_MAX 31 + +#define RESERVED_NON_VCL_NAL_TYPE_MIN 41 +#define RESERVED_NON_VCL_NAL_TYPE_MAX 47 + +#define UNSPECIFIED_NON_VCL_NAL_TYPE_MIN 48 +#define UNSPECIFIED_NON_VCL_NAL_TYPE_MAX 63 + +G_END_DECLS + +#endif