Ensure we correctly parse the finalized codec string for av1

This commit is contained in:
trav90 2018-10-21 10:14:54 -05:00 • committed by Roy Tam
commit de6b3a930f

View file

@ -438,6 +438,16 @@ ParseMIMETypeString(const nsAString& aMIMEType,
return ParseCodecsString(codecsStr, aOutCodecs); 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 bool
IsH264CodecString(const nsAString& aCodec) IsH264CodecString(const nsAString& aCodec)
{ {
@ -474,20 +484,11 @@ IsVP9CodecString(const nsAString& aCodec)
bool bool
IsAV1CodecString(const nsAString& aCodec) IsAV1CodecString(const nsAString& aCodec)
{ {
return aCodec.EqualsLiteral("av1"); return aCodec.EqualsLiteral("av1") ||
StartsWith(NS_ConvertUTF16toUTF8(aCodec), "av01");
} }
#endif #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> UniquePtr<TrackInfo>
CreateTrackInfoWithMIMEType(const nsACString& aCodecMIMEType) CreateTrackInfoWithMIMEType(const nsACString& aCodecMIMEType)
{ {