Replies: 5 comments
-
Really happy with this update and can't wait for skins either XD looking forward to it for sure |
Beta Was this translation helpful? Give feedback.
-
huge work <3 |
Beta Was this translation helpful? Give feedback.
-
Thank you very much for the awesome work! |
Beta Was this translation helpful? Give feedback.
-
love your work guys |
Beta Was this translation helpful? Give feedback.
-
awesome and huge work guys |
Beta Was this translation helpful? Give feedback.
-
👋
This is part two of a two part release for
0.4
(part one can be found here). I can't stress enough how exciting this release is because it marks all core player features as complete! We also have some spicy roadmap updates in the next steps section below that you should definitely check out. Let's dive in!Breaking Changes
None 🥳
Media Captions Library (NEW)
Everything checked off really quickly in this release except text tracks and captions. A large bulk of the two weeks was spent just on it! Turns out it's pretty complicated especially if we want to support additional formats and get accessibility right. We released an entirely new library just to make it happen. Our modern captions parsing and rendering library brings you VTT (including regions and karaoke-style captions), SRT, and ASS support. It also enables fine-level customization of cues, timed nodes (past/future), and more!
👉 Check out the new library we built to power Vidstack Player captions. We also have a section in the repo that lists out why native captions are not good enough.
Picture-in-Picture (NEW)
Picture-in-Picture (PIP) support enables you to create a native floating video player so users can continue to watch content while browsing.
canPictureInPicture
andpictureInPicture
remote.togglePictureInPicture()
picture-in-picture-change
andpicture-in-picture-error
enterPictureInPicture()
andexitPictureInPicture()
data-pip
anddata-can-pip
👉 See the new picture-in-picture guide.
Picture-in-Picture Button (NEW)
Following PIP support we've added a new
<media-pip-button>
to make it easy to toggle the current PIP state.👉 See the new
<media-pip-button>
docs.Playback Rate (NEW)
The player now supports a
playbackRate
property for dynamically adjusting playback speed:HTML
React
Video Quality (NEW)
Video qualities (e.g.,
1080p
,720p
) are now available on the player via thequalities
property which is a live list. Available when using the HLS provider. You can track which qualities are currently present, select a specific quality, or let the streaming engine auto-select.qualities
andquality
remote.changeQuality(1)
qualities-change
andquality-change
👉 See the new video quality guide.
Audio Tracks (NEW)
Audio tracks are now available on the player via the
audioTracks
property which is a live list. Available when using the HLS provider and in iOS Safari when loading HLS streams.audioTracks
andaudioTrack
remote.changeAudioTrack(1)
audio-tracks-change
andaudio-track-change
👉 See the new audio tracks guide.
Text Tracks (NEW)
Text tracks are now available on the player via the
textTracks
property which is a live list. This includes our brand new captions parsing engine and support for VTT, SRT, and ASS. We also provide a direct integration for libass out of the box for advanced ASS feature support - fallbacks to our parser and native captions on iOS Safari when custom captions are not visible in native fullscreen.textTracks
andtextTrack
remote.changeTextTrack(1, 'showing')
text-tracks-change
andtext-track-change
👉 See the new text tracks guide.
Captions (NEW)
The new
<media-captions>
component provides out of the box custom captions using our new rendering engine. Supports VTT, SRT, and ASS rendering (not all ASS features currently). It also supports VTT regions and roll-up captions!👉 See the new
<media-captions>
component.Caption Button (NEW)
The new
<media-caption-button>
toggles the active captions/subtitles visibility when pressed.👉 See the new
<media-caption-button>
component.Source/Track Elements (NEW)
We now support
<source>
and<track>
elements to make it easier for Web Component users to pass in multiple sources and tracks. You can pass them into the<media-outlet>
like so:You can also dynamically update the list and the player will update accordingly. Including swapping and loading a new provider and updating text tracks!
Fixes
min-width
andmin-height
on buttons towidth
andheight
to make it easier to style. This would cause issues when changing the size with Tailwind as min setting would win.onHlsManifestParsed
) were not being called.Next Steps
We've made some roadmap adjustments and the next release
0.5
is bringing you...Ye, skins! We'll be adding our first skin called the Community Skin that has received awesome feedback and love. It's been a missing piece for most users and we can't wait to deliver!
If you're excited about the Community Skin or just video in general then come join us on Discord! We're always having small chats about video stuff or checking out the cool anime stuff some of the community has started working on. We'd love for you to join and share your experiences. Click the link and say hi!
Until next time friends 🍎
Beta Was this translation helpful? Give feedback.
All reactions