This release brings you working imports from your YouTube subscriptions export, an “always go into full screen” toggle when you play a video via the main player, a new Invidious instance, and so much more that you basically have to read on.

New

  • Rejoice! @talanc fixed an issue plaguing users since late July: Google changed the way it exports subscriptions from YouTube, rendering the previous import into NewPipe non-functional. You can now import your downloaded CSV file, or even the ZIP file that contains that CSV, directly into NewPipe!

  • The behaviour of long press on the player queue was streamlined by @ktprograms: It now also displays the popup menu from the main player.

  • A cool new setting was added by @Stypox: You can now automatically have videos playing in full screen if you use the main player.

  • @Stypox also split search suggestions into two categories: local and remote. Now you have the option to enable or disable them independently of each other.

  • @magicbrothers added a new Invidious instance, Tubus, meant for educational videos for children.

  • @ktprograms finished the ongoing work of adding the “Show channel details” option where it was still missing, that is, in local playlists, feed items, and history items.

Improved

  • @sauravrao637 modified the app colours to be a bit darker when the dark theme is selected in the app, which looks loads better to us! He further added a darker splash screen variant when the OS’s theme is set to dark. We hope you like the new look too!

  • @Stypox replaced the outdated Android-Universal-Image-Loader library (which has not had any new release in the last 6 years) with the more stable and updated Picasso, a library to download and cache images on Android (think all the thumbnails you see in the app). This fixes a nasty issue where the wrong notification thumbnail size could crash the whole System UI or even forcibly reboot the device! It also makes loading cached images instantaneous, and loading non-cached images smoother.

  • @sherlockbeard changed the “video not available” image from a static PNG to a vector XML image, allowing it to scale properly for screens of all sizes.

  • @Stypox added the mime-type field to all calls to the SAF file picker, which causes files with the incorrect file format to be greyed out and become non-selectable. This will ensure the user can only choose a ZIP file when importing their database, for example. This should be a great quality-of-life improvement for many users!

Fixed

  • @litetex, together with @Stypox, improved the comments parsing for timestamps, which could have resulted in a crash if it happened in the wrong place at the wrong time.

  • @Aga-C added line wrapping to the settings texts, so they don’t get truncated anymore.

  • @acti0 fixed a regression from a past release where the name of the video wasn’t being shared when sharing the video URL.

  • @litetex fixed a bug where you had to tap the Replay button twice for it to actually work.

  • While @litetex fixed the Replay button, they also fixed the direction buttons on D-Pads for Android TV users: the seekbar now jumps only 10 seconds, instead of several minutes.

  • @litetex, being on a roll, reworked the error panel shown when an error happens. This results in a clearer error display.

  • @Redirion implemented proper closure of audio streams when playback is stopped. This fixed a longstanding bug where NewPipe would create more and more audio sessions but use only one. This messed with equaliser apps.

  • @TobiGr added proper error handling which might occur when trying to play a video in popup mode or get a search suggestion.

  • @TobiGr also took care of a small UI bug: when one played something in the minimized player and changed the visibility of the description tab in the meantime, the visibility of the comments tab was changed instead. The app isn’t confused anymore, we cannot say the same about the dev…

Translation

  • @Stypox switched to using the custom cancel string everywhere, which is translated to more languages than the default android cancel string.

  • They jumped onto that plane and replaced a couple more strings to better translated ones: “ok”, “yes”, “no”, and “cancel”. They also removed “add”, and renamed “finish” to “ok”, because it clearly means “ok”, not “finish”!

  • @Aga-C added plural forms for download-related strings.

  • @CBSkarmory improved some wording in the issue template; thanks!

Nerd Talk

  • @TobiGr updated the hardcoded SoundCloud client ID.

  • @FireMasterK added support for extracting the channel avatar on YouTube and PeerTube.

  • @FireMasterK also added the uploaderVerified info to the StreamInfo class.

  • @litetex switched GitHub Actions to using the Eclipse Temurin Java distribution, as AdoptOpenJDK is getting deprecated.

  • @Redirion replaced NewPipe’s custom buffer values with ExoPlayer’s default ones.

  • @Isira-Seneviratne changed PackageInfo to its backwards-compatible version, PackageInfoCompat to fetch the app signatures.

  • @litetex also updated the version of Kotlin used everywhere, and fixed some build problems.

  • They also introduced a cache setting in the CI configuration which lets it run faster.

  • @XiangRongLin added a Gradle parameter to prevent KtLint, the Kotlin linter+formatter, from being run twice in the GitHub Actions CI.

  • dependabot updates:

    • Bump gson from 2.8.7 to 2.8.8
    • Bump spotbugs-annotations from 4.4.0 to 4.4.1

Where to get this brand-new version

NewPipe notifies you about new versions. You can download them when you press the notification, which will take you to the GitHub Releases page.

If you use the F-Droid app, it, too, notifies you about updates for NewPipe. Please keep in mind that it can take F-Droid a while to update their repository. If you have problems installing the update, you may need to uninstall NewPipe and then install it afresh. (Make sure to backup data by exporting your database from the Settings > Content menu.)

If you already installed NewPipe from F-Droid’s repository, to get this version of NewPipe you can do one of the following:

Note: If you installed NewPipe from GitHub Releases you will not have to uninstall NewPipe to switch to our custom repo. Just let it update your current version. Make sure you back up your data as mentioned in the warning at the top of the FAQ page!

Now that you’ve (hopefully) updated, please let us know what your experience of the latest release is, especially bugs in need of fixing. As usual, you can reach out to us via IRC (#newpipe on Libera.Chat), open issues on GitHub or, ideally, use our built-in crash reporter to send us machine-readable issue reports. You can even send in fixes yourself.

If you have any other questions, feel free to post them in the comments here and someone will reply to you. Also, thanks for reading the blog post till the end! We put quite some time into writing them.