All notable changes to this package will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- A bug when using a
CancellationToken
- Loading thumbnails into textures
- A proxy video setting, and the ability to try with proxying, if the video errors on the first try.
- A PlayFromScript sample
- 360 sample playing the video with the equi-rectengular projection format. No audio.
- 360 sample playing the video with the EAC projection format. No audio.
- The package has been rewritten. Please check the package samples for the API / usage
- It now relies on Invidious to fetch the video stream
- It's possible to use an Invidious public instance (for demo/prototyping purposes) or setup a custom instance
- WebGL support
- All of the package, it was rewritten
- Minimum Unity version is now 2021.3
- 360 video. This was not working properly due to the video projection, and because the 360 video formats do not have the video and audio in the same file
- Playlist support. This will be reimplemented in a later version
- Invidious example
- Process.Start not supported on IL2CPP
- Json parsing error when yt-dlp logs a warning on a successful request
- error message missing from exception
- Fixed 360 rending by specifying the
--extractor-args "youtube:player-client=web"
option
- yt-dlp is now the default extractor, since youtube-dl did not receive a release for a long time
- Added exception for when yt-dlp is missing locally
- BREAKING CHANGE: Changed type
YoutubeVideoFormat.Fps
fromint
tofloat
.- This is needed since youtube-dl started returning decimal numbers for frame rate, causing deserialization errors.
- Added support for yt-dlp fork - see https://github.com/yt-dlp/yt-dlp
- yt-dlp is now the default tool to use in YoutubePlayer.cs, as it is able to bypass the download speed limit when using a local instance of the tool.
- youtube-dl-server also supports yt-dlp, but might still hit download speed limits, as it has a different IP address than the machine running Unity.
- Updated Json.NET - Newtonsoft dependency
- Example scene to load a playlist
- YoutubeDl will now try to use a local instance of youtube-dl instead of pinging a server.
- This is turned on by default. Use
YoutubeDl.UseLocalInstance
to change the behaviour - Playing the video will automatically download youtube-dl and check for updates.
- This feature is only available for Desktop platforms.
- This is turned on by default. Use
- Changed YoutubeDl Api to avoid ambiguous calls
- A CHANGELOG.md, README.md and LICENSE files.
- Schema to allow downloading only needed fields
- For playing a video, only the
url
field is requested. - For downloading a video, only
title
,_filename
,ext
andurl
fields are requeted.
- For playing a video, only the
- Changed Unity minimum version to 2019.4
JsonSerializationException
on IL2CPP by adding a default .ctor to model files