Skip to content

Releases: deniscerri/ytdlnis

1.8.7

15 Nov 17:20
4c23062

Choose a tag to compare

What's Changed

Add QuickJS runtime

Implements yt-dlp's --js-runtimes command to help with many website challenges while fetching data and downloading.
Hopefully with this many of the current issues are resolved

  • Upgrade to ffmpeg 7.1.1
  • Fix hardcoded user id in path so it supports multiple users
  • fix --cache-dir not properly formatted when used as command template
  • Add toggle to always update yt-dlp before downloading

Pushing this release quickly because js runtime is vital now. Happy downloading :)

Autogenerated changes

  • Translations update from Hosted Weblate by @weblate in #954
  • Translations update from Hosted Weblate by @weblate in #964
  • Translations update from Hosted Weblate by @weblate in #974
  • Translations update from Hosted Weblate by @weblate in #977

Full Changelog: v1.8.6...v1.8.7

1.8.6

12 Oct 13:40
1997b04

Choose a tag to compare

What's Changed

  • Fix app sometimes giving you dubbed audio format instead of original audio
  • Fix app crashing sometimes when pasting a link to terminal, also btw u can enable color highlight if disabled, wont crash the app i guess
  • Make sponsorblock preference clear by default
  • For playlists app now uses --lazy-playlist to load large playlists continuously in pages like newpipe does, its faster
  • Enable / Disable certain cookie records instead of all at once
  • Add option to write cookie description or label
  • Add GIF to video containers
  • Don't apply sponsorblock api url if sponsorblock is disabled
  • Add --no-check-certificates command when aria2 is applied
  • Add embed thumbnail toggle in adjust video chips
  • Some video chips are combined into one with hidden dialog menu when clicked to save space
  • Add badges on the adjust audio/video chips with hidden menus so u can know how many settings are active on each of them
  • Don't apply generated po tokens when cookies are disabled
  • remove data sync id fetch from normal cookies webview, only in po token webview
  • Add filename template selection in the terminal screen
  • Add toggle to not prefer DRC Audio formats
  • Add ability to long press the terminate button to show the warning dialog even if u checked to not show it
  • Add warning in the download card if selected format is too big (if format size is known, also this is an approximate as format size could change in the final file)
  • Removed prefer smallest formats preference and instead u can select if u prefer small formats or large size formats
  • fix app deleting custom cache folder when clearing temporary data
  • apply proper autonumber metadata for each item when downloading multiple items
  • add ability to remove file from mediastore when deleting file
  • fix app crashing when sometimes yt-dlp results subtitles as null instead of an array
  • Other small details and changes i forgot to note idk

Advanced changes

  • Added toggle to disable --flat-playlist when data fetching
  • Add Subs PO Token support when generating po token
  • PO Token generation now has two modes, Auth and Non Auth
  • Added toggle to use the url user gave to the app as playlist url instead of the playlist_webpage_url tag from the json dump

Autogenerated changes

New Contributors

Full Changelog: v1.8.5...v1.8.6

1.8.5

28 Jul 20:30
2c5b658

Choose a tag to compare

What's Changed

Bulk Edit items in the Multiple Download Card #817

Now you can select a subset of the items in the multiple download card and apply changes only to them.

  • Select items between 2 items
  • Write down item indexes to select
  • remove items
  • Invert selected
  • All options in this screen that previously could apply to all items are implemented for this function.

Also if you select a sublist and try to update formats and decide to update in the background, the app will remember the other items you didnt select when you return back to it but only the selected items will have their formats updated of course.

Other changes:

  • App now can show FFmpeg output in the download card to avoid confusion on cases where it might appear as if the download is stuck but its running a ffmpeg subprocess
  • App can now downgrade to stable when in beta. You will get a popup to update to the prev stable release if you installed from github and had use beta disabled
  • Fixed app crashing if yt-dlp sources in preferences is badly written
  • Fixed app having multiple columns for format items instead of just one #800
  • Clear results when changing home recommendation source to avoid confusion
  • Fix app passing --cache-dir twice in the command
  • Remove buffer time in cut player, could help it load faster
  • Fix app not consistently preferring codec in a format
  • Prevent app from showing 'null' in author field if its not available #814
  • Change text to be Sentence Case #793
  • Add feature to convert audio bitrate up to 320kbps. * Even though it doesnt really increase quality many people requested it so here you go
  • Added feature to show available subtitles a video has when selecting subtitle languages
  • Made default subtitle format default instead of srt
  • Fix app not properly putting data fetching extra commands in some cases
  • Added "system" option in language selection so it follows the system language always
  • Fixed app crashing when putting unreal numbers in cut section
  • Hid download all and clipboard chip when selecting items to avoid confusion
  • Added separate icons for success, running and failed downloads
  • Used ^.*$ for replace-in-metadata
  • Groupped finished, running, errored notifications
  • Added subs in po token creator screen
  • Fix download failing when title has forbidden characters #847
  • Fix titles doubling up #835
  • Add option to reverse items in the multiple download card
  • Made app not restart when restoring backup
  • Fix app not removing items that you redownload from cancelled/erroret etc
  • Other small stuff i forgor

For advanced users:

For anyone who is using intent arguments in YTDLnis for automation, the COMMAND argument has been removed. This is due to a found security vulnerability by SonarPaul where user information and app integrity could be compromised. Read the pdf for more information in the YTDLnis Updates Telegram Channel.

If you were using that argument for extra commands with audio/video downloads, you could make a command template about it and use it as extra command and also add a url regex if you want.

Autogenerated Changed

New Contributors

Full Changelog: v1.8.4...v1.8.5

1.8.4.2-beta

28 Jun 20:02
5f43da1

Choose a tag to compare

1.8.4.2-beta Pre-release
Pre-release

What's Changed

  • Add feature to convert audio bitrate up to 320kbps. * Even though it doesnt really increase quality many people requested it so here you go
  • Added feature to show available subtitles a video has when selecting subtitle languages
  • Made default subtitle format default instead of srt
  • Fix app not properly putting data fetching extra commands in some cases
  • Added "system" option in language selection so it follows the system language always
  • Fixed app crashing when putting unreal numbers in cut section
  • Hid download all and clipboard chip when selecting items to avoid confusion
  • Added separate icons for success, running and failed downloads
  • Used ^.*$ for replace-in-metadata
  • Groupped finished, running, errored notifications
  • Added subs in po token creator screen
  • Fix download failing when title has forbidden characters #847
  • Fix titles doubling up #835

Autogenerated changes

  • Translations update from Hosted Weblate by @weblate in #831
  • Translations update from Hosted Weblate by @weblate in #834
  • Translations update from Hosted Weblate by @weblate in #836
  • Translations update from Hosted Weblate by @weblate in #839
  • Translations update from Hosted Weblate by @weblate in #841
  • Translations update from Hosted Weblate by @weblate in #842
  • Translations update from Hosted Weblate by @weblate in #843
  • Translations update from Hosted Weblate by @weblate in #845

Full Changelog: v1.8.4.1-beta...v1.8.4.2-beta

1.8.4.1-beta

10 Jun 18:33
dce0f84

Choose a tag to compare

1.8.4.1-beta Pre-release
Pre-release

What's Changed

Bulk Edit items in the Multiple Download Card #817

Now you can select a subset of the items in the multiple download card and apply changes only to them.

  • Select items between 2 items
  • Write down item indexes to select
  • remove items
  • Invert selected
  • All options in this screen that previously could apply to all items are implemented for this function.

Also if you select a sublist and try to update formats and decide to update in the background, the app will remember the other items you didnt select when you return back to it but only the selected items will have their formats updated of course.

Other changes:

  • App now can show FFmpeg output in the download card to avoid confusion on cases where it might appear as if the download is stuck but its running a ffmpeg subprocess
  • App can now downgrade to stable when in beta. You will get a popup to update to the prev stable release if you installed from github and had use beta disabled
  • Fixed app crashing if yt-dlp sources in preferences is badly written
  • Fixed app having multiple columns for format items instead of just one #800
  • Clear results when changing home recommendation source to avoid confusion
  • Fix app passing --cache-dir twice in the command
  • Remove buffer time in cut player, could help it load faster
  • Fix app not consistently preferring codec in a format
  • Prevent app from showing 'null' in author field if its not available #814
  • Change text to be Sentence Case #793

For advanced users:

For anyone who is using intent arguments in YTDLnis for automation, the COMMAND argument has been removed. This is due to a found security vulnerability by SonarPaul where user information and app integrity could be compromised. Read the pdf for more information in the YTDLnis Updates Telegram Channel.

If you were using that argument for extra commands with audio/video downloads, you could make a command template about it and use it as extra command and also add a url regex if you want.

PS
This version is pretty stable, but just to be safe im pushing it as a beta first, maybe someone finds a bug. Thanks everyone

Autogenerated Changes

  • Translations update from Hosted Weblate by @weblate in #766
  • Translations update from Hosted Weblate by @weblate in #773
  • Translations update from Hosted Weblate by @weblate in #775
  • Disable build on PRs by @madmini in #804
  • Translations update from Hosted Weblate by @weblate in #802
  • Disable cut for live videos by @madmini in #803
  • Translations update from Hosted Weblate by @weblate in #805
  • Translations update from Hosted Weblate by @weblate in #806
  • style: convert all strings to sentence case per M3 guidelines by @DarkWolf2244 in #808
  • Translations update from Hosted Weblate by @weblate in #811
  • Translations update from Hosted Weblate by @weblate in #812
  • Translations update from Hosted Weblate by @weblate in #815
  • Translations update from Hosted Weblate by @weblate in #819
  • Translations update from Hosted Weblate by @weblate in #820
  • Translations update from Hosted Weblate by @weblate in #822
  • Update CONTRIBUTING and README by @GerbillLife in #828
  • Translations update from Hosted Weblate by @weblate in #830

New Contributors

Full Changelog: v1.8.4...v1.8.4.1

1.8.4

06 Apr 15:54
f43c82f

Choose a tag to compare

What's Changed

Added ability to set custom url for home recommendations

You can technically set anything like this and yt-dlp will process it just as how it can if you search it in the home screen.

Formats list screen is reworked. Now it will open instantly and wont be prone to crashes and lag

  • Fixed app not continuously starting queued items
  • Fixed app not properly cancelling all downloads when cancel all is pressed
  • Fixed app not properly showing yt-dlp version sometimes in updating settings
  • Fixed app crashing sometimes when restoring settings with po token config
  • Added get data sync id in the po token webview screen
  • Added ability to set a custom youtube url when generating po tokens
  • Fixed container in observe sources item not saving if its chosen as "Default"
  • Prevented --no-cache-dir even though user set --cache-dir in extra commands
  • Fixed bottom app bar in multiple download card not showing properly when using old navigation bar
  • Other small visual bug fixes

Autogenerated Changes

  • Translations update from Hosted Weblate by @weblate in #763
  • Translations update from Hosted Weblate by @weblate in #765

Full Changelog: v1.8.3...v1.8.4

1.8.3

16 Mar 16:23
78fd242

Choose a tag to compare

What's Changed

Automatically generate WEB PO Tokens & Visitor Data inside the app

Since youtube is enforcing a policy that sessions need po tokens, you might need them to appear more legitimate and not get errors like 403, or even unlock formats that need po tokens.

With some references from LibreTube and OuterTune, the app now has a po token generator using it's WebView.
These records are stored in the apps preferences. In advanced settings now there is a toggle to enable the use of the tokens in yt-dlp.

Some formats need PO Token to show up like HIGH AUDIO, you will need to log in with cookies and then generate the tokens. There is also the option to use visitor data but you need to disable cookies.
yt-dlp doesn't recommend using it but the option is there if u need it.

The app will apply these settings as youtube extractor arguments
youtube:player_client=web;po_token=web.gvs+GVS_TOKEN,web.player+PLAYER_TOKEN;player-skip=webpage,configs;visitor_data=VISITOR_DATA
If you have po tokens set up with web client with po token, there might be duplication happening, so check that out.
Also since these tokens work for any web client, there is also an option to select which web clients to include as extractor arguments.

Other stuff

  • Cut Section has been reworked,thanks to madmini. Now you can cut down to milliseconds.
  • Added safeBrowsingEnabled in WebView for generating cookies for devices of API 26 and above. Thought to generate incognito cookies that last longer
  • Added feature to reset all settings belonging to a certain preference page
  • Added option to turn off the code color highlighter
  • Fixed app not applying prefer small sized formats. It should've been last in format sorting not first.
  • Added ability to enable automatic backup when the app checks for new update and finds one
  • Added write-subs and write-auto-subs and --compat-options no-keep-subs when the user embeds subs but doesnt want to save them so he can get more subtitles to embed
  • Turned the changelog dialog to a separate screen for better visibility
  • Added --external-downloader-args aria2c:"--check-certificate=false" to fix aria2 not working
  • Added bitrate info for audio formats card in the download card
  • Some small bug fix here and there

Autogenerated Changes

New Contributors

Full Changelog: v1.8.2.2...v1.8.3

1.8.2.2

23 Feb 20:30
2cd4142

Choose a tag to compare

What's Changed

  • Hot fixes with format sorting in GUI, thanks mosestyle
  • Got those leftover translations

This shouldve been 1.8.2.1 in the first place lol

Autogenerated Changes

  • Translations update from Hosted Weblate by @weblate in #725

Full Changelog: v1.8.2.1...v1.8.2.2

1.8.2.1

23 Feb 17:45
56edc8a

Choose a tag to compare

What's Changed

  • Fixed downloads crashing on items with titles that have quotes in them
  • Removed custom format sorting by default to avoid common issues with format selection, and moved the preferences to advanced settings. Most of users don't need to customize sorting formats anyway :)
  • Fixed app sometimes building -f as bv/bv+ba/b instead of bv+ba/bv/b
  • Update WorkManager library, hopefully fixing #720
  • Looks like adding preferred language in -S is useless so i added it as part of ba[lang^=...]
  • Other small things

Note

  • The alternate downloader Aria2c is broken, so turn it off for the time being until something is found out how to fix it/

Hopefully this build is stable, until i manage to find time in the future 🗣️

Autogenerated Changes

  • Translations update from Hosted Weblate by @weblate in #717
  • Translations update from Hosted Weblate by @weblate in #722
  • Translations update from Hosted Weblate by @weblate in #724

Full Changelog: v1.8.2...v1.8.2.1

1.8.2

16 Feb 19:28
1a4c515

Choose a tag to compare

Note

This version has database updates. It's very unlikely you will face issues but make sure to make a backup of the app's data before updating to this version.

What's Changed

  • Added File Size in Format Importance Order Preference
  • Made Format Importance Order applicable to format sorting in the command building process
  • Fixed The app doesn't update yt-dlp past to 2024.11.18 #659
  • Fixed Starting redownload of thousands of songs at once crashed the app. #661
  • Fixed app not deselecting when selecting all in download history
  • Added ability to customize the filename template when cutting an item.
  • Since WAV cant embed thumbnails and crashes the download, made it disabled when you select that container
  • Fixed app freezing when selecting "Also Download as Audio"
  • Added a progressbar to the download log when the download is running
  • Added more descriptions to the Observe Sources configuration card to clear up confusion
  • Added long press to audio,video buttons in the result item details card
  • Added a custom cache directory preference
  • Removed the -P command in command/terminal downloads if the user has written it himself
  • Added preference to skip checking certificates
  • #680 removed the hardcoded trimming of author and title
  • Added ability to quickly fetch cookies after a failed data fetch in the home screen, through the error dialog and then try again to fetch data
  • Fixed app sometimes putting empty extractor arguments for youtube downloads
  • Added livestream settings for video downloads, Wait for Video and ability to download the live from the start. Also set up how often to retry the download if the live is not available
  • Added option to prefer container instead of codec for audio downloads. this will ignore codec preference in format sorting and only apply container preference
  • made add cookies dialog a bottom sheet to make the cookie text more visible
  • added ability to set playlist name as album name when enabling "Use Playlist name as Album Metadata" in the settings
  • added ability to backup logs as .txt file
  • organized backups to their respective folders inside the YTDLnis folder. This includes logs, settings backups, and cookie exports

Po Tokens & Player Clients

Now you can set up configurations for many youtube player clients and their respective GVS & Player PO Tokens.
Also if you want certain PO Tokens to apply only for a certain youtube url, like youtube music you can do that with URL Regex.
These configurations will always be used, both in data fetching and in the download process

Preferred Command Templates & URL Matching

Now command templates are more powerful than ever. The preferred command template is now reset but now you can set limitless preferred command templates.
Along with that, you can now set URL Matching with a regex. You can set a preferred template for youtube downloads and one for reddit etc etc.
The same logic applies to command templates that are set as extra commands and as data fetching extra commands.

If you have multiple preferred command templates that dont have url regex setup, then one of them will be selected for command downloads.
If you have multiple command templates as extra commands without url regex, they will be added to any download.

And other small bug fixes i forgor to note. Sorry for taking so long :P

Autogenerated Changes

New Contributors

Full Changelog: v1.8.1.2...v1.8.2