Layouts
Default Layout
A guide on how to setup the default audio/video layout and available customization options.
Installation
Section titled InstallationSee the installation guide to setup the Default Layout.
You can try out the Default Layout on our player demo page.
Usage
Section titled UsageThe Default Layout ships with support for audio, video, and live streams. You can include both layouts at the same time, only one will be matched depending on the view type.
By default, the view type is inferred from the provider and media type. You can specify the desired type like so:
The same is true for the stream type:
Color Scheme
Section titled Color SchemeBoth the audio and video layout accept color scheme to be either light or dark themed. By default
it will use the user’s preferred color scheme. You can set a specific
theme by setting the colorScheme
prop on the layout like so:
You can also set the color scheme by setting a light
or dark
class on a parent element:
Both the audio and video layout will adapt to small containers to ensure an optimal user experience. You configure when the small layout is displayed like so:
If you’d like to disable small layouts, set the query to false
or 'never'
:
Icons
Section titled IconsYou can easily replace the icons used in the layouts to match the style of your application like so:
Thumbnails
Section titled ThumbnailsYou can provide thumbnails which will be used to display preview images when interacting with the time slider and in the chapters menu. See the loading thumbnails guide for more information.
Language
Section titled LanguageBoth the audio and video layout support internationalization (i18n) by accepting custom language
translations. You can dynamically set the translations
property to update the language like so:
CSS Variables
Section titled CSS VariablesThe following snippets contain a complete list of CSS variables and their respective default values. They can all be adjusted by you to customize the audio/video layout and child components as desired.
Audio Layout
Section titled Audio LayoutThe following variables can be used to specifically customize the audio layout. See the Components section for more.
Video Layout
Section titled Video LayoutThe following variables can be used to specifically customize the video layout. See the Components section for more.
Components
Section titled ComponentsSlots
Section titled SlotsAudio Layout
Section titled Audio LayoutThe slots
prop can be used to insert or replace content inside the DefaultAudioLayout
. You can
find all available slot positions below.
Video Layout
Section titled Video LayoutThe slots
prop can be used to insert or replace content inside the DefaultVideoLayout
. You can
find all available slot positions below.
Content can be slotted inside specific video layout sizes like so:
Positions
Section titled PositionsThe following slot positions are available for inserting or replacing content:
- bufferingIndicator
- captionButton
- captions
- title
- chapterTitle
- currentTime
- endTime
- fullscreenButton
- liveButton
- livePlayButton
- muteButton
- pipButton
- airPlayButton
- googleCastButton
- playButton
- loadButton
- seekBackwardButton
- seekForwardButton
- startDuration
- timeSlider
- volumeSlider
- chaptersMenu
- settingsMenu
- settingsMenuItemsStart
- settingsMenuItemsEnd
- playbackMenuItemsStart
- playbackMenuItemsEnd
- playbackMenuLoop
- accessibilityMenuItemsStart
- accessibilityMenuItemsEnd
- audioMenuItemsStart
- audioMenuItemsEnd
- captionsMenuItemsStart
- captionsMenuItemsEnd
Any slot position can be prefixed with either before
or after
to insert content before or
after that position. For example, afterCaptionButton
will insert content after the caption
button.
API Reference
Section titled API ReferenceDefaultAudioLayout
Section titled DefaultAudioLayoutRefAttributes
The audio layout is our production-ready UI that's displayed when the media view type is set to 'audio'. It includes support for audio tracks, slider chapters, captions, live streams and more out of the box.
Props
Section titled PropsData Attributes
Section titled Data AttributesDefaultVideoLayout
Section titled DefaultVideoLayoutRefAttributes
The video layout is our production-ready UI that's displayed when the media view type is set to 'video'. It includes support for picture-in-picture, fullscreen, slider chapters, slider previews, captions, audio/quality settings, live streams, and more out of the box.