зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1445683 - Updates to AOMDecoder; r=jya
This reflects the API changes to the aom_codec_decode function and the removal of I440. It also sets allow_lowbitdepth to give proper support for 8 bit video, and removes the git version from the mime type. MozReview-Commit-ID: GuTvnPkR1Er --HG-- extra : rebase_source : 1f0ce4367b38023408c65e05187251ac0a0020f3
This commit is contained in:
Родитель
b0db8f0d4c
Коммит
e1fef53faf
|
@ -77,6 +77,7 @@ InitContext(AOMDecoder& aAOMDecoder,
|
|||
PodZero(&config);
|
||||
config.threads = decode_threads;
|
||||
config.w = config.h = 0; // set after decode
|
||||
config.allow_lowbitdepth = true;
|
||||
|
||||
aom_codec_flags_t flags = 0;
|
||||
|
||||
|
@ -154,7 +155,6 @@ highbd_img_downshift(aom_image_t *dst, aom_image_t *src, int down_shift) {
|
|||
case AOM_IMG_FMT_I420:
|
||||
case AOM_IMG_FMT_I422:
|
||||
case AOM_IMG_FMT_I444:
|
||||
case AOM_IMG_FMT_I440:
|
||||
break;
|
||||
default:
|
||||
return AOM_CODEC_INVALID_PARAM;
|
||||
|
@ -163,7 +163,6 @@ highbd_img_downshift(aom_image_t *dst, aom_image_t *src, int down_shift) {
|
|||
case AOM_IMG_FMT_I42016:
|
||||
case AOM_IMG_FMT_I42216:
|
||||
case AOM_IMG_FMT_I44416:
|
||||
case AOM_IMG_FMT_I44016:
|
||||
break;
|
||||
default:
|
||||
// We don't support anything that's not 16 bit
|
||||
|
@ -203,7 +202,7 @@ AOMDecoder::ProcessDecode(MediaRawData* aSample)
|
|||
"AOM Decode Keyframe error sample->mKeyframe and si.si_kf out of sync");
|
||||
#endif
|
||||
|
||||
if (aom_codec_err_t r = aom_codec_decode(&mCodec, aSample->Data(), aSample->Size(), nullptr, 0)) {
|
||||
if (aom_codec_err_t r = aom_codec_decode(&mCodec, aSample->Data(), aSample->Size(), nullptr)) {
|
||||
LOG_RESULT(r, "Decode error!");
|
||||
return DecodePromise::CreateAndReject(
|
||||
MediaResult(NS_ERROR_DOM_MEDIA_DECODE_ERR,
|
||||
|
@ -345,13 +344,7 @@ AOMDecoder::IsAV1(const nsACString& aMimeType)
|
|||
bool
|
||||
AOMDecoder::IsSupportedCodec(const nsAString& aCodecType)
|
||||
{
|
||||
// While AV1 is under development, we describe support
|
||||
// for a specific aom commit hash so sites can check
|
||||
// compatibility.
|
||||
auto version = NS_ConvertASCIItoUTF16("av1.experimental.");
|
||||
version.AppendLiteral("d14c5bb4f336ef1842046089849dee4a301fbbf0");
|
||||
return aCodecType.EqualsLiteral("av1") ||
|
||||
aCodecType.Equals(version);
|
||||
return aCodecType.EqualsLiteral("av1");
|
||||
}
|
||||
|
||||
/* static */
|
||||
|
|
Загрузка…
Ссылка в новой задаче