summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHaihao Xiang <haihao.xiang@intel.com>2020-01-15 14:36:19 +0800
committerVíctor Manuel Jáquez Leal <vjaquez@igalia.com>2020-01-24 10:15:44 +0000
commit4f51000920910abf549e1b6b6f0600a3bc069b66 (patch)
tree80eb21cb8e44d4f614eda4ce0dddec39c6667e73
parentc057fef347e1a559c19f484a8337048d503c971e (diff)
avivf_mux: support VP9 and AV1
Besides vp8, ff_ivf_muxer supports VP9 and AV1
-rw-r--r--ext/libav/gstavcodecmap.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/ext/libav/gstavcodecmap.c b/ext/libav/gstavcodecmap.c
index f64f52e..cb18f64 100644
--- a/ext/libav/gstavcodecmap.c
+++ b/ext/libav/gstavcodecmap.c
@@ -2322,6 +2322,11 @@ gst_ffmpeg_codecid_to_caps (enum AVCodecID codec_id,
gst_ff_aud_caps_new (context, NULL, codec_id, encode, "audio/aptx-hd",
NULL);
break;
+ case AV_CODEC_ID_AV1:
+ caps =
+ gst_ff_vid_caps_new (context, NULL, codec_id, encode, "video/x-av1",
+ NULL);
+ break;
default:
GST_DEBUG ("Unknown codec ID %d, please add mapping here", codec_id);
break;
@@ -3750,6 +3755,19 @@ gst_ffmpeg_formatid_get_codecids (const gchar * format_name,
*video_codec_list = pga_video_list;
*audio_codec_list = pga_audio_list;
+ } else if ((!strcmp (format_name, "ivf"))) {
+ static enum AVCodecID ivf_video_list[] = {
+ AV_CODEC_ID_VP8,
+ AV_CODEC_ID_VP9,
+ AV_CODEC_ID_AV1,
+ AV_CODEC_ID_NONE
+ };
+ static enum AVCodecID ivf_audio_list[] = {
+ AV_CODEC_ID_NONE
+ };
+
+ *video_codec_list = ivf_video_list;
+ *audio_codec_list = ivf_audio_list;
} else if ((plugin->audio_codec != AV_CODEC_ID_NONE) ||
(plugin->video_codec != AV_CODEC_ID_NONE)) {
tmp_vlist[0] = plugin->video_codec;