The original purpose of Zorn was to be built for the YouTube frontend called MinPluto, now renamed to MinPluto Frontend and deprecated. This is why functions like separated audio source and Milieu were important to add.
When the frontend project was deprecated, for a moment Zorn no longer had a purpose. So, it was re-built to be an all-in-one video player for the Astro Web Framework moving forward. Since then, there has been a lot of changes and additions to the Zorn project.
MinPluto has been converted into a sub-organziation of SudoVanilla to focus on media technologies like this.
All sources used in Zorn player, in this demo, are pulled directly from the SudoVanilla Ocean. The upload speed on SudoVanilla’s internet connection is 10/Mpbs, which is slow for video and audio streaming. So while viewing the demo, expect buffering and some videos to lag a bit.
SudoVanilla has a strict policy about only pulling sources from it’s own servers only, which is why the demo is setup like this.
Milieu
The Milieu function, also known as ambient mode on other players, uses it’s script directly from Poke’s source code.
HLS
HLS, HTTP Live Streaming, makes it possible for Zorn to support live streaming such as using .m3u8 sources. The script is minified in Zorn’s source code. You can view here.
To apply HLS to Zorn, another script is used from the same developers. You can view that here.
Video and Audio Sync
Zorn supports a function to have a separated video and audio source, this was built to allow for 1080p/4K/8K support in MinPluto as it was originally built as a YouTube frontend.
To pull this off, SudoVanilla went through a few scripts that were somewhat usable, but not the best. Eventfully, I landed on the script by Michancio on their Gist. You can view SudoVanilla’s Gist here. It is modified in Zorn’s source code.
Icons