Hey there everyone! Today is the release of what I consider one of the biggest FreeTube releases to date. With this release there are some big changes and I've knocked out a lot of highly requested features and fixes so let's go through all of them.

1080p+ and Live Video Support

Starting off with the big one. FreeTube now supports watching videos in all qualities! Everything from 144p to 4k is supported. Live streams are also supported so there won't be any more defaulting to the YouTube player when watching live streams. Any video that has 60fps or webm support should automatically pick those formats.

I want to give a huge thanks to @omarroth for helping out with this. The Invidious API was updated a while back to support generating the DASH files required to make this happen. This wouldn't have happened nearly as quickly without his help.

New Video Player

In order to support the new qualities, a new player was needed in order to play them. I have chosen MediaElement.js as the new player for it's features and modern look. The player has been customized with an original theme for FreeTube as well as features not originally supported such as storyboards and quality selection for DASH formats. I hope to have these features merged upstream in the near future so that others may take advantage of it.

Since we are now using a proper player with proper controls for things, we can clean up that row of buttons below the player. Only things that are not supported in the new player are still underneath such as the mini-player functionality, adding to favorites, and the sharing of links.

Because this is a heavier player and because of an issue that I'll mention later, the player from the last release has been re-branded as the Legacy Player and can still be used instead. The Legacy Player will still have the same limitations from the last release, but it's a good fallback in case something goes wrong. Audio only streams are also limited to the legacy player so it will still have some use to some.

The mini-player has also been updated to use the new video player. The mini-player has been cleaned up with reduced margins and more controls. You can now see the same player controls you would see on the main player by hitting Alt on your keyboard. This will also allow you to switch between the DASH player and the legacy player.

Saved Watch Progress and Continue From Where You Left Off

When you leave a video, FreeTube will now save where you were in the video and you can continue where you left off when you watch the video again. This will be saved regardless if you're watching through FreeTube or through the mini-player. History must be enabled in order for this feature to work.

New Settings

There are a few new settings now, let's go through them very quickly.

Distraction Free Mode

Distraction Free Mode is a toggle that allows you to hide certain elements from FreeTube, such as Trending, Most Popular, video descriptions, and video recommendations. I'm looking for feedback on if you would like more or fewer things to be hidden in this mode.

Default Landing Page

You can now pick what screen you'd like to start on when you open FreeTube.

Default Video Player

You can pick if you'd like to default to using the DASH player or the Legacy player when viewing a video. You can also default to the embedded YouTube player, however some features may not work or be supported.

Default Volume

You can now set the default volume when you initially startup FreeTube. When you change the volume through the player, the new volume setting will persist as long as the app stays open.

Fetch Video URL Toggle

Labeled as “Grab Videos Locally” in the app. This toggle determines if you'd like the video URL to be grabbed through Invidious or fetched locally using your machine's IP. This toggle is only supported with the legacy player but it's biggest use is helping with geo-restricted videos. Try switching this on/off if you're having issues. If you don't encounter issues with the DASH player, turning this off can slightly reduce loading times when loading a video.

Debug Mode

In the past, FreeTube printed out a lot of data to the console regardless if you wanted it or not. This can potentially slow down FreeTube if it isn't used, so this toggle disables the logging.

Other Changes and Fixes

There are also a lot of other smaller changes and fixes that were made.

FreeTube now remembers the last size and position of the window when it is closed. It will go back to this size and position on startup.

The Search Filter box has been redesigned to have a look more similar to YouTube

The Search bar has been slightly redesigned to have a better look to it.

The Subscription Refresh button has been moved to better signify what it's use is.

FreeTube now prevents clearnet leaks better when using a Tor Proxy

FreeTube now prevents Invidious instance leaks better when setting a custom instance.

The forward slash at the end of the custom Invidious instance is automatically removed to prevent issues with calling the API.

Testing Proxy settings have been changed to make a call to https://ipinfo.io/json as the old URL has blocked automatic calls through Tor.

Exporting to NewPipe and OPML formats should consistently work better.

Copying/Opening Invidious links now take into account your custom instance.

The latest blog posts have been added to the about view.

Electron has been updated to 5.0.3, fixing some dependancy issues with newer Linux systems.

Some other very small things that I probably forgot about.

Known Issues

Right now there is a problem where some videos will revert to the legacy player either randomly or when a video is replayed or looped. We are looking into why this happens. When fixed, there shouldn't be a need for a FreeTube update.

In Other News

We have a SubReddit now! Come look around at /r/FreeTube!

You can now follow me on Mastodon! I'm over at @freetube@mastodon.technology.

Feedback

As you can see, there's a lot of changes with this release. There's likely to be some small issues that I didn't catch, so please let me know through our available channels. Either send me an email, make an issue on GitHub, or let me know on our Matrix Server. Your feedback and suggestions are greatly appreciated.

You can download the new release over at our website.

NOTE: Packages are not signed and your virus protection may take notice. Please check out the F.A.Q. for more info.