Files
ladybird/Libraries/LibWeb/EncryptedMediaExtensions/Algorithms.h
Shannon Booth 64736db9e4 LibWeb/EncryptedMediaExtensions: Move EME dictionaries out of Bindings
Define MediaKeySystemConfiguration and MediaKeySystemMediaCapability in
Web::EncryptedMediaExtensions instead of Web::Bindings. This matches
other dictionary definitions in the codebase.
2026-04-23 22:12:13 +02:00

28 lines
1.2 KiB
C++

/*
* Copyright (c) 2025, stelar7 <dudedbz@gmail.com>
*
* SPDX-License-Identifier: BSD-2-Clause
*/
#pragma once
#include <AK/Optional.h>
#include <AK/Types.h>
#include <AK/Utf16String.h>
#include <AK/Vector.h>
#include <LibURL/URL.h>
#include <LibWeb/EncryptedMediaExtensions/KeySystem.h>
namespace Web::EncryptedMediaExtensions {
bool supports_container(Utf16String const& container);
bool is_persistent_session_type(Utf16String const& session_type);
bool is_supported_key_system(Utf16String const& key_system);
NonnullOwnPtr<KeySystem> key_system_from_string(Utf16String const& key_system);
ConsentStatus get_consent_status(MediaKeySystemConfiguration const&, MediaKeyRestrictions&, URL::Origin const&);
Optional<Vector<MediaKeySystemMediaCapability>> get_supported_capabilities_for_audio_video_type(KeySystem const&, CapabilitiesType, Vector<MediaKeySystemMediaCapability>, MediaKeySystemConfiguration, MediaKeyRestrictions);
Optional<ConsentConfiguration> get_supported_configuration_and_consent(KeySystem const&, MediaKeySystemConfiguration const&, MediaKeyRestrictions&, URL::Origin const&);
Optional<ConsentConfiguration> get_supported_configuration(KeySystem const&, MediaKeySystemConfiguration const&, URL::Origin const&);
}