mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-10-21 01:43:47 +00:00
matroskamux: Add HEVC / h265 support
This commit is contained in:
parent
77745289c4
commit
5506dc3076
1 changed files with 12 additions and 0 deletions
|
@ -103,6 +103,8 @@ static GstStaticPadTemplate videosink_templ =
|
||||||
COMMON_VIDEO_CAPS "; "
|
COMMON_VIDEO_CAPS "; "
|
||||||
"video/x-h264, stream-format=avc, alignment=au, "
|
"video/x-h264, stream-format=avc, alignment=au, "
|
||||||
COMMON_VIDEO_CAPS "; "
|
COMMON_VIDEO_CAPS "; "
|
||||||
|
"video/x-h265, stream-format=hvc1, alignment=au, "
|
||||||
|
COMMON_VIDEO_CAPS "; "
|
||||||
"video/x-divx, "
|
"video/x-divx, "
|
||||||
COMMON_VIDEO_CAPS "; "
|
COMMON_VIDEO_CAPS "; "
|
||||||
"video/x-huffyuv, "
|
"video/x-huffyuv, "
|
||||||
|
@ -1119,6 +1121,16 @@ skip_details:
|
||||||
context->codec_priv = g_malloc0 (context->codec_priv_size);
|
context->codec_priv = g_malloc0 (context->codec_priv_size);
|
||||||
gst_buffer_extract (codec_buf, 0, context->codec_priv, -1);
|
gst_buffer_extract (codec_buf, 0, context->codec_priv, -1);
|
||||||
}
|
}
|
||||||
|
} else if (!strcmp (mimetype, "video/x-h265")) {
|
||||||
|
gst_matroska_mux_set_codec_id (context,
|
||||||
|
GST_MATROSKA_CODEC_ID_VIDEO_MPEGH_HEVC);
|
||||||
|
gst_matroska_mux_free_codec_priv (context);
|
||||||
|
/* Create hvcC header */
|
||||||
|
if (codec_buf != NULL) {
|
||||||
|
context->codec_priv_size = gst_buffer_get_size (codec_buf);
|
||||||
|
context->codec_priv = g_malloc0 (context->codec_priv_size);
|
||||||
|
gst_buffer_extract (codec_buf, 0, context->codec_priv, -1);
|
||||||
|
}
|
||||||
} else if (!strcmp (mimetype, "video/x-theora")) {
|
} else if (!strcmp (mimetype, "video/x-theora")) {
|
||||||
const GValue *streamheader;
|
const GValue *streamheader;
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue