diff --git a/Userland/Libraries/LibWeb/MimeSniff/MimeType.cpp b/Userland/Libraries/LibWeb/MimeSniff/MimeType.cpp index a339b473a2..8eee0aa836 100644 --- a/Userland/Libraries/LibWeb/MimeSniff/MimeType.cpp +++ b/Userland/Libraries/LibWeb/MimeSniff/MimeType.cpp @@ -245,6 +245,13 @@ bool MimeType::is_image() const return type() == "image"sv; } +// https://mimesniff.spec.whatwg.org/#audio-or-video-mime-type +bool MimeType::is_audio_or_video() const +{ + // An audio or video MIME type is any MIME type whose type is "audio" or "video", or whose essence is "application/ogg". + return type().is_one_of("audio"sv, "video"sv) || essence() == "application/ogg"sv; +} + // https://mimesniff.spec.whatwg.org/#xml-mime-type bool MimeType::is_xml() const { diff --git a/Userland/Libraries/LibWeb/MimeSniff/MimeType.h b/Userland/Libraries/LibWeb/MimeSniff/MimeType.h index a12dec535a..9fb06aa3f8 100644 --- a/Userland/Libraries/LibWeb/MimeSniff/MimeType.h +++ b/Userland/Libraries/LibWeb/MimeSniff/MimeType.h @@ -27,6 +27,7 @@ public: OrderedHashMap const& parameters() const { return m_parameters; } bool is_image() const; + bool is_audio_or_video() const; bool is_xml() const; bool is_html() const; bool is_javascript() const;