diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index ffe31b8..3ba067d 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -1,31 +1,41 @@ -# TypeType 1.1.0 +# TypeType 1.2.0 -TypeType 1.1.0 adds native YouTube livestream playback over SABR, an -embeddable player, and several library and availability improvements. +TypeType 1.2.0 adds the server-side playback contract required by TypeType +Android, faster SABR seeking, progressive subscription loading, and several +playback improvements across mobile, VOD, and livestreams. ## What changed -- Play YouTube livestreams through stateful SABR with live-edge following, - DVR seeking, and playback recovery. -- Add an embed route with start-time parameters, guest access control, and a - manual retry action. -- Add Watch Later directly to video menus. -- Improve imported playlist loading, ordering, duplicate handling, and deleted - video filtering. -- Show scheduled, members-only, and unavailable states on video cards, and - keep active livestreams visible in the subscription feed. -- Recover automatically when YouTube expires the player context used for SABR - admission. -- Allow the Server and Token services to share the optional - `YOUTUBE_OUTBOUND_PROXY_URL` setting. - -No database migration is required. The new proxy setting is optional and -existing configurations remain valid. +- Add a dedicated Android-only YouTube VOD API with complete standard DASH + manifests, stable playback generations, and same-origin media resources. +- Expose manual and auto-generated subtitles before Android prepares playback, + with stable track identities and server-delivered UTF-8 WebVTT. +- Reuse existing SABR sessions for same-format seeks, reducing extraction work + and making normal seeks and SponsorBlock skips faster. +- Improve YouTube livestream playback around the live edge, missing segment + durations, quality changes, codec changes, and replacement sessions. +- Load subscription feeds progressively so the first videos can appear without + waiting for the complete feed. +- Improve mobile MSE playback, ManagedMediaSource support, Picture-in-Picture, + and buffered seek handling. +- Preserve saved playback progress and prevent temporary media transitions from + overwriting the user's volume state. +- Add playback speeds up to 4x. +- Improve recovery when YouTube rejects or expires an extraction session. + +Android playback currently supports completed YouTube VODs. Active livestream +playback is not yet advertised through the Android contract. + +No database migration or environment change is required. ## Thanks -Thanks to @tam1m for contributing the embed player, and to everyone who -reported and tested the changes in this release. +Thanks to @hugoghx for the detailed livestream reports, @BuggyPasta for the +Safari and iOS report, and @Toastienergy for reporting the playback speed and +volume persistence issue. + +Thanks also to @InfinityLoop1308 and the PipePipe contributors for the extractor +work and protocol research that TypeType continues to build on. ## Updating diff --git a/TypeType-Frontend b/TypeType-Frontend index 0dfd90a..30858e7 160000 --- a/TypeType-Frontend +++ b/TypeType-Frontend @@ -1 +1 @@ -Subproject commit 0dfd90a5c8acb60b5c0a6d13409af314117d8bfd +Subproject commit 30858e7855a75629f5e5f828ee00b49497d902d6 diff --git a/TypeType-Player b/TypeType-Player index 7a0b1c2..ade30e9 160000 --- a/TypeType-Player +++ b/TypeType-Player @@ -1 +1 @@ -Subproject commit 7a0b1c23fb7790682e233f1ff0295cbd6af2cad8 +Subproject commit ade30e913ee75a7506b54c843e223acec8516ea2 diff --git a/TypeType-Server b/TypeType-Server index 7583b55..d9a2ad2 160000 --- a/TypeType-Server +++ b/TypeType-Server @@ -1 +1 @@ -Subproject commit 7583b5562433340d94e3930e76134bb15658f836 +Subproject commit d9a2ad217a0e50dba9ceaac7839d094e832242ed