@videojs/html 10.0.0 → 10.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +2 -2
- package/dist/default/define/audio/compat-skin.css +42 -0
- package/dist/default/define/audio/compat-skin2.js +1 -1
- package/dist/default/define/audio/scaffold-skin.css +1771 -0
- package/dist/default/define/audio/scaffold-skin.js +6 -0
- package/dist/default/define/audio/scaffold-skin2.js +4 -0
- package/dist/default/define/live-audio/compat-skin.css +42 -0
- package/dist/default/define/live-audio/compat-skin2.js +1 -1
- package/dist/default/define/live-audio/scaffold-skin.css +1591 -0
- package/dist/default/define/live-audio/scaffold-skin.js +6 -0
- package/dist/default/define/live-audio/scaffold-skin2.js +4 -0
- package/dist/default/define/live-video/compat-skin.css +67 -23
- package/dist/default/define/live-video/compat-skin2.js +1 -1
- package/dist/default/define/live-video/neutral-skin.css +20 -9
- package/dist/default/define/live-video/neutral-skin2.js +1 -1
- package/dist/default/define/live-video/scaffold-skin.css +1976 -0
- package/dist/default/define/live-video/scaffold-skin.js +6 -0
- package/dist/default/define/live-video/scaffold-skin2.js +4 -0
- package/dist/default/define/live-video/skin.css +18 -7
- package/dist/default/define/live-video/skin2.js +1 -1
- package/dist/default/define/media/dash-video.js +1 -1
- package/dist/default/define/media/hls-video.js +1 -1
- package/dist/default/define/media/hlsjs-video.js +1 -1
- package/dist/default/define/media/native-hls-video.js +1 -1
- package/dist/default/define/media/playerjs-video.js +11 -0
- package/dist/default/define/video/compat-skin.css +67 -23
- package/dist/default/define/video/compat-skin2.js +1 -1
- package/dist/default/define/video/neutral-skin.css +26 -9
- package/dist/default/define/video/neutral-skin2.js +1 -1
- package/dist/default/define/video/scaffold-skin.css +2216 -0
- package/dist/default/define/video/scaffold-skin.js +6 -0
- package/dist/default/define/video/scaffold-skin2.js +4 -0
- package/dist/default/define/video/skin.css +24 -7
- package/dist/default/define/video/skin2.js +1 -1
- package/dist/default/extensions/mux-data/extension.js +1 -1
- package/dist/default/icons/dist/element/compat/icons.js +1 -1
- package/dist/default/icons/dist/element/index.js +1 -0
- package/dist/default/icons/dist/element/scaffold/icons.js +30 -0
- package/dist/default/icons/dist/element/scaffold/index.js +8 -0
- package/dist/default/icons/dist/html/compat/play.js +1 -1
- package/dist/default/icons/dist/html/scaffold/airplay-enter.js +4 -0
- package/dist/default/icons/dist/html/scaffold/airplay-exit.js +4 -0
- package/dist/default/icons/dist/html/scaffold/captions-off.js +4 -0
- package/dist/default/icons/dist/html/scaffold/captions-on.js +4 -0
- package/dist/default/icons/dist/html/scaffold/cast-enter.js +4 -0
- package/dist/default/icons/dist/html/scaffold/cast-exit.js +4 -0
- package/dist/default/icons/dist/html/scaffold/check.js +4 -0
- package/dist/default/icons/dist/html/scaffold/chevron.js +4 -0
- package/dist/default/icons/dist/html/scaffold/fullscreen-enter.js +4 -0
- package/dist/default/icons/dist/html/scaffold/fullscreen-exit.js +4 -0
- package/dist/default/icons/dist/html/scaffold/gear.js +4 -0
- package/dist/default/icons/dist/html/scaffold/pause.js +4 -0
- package/dist/default/icons/dist/html/scaffold/pip-enter.js +4 -0
- package/dist/default/icons/dist/html/scaffold/pip-exit.js +4 -0
- package/dist/default/icons/dist/html/scaffold/play.js +4 -0
- package/dist/default/icons/dist/html/scaffold/quality.js +4 -0
- package/dist/default/icons/dist/html/scaffold/restart.js +4 -0
- package/dist/default/icons/dist/html/scaffold/seek.js +4 -0
- package/dist/default/icons/dist/html/scaffold/speech.js +4 -0
- package/dist/default/icons/dist/html/scaffold/speed.js +4 -0
- package/dist/default/icons/dist/html/scaffold/spinner.js +4 -0
- package/dist/default/icons/dist/html/scaffold/switches.js +4 -0
- package/dist/default/icons/dist/html/scaffold/volume-high.js +4 -0
- package/dist/default/icons/dist/html/scaffold/volume-low.js +4 -0
- package/dist/default/icons/dist/html/scaffold/volume-off.js +4 -0
- package/dist/default/icons/element/scaffold/index.js +1 -0
- package/dist/default/icons/scaffold/index.js +26 -0
- package/dist/default/internal/skins/compat-audio/register.js +1 -0
- package/dist/default/internal/skins/compat-audio/skin.css +42 -0
- package/dist/default/internal/skins/compat-audio/template.js +18 -16
- package/dist/default/internal/skins/compat-live-audio/register.js +1 -0
- package/dist/default/internal/skins/compat-live-audio/skin.css +42 -0
- package/dist/default/internal/skins/compat-live-audio/template.js +11 -9
- package/dist/default/internal/skins/compat-live-video/skin.css +67 -23
- package/dist/default/internal/skins/compat-live-video/template.js +20 -18
- package/dist/default/internal/skins/compat-video/skin.css +67 -23
- package/dist/default/internal/skins/compat-video/template.js +34 -32
- package/dist/default/internal/skins/default-audio/template.js +12 -12
- package/dist/default/internal/skins/default-live-audio/template.js +5 -5
- package/dist/default/internal/skins/default-live-video/skin.css +18 -7
- package/dist/default/internal/skins/default-live-video/template.js +16 -16
- package/dist/default/internal/skins/default-video/skin.css +24 -7
- package/dist/default/internal/skins/default-video/template.js +26 -26
- package/dist/default/internal/skins/neutral-audio/template.js +12 -12
- package/dist/default/internal/skins/neutral-live-audio/template.js +5 -5
- package/dist/default/internal/skins/neutral-live-video/skin.css +20 -9
- package/dist/default/internal/skins/neutral-live-video/template.js +16 -16
- package/dist/default/internal/skins/neutral-video/skin.css +26 -9
- package/dist/default/internal/skins/neutral-video/template.js +26 -26
- package/dist/default/internal/skins/scaffold-audio/register.js +73 -0
- package/dist/default/internal/skins/scaffold-audio/skin.css +1739 -0
- package/dist/default/internal/skins/scaffold-audio/template.js +221 -0
- package/dist/default/internal/skins/scaffold-live-audio/register.js +53 -0
- package/dist/default/internal/skins/scaffold-live-audio/skin.css +1559 -0
- package/dist/default/internal/skins/scaffold-live-audio/template.js +118 -0
- package/dist/default/internal/skins/scaffold-live-video/register.js +86 -0
- package/dist/default/internal/skins/scaffold-live-video/skin.css +1944 -0
- package/dist/default/internal/skins/scaffold-live-video/template.js +241 -0
- package/dist/default/internal/skins/scaffold-video/register.js +115 -0
- package/dist/default/internal/skins/scaffold-video/skin.css +2184 -0
- package/dist/default/internal/skins/scaffold-video/template.js +461 -0
- package/dist/default/media/playerjs-video/adapter.js +25 -0
- package/dist/default/presets/audio/index.js +2 -1
- package/dist/default/presets/audio/scaffold-skin.js +19 -0
- package/dist/default/presets/background/skin.js +0 -2
- package/dist/default/presets/live-audio/index.js +2 -1
- package/dist/default/presets/live-audio/scaffold-skin.js +19 -0
- package/dist/default/presets/live-video/index.js +2 -1
- package/dist/default/presets/live-video/scaffold-skin.js +19 -0
- package/dist/default/presets/skin.js +0 -11
- package/dist/default/presets/video/index.js +2 -1
- package/dist/default/presets/video/scaffold-skin.js +19 -0
- package/dist/default/ui/thumbnail/element.js +2 -2
- package/dist/default/ui/time-slider/element.js +31 -7
- package/dist/default/version.js +1 -1
- package/dist/dev/define/audio/compat-skin.css +42 -0
- package/dist/dev/define/audio/compat-skin2.js +1 -1
- package/dist/dev/define/audio/compat-skin2.js.map +1 -1
- package/dist/dev/define/audio/neutral-skin2.js.map +1 -1
- package/dist/dev/define/audio/scaffold-skin.css +1771 -0
- package/dist/dev/define/audio/scaffold-skin.d.ts +1 -0
- package/dist/dev/define/audio/scaffold-skin.js +8 -0
- package/dist/dev/define/audio/scaffold-skin.js.map +1 -0
- package/dist/dev/define/audio/scaffold-skin2.js +6 -0
- package/dist/dev/define/audio/scaffold-skin2.js.map +1 -0
- package/dist/dev/define/audio/skin2.js.map +1 -1
- package/dist/dev/define/global.js.map +1 -1
- package/dist/dev/define/live-audio/compat-skin.css +42 -0
- package/dist/dev/define/live-audio/compat-skin2.js +1 -1
- package/dist/dev/define/live-audio/compat-skin2.js.map +1 -1
- package/dist/dev/define/live-audio/neutral-skin2.js.map +1 -1
- package/dist/dev/define/live-audio/scaffold-skin.css +1591 -0
- package/dist/dev/define/live-audio/scaffold-skin.d.ts +1 -0
- package/dist/dev/define/live-audio/scaffold-skin.js +8 -0
- package/dist/dev/define/live-audio/scaffold-skin.js.map +1 -0
- package/dist/dev/define/live-audio/scaffold-skin2.js +6 -0
- package/dist/dev/define/live-audio/scaffold-skin2.js.map +1 -0
- package/dist/dev/define/live-audio/skin2.js.map +1 -1
- package/dist/dev/define/live-video/compat-skin.css +67 -23
- package/dist/dev/define/live-video/compat-skin2.js +1 -1
- package/dist/dev/define/live-video/compat-skin2.js.map +1 -1
- package/dist/dev/define/live-video/neutral-skin.css +20 -9
- package/dist/dev/define/live-video/neutral-skin2.js +1 -1
- package/dist/dev/define/live-video/neutral-skin2.js.map +1 -1
- package/dist/dev/define/live-video/scaffold-skin.css +1976 -0
- package/dist/dev/define/live-video/scaffold-skin.d.ts +1 -0
- package/dist/dev/define/live-video/scaffold-skin.js +8 -0
- package/dist/dev/define/live-video/scaffold-skin.js.map +1 -0
- package/dist/dev/define/live-video/scaffold-skin2.js +6 -0
- package/dist/dev/define/live-video/scaffold-skin2.js.map +1 -0
- package/dist/dev/define/live-video/skin.css +18 -7
- package/dist/dev/define/live-video/skin2.js +1 -1
- package/dist/dev/define/live-video/skin2.js.map +1 -1
- package/dist/dev/define/media/dash-video.d.ts +1 -1
- package/dist/dev/define/media/dash-video.js +1 -1
- package/dist/dev/define/media/dash-video.js.map +1 -1
- package/dist/dev/define/media/hls-video.d.ts +1 -1
- package/dist/dev/define/media/hls-video.js +1 -1
- package/dist/dev/define/media/hls-video.js.map +1 -1
- package/dist/dev/define/media/hlsjs-video.d.ts +1 -1
- package/dist/dev/define/media/hlsjs-video.js +1 -1
- package/dist/dev/define/media/hlsjs-video.js.map +1 -1
- package/dist/dev/define/media/native-hls-video.d.ts +1 -1
- package/dist/dev/define/media/native-hls-video.js +1 -1
- package/dist/dev/define/media/native-hls-video.js.map +1 -1
- package/dist/dev/define/media/playerjs-video.d.ts +15 -0
- package/dist/dev/define/media/playerjs-video.js +13 -0
- package/dist/dev/define/media/playerjs-video.js.map +1 -0
- package/dist/dev/define/video/compat-skin.css +67 -23
- package/dist/dev/define/video/compat-skin2.js +1 -1
- package/dist/dev/define/video/compat-skin2.js.map +1 -1
- package/dist/dev/define/video/neutral-skin.css +26 -9
- package/dist/dev/define/video/neutral-skin2.js +1 -1
- package/dist/dev/define/video/neutral-skin2.js.map +1 -1
- package/dist/dev/define/video/scaffold-skin.css +2216 -0
- package/dist/dev/define/video/scaffold-skin.d.ts +1 -0
- package/dist/dev/define/video/scaffold-skin.js +8 -0
- package/dist/dev/define/video/scaffold-skin.js.map +1 -0
- package/dist/dev/define/video/scaffold-skin2.js +6 -0
- package/dist/dev/define/video/scaffold-skin2.js.map +1 -0
- package/dist/dev/define/video/skin.css +24 -7
- package/dist/dev/define/video/skin2.js +1 -1
- package/dist/dev/define/video/skin2.js.map +1 -1
- package/dist/dev/extensions/mux-data/extension.d.ts +1 -1
- package/dist/dev/extensions/mux-data/extension.js +1 -1
- package/dist/dev/extensions/mux-data/extension.js.map +1 -1
- package/dist/dev/icons/dist/element/compat/icons.js +1 -1
- package/dist/dev/icons/dist/element/compat/icons.js.map +1 -1
- package/dist/dev/icons/dist/element/index.js +1 -0
- package/dist/dev/icons/dist/element/index.js.map +1 -1
- package/dist/dev/icons/dist/element/scaffold/icons.js +32 -0
- package/dist/dev/icons/dist/element/scaffold/icons.js.map +1 -0
- package/dist/dev/icons/dist/element/scaffold/index.d.ts +1 -0
- package/dist/dev/icons/dist/element/scaffold/index.js +10 -0
- package/dist/dev/icons/dist/element/scaffold/index.js.map +1 -0
- package/dist/dev/icons/dist/html/compat/play.js +1 -1
- package/dist/dev/icons/dist/html/compat/play.js.map +1 -1
- package/dist/dev/icons/dist/html/scaffold/airplay-enter.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/airplay-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/airplay-exit.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/airplay-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/captions-off.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/captions-off.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/captions-on.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/captions-on.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/cast-enter.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/cast-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/cast-exit.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/cast-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/check.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/check.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/chevron.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/chevron.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/fullscreen-enter.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/fullscreen-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/fullscreen-exit.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/fullscreen-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/gear.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/gear.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/index.d.ts +28 -0
- package/dist/dev/icons/dist/html/scaffold/pause.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/pause.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/pip-enter.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/pip-enter.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/pip-exit.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/pip-exit.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/play.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/play.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/quality.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/quality.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/restart.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/restart.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/seek.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/seek.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/speech.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/speech.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/speed.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/speed.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/spinner.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/spinner.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/switches.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/switches.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/volume-high.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/volume-high.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/volume-low.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/volume-low.js.map +1 -0
- package/dist/dev/icons/dist/html/scaffold/volume-off.js +6 -0
- package/dist/dev/icons/dist/html/scaffold/volume-off.js.map +1 -0
- package/dist/dev/icons/element/scaffold/index.d.ts +1 -0
- package/dist/dev/icons/element/scaffold/index.js +1 -0
- package/dist/dev/icons/scaffold/index.d.ts +2 -0
- package/dist/dev/icons/scaffold/index.js +26 -0
- package/dist/dev/index.d.ts +3 -3
- package/dist/dev/internal/skins/compat-audio/register.d.ts +1 -0
- package/dist/dev/internal/skins/compat-audio/register.js +1 -0
- package/dist/dev/internal/skins/compat-audio/register.js.map +1 -1
- package/dist/dev/internal/skins/compat-audio/skin.css +42 -0
- package/dist/dev/internal/skins/compat-audio/template.js +18 -16
- package/dist/dev/internal/skins/compat-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/compat-live-audio/register.d.ts +1 -0
- package/dist/dev/internal/skins/compat-live-audio/register.js +1 -0
- package/dist/dev/internal/skins/compat-live-audio/register.js.map +1 -1
- package/dist/dev/internal/skins/compat-live-audio/skin.css +42 -0
- package/dist/dev/internal/skins/compat-live-audio/template.js +11 -9
- package/dist/dev/internal/skins/compat-live-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/compat-live-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/compat-live-video/skin.css +67 -23
- package/dist/dev/internal/skins/compat-live-video/template.js +20 -18
- package/dist/dev/internal/skins/compat-live-video/template.js.map +1 -1
- package/dist/dev/internal/skins/compat-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/compat-video/skin.css +67 -23
- package/dist/dev/internal/skins/compat-video/template.js +34 -32
- package/dist/dev/internal/skins/compat-video/template.js.map +1 -1
- package/dist/dev/internal/skins/default-audio/register.d.ts +2 -2
- package/dist/dev/internal/skins/default-audio/template.js +12 -12
- package/dist/dev/internal/skins/default-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/default-live-audio/register.d.ts +1 -1
- package/dist/dev/internal/skins/default-live-audio/template.js +5 -5
- package/dist/dev/internal/skins/default-live-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/default-live-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/default-live-video/skin.css +18 -7
- package/dist/dev/internal/skins/default-live-video/template.js +16 -16
- package/dist/dev/internal/skins/default-live-video/template.js.map +1 -1
- package/dist/dev/internal/skins/default-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/default-video/skin.css +24 -7
- package/dist/dev/internal/skins/default-video/template.js +26 -26
- package/dist/dev/internal/skins/default-video/template.js.map +1 -1
- package/dist/dev/internal/skins/neutral-audio/register.d.ts +2 -2
- package/dist/dev/internal/skins/neutral-audio/template.js +12 -12
- package/dist/dev/internal/skins/neutral-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/neutral-live-audio/register.d.ts +1 -1
- package/dist/dev/internal/skins/neutral-live-audio/template.js +5 -5
- package/dist/dev/internal/skins/neutral-live-audio/template.js.map +1 -1
- package/dist/dev/internal/skins/neutral-live-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/neutral-live-video/skin.css +20 -9
- package/dist/dev/internal/skins/neutral-live-video/template.js +16 -16
- package/dist/dev/internal/skins/neutral-live-video/template.js.map +1 -1
- package/dist/dev/internal/skins/neutral-video/register.d.ts +1 -1
- package/dist/dev/internal/skins/neutral-video/skin.css +26 -9
- package/dist/dev/internal/skins/neutral-video/template.js +26 -26
- package/dist/dev/internal/skins/neutral-video/template.js.map +1 -1
- package/dist/dev/internal/skins/scaffold-audio/register.d.ts +44 -0
- package/dist/dev/internal/skins/scaffold-audio/register.js +75 -0
- package/dist/dev/internal/skins/scaffold-audio/register.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-audio/skin.css +1739 -0
- package/dist/dev/internal/skins/scaffold-audio/template.js +223 -0
- package/dist/dev/internal/skins/scaffold-audio/template.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-live-audio/register.d.ts +28 -0
- package/dist/dev/internal/skins/scaffold-live-audio/register.js +55 -0
- package/dist/dev/internal/skins/scaffold-live-audio/register.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-live-audio/skin.css +1559 -0
- package/dist/dev/internal/skins/scaffold-live-audio/template.js +120 -0
- package/dist/dev/internal/skins/scaffold-live-audio/template.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-live-video/register.d.ts +45 -0
- package/dist/dev/internal/skins/scaffold-live-video/register.js +88 -0
- package/dist/dev/internal/skins/scaffold-live-video/register.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-live-video/skin.css +1944 -0
- package/dist/dev/internal/skins/scaffold-live-video/template.js +243 -0
- package/dist/dev/internal/skins/scaffold-live-video/template.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-video/register.d.ts +62 -0
- package/dist/dev/internal/skins/scaffold-video/register.js +117 -0
- package/dist/dev/internal/skins/scaffold-video/register.js.map +1 -0
- package/dist/dev/internal/skins/scaffold-video/skin.css +2184 -0
- package/dist/dev/internal/skins/scaffold-video/template.js +463 -0
- package/dist/dev/internal/skins/scaffold-video/template.js.map +1 -0
- package/dist/dev/media/playerjs-video/adapter.d.ts +11 -0
- package/dist/dev/media/playerjs-video/adapter.js +61 -0
- package/dist/dev/media/playerjs-video/adapter.js.map +1 -0
- package/dist/dev/media/playerjs-video/index.d.ts +2 -0
- package/dist/dev/presets/audio/index.d.ts +2 -1
- package/dist/dev/presets/audio/index.js +2 -1
- package/dist/dev/presets/audio/scaffold-skin.d.ts +15 -0
- package/dist/dev/presets/audio/scaffold-skin.js +21 -0
- package/dist/dev/presets/audio/scaffold-skin.js.map +1 -0
- package/dist/dev/presets/background/skin.js +0 -2
- package/dist/dev/presets/background/skin.js.map +1 -1
- package/dist/dev/presets/live-audio/index.d.ts +2 -1
- package/dist/dev/presets/live-audio/index.js +2 -1
- package/dist/dev/presets/live-audio/scaffold-skin.d.ts +15 -0
- package/dist/dev/presets/live-audio/scaffold-skin.js +21 -0
- package/dist/dev/presets/live-audio/scaffold-skin.js.map +1 -0
- package/dist/dev/presets/live-video/index.d.ts +2 -1
- package/dist/dev/presets/live-video/index.js +2 -1
- package/dist/dev/presets/live-video/scaffold-skin.d.ts +15 -0
- package/dist/dev/presets/live-video/scaffold-skin.js +21 -0
- package/dist/dev/presets/live-video/scaffold-skin.js.map +1 -0
- package/dist/dev/presets/skin.js +0 -11
- package/dist/dev/presets/skin.js.map +1 -1
- package/dist/dev/presets/video/index.d.ts +2 -1
- package/dist/dev/presets/video/index.js +2 -1
- package/dist/dev/presets/video/scaffold-skin.d.ts +15 -0
- package/dist/dev/presets/video/scaffold-skin.js +21 -0
- package/dist/dev/presets/video/scaffold-skin.js.map +1 -0
- package/dist/dev/ui/thumbnail/element.js +2 -2
- package/dist/dev/ui/thumbnail/element.js.map +1 -1
- package/dist/dev/ui/time-slider/element.js +31 -7
- package/dist/dev/ui/time-slider/element.js.map +1 -1
- package/dist/dev/version.js +1 -1
- package/docs/README.md +1 -1
- package/docs/guides/architecture.md +3 -3
- package/docs/guides/autoplay.md +3 -3
- package/docs/guides/build-with-ai.md +1 -1
- package/docs/guides/captions.md +5 -5
- package/docs/guides/casting.md +5 -5
- package/docs/guides/cdn.md +11 -11
- package/docs/guides/customize-skins.md +2 -2
- package/docs/guides/features.md +1 -1
- package/docs/guides/fullscreen.md +1 -1
- package/docs/guides/installation-cdn.md +4 -4
- package/docs/guides/installation-shadcn.md +6 -6
- package/docs/guides/installation-svelte.md +5 -5
- package/docs/guides/installation-vue.md +5 -5
- package/docs/guides/installation.md +5 -5
- package/docs/guides/internationalization.md +5 -5
- package/docs/guides/live-streams.md +3 -3
- package/docs/guides/llms.txt +5 -4
- package/docs/guides/media-sources.md +3 -2
- package/docs/guides/migrate-from-media-chrome.md +4 -4
- package/docs/guides/migrate-from-mux-player.md +7 -7
- package/docs/guides/migrate-from-plyr.md +8 -8
- package/docs/guides/migrate-from-video-js-8.md +18 -10
- package/docs/guides/migrate-from-vidstack.md +9 -9
- package/docs/guides/migrate.md +18 -0
- package/docs/guides/mux-data.md +1 -1
- package/docs/guides/playback-errors.md +4 -4
- package/docs/guides/presets.md +13 -13
- package/docs/guides/quality.md +3 -3
- package/docs/guides/self-hosting.md +8 -8
- package/docs/guides/skins.md +6 -6
- package/docs/guides/thumbnails.md +2 -2
- package/docs/guides/user-preferences.md +2 -2
- package/docs/guides/v10-roadmap.md +2 -2
- package/docs/guides/why-videojs.md +3 -3
- package/docs/llms.txt +10 -4
- package/docs/reference/api/error-codes.md +1 -1
- package/docs/reference/api/feature-fullscreen.md +2 -2
- package/docs/reference/api/feature-metadata.md +2 -2
- package/docs/reference/api/feature-source.md +1 -1
- package/docs/reference/api/feature-text-tracks.md +2 -2
- package/docs/reference/api/llms.txt +1 -1
- package/docs/reference/api/media-capabilities.md +1 -1
- package/docs/reference/api/player-store.md +3 -3
- package/docs/reference/api/preset-audio.md +2 -2
- package/docs/reference/api/preset-background.md +3 -3
- package/docs/reference/api/preset-live-audio.md +3 -3
- package/docs/reference/api/preset-live-video.md +3 -3
- package/docs/reference/api/preset-video.md +2 -2
- package/docs/reference/api/resolve-adapter-type.md +2 -2
- package/docs/reference/api/vjs8-legacy-init.md +2 -2
- package/docs/reference/api/vjs8-legacy-options.md +1 -1
- package/docs/reference/components/audio-compat-skin.md +33 -3
- package/docs/reference/components/audio-neutral-skin.md +34 -4
- package/docs/reference/components/audio-scaffold-skin.md +39 -0
- package/docs/reference/components/audio-skin.md +34 -4
- package/docs/reference/components/audio.md +1 -1
- package/docs/reference/components/background-video-skin.md +36 -4
- package/docs/reference/components/background-video.md +1 -1
- package/docs/reference/components/cast-button.md +1 -1
- package/docs/reference/components/cloudflare-video.md +1 -1
- package/docs/reference/components/dash-video.md +1 -1
- package/docs/reference/components/google-cast.md +1 -1
- package/docs/reference/components/hls-audio.md +3 -2
- package/docs/reference/components/hls-background-video.md +1 -1
- package/docs/reference/components/hls-video.md +13 -2
- package/docs/reference/components/hlsjs-video.md +11 -1
- package/docs/reference/components/icons.md +2 -1
- package/docs/reference/components/live-audio-compat-skin.md +35 -4
- package/docs/reference/components/live-audio-neutral-skin.md +36 -5
- package/docs/reference/components/live-audio-scaffold-skin.md +41 -0
- package/docs/reference/components/live-audio-skin.md +36 -5
- package/docs/reference/components/live-video-compat-skin.md +36 -4
- package/docs/reference/components/live-video-neutral-skin.md +37 -5
- package/docs/reference/components/live-video-scaffold-skin.md +47 -0
- package/docs/reference/components/live-video-skin.md +37 -5
- package/docs/reference/components/llms.txt +6 -1
- package/docs/reference/components/mux-audio.md +2 -2
- package/docs/reference/components/mux-background-video.md +1 -1
- package/docs/reference/components/mux-data.md +1 -1
- package/docs/reference/components/mux-video.md +2 -2
- package/docs/reference/components/native-hls-video.md +1 -1
- package/docs/reference/components/player-container.md +1 -1
- package/docs/reference/components/player.md +4 -4
- package/docs/reference/components/playerjs-video.md +197 -0
- package/docs/reference/components/shaka-video.md +1 -1
- package/docs/reference/components/spotify-audio.md +1 -1
- package/docs/reference/components/thumbnail.md +5 -5
- package/docs/reference/components/tiktok-video.md +1 -1
- package/docs/reference/components/twitch-video.md +1 -1
- package/docs/reference/components/video-compat-skin.md +36 -3
- package/docs/reference/components/video-neutral-skin.md +37 -4
- package/docs/reference/components/video-scaffold-skin.md +51 -0
- package/docs/reference/components/video-skin.md +37 -4
- package/docs/reference/components/video.md +1 -1
- package/docs/reference/components/vimeo-video.md +1 -1
- package/docs/reference/components/wistia-video.md +5 -1
- package/docs/reference/components/youtube-video.md +2 -2
- package/package.json +44 -41
|
@@ -14,15 +14,15 @@ The native `<video>` tag is enough for a short clip that plays without controls.
|
|
|
14
14
|
|
|
15
15
|
Chrome, Safari, and Firefox each render the default `<video>` controls differently. You can hide them, but you can’t deeply style or rearrange them. Building UI that matches your product means starting from scratch.
|
|
16
16
|
|
|
17
|
-

|
|
18
18
|
|
|
19
19
|
Chrome
|
|
20
20
|
|
|
21
|
-

|
|
22
22
|
|
|
23
23
|
Safari
|
|
24
24
|
|
|
25
|
-

|
|
26
26
|
|
|
27
27
|
Firefox
|
|
28
28
|
|
package/docs/llms.txt
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Video.js v10 — HTML Documentation
|
|
2
2
|
|
|
3
|
-
> Bundled with `@videojs/html` v10.
|
|
3
|
+
> Bundled with `@videojs/html` v10.1.0. Links are relative paths to files in this directory.
|
|
4
4
|
|
|
5
5
|
> Install the [Video.js skill](https://github.com/videojs/skills) to help AI coding agents find version-matched pages from this index.
|
|
6
6
|
|
|
@@ -32,7 +32,7 @@ Install Video.js, customize a skin, understand its main pieces, check browser an
|
|
|
32
32
|
- [Browser support](./guides/browser-support.md): Browsers and rendering environments supported by Video.js 10, and how the packaged skins reach them
|
|
33
33
|
- [Build with AI](./guides/build-with-ai.md): Install the Video.js skill and give AI coding agents version-matched docs for building and migrating players
|
|
34
34
|
- [v10 Roadmap](./guides/v10-roadmap.md): Where Video.js v10 stands, what comes after 10.0, and the support plan for Video.js 8
|
|
35
|
-
- [Contribute to Video.js](https://github.com/videojs/
|
|
35
|
+
- [Contribute to Video.js](https://github.com/videojs/video.js/blob/main/CONTRIBUTING.md)
|
|
36
36
|
|
|
37
37
|
### Frameworks
|
|
38
38
|
|
|
@@ -57,10 +57,10 @@ Understanding-oriented pages that explain how and why things work. Read these to
|
|
|
57
57
|
|
|
58
58
|
- [Features](./guides/features.md): The state and actions each feature adds to the player
|
|
59
59
|
- [Skins](./guides/skins.md): Packaged player designs that include both UI components and their styles.
|
|
60
|
-
- [Presets](./guides/presets.md): Pre-packaged player configurations that bundle state management, skins, and media
|
|
60
|
+
- [Presets](./guides/presets.md): Pre-packaged player configurations that bundle state management, skins, and media components for specific use cases.
|
|
61
61
|
- [UI components](./guides/ui-components.md): How Video.js UI components use focused elements, data attributes for state, and compound composition.
|
|
62
62
|
- [Accessibility](./guides/accessibility.md): How Video.js approaches accessibility, and what you should consider if you're deeply customizing your player
|
|
63
|
-
- [Media sources](./guides/media-sources.md): Set what a media
|
|
63
|
+
- [Media sources](./guides/media-sources.md): Set what a media component plays and how its engine plays it with the structured source property
|
|
64
64
|
|
|
65
65
|
### Playback
|
|
66
66
|
|
|
@@ -87,6 +87,7 @@ Guides for one player capability each: the recommended setup, how it works, brow
|
|
|
87
87
|
|
|
88
88
|
Guides for moving an existing player integration to Video.js v10, one per player you might be coming from.
|
|
89
89
|
|
|
90
|
+
- [Migrate to Video.js v10](./guides/migrate.md): Understand how Video.js v10 differs from the players it brings together, and choose the migration guide for the player you use today.
|
|
90
91
|
- [Migrate from Video.js 8](./guides/migrate-from-video-js-8.md): Move a Video.js 8 integration to v10, mapping the options object, techs, plugins, and player API onto composed components
|
|
91
92
|
- [Migrate from Mux Player](./guides/migrate-from-mux-player.md): Move a Mux Player embed to Video.js v10 using a player, media component, skin, and analytics extension
|
|
92
93
|
- [Migrate from Plyr](./guides/migrate-from-plyr.md): Move an existing Plyr integration to Video.js v10, mapping Plyr options and its instance API onto components and player state
|
|
@@ -114,15 +115,19 @@ API reference for the packaged skins each preset ships.
|
|
|
114
115
|
- [video-skin](./reference/components/video-skin.md): The video preset's default skin with the modern, frosted look
|
|
115
116
|
- [video-neutral-skin](./reference/components/video-neutral-skin.md): The video preset's visually lighter skin, closer to a classic control bar
|
|
116
117
|
- [video-compat-skin](./reference/components/video-compat-skin.md): A video skin designed for broader browser compatibility
|
|
118
|
+
- [video-scaffold-skin](./reference/components/video-scaffold-skin.md): A video skin with minimal styling for custom skins
|
|
117
119
|
- [audio-skin](./reference/components/audio-skin.md): The audio preset's default skin with the modern, frosted look
|
|
118
120
|
- [audio-neutral-skin](./reference/components/audio-neutral-skin.md): The audio preset's visually lighter skin, closer to a classic control bar
|
|
119
121
|
- [audio-compat-skin](./reference/components/audio-compat-skin.md): An audio skin designed for broader browser compatibility
|
|
122
|
+
- [audio-scaffold-skin](./reference/components/audio-scaffold-skin.md): An audio skin with minimal styling for custom skins
|
|
120
123
|
- [live-video-skin](./reference/components/live-video-skin.md): The live video preset's default skin, which swaps time controls for a Live button
|
|
121
124
|
- [live-video-neutral-skin](./reference/components/live-video-neutral-skin.md): The live video preset's visually lighter skin, closer to a classic control bar
|
|
122
125
|
- [live-video-compat-skin](./reference/components/live-video-compat-skin.md): A live video skin designed for broader browser compatibility
|
|
126
|
+
- [live-video-scaffold-skin](./reference/components/live-video-scaffold-skin.md): A live video skin with minimal styling for custom skins
|
|
123
127
|
- [live-audio-skin](./reference/components/live-audio-skin.md): The live audio preset's default skin, which swaps time controls for a Live button
|
|
124
128
|
- [live-audio-neutral-skin](./reference/components/live-audio-neutral-skin.md): The live audio preset's visually lighter skin, closer to a classic control bar
|
|
125
129
|
- [live-audio-compat-skin](./reference/components/live-audio-compat-skin.md): A live audio skin designed for broader browser compatibility
|
|
130
|
+
- [live-audio-scaffold-skin](./reference/components/live-audio-scaffold-skin.md): A live audio skin with minimal styling for custom skins
|
|
126
131
|
- [background-video-skin](./reference/components/background-video-skin.md): The background preset's chrome-less skin for ambient video
|
|
127
132
|
|
|
128
133
|
### Media
|
|
@@ -141,6 +146,7 @@ API reference for media components that handle streaming protocols and playback.
|
|
|
141
146
|
- [mux-background-video](./reference/components/mux-background-video.md): Mux-specific name for the HLS background video component
|
|
142
147
|
- [mux-video](./reference/components/mux-video.md): Video element for Mux-hosted HLS streams
|
|
143
148
|
- [native-hls-video](./reference/components/native-hls-video.md): HLS video element using the browser's built-in HLS support
|
|
149
|
+
- [playerjs-video](./reference/components/playerjs-video.md): Video component that plays any embed implementing the player.js protocol, such as Mux Player, Gumlet, FrameRate, Livid, Bunny Stream, and Streamable
|
|
144
150
|
- [shaka-video](./reference/components/shaka-video.md): Video element powered by Shaka Player for DASH, HLS, and progressive playback with DRM
|
|
145
151
|
- [spotify-audio](./reference/components/spotify-audio.md): Audio component that plays Spotify tracks, episodes, playlists, and shows through the Spotify embed
|
|
146
152
|
- [tiktok-video](./reference/components/tiktok-video.md): Video component that plays TikTok videos through the TikTok embed player
|
|
@@ -10,7 +10,7 @@ The `video.js` package throws these `VJS8_LEGACY_*` errors when code calls a Vid
|
|
|
10
10
|
|
|
11
11
|
- [VJS8_LEGACY_INIT](./vjs8-legacy-init.md)
|
|
12
12
|
|
|
13
|
-
`videojs()` was the Video.js 8
|
|
13
|
+
`videojs()` was the Video.js 8 setup call. Video.js 10 does not set up a player from an element or id; players are components you compose.
|
|
14
14
|
- [VJS8_LEGACY_PLUGIN](./vjs8-legacy-plugin.md)
|
|
15
15
|
|
|
16
16
|
`videojs.registerPlugin()` was the Video.js 8 plugin system. Video.js 10 has no plugin registry.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Fullscreen state and actions for the player store
|
|
4
4
|
|
|
5
|
-
Controls fullscreen mode. Tries the container element first, falls back to the media
|
|
5
|
+
Controls fullscreen mode. Tries the container element first, falls back to the media component.
|
|
6
6
|
|
|
7
7
|
## Import
|
|
8
8
|
|
|
@@ -25,7 +25,7 @@ The `liveVideoFeatures` and `videoFeatures` [feature bundles](../../guides/prese
|
|
|
25
25
|
|
|
26
26
|
| Action | Type | Description |
|
|
27
27
|
| --- | --- | --- |
|
|
28
|
-
| `requestFullscreen` | `() => Promise<void>` | Enter fullscreen mode. Tries container first, falls back to media
|
|
28
|
+
| `requestFullscreen` | `() => Promise<void>` | Enter fullscreen mode. Tries container first, falls back to media component. |
|
|
29
29
|
| `exitFullscreen` | `() => Promise<void>` | Exit fullscreen mode. |
|
|
30
30
|
|
|
31
31
|
### Selector
|
|
@@ -34,7 +34,7 @@ Attributes and matching properties the player element accepts. They exist only w
|
|
|
34
34
|
| Property | Type | Description |
|
|
35
35
|
| --- | --- | --- |
|
|
36
36
|
| `title` | `string` | The resolved content title. Set it through the player, not through the store. |
|
|
37
|
-
| `poster` | `string` | The resolved poster URL, independent of the media
|
|
37
|
+
| `poster` | `string` | The resolved poster URL, independent of the media component's own `poster`. Set it through the player, not through the store. |
|
|
38
38
|
|
|
39
39
|
### Selector
|
|
40
40
|
|
|
@@ -88,6 +88,6 @@ The flow between an attribute and its property runs one way: an attribute change
|
|
|
88
88
|
|
|
89
89
|
The media tier comes from media that reports content data and announces changes to it, and it covers `title` and `poster`. A media reports only the keys it can vouch for, so either may be absent while the other arrives. A key that never arrives means that tier never contributes, and the resolved value is whatever you set. Detaching the media clears its values; the values you set survive and apply to the next source.
|
|
90
90
|
|
|
91
|
-
`poster` is the feature’s own resolved value, not the media
|
|
91
|
+
`poster` is the feature’s own resolved value, not the media component’s `poster` attribute. Setting one does not set the other.
|
|
92
92
|
|
|
93
93
|
A low-resolution stand-in to show while the poster loads is not part of this feature. The [poster](../components/poster.md) renders an `<img>` you control, so give it a `background-image` and that shows until the poster itself paints over it. [Add a poster and loading placeholder](../../guides/poster.md) walks through that technique for each framework.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Media source state and actions for the player store
|
|
4
4
|
|
|
5
|
-
Tracks the loaded media resource and how much of it is ready. To change the source, set `src` or `source` on the media
|
|
5
|
+
Tracks the loaded media resource and how much of it is ready. To change the source, set `src` or `source` on the media component, which also carries type and engine configuration.
|
|
6
6
|
|
|
7
7
|
## Import
|
|
8
8
|
|
|
@@ -6,7 +6,7 @@ Manages subtitles, captions, chapters, and thumbnail tracks.
|
|
|
6
6
|
|
|
7
7
|
A default `kind="chapters"` track can also divide the [time slider](../components/time-slider.md) into chapter ranges and label the chapter at the current interaction position.
|
|
8
8
|
|
|
9
|
-
`thumbnailsTrack` is the first `kind="metadata"` track labeled `thumbnails`, or `null` when there is none. Its `crossOrigin` reports the media
|
|
9
|
+
`thumbnailsTrack` is the first `kind="metadata"` track labeled `thumbnails`, or `null` when there is none. Its `crossOrigin` reports the media component’s CORS mode, or `null` when the media is not CORS-enabled. [Thumbnail](../components/thumbnail.md) reads it to fetch sprite sheets the same way the browser fetched the track.
|
|
10
10
|
|
|
11
11
|
## Import
|
|
12
12
|
|
|
@@ -22,7 +22,7 @@ The `liveVideoFeatures` and `videoFeatures` [feature bundles](../../guides/prese
|
|
|
22
22
|
|
|
23
23
|
| Property | Type | Description |
|
|
24
24
|
| --- | --- | --- |
|
|
25
|
-
| `textTrackList` | `MediaTextTrack[]` | All text tracks available on the media
|
|
25
|
+
| `textTrackList` | `MediaTextTrack[]` | All text tracks available on the media component. |
|
|
26
26
|
| `subtitlesShowing` | `boolean` | Whether a captions/subtitles track is showing. |
|
|
27
27
|
| `chaptersCues` | `MediaTextCue[]` | Cues from the first `kind="chapters"` track, with cue ends clamped to a finite media duration. |
|
|
28
28
|
| `thumbnailsTrack` | `{ cues: MediaTextCue[]; src: string \| null; crossOrigin: 'anonymous' \| 'use-credentials' \| null } \| null` | The first thumbnails track, or `null` when there is none. |
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
# Video.js v10 — HTML API
|
|
2
2
|
|
|
3
|
-
> API reference for the player factory, presets, store controllers, features, translation tools, and utilities. Bundled with `@videojs/html` v10.
|
|
3
|
+
> API reference for the player factory, presets, store controllers, features, translation tools, and utilities. Bundled with `@videojs/html` v10.1.0. Links are relative paths to files in this directory.
|
|
4
4
|
|
|
5
5
|
## Player
|
|
6
6
|
|
|
@@ -14,7 +14,7 @@ Every guard on this page is a named export of the same package.
|
|
|
14
14
|
|
|
15
15
|
## Usage
|
|
16
16
|
|
|
17
|
-
The player element’s `store.target` holds the media the player attached. It’s `null` until a media
|
|
17
|
+
The player element’s `store.target` holds the media the player attached. It’s `null` until a media component inside the player registers, so read it when you need it rather than once at startup:
|
|
18
18
|
|
|
19
19
|
**index.ts**
|
|
20
20
|
|
|
@@ -45,7 +45,7 @@ Each feature links to the same entry on its reference page.
|
|
|
45
45
|
| `setMuted` | `(muted: boolean) => boolean` | [`volumeFeature`](./feature-volume.md#volume-action-setMuted) | Set the muted state, updating the store immediately. Unmuting at volume 0 restores volume to 0.25. Returns the new muted value. |
|
|
46
46
|
| `isFullscreen` | `boolean` | [`fullscreenFeature`](./feature-fullscreen.md#fullscreen-state-isFullscreen) | Whether fullscreen mode is currently active. |
|
|
47
47
|
| `fullscreenAvailability` | `'available' \| 'unavailable' \| 'unsupported'` | [`fullscreenFeature`](./feature-fullscreen.md#fullscreen-state-fullscreenAvailability) | Whether fullscreen can be requested on this platform. |
|
|
48
|
-
| `requestFullscreen` | `() => Promise<void>` | [`fullscreenFeature`](./feature-fullscreen.md#fullscreen-action-requestFullscreen) | Enter fullscreen mode. Tries container first, falls back to media
|
|
48
|
+
| `requestFullscreen` | `() => Promise<void>` | [`fullscreenFeature`](./feature-fullscreen.md#fullscreen-action-requestFullscreen) | Enter fullscreen mode. Tries container first, falls back to media component. |
|
|
49
49
|
| `exitFullscreen` | `() => Promise<void>` | [`fullscreenFeature`](./feature-fullscreen.md#fullscreen-action-exitFullscreen) | Exit fullscreen mode. |
|
|
50
50
|
| `userActive` | `boolean` | [`controlsFeature`](./feature-controls.md#controls-state-userActive) | Whether the user has recently interacted with the player. |
|
|
51
51
|
| `controlsVisible` | `boolean` | [`controlsFeature`](./feature-controls.md#controls-state-controlsVisible) | Whether controls should be visible. |
|
|
@@ -53,7 +53,7 @@ Each feature links to the same entry on its reference page.
|
|
|
53
53
|
| `toggleControls` | `(forceShow?: boolean) => boolean` | [`controlsFeature`](./feature-controls.md#controls-action-toggleControls) | Toggle controls visibility, or force it with `forceShow`. Returns the new `controlsVisible` value. |
|
|
54
54
|
| `buffered` | `[number, number][]` | [`bufferFeature`](./feature-buffer.md#buffer-state-buffered) | Buffered time ranges as \[start, end\] tuples. |
|
|
55
55
|
| `seekable` | `[number, number][]` | [`bufferFeature`](./feature-buffer.md#buffer-state-seekable) | Seekable time ranges as \[start, end\] tuples. |
|
|
56
|
-
| `textTrackList` | `MediaTextTrack[]` | [`textTrackFeature`](./feature-text-tracks.md#textTrack-state-textTrackList) | All text tracks available on the media
|
|
56
|
+
| `textTrackList` | `MediaTextTrack[]` | [`textTrackFeature`](./feature-text-tracks.md#textTrack-state-textTrackList) | All text tracks available on the media component. |
|
|
57
57
|
| `subtitlesShowing` | `boolean` | [`textTrackFeature`](./feature-text-tracks.md#textTrack-state-subtitlesShowing) | Whether a captions/subtitles track is showing. |
|
|
58
58
|
| `chaptersCues` | `MediaTextCue[]` | [`textTrackFeature`](./feature-text-tracks.md#textTrack-state-chaptersCues) | Cues from the first `kind="chapters"` track, with cue ends clamped to a finite media duration. |
|
|
59
59
|
| `thumbnailsTrack` | `{ cues: MediaTextCue[]; src: string \| null; crossOrigin: 'anonymous' \| 'use-credentials' \| null } \| null` | [`textTrackFeature`](./feature-text-tracks.md#textTrack-state-thumbnailsTrack) | The first thumbnails track, or `null` when there is none. |
|
|
@@ -69,7 +69,7 @@ Each feature links to the same entry on its reference page.
|
|
|
69
69
|
| `error` | `{ code: number; message: string } \| null` | [`errorFeature`](./feature-error.md#error-state-error) | The current media error, or null if none. |
|
|
70
70
|
| `dismissError` | `() => void` | [`errorFeature`](./feature-error.md#error-action-dismissError) | Dismiss the current error by clearing it. |
|
|
71
71
|
| `title` | `string` | [`metadataFeature`](./feature-metadata.md#metadata-state-title) | The resolved content title. Set it through the player, not through the store. |
|
|
72
|
-
| `poster` | `string` | [`metadataFeature`](./feature-metadata.md#metadata-state-poster) | The resolved poster URL, independent of the media
|
|
72
|
+
| `poster` | `string` | [`metadataFeature`](./feature-metadata.md#metadata-state-poster) | The resolved poster URL, independent of the media component's own `poster`. Set it through the player, not through the store. |
|
|
73
73
|
| `currentSrc` | `string` | [`sourceFeature`](./feature-source.md#source-state-currentSrc) | Current media source URL (empty string if none). |
|
|
74
74
|
| `canPlay` | `boolean` | [`sourceFeature`](./feature-source.md#source-state-canPlay) | Whether enough data is loaded to begin playback. |
|
|
75
75
|
| `videoRenditionList` | `MediaVideoRendition[]` | [`qualityFeature`](./feature-quality.md#quality-state-videoRenditionList) | Video renditions available for manual quality selection. |
|
|
@@ -14,7 +14,7 @@ import '@videojs/html/audio/skin';
|
|
|
14
14
|
Import `@videojs/html/audio/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
|
|
15
15
|
|
|
16
16
|
```html
|
|
17
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
17
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio.js"></script>
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
`audio-neutral.js` registers the neutral skin instead, and `audio-player.js` registers `<audio-player>` alone.
|
|
@@ -91,7 +91,7 @@ customElements.define('my-audio-player', PlayerElement);
|
|
|
91
91
|
|
|
92
92
|
## Media
|
|
93
93
|
|
|
94
|
-
The preset plays through a native [`<audio>`](../components/audio.md), so it registers no media
|
|
94
|
+
The preset plays through a native [`<audio>`](../components/audio.md), so it registers no media component of its own. Swap it for any compatible [media component](../../guides/media-sources.md), such as [`<hls-audio>`](../components/hls-audio.md) for HLS.
|
|
95
95
|
|
|
96
96
|
## Exports
|
|
97
97
|
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
The background video preset — a player, feature bundle, skin, and media for ambient video with no controls
|
|
4
4
|
|
|
5
|
-
`@videojs/html/background` is the preset for ambient background video with no user controls. It bundles the `<background-video-player>` element, the `backgroundFeatures` bundle it is configured with, one chrome-less skin, and the `<background-video>` media
|
|
5
|
+
`@videojs/html/background` is the preset for ambient background video with no user controls. It bundles the `<background-video-player>` element, the `backgroundFeatures` bundle it is configured with, one chrome-less skin, and the `<background-video>` media component, which autoplays, mutes, and loops. See [Presets](../../guides/presets.md) for how presets fit together and [Background video](../../guides/background-video.md) for building one.
|
|
6
6
|
|
|
7
7
|
## Import
|
|
8
8
|
|
|
@@ -15,7 +15,7 @@ import '@videojs/html/background/video';
|
|
|
15
15
|
Or load the [CDN](../../guides/cdn.md) bundle that registers all three:
|
|
16
16
|
|
|
17
17
|
```html
|
|
18
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
18
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/background.js"></script>
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
Unlike the other presets, the background preset has one bundle and no player-only bundle.
|
|
@@ -52,7 +52,7 @@ The preset root also exports a `PlayerController` bound to the background player
|
|
|
52
52
|
|
|
53
53
|
## Feature bundle
|
|
54
54
|
|
|
55
|
-
`backgroundFeatures` is the array of [features](../../guides/features.md) the player is configured with. The background media
|
|
55
|
+
`backgroundFeatures` is the array of [features](../../guides/features.md) the player is configured with. The background media component handles autoplay, muting, and looping on its own:
|
|
56
56
|
|
|
57
57
|
`backgroundFeatures` is currently empty, so the player's store holds no feature state or actions.
|
|
58
58
|
|
|
@@ -14,14 +14,14 @@ import '@videojs/html/live-audio/skin';
|
|
|
14
14
|
Import `@videojs/html/live-audio/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
|
|
15
15
|
|
|
16
16
|
```html
|
|
17
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
17
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-audio.js"></script>
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
`live-audio-neutral.js` registers the neutral skin instead, and `live-audio-player.js` registers `<live-audio-player>` alone.
|
|
21
21
|
|
|
22
22
|
## Usage
|
|
23
23
|
|
|
24
|
-
Live streams are usually HLS, so this example plays through an HLS media
|
|
24
|
+
Live streams are usually HLS, so this example plays through an HLS media component instead of the preset’s native audio.
|
|
25
25
|
|
|
26
26
|
**index.html**
|
|
27
27
|
|
|
@@ -94,7 +94,7 @@ customElements.define('my-live-audio-player', PlayerElement);
|
|
|
94
94
|
|
|
95
95
|
## Media
|
|
96
96
|
|
|
97
|
-
The preset plays through a native [`<audio>`](../components/audio.md), so it registers no media
|
|
97
|
+
The preset plays through a native [`<audio>`](../components/audio.md), so it registers no media component of its own. Most browsers need a streaming [media component](../../guides/media-sources.md) to play a live source, such as [`<hls-audio>`](../components/hls-audio.md) for HLS.
|
|
98
98
|
|
|
99
99
|
## Exports
|
|
100
100
|
|
|
@@ -14,14 +14,14 @@ import '@videojs/html/live-video/skin';
|
|
|
14
14
|
Import `@videojs/html/live-video/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
|
|
15
15
|
|
|
16
16
|
```html
|
|
17
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
17
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/live-video.js"></script>
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
`live-video-neutral.js` registers the neutral skin instead, and `live-video-player.js` registers `<live-video-player>` alone.
|
|
21
21
|
|
|
22
22
|
## Usage
|
|
23
23
|
|
|
24
|
-
Live streams are usually HLS, so this example plays through an HLS media
|
|
24
|
+
Live streams are usually HLS, so this example plays through an HLS media component instead of the preset’s native video.
|
|
25
25
|
|
|
26
26
|
**index.html**
|
|
27
27
|
|
|
@@ -99,7 +99,7 @@ customElements.define('my-live-video-player', PlayerElement);
|
|
|
99
99
|
|
|
100
100
|
## Media
|
|
101
101
|
|
|
102
|
-
The preset plays through a native [`<video>`](../components/video.md), so it registers no media
|
|
102
|
+
The preset plays through a native [`<video>`](../components/video.md), so it registers no media component of its own. Most browsers need a streaming [media component](../../guides/media-sources.md) to play a live source, such as [`<hlsjs-video>`](../components/hlsjs-video.md) for HLS.
|
|
103
103
|
|
|
104
104
|
## Exports
|
|
105
105
|
|
|
@@ -14,7 +14,7 @@ import '@videojs/html/video/skin';
|
|
|
14
14
|
Import `@videojs/html/video/neutral-skin` instead for the neutral skin. Or load one [CDN](../../guides/cdn.md) bundle that registers the player and a skin together:
|
|
15
15
|
|
|
16
16
|
```html
|
|
17
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
17
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/video.js"></script>
|
|
18
18
|
```
|
|
19
19
|
|
|
20
20
|
`video-neutral.js` registers the neutral skin instead, and `video-player.js` registers `<video-player>` alone.
|
|
@@ -98,7 +98,7 @@ customElements.define('my-video-player', PlayerElement);
|
|
|
98
98
|
|
|
99
99
|
## Media
|
|
100
100
|
|
|
101
|
-
The preset plays through a native [`<video>`](../components/video.md), so it registers no media
|
|
101
|
+
The preset plays through a native [`<video>`](../components/video.md), so it registers no media component of its own. Swap it for any compatible [media component](../../guides/media-sources.md), such as [`<hlsjs-video>`](../components/hlsjs-video.md) for HLS.
|
|
102
102
|
|
|
103
103
|
## Exports
|
|
104
104
|
|
|
@@ -14,7 +14,7 @@ Resolution is a pure string check. It doesn’t fetch the source, load an engine
|
|
|
14
14
|
|
|
15
15
|
## Usage
|
|
16
16
|
|
|
17
|
-
Look up the media
|
|
17
|
+
Look up the media component for the result and give it the same `src`:
|
|
18
18
|
|
|
19
19
|
```ts
|
|
20
20
|
import { resolveAdapterType } from '@videojs/html';
|
|
@@ -39,7 +39,7 @@ Each media module you import adds its engine to your bundle, so import the rarel
|
|
|
39
39
|
|
|
40
40
|
### Adapter types
|
|
41
41
|
|
|
42
|
-
| Adapter type | Recognized sources | Media
|
|
42
|
+
| Adapter type | Recognized sources | Media component |
|
|
43
43
|
| --- | --- | --- |
|
|
44
44
|
| `youtube` | `youtube.com`, `youtu.be`, and `youtube-nocookie.com` video and playlist URLs | `<youtube-video>` |
|
|
45
45
|
| `vimeo` | `vimeo.com` and `player.vimeo.com` URLs | `<vimeo-video>` |
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Legacy Video.js 8 player initialization error
|
|
4
4
|
|
|
5
|
-
`videojs()` was the Video.js 8
|
|
5
|
+
`videojs()` was the Video.js 8 setup call. Video.js 10 does not set up a player from an element or id; players are components you compose.
|
|
6
6
|
|
|
7
7
|
## Trigger
|
|
8
8
|
|
|
@@ -12,7 +12,7 @@ const player = videojs('my-video', { controls: true });
|
|
|
12
12
|
|
|
13
13
|
## Video.js 10 equivalent
|
|
14
14
|
|
|
15
|
-
|
|
15
|
+
Install `@videojs/html`, `import '@videojs/html/video/player'` and `import '@videojs/html/video/skin'`, and render `<video-player><video-skin><video src></video></video-skin></video-player>`.
|
|
16
16
|
|
|
17
17
|
See [Migrate from Video.js 8](../../guides/migrate-from-video-js-8.md) for the full setup.
|
|
18
18
|
|
|
@@ -12,7 +12,7 @@ videojs.options.autoplay = true;
|
|
|
12
12
|
|
|
13
13
|
## Video.js 10 equivalent
|
|
14
14
|
|
|
15
|
-
Set attributes on `<video-player>`, `<video-skin>`, and the media
|
|
15
|
+
Set attributes on `<video-player>`, `<video-skin>`, and the media component.
|
|
16
16
|
|
|
17
17
|
See [Migrate from Video.js 8](../../guides/migrate-from-video-js-8.md) for the full setup.
|
|
18
18
|
|
|
@@ -10,14 +10,14 @@ The Compat skin of the audio preset provides basic controls and plain surfaces,
|
|
|
10
10
|
import '@videojs/html/audio/compat-skin';
|
|
11
11
|
```
|
|
12
12
|
|
|
13
|
-
##
|
|
13
|
+
## Anatomy
|
|
14
14
|
|
|
15
|
-
The skin goes between the player and the media
|
|
15
|
+
The skin goes between the player and the media component. It renders its controls around the media.
|
|
16
16
|
|
|
17
17
|
```html
|
|
18
18
|
<audio-player>
|
|
19
19
|
<audio-compat-skin>
|
|
20
|
-
<audio
|
|
20
|
+
<audio></audio>
|
|
21
21
|
</audio-compat-skin>
|
|
22
22
|
</audio-player>
|
|
23
23
|
```
|
|
@@ -26,6 +26,36 @@ The skin goes between the player and the media element. It renders its controls
|
|
|
26
26
|
|
|
27
27
|
Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
|
|
28
28
|
|
|
29
|
+
## Examples
|
|
30
|
+
|
|
31
|
+
### Basic Usage
|
|
32
|
+
|
|
33
|
+
**index.html**
|
|
34
|
+
|
|
35
|
+
```html
|
|
36
|
+
<audio-player>
|
|
37
|
+
<audio-compat-skin class="html-audio-compat-skin-basic">
|
|
38
|
+
<audio src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/audio.m4a" crossorigin="anonymous"></audio>
|
|
39
|
+
</audio-compat-skin>
|
|
40
|
+
</audio-player>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
**index.css**
|
|
44
|
+
|
|
45
|
+
```css
|
|
46
|
+
.html-audio-compat-skin-basic {
|
|
47
|
+
display: block;
|
|
48
|
+
width: 100%;
|
|
49
|
+
}
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**index.ts**
|
|
53
|
+
|
|
54
|
+
```ts
|
|
55
|
+
import '@videojs/html/audio/player';
|
|
56
|
+
import '@videojs/html/audio/compat-skin';
|
|
57
|
+
```
|
|
58
|
+
|
|
29
59
|
## Own the UI
|
|
30
60
|
|
|
31
61
|
Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
|
|
@@ -13,17 +13,17 @@ import '@videojs/html/audio/neutral-skin';
|
|
|
13
13
|
The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
|
|
14
14
|
|
|
15
15
|
```html
|
|
16
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
16
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio-neutral.js"></script>
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Anatomy
|
|
20
20
|
|
|
21
|
-
The skin goes between the player and the media
|
|
21
|
+
The skin goes between the player and the media component. It renders its controls around the media.
|
|
22
22
|
|
|
23
23
|
```html
|
|
24
24
|
<audio-player>
|
|
25
25
|
<audio-neutral-skin>
|
|
26
|
-
<audio
|
|
26
|
+
<audio></audio>
|
|
27
27
|
</audio-neutral-skin>
|
|
28
28
|
</audio-player>
|
|
29
29
|
```
|
|
@@ -32,6 +32,36 @@ The skin goes between the player and the media element. It renders its controls
|
|
|
32
32
|
|
|
33
33
|
Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
|
|
34
34
|
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
### Basic Usage
|
|
38
|
+
|
|
39
|
+
**index.html**
|
|
40
|
+
|
|
41
|
+
```html
|
|
42
|
+
<audio-player>
|
|
43
|
+
<audio-neutral-skin class="html-audio-neutral-skin-basic">
|
|
44
|
+
<audio src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/audio.m4a" crossorigin="anonymous"></audio>
|
|
45
|
+
</audio-neutral-skin>
|
|
46
|
+
</audio-player>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**index.css**
|
|
50
|
+
|
|
51
|
+
```css
|
|
52
|
+
.html-audio-neutral-skin-basic {
|
|
53
|
+
display: block;
|
|
54
|
+
width: 100%;
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**index.ts**
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
import '@videojs/html/audio/player';
|
|
62
|
+
import '@videojs/html/audio/neutral-skin';
|
|
63
|
+
```
|
|
64
|
+
|
|
35
65
|
## Own the UI
|
|
36
66
|
|
|
37
67
|
Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
# audio-scaffold-skin
|
|
2
|
+
|
|
3
|
+
An audio skin with minimal styling for custom skins
|
|
4
|
+
|
|
5
|
+
The Scaffold skin of the audio preset provides functional controls with minimal styling and no transitions. It is a starting point for a custom skin, intended to be restyled before use. Its time slider supports chapter segments and thumbnail previews. See [Customize skins](../../guides/customize-skins.md) to install and edit its source.
|
|
6
|
+
|
|
7
|
+
## Import
|
|
8
|
+
|
|
9
|
+
```ts
|
|
10
|
+
import '@videojs/html/audio/scaffold-skin';
|
|
11
|
+
```
|
|
12
|
+
|
|
13
|
+
The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
|
|
14
|
+
|
|
15
|
+
```html
|
|
16
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio-scaffold.js"></script>
|
|
17
|
+
```
|
|
18
|
+
|
|
19
|
+
## Usage
|
|
20
|
+
|
|
21
|
+
The skin goes between the player and the media element. It renders its controls around the media.
|
|
22
|
+
|
|
23
|
+
```html
|
|
24
|
+
<audio-player>
|
|
25
|
+
<audio-scaffold-skin>
|
|
26
|
+
<audio src="audio.mp3"></audio>
|
|
27
|
+
</audio-scaffold-skin>
|
|
28
|
+
</audio-player>
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
## Styling
|
|
32
|
+
|
|
33
|
+
Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
|
|
34
|
+
|
|
35
|
+
## Own the UI
|
|
36
|
+
|
|
37
|
+
Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
|
|
38
|
+
|
|
39
|
+
- [Install Video.js with Shadcn](../../guides/installation-shadcn.md#choose-how-to-install): Add editable skin source and build a working React or HTML player
|
|
@@ -13,17 +13,17 @@ import '@videojs/html/audio/skin';
|
|
|
13
13
|
The import registers the skin and every UI element it composes. The [CDN](../../guides/cdn.md) player bundle registers this skin together with its player:
|
|
14
14
|
|
|
15
15
|
```html
|
|
16
|
-
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.
|
|
16
|
+
<script type="module" src="https://cdn.jsdelivr.net/npm/@videojs/cdn@10.1.0/audio.js"></script>
|
|
17
17
|
```
|
|
18
18
|
|
|
19
|
-
##
|
|
19
|
+
## Anatomy
|
|
20
20
|
|
|
21
|
-
The skin goes between the player and the media
|
|
21
|
+
The skin goes between the player and the media component. It renders its controls around the media.
|
|
22
22
|
|
|
23
23
|
```html
|
|
24
24
|
<audio-player>
|
|
25
25
|
<audio-skin>
|
|
26
|
-
<audio
|
|
26
|
+
<audio></audio>
|
|
27
27
|
</audio-skin>
|
|
28
28
|
</audio-player>
|
|
29
29
|
```
|
|
@@ -32,6 +32,36 @@ The skin goes between the player and the media element. It renders its controls
|
|
|
32
32
|
|
|
33
33
|
Packaged skins style themselves and expose a small set of public CSS custom properties. Everything else inside the skin is private and may change between releases. [Customize skins](../../guides/customize-skins.md#style-a-packaged-skin) documents the properties. For deeper changes, the Video.js registry provides the skin files.
|
|
34
34
|
|
|
35
|
+
## Examples
|
|
36
|
+
|
|
37
|
+
### Basic Usage
|
|
38
|
+
|
|
39
|
+
**index.html**
|
|
40
|
+
|
|
41
|
+
```html
|
|
42
|
+
<audio-player>
|
|
43
|
+
<audio-skin class="html-audio-skin-basic">
|
|
44
|
+
<audio src="https://stream.mux.com/BV3YZtogl89mg9VcNBhhnHm02Y34zI1nlMuMQfAbl3dM/audio.m4a" crossorigin="anonymous"></audio>
|
|
45
|
+
</audio-skin>
|
|
46
|
+
</audio-player>
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
**index.css**
|
|
50
|
+
|
|
51
|
+
```css
|
|
52
|
+
.html-audio-skin-basic {
|
|
53
|
+
display: block;
|
|
54
|
+
width: 100%;
|
|
55
|
+
}
|
|
56
|
+
```
|
|
57
|
+
|
|
58
|
+
**index.ts**
|
|
59
|
+
|
|
60
|
+
```ts
|
|
61
|
+
import '@videojs/html/audio/player';
|
|
62
|
+
import '@videojs/html/audio/skin';
|
|
63
|
+
```
|
|
64
|
+
|
|
35
65
|
## Own the UI
|
|
36
66
|
|
|
37
67
|
Packaged skins keep their controls and layout inside Video.js. When you need to add, remove, rearrange, or deeply restyle controls, use Shadcn to add the skin source to your project. Its components, layout, styles, and interactions become local files you can change.
|
|
@@ -4,7 +4,7 @@ Native audio playback that can provide media to a Video.js player
|
|
|
4
4
|
|
|
5
5
|
## Import
|
|
6
6
|
|
|
7
|
-
The media
|
|
7
|
+
The media component is the browser’s native `<audio>`. Import the audio player registration when it should provide media to Video.js:
|
|
8
8
|
|
|
9
9
|
```ts
|
|
10
10
|
import '@videojs/html/audio/player';
|