diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2016-01-19 17:08:50 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2016-01-19 17:08:50 +0000 |
commit | ab5aab60a98190ebee926716c9dd0ad256851d54 (patch) | |
tree | 1c5b3b8612c0e604a1fc1e5d796d8414fdc6aeba /gst/mpegtsmux | |
parent | 6e79d54ae582c28ff5db1bab1e6afbfea8e4e612 (diff) |
mpegtsmux: add support for H.265/HEVC video
https://bugzilla.gnome.org/show_bug.cgi?id=744367
Diffstat (limited to 'gst/mpegtsmux')
-rw-r--r-- | gst/mpegtsmux/mpegtsmux.c | 4 | ||||
-rw-r--r-- | gst/mpegtsmux/tsmux/tsmuxstream.c | 1 | ||||
-rw-r--r-- | gst/mpegtsmux/tsmux/tsmuxstream.h | 1 |
3 files changed, 6 insertions, 0 deletions
diff --git a/gst/mpegtsmux/mpegtsmux.c b/gst/mpegtsmux/mpegtsmux.c index 1d208a712..cd0733889 100644 --- a/gst/mpegtsmux/mpegtsmux.c +++ b/gst/mpegtsmux/mpegtsmux.c @@ -127,6 +127,8 @@ static GstStaticPadTemplate mpegtsmux_sink_factory = "video/x-dirac;" "video/x-h264,stream-format=(string)byte-stream," "alignment=(string){au, nal}; " + "video/x-h265,stream-format=(string)byte-stream," + "alignment=(string){au, nal}; " "audio/mpeg, " "parsed = (boolean) TRUE, " "mpegversion = (int) { 1, 2 };" @@ -612,6 +614,8 @@ mpegtsmux_create_stream (MpegTsMux * mux, MpegTsPadData * ts_data) st = TSMUX_ST_PS_AUDIO_LPCM; } else if (strcmp (mt, "video/x-h264") == 0) { st = TSMUX_ST_VIDEO_H264; + } else if (strcmp (mt, "video/x-h265") == 0) { + st = TSMUX_ST_VIDEO_HEVC; } else if (strcmp (mt, "audio/mpeg") == 0) { gint mpegversion; diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.c b/gst/mpegtsmux/tsmux/tsmuxstream.c index 31fd196a9..74d011509 100644 --- a/gst/mpegtsmux/tsmux/tsmuxstream.c +++ b/gst/mpegtsmux/tsmux/tsmuxstream.c @@ -138,6 +138,7 @@ tsmux_stream_new (guint16 pid, TsMuxStreamType stream_type) case TSMUX_ST_VIDEO_MPEG2: case TSMUX_ST_VIDEO_MPEG4: case TSMUX_ST_VIDEO_H264: + case TSMUX_ST_VIDEO_HEVC: /* FIXME: Assign sequential IDs? */ stream->id = 0xE0; stream->pi.flags |= TSMUX_PACKET_FLAG_PES_FULL_HEADER; diff --git a/gst/mpegtsmux/tsmux/tsmuxstream.h b/gst/mpegtsmux/tsmux/tsmuxstream.h index 26fe207d1..73b2a8812 100644 --- a/gst/mpegtsmux/tsmux/tsmuxstream.h +++ b/gst/mpegtsmux/tsmux/tsmuxstream.h @@ -133,6 +133,7 @@ enum TsMuxStreamType { TSMUX_ST_AUDIO_AAC = 0x0f, TSMUX_ST_VIDEO_MPEG4 = 0x10, TSMUX_ST_VIDEO_H264 = 0x1b, + TSMUX_ST_VIDEO_HEVC = 0x24, /* private stream types */ TSMUX_ST_PS_AUDIO_AC3 = 0x81, |