summaryrefslogtreecommitdiff
path: root/gst
diff options
context:
space:
mode:
authorNicola Murino <nicola.murino@gmail.com>2019-01-24 10:32:46 +0100
committerSebastian Dröge <slomo@coaxion.net>2019-01-24 09:35:06 +0000
commit60501f128c700a7bbacc1b8c36113c5d35bc495c (patch)
tree1cfd112491c6f1a26542f632eaa677f5c466acf1 /gst
parentbbfd3154fb85627a59747e65e83cc4f168eaf553 (diff)
downloadgstreamer-plugins-bad-60501f128c700a7bbacc1b8c36113c5d35bc495c.tar.gz
mpegdemux: add support for H.265
Diffstat (limited to 'gst')
-rw-r--r--gst/mpegdemux/gstmpegdefs.h1
-rw-r--r--gst/mpegdemux/gstmpegdemux.c9
2 files changed, 10 insertions, 0 deletions
diff --git a/gst/mpegdemux/gstmpegdefs.h b/gst/mpegdemux/gstmpegdefs.h
index a8da84554..95ac90163 100644
--- a/gst/mpegdemux/gstmpegdefs.h
+++ b/gst/mpegdemux/gstmpegdefs.h
@@ -164,6 +164,7 @@
#define ST_AUDIO_AAC_LOAS 0x11
#define ST_VIDEO_MPEG4 0x10
#define ST_VIDEO_H264 0x1b
+#define ST_VIDEO_H265 0x24
/* Un-official Dirac extension */
#define ST_VIDEO_DIRAC 0xd1
diff --git a/gst/mpegdemux/gstmpegdemux.c b/gst/mpegdemux/gstmpegdemux.c
index cedaae0c2..cbcfb79d6 100644
--- a/gst/mpegdemux/gstmpegdemux.c
+++ b/gst/mpegdemux/gstmpegdemux.c
@@ -109,6 +109,7 @@ static GstStaticPadTemplate video_template =
GST_STATIC_CAPS ("video/mpeg, "
"mpegversion = (int) { 1, 2, 4 }, " "systemstream = (boolean) FALSE, "
"parsed = (boolean) FALSE; " "video/x-h264, "
+ "stream-format=(string)byte-stream; " "video/x-h265, "
"stream-format=(string)byte-stream;")
);
@@ -422,6 +423,14 @@ gst_ps_demux_create_stream (GstPsDemux * demux, gint id, gint stream_type)
"stream-format", G_TYPE_STRING, "byte-stream", NULL);
threshold = VIDEO_SEGMENT_THRESHOLD;
break;
+ case ST_VIDEO_H265:
+ template = klass->video_template;
+ name = g_strdup_printf ("video_%02x", id);
+ caps = gst_caps_new_simple ("video/x-h265",
+ "stream-format", G_TYPE_STRING, "byte-stream", NULL);
+ threshold = VIDEO_SEGMENT_THRESHOLD;
+ break;
+
case ST_PS_AUDIO_AC3:
template = klass->audio_template;
name = g_strdup_printf ("audio_%02x", id);