summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authortrav90 <travawine@palemoon.org>2018-10-21 10:14:54 -0500
committertrav90 <travawine@palemoon.org>2018-10-21 10:14:54 -0500
commitfb408ef5261d7e531f0e4936b88f7925743c4471 (patch)
tree851449e3e0adb7d64d671e1a5bd57755a392f671
parent1bda27b3ab944ce6d022c9828bf18639faa11237 (diff)
downloaduxp-fb408ef5261d7e531f0e4936b88f7925743c4471.tar.gz
Ensure we correctly parse the finalized codec string for av1
-rw-r--r--dom/media/VideoUtils.cpp23
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)
{