pub struct PlaybackCapabilities {
pub uses_webview_audio: bool,
pub supports_native_video: bool,
}Expand description
What playback facilities this platform’s backend actually provides.
The frontend is presentation-only and must not re-derive backend facts from
navigator.userAgent — that sniffing was a second copy of the same platform
decision Rust already makes with cfg!, and it drifted. These flags are the
single source of truth; the frontend consumes them.
TRACES: UR-003, UR-005 | DR-004, DR-023, DR-024
Fields§
§uses_webview_audio: boolTrue when audio is rendered by a webview <audio> element rather than a
native backend. Native audio exists on Linux (mpv) and Android
(ExoPlayer); everything else (Windows, future desktops) uses the webview.
supports_native_video: boolTrue when video can be rendered by a native surface composited behind a transparent webview. Android only: ExoPlayer draws into a SurfaceView beneath the WebView. Linux cannot do this (WebKitGTK/Wayland compositing), so it stays on the HTML5 element.
Trait Implementations§
Source§impl Debug for PlaybackCapabilities
impl Debug for PlaybackCapabilities
Source§impl NamedType for PlaybackCapabilities
impl NamedType for PlaybackCapabilities
fn sid() -> SpectaID
Source§fn named_data_type(
type_map: &mut TypeCollection,
generics: &[DataType],
) -> NamedDataType
fn named_data_type( type_map: &mut TypeCollection, generics: &[DataType], ) -> NamedDataType
Source§fn definition_named_data_type(type_map: &mut TypeCollection) -> NamedDataType
fn definition_named_data_type(type_map: &mut TypeCollection) -> NamedDataType
Source§impl Serialize for PlaybackCapabilities
impl Serialize for PlaybackCapabilities
Source§impl Type for PlaybackCapabilities
impl Type for PlaybackCapabilities
Source§fn inline(type_map: &mut TypeCollection, generics: Generics<'_>) -> DataType
fn inline(type_map: &mut TypeCollection, generics: Generics<'_>) -> DataType
Source§fn reference(type_map: &mut TypeCollection, generics: &[DataType]) -> Reference
fn reference(type_map: &mut TypeCollection, generics: &[DataType]) -> Reference
definition will be put into the type map.impl Flatten for PlaybackCapabilities
Auto Trait Implementations§
impl Freeze for PlaybackCapabilities
impl RefUnwindSafe for PlaybackCapabilities
impl Send for PlaybackCapabilities
impl Sync for PlaybackCapabilities
impl Unpin for PlaybackCapabilities
impl UnsafeUnpin for PlaybackCapabilities
impl UnwindSafe for PlaybackCapabilities
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> FunctionArg for Twhere
T: Type,
impl<T> FunctionArg for Twhere
T: Type,
§fn to_datatype(type_map: &mut TypeCollection) -> Option<DataType>
fn to_datatype(type_map: &mut TypeCollection) -> Option<DataType>
DataType]. Read more