From a771795005fe5ebc06d788a4520e80890685aadc Mon Sep 17 00:00:00 2001 From: "Jan Alexander Steffens (heftig)" Date: Thu, 19 Oct 2017 16:15:26 +0200 Subject: [PATCH] avdemux: Whitelist the demuxers required for GC/Wii/WiiU ADPCM streams Required to play .brstm (GameCube/Wii) and .bfstm (Wii U) files. Needs at least avdec_adpcm_thp too, but that one is already accessible. https://bugzilla.gnome.org/show_bug.cgi?id=789139 --- ext/libav/gstavcodecmap.c | 4 ++++ ext/libav/gstavdemux.c | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/ext/libav/gstavcodecmap.c b/ext/libav/gstavcodecmap.c index 7033f54337..cc61ec7e56 100644 --- a/ext/libav/gstavcodecmap.c +++ b/ext/libav/gstavcodecmap.c @@ -3498,6 +3498,10 @@ gst_ffmpeg_formatid_to_caps (const gchar * format_name) caps = gst_caps_from_string ("audio/x-voc"); } else if (!strcmp (format_name, "pva")) { caps = gst_caps_from_string ("video/x-pva"); + } else if (!strcmp (format_name, "brstm")) { + caps = gst_caps_from_string ("audio/x-brstm"); + } else if (!strcmp (format_name, "bfstm")) { + caps = gst_caps_from_string ("audio/x-bfstm"); } else { gchar *name; diff --git a/ext/libav/gstavdemux.c b/ext/libav/gstavdemux.c index 3728705696..33ef89e0a0 100644 --- a/ext/libav/gstavdemux.c +++ b/ext/libav/gstavdemux.c @@ -2084,7 +2084,10 @@ gst_ffmpegdemux_register (GstPlugin * plugin) !strcmp (in_plugin->name, "yuv4mpegpipe") || !strcmp (in_plugin->name, "pva") || !strcmp (in_plugin->name, "mpc") || - !strcmp (in_plugin->name, "mpc8") || !strcmp (in_plugin->name, "ivf")) + !strcmp (in_plugin->name, "mpc8") || + !strcmp (in_plugin->name, "ivf") || + !strcmp (in_plugin->name, "brstm") || + !strcmp (in_plugin->name, "bfstm")) rank = GST_RANK_MARGINAL; else { GST_DEBUG ("ignoring %s", in_plugin->name);