/* * Copyright 2023 Google LLC * * Use of this source code is governed by a BSD-style license that can be * found in the LICENSE file.
*/ #ifndef SkAvifDecoder_DEFINED #define SkAvifDecoder_DEFINED
/** Returns true if this data claims to be an AVIF image. */
SK_API bool IsAvif(constvoid*, size_t);
/** * Attempts to decode the given bytes as an AVIF. * * If the bytes are not an AVIF, returns nullptr. * * DecodeContext is ignored
*/
SK_API std::unique_ptr<SkCodec> Decode(std::unique_ptr<SkStream>,
SkCodec::Result*,
SkCodecs::DecodeContext = nullptr);
SK_API std::unique_ptr<SkCodec> Decode(sk_sp<SkData>,
SkCodec::Result*,
SkCodecs::DecodeContext = nullptr);
// This function is in the root SkAvifDecoder namespace. It simply routes // everything through the LibAvif namespace and exists for backwards // compatibility. inline constexpr SkCodecs::Decoder Decoder() { return { "avif", LibAvif::IsAvif, LibAvif::Decode };
}
namespace CrabbyAvif {
/** Returns true if this data claims to be an AVIF image. */
SK_API bool IsAvif(constvoid*, size_t);
/** * Attempts to decode the given bytes as an AVIF. * * If the bytes are not an AVIF, returns nullptr. * * DecodeContext is ignored
*/
SK_API std::unique_ptr<SkCodec> Decode(std::unique_ptr<SkStream>,
SkCodec::Result*,
SkCodecs::DecodeContext = nullptr);
SK_API std::unique_ptr<SkCodec> Decode(sk_sp<SkData>,
SkCodec::Result*,
SkCodecs::DecodeContext = nullptr);
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.