diff options
author | trav90 <travawine@palemoon.org> | 2018-10-21 10:14:54 -0500 |
---|---|---|
committer | trav90 <travawine@palemoon.org> | 2018-10-21 10:14:54 -0500 |
commit | fb408ef5261d7e531f0e4936b88f7925743c4471 (patch) | |
tree | 851449e3e0adb7d64d671e1a5bd57755a392f671 | |
parent | 1bda27b3ab944ce6d022c9828bf18639faa11237 (diff) | |
download | uxp-fb408ef5261d7e531f0e4936b88f7925743c4471.tar.gz |
Ensure we correctly parse the finalized codec string for av1
-rw-r--r-- | dom/media/VideoUtils.cpp | 23 |
1 files changed, 12 insertions, 11 deletions
diff --git a/dom/media/VideoUtils.cpp b/dom/media/VideoUtils.cpp index 80d39a49f5..c06ba9070b 100644 --- a/dom/media/VideoUtils.cpp +++ b/dom/media/VideoUtils.cpp @@ -438,6 +438,16 @@ ParseMIMETypeString(const nsAString& aMIMEType, return ParseCodecsString(codecsStr, aOutCodecs); } +template <int N> +static bool +StartsWith(const nsACString& string, const char (&prefix)[N]) +{ + if (N - 1 > string.Length()) { + return false; + } + return memcmp(string.Data(), prefix, N - 1) == 0; +} + bool IsH264CodecString(const nsAString& aCodec) { @@ -474,20 +484,11 @@ IsVP9CodecString(const nsAString& aCodec) bool IsAV1CodecString(const nsAString& aCodec) { - return aCodec.EqualsLiteral("av1"); + return aCodec.EqualsLiteral("av1") || + StartsWith(NS_ConvertUTF16toUTF8(aCodec), "av01"); } #endif -template <int N> -static bool -StartsWith(const nsACString& string, const char (&prefix)[N]) -{ - if (N - 1 > string.Length()) { - return false; - } - return memcmp(string.Data(), prefix, N - 1) == 0; -} - UniquePtr<TrackInfo> CreateTrackInfoWithMIMEType(const nsACString& aCodecMIMEType) { |