Releases: deniscerri/ytdlnis
1.8.0
Please Read
This version has the updated python version 3.11. Due to yt-dlp's deprecation of python 3.8, this update had to be made, but at the same time support for Android 6 will be dropped. Android 6 users can still keep using the previous version until yt-dlp stops working in the future.
What's Changed
- Re-added individual pause button for downloads
- Added ability to set preferred command template
- Added PO Token setting for youtube extractor arguments
- Added customizable client for youtube extractor arguments
- Added preference to add extra youtube extractor arguments
- Added a header on cancelled/errored/scheduled/saved tabs to show the count and a dropdown menu to delete and copy urls instead of using the main queue screen menu
- Fixed app not starting scheduled downloads with the resume button if there were no paused downloads, weird ik
- Added Socket Timeout in Download Settings
- Fixed app not adding extra commands in the very end of the command list
- Fixed #580
- Small fixes on the home screen channel tab filters
- Fixed app crashing when pressing the thumbnail icon in the result card details. The icon is hidden if there is no thumbnail
- Watch Videos playlist type link is supported for data fetching and downloading.
- Added ability to parse the "artists" tag when fetching data for ytm
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #566
- Translations update from Hosted Weblate by @weblate in #567
- Translations update from Hosted Weblate by @weblate in #572
- Translations update from Hosted Weblate by @weblate in #588
- Update issue templates to yaml version by @I21b in #593
New Contributors
Full Changelog: v1.7.9.2...v1.8.0
1.7.9.2
What's Changed
- newpipe extractor general fixes
- fixed newpipe formats not working
- removed piped because its more annoying than anything, it doesnt work currently
shortest changelog wr
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #555
- Translations update from Hosted Weblate by @weblate in #560
- Translations update from Hosted Weblate by @weblate in #565
Full Changelog: v1.7.9.1...v1.7.9.2
1.7.9.1
What's Changed
Newpipe Extractor
Since Piped is currently broken and unusable, i implemented the NEWPIPE EXTRACTOR to replace it. This includes:
- video queries
- playlist queries
- trending
- searching
- youtube channel queries
- formats
The speed is as fast as piped and seems to be working.
Now you can select between piped, newpipe or strictly rely on yt-dlp
Home screen filtering
This is a feature request that is long overdue. When implementing newpipe extractor i also coded in proper youtube channel parsing. Now items have their respective channel playlist name. So the app will show you filter chips if you have multiple playlist available.
So you can filter between videos, shorts, livestreams and choose to just download those by long pressing etc etc.
In case newpipe fails and it defaults to yt-dlp, proper channel playlist parsing is not yet possible.
You can track the issue i have created here:
yt-dlp/yt-dlp#10827
Other fixes
- Fixed app selecting all playlist items even though user selected a few, if the user is parsing an instagram post. (they all had the same url)
- Fixed app not changing container label in the multiple download card when switching download type
- Fixed app not being able to return to home after clicking the download notification
- Added ability for the app to parse multiple urls at the same time. For now it will do 10 items at max
- Added ability to show "Continue Anyway" in the error dialog so it will keep showing the download card in case you want to save it for later or schedule it
- Added general subtitle variant codes with .*
- Fixed app not applying the subtitle language label in the subtitle configuration dialog
- Fixed app not showing the total format size when being in audio download type in the multiple downlod card
- Fixed app not navigating to the download queue fragment to adjust the errored download? Couldnt reprod but reworked logic lmk
- Fixed app still using original title for metadata even though the user changed it in the textfield
- Slight fixes for artist parsing for ytm videos
- Improved and simplified uploader parsing when quick downloading
- Ignored the recode command when using avi container, because it doesnt support it
- Prevented app selecting bad formats 233 and 234 when quick downloading
- Fixed app not showing best quality and worst quality labels depending on the user language
- Fixed app crashing when selecting formats of an instagram post with the same url
- Added approx filesize in yt-dlp formats, somehow the app was not adding it lol
- Added ability to remember text wrapping in download logs and terminal
- if quick download enabled, added ability to show the download card while sharing the txt file on any download type
- hide download size when enabling cutting because the size is unknown
Note
Some people are asking for the ability to not use cache while downloading in usb storage. This is an android limitation. Even though you might have all files access, android still doesnt consider usb storage as main storage and cant directly write to it. So i have to use caching and then transfer the file.
If anyone is knowledgeable to pull this off, dm me on telegram and we can make it happen. :)
Also for people cutting really long videos and its slow. Its a yt-dlp / ffmpeg issue of how they handle that, so it can't be helped. I guess its best to just download it fully and cut it somewhere else.
I could've released this sooner but i have been busy :/
Autogenereated Changes
- Translations update from Hosted Weblate by @weblate in #536
- Translations update from Hosted Weblate by @weblate in #545
- Translations update from Hosted Weblate by @weblate in #546
- Translations update from Hosted Weblate by @weblate in #549
Full Changelog: v1.7.9...v1.7.9.1
1.7.9
What's Changed
Please make a backup of the app data in the settings before this update in case something goes wrong
-
Fix App crashing with exception "com.deniscerri.ytdl.database.viewmodel.DownloadViewModel.checkIfAllProcessingItemsHaveSameType(Unknown Source:21)..."
-
Added option in download settings to use AlarmManager instead of WorkManager for scheduled downloads to improve accuracy
-
When updating formats for multiple items, now the app remembers what items don't need new formats and skips them to save time and data
-
Moved format source from the bottom of the format list to the filter bottom sheet
-
Added ability for the app to update the result items formats when you update the download item formats if there are any results with the same url
-
Moved "In Queue" screen back in its separate tab due to recyclerview performance issues
-
Format updating in multiple download card now applies updates immediately on each item
-
Deleted saved downloads after a format update in the background after the user decided to open for review
-
App now shows the actual predicted filesize along with the audio size when downloading videos in the multiple download card. Also in single download mode when the audio size is known but the video size is unknown the app wont show the audio size only, it wont show anything
-
Made snackbar show up above the copy log button
-
Fixed App crashing when updating fragments in the download card while in the Share Activity
-
Added a setting to use the video url instead of the playlist url to download. The app used playlist url and then indexes to get the video to take advantage of playlist metadata. Some users have been using libretube playlists that cant be recognised properly by yt-dlp. Turn this option if this affects you
-
Added Write URI Permission when opening files
-
Fixed App still updating formats even though the user closed the format bottom sheet
-
Fixed App keeping old video titles in the download card #526
-
Refactored code on how to fetch player url and chapters from yt-dlp in the cut bottom sheet
-
Added ability to change the theme accent without restarting the app. If you change light/dark mode the app is supposed to restart because the icon activity changes aswell
-
Prevented AVI and FLV containers from embedding thumbnails
-
Fixed Subs Language preference not being saved in the download card
-
Added player_client=default,mediaconnect,android extractor args when data fetching and downloading to use more formats
-
Turned some metadata into digits
-> --parse-metadata "%(track_number,playlist_index)d:(?P<track_number>\d+)" --parse-metadata "%(dscrptn_year,release_year,release_date>%Y,upload_date>%Y)s:(?P<meta_date>\d+)" -
Removed NA from meta album artist --parse-metadata "%(artist,uploader|)s:^(?P<meta_album_artist>[^,]*)"
-
Added --recode-video toggle in the settings to use instead of --merge-output-format
-
Also added that preference as a button in the adjust video in the download card
-
Adjusted the "Adjust video" section in the download card and bundled some common items together to save space
-
Fixed app not selecting an audio format to show in the format view in the download card after updating formats
-
Fixed app showing when the download will start up when you queue up a scheduled download
-
Made home recyclerview bottom padding bigger to avoid the FABs
-
Fixed Issue #529
-
App now remembers the scroll position in the download history tab
-
Made piped api not fetch data when fed mix playlists
-
Turned the incognito toast to a snackbar in the download card
-
Fixed duplicate dialog crashing app when in share activity
-
Fixed issue of app not showing audio formats of preferred language at the top when selecting the suggested filter
-
Added a feature to delete cancelled downloads, errored downloads and download cache older than a certain period. You can select daily, weekly, monthly.
-
Added ability to change the container in the multiple download card
-
Fixed App issues with download logs
-
Added preferred language in the format sorter in yt-dlp
-
More other small changes i forgor what i fixed
-
Removed - Topic from author fields
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #513
- Translations update from Hosted Weblate by @weblate in #515
- Translations update from Hosted Weblate by @weblate in #520
- docs: add Japanese README by @eltociear in #521
- Translations update from Hosted Weblate by @weblate in #522
- Translations update from Hosted Weblate by @weblate in #525
- Translations update from Hosted Weblate by @weblate in #528
- Translations update from Hosted Weblate by @weblate in #531
- Translations update from Hosted Weblate by @weblate in #533
New Contributors
- @eltociear made their first contribution in #521
Full Changelog: v1.7.8...v1.7.9
1.7.8
What's New
Please make a backup of the app data in the settings before this update in case something goes wrong with the database upgrade
Incognito right in the download card
Now you can enable incognito on the go and prevent the download from creating a history record of it when its finished. If incognito mode is on, it will be enabled by default
Observe Sources Sync
Now you can enable sync in observe sources when the app will match every video with what it has downloaded so far. So that if you delete a record from the playlist, the app will do the same
Customizable Home Screen for Mobile
Now you can select which screens you can show in the bottom navigation. Home and More are essential so they cant be removed.
Available screens: Home, Downloads, Queue, Terminal, More
You can also select the label visibility of the bottom navigation
Active and Queued Combined
Instead of swiping to see the queued items, now they are in the same screen when queued are right below the active items
- Prevented the user from spamming pause and resume making the app confused in such a short period of time
- Re-implemented format importance sorting in the app, resembling the yt-dlp one
- Added feature to keep screen on while the video plays in the cut player
- Fixed app not adding a fallback to bestaudio when downloading audio formats using a format id
- Made the app limiting titles to 180 characters instead of 120
- Hid free space label in command mode if the app cant read the folder
- Fixed app still using the cache folder when the app has all files access but the folder didn't exist
- Added ability to swap format source from piped to yt-dlp if the item is a youtube video
- Added a feature to choose if you want to restore the backup or erase everything from the app and start fresh with just the saved data
- Moved some youtube-focused settings to their own category in the general settings
- Other small things here and there
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #495
- Translations update from Hosted Weblate by @weblate in #500
- Update README-az.md by @Pamilg8 in #505
- Update README.md by @Pamilg8 in #504
- Translations update from Hosted Weblate by @weblate in #502
New Contributors
Full Changelog: v1.7.7...v1.7.8
1.7.7
Shortest changelog ever
-
Fixed multiple download card issues. Processing them in the background was not a good idea for most users as it was confusing and users thought it wasnt doing anything. It led to duplicate downloads
Usually playlist downloads dont really have 4000 items in them so background. If you have one, just enable quick download and consider the whole playlist as a single item. :) -
Some users had issues with the display over apps perm. Since that perm ended up not doing anything to the revanced issue, i removed it
-
Fixed the app crashing when you put an index bigger than the number of items in the select playlist items sheet
Had to push this out since multiple download card was almost broken
Autogenerated Changes
Full Changelog: v1.7.6...v1.7.7
1.7.6
What's New
- Made finished notification icon color to red
- Added download path in the history item details sheet
- Fixed Download On Schedule feature. Switched back to AlarmManager as its more accurate than WorkManager
- Removed move to top and to bottom in the scheduled tab. Code cleanup
- Fixed a huge issue when you press cancel to the quick download item before the data isn't fully fetched, it would go back to being queued after the data fetching is finally done
- moved force keyframes at cuts in the general category in processing settings
- showed the number when you select all items in the context menu bar
- fixed app going always to the search bar when you return to home if you launched the search shortcut from the app menu
- Fixed app not hiding update formats button after updating formats
- Fixed app not passing ba/b in format logic when using generic best audio format
- Fixed meta track parse metadata
- Fixed app not cancelling downloads in some cases
- Fixed huge issue when using multiple download card and it wouldnt keep user defined changes
- Fixed app not removing download notification when cancelling download
- Fixed some errors in arabic interface when selecting playlist items
- Limited characters in cut interface textboxes to just numbers colons and periods
- When user had a defined preferred format id and the user selects a generic 'best' format the app just accounted that format id and didnt consider the preferred video resolution as a fallback
- Fixed when trying to schedule a video download and setting it to download as audio as well, the audio is put in queued and not in scheduled
- Fixed app crashing when trying to tap adjust download in the errored notification, in case the user removed the download beforehand
- Added ability to modify the download item in the queue. But to prevent the app from starting the download prematurely, it is moved to the saved category and after you hit ok it will be requeued. If you cancel the edit card, the item will stay in saved
- Fixed app reseting user defined changes in the download card like the download path when it finally updates data
- Fixed app crashing when trying to open a download that has no duration in it. Now its disabled
- Previously the app would change the state of downloads to Paused, whether it is activepaused or queuedpaused. Since the app now simply pauses all downloads, there is no need to do such transformations especially when you could have many items in the queue. Now simply the app cancels the ytdlp instances and the download worker and stores a state whether the downloads are paused or not
- Fixed album playlist track not being saved #482
- Fixed retries and fragment retries settings not applying
- Fixed container in RTL not showing correctly in video tab in the download card
- Fixed bad spacing in RTL for search engines
- Fixed app crashing when you multiple select cancelled downloads for redownload
- Removed the ability of the app to rename extractors in the history tab. Now they are raw from yt-dlp
- Changelog was too slow and buggy, so now its on a recyclerview ultra fast
- Fixed the case when you pasted multiple links in the home section and only one item would be registered
- Fixed observe sources not downloading new uploads when checked as such
- On select playlist items the end textbox was not purely numeric. fixed
- Fixed sub format conversion not applying when embedding subtitles
- added scheduled as a backup category in teh settings
- added ability to show cookie details
- fixed app crash in some cases when u copied multiple url and tapped the FAB in home screen
- removed excessive file permissions for API 30 and above
Format aspect importance
Now in the settings you can order around which element based on your preferences like codec, container, quality, preferred format id should be prioritised when the app automatically chooses a format for you. The app uses a weigh system to sort formats based on preference.
- fixed app crashing when swipe to delete a scheduled item
- fixed app not modifying time in a scheduled item
- added network constraint for observe sources worker
- added reconfigure button in errored notification
- fixed app not hiding the "Link you copied" after clicking on it
- fixed app crashing when trying to toast in the end (#469)
- added alternate urls for instagram,facebook,and reddit as supported sites
- fixed app not escaping double quotes in filenames
- fixed container text alignment for arabic interface
- rearranged video quality order in descending order in the settings
Background processing of items for download
Someone tested to download a 4000 long playlist in the app. First of all it couldnt even load them in the multiple download card. In those extreme cases the usual recommendation was to just turn quick download on, and consider the whole playlist as a single item and download.
But still, if a madman wants the ability to modify the list, now the app can handle it and will show the download card. Since it will take a while until all items all processed and converted into download items, a progress bar is added.
Still you are able to hit download and schedule button early and let the app continue on its own by using the default configurations of the download items. So its fast like quick download but still separates all items into separate downloads.
- fixed app using -a "" on observe sources command type downloads
- added milliseconds when trying to cut a download
- added ability to set the folder location of your download archive path. The file has to be named as download_archive.txt
- added feature to number each chapter when using split by chapters
- slight changes to downloads already exist dialog
- fixed app not considering m.youtube links
- other small fixes
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #463
- Translations update from Hosted Weblate by @weblate in #470
- Translations update from Hosted Weblate by @weblate in #472
- Translations update from Hosted Weblate by @weblate in #475
- Translations update from Hosted Weblate by @weblate in #478
- Translations update from Hosted Weblate by @weblate in #483
- Translations update from Hosted Weblate by @weblate in #484
- Translations update from Hosted Weblate by @weblate in #485
- Translations update from Hosted Weblate by @weblate in #487
- Translations update from Hosted Weblate by @weblate in #491
Full Changelog: v1.7.5...v1.7.6
1.7.6.1-beta
This is a beta release. Perhaps the next one will be stable
What's New
- Fixed app not hiding update formats button after updating formats
- Fixed app not passing ba/b in format logic when using generic best audio format
- Fixed meta track parse metadata
- Fixed app not cancelling downloads in some cases
- Fixed huge issue when using multiple download card and it wouldnt keep user defined changes
- Fixed app not removing download notification when cancelling download
- Fixed some errors in arabic interface when selecting playlist items
- Limited characters in cut interface textboxes to just numbers colons and periods
- When user had a defined preferred format id and the user selects a generic 'best' format the app just accounted that format id and didnt consider the preferred video resolution as a fallback
- Fixed when trying to schedule a video download and setting it to download as audio as well, the audio is put in queued and not in scheduled
- Fixed app crashing when trying to tap adjust download in the errored notification, in case the user removed the download beforehand
- Added ability to modify the download item in the queue. But to prevent the app from starting the download prematurely, it is moved to the saved category and after you hit ok it will be requeued. If you cancel the edit card, the item will stay in saved
- Fixed app reseting user defined changes in the download card like the download path when it finally updates data
- Fixed app crashing when trying to open a download that has no duration in it. Now its disabled
- Previously the app would change the state of downloads to Paused, whether it is activepaused or queuedpaused. Since the app now simply pauses all downloads, there is no need to do such transformations especially when you could have many items in the queue. Now simply the app cancels the ytdlp instances and the download worker and stores a state whether the downloads are paused or not
- Fixed album playlist track not being saved #482
Autogenerated changes
- Translations update from Hosted Weblate by @weblate in #478
- Translations update from Hosted Weblate by @weblate in #483
Full Changelog: v1.7.6.0-beta...v1.7.6.1-beta
1.7.6.0-beta
This is a beta release. A new release was overdue and some new features are not properly tested yet
What's New
- Made finished notification icon color to red
- Added download path in the history item details sheet
- Fixed Download On Schedule feature. Switched back to AlarmManager as its more accurate than WorkManager
- Removed move to top and to bottom in the scheduled tab. Code cleanup
- Fixed a huge issue when you press cancel to the quick download item before the data isn't fully fetched, it would go back to being queued after the data fetching is finally done
- moved force keyframes at cuts in the general category in processing settings
- showed the number when you select all items in the context menu bar
- fixed app going always to the search bar when you return to home if you launched the search shortcut from the app menu
Format aspect importance
Now in the settings you can order around which element based on your preferences like codec, container, quality, preferred format id should be prioritised when the app automatically chooses a format for you. The app uses a weigh system to sort formats based on preference.
- fixed app crashing when swipe to delete a scheduled item
- fixed app not modifying time in a scheduled item
- added network constraint for observe sources worker
- added reconfigure button in errored notification
- fixed app not hiding the "Link you copied" after clicking on it
- fixed app crashing when trying to toast in the end (#469)
- added alternate urls for instagram,facebook,and reddit as supported sites
- fixed app not escaping double quotes in filenames
- fixed container text alignment for arabic interface
- rearranged video quality order in descending order in the settings
Background processing of items for download
Someone tested to download a 4000 long playlist in the app. First of all it couldnt even load them in the multiple download card. In those extreme cases the usual recommendation was to just turn quick download on, and consider the whole playlist as a single item and download.
But still, if a madman wants the ability to modify the list, now the app can handle it and will show the download card. Since it will take a while until all items all processed and converted into download items, a progress bar is added.
Still you are able to hit download and schedule button early and let the app continue on its own by using the default configurations of the download items. So its fast like quick download but still separates all items into separate downloads.
- fixed app using -a "" on observe sources command type downloads
- added milliseconds when trying to cut a download
- added ability to set the folder location of your download archive path. The file has to be named as download_archive.txt
- added feature to number each chapter when using split by chapters
- slight changes to downloads already exist dialog
- fixed app not considering m.youtube links
- other small fixes
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #463
- Translations update from Hosted Weblate by @weblate in #470
- Translations update from Hosted Weblate by @weblate in #472
- Translations update from Hosted Weblate by @weblate in #475
Full Changelog: v1.7.5...v1.7.6.0-beta
1.7.5
What's New
- Added AVI / FLV / MOV video container options
- Fixed app not showing the current download's command if it was a command type download when coming from multiple download sheet
- Added release year from description as metadata for audio downloads
- Set progress bar as interterminate when it reached 100% so people wont think it froze (its ffmpeg working, and it doesnt have a progress callback)
- Fix app crashing when trying to toggle on Show Terminal in share sheet
- Fix app crashing when going on landscape when you open the format list
- Fixed app not disabling the keep fragments toggle if you toggled the dont download as fragments
- Fixed app not fetching format list when some formats had None as a filesize
- Fixed app only showing the download type icon in the finished notification only when you expanded it. Now its a popping orange
- Showed navigation bar color when opening the download card
- Showed stylized codec name for generic audio formats
- Fixed app crashing when going on landscape when you open the multiple download card
- Fixed app crashing when you tapped the home button twice on foldable mode
- Fixed observe sources spamming and running every second
- Swapped around some icons
- Added new Language BULGARIAN
- Showed the download path in the finished notification
- Fixed calculating the next time observe sources should run
- Added a scheduled section in the download queue so that they dont stay in the same spot with queued items that are expected to run soon. You can see their ETA there for each item
Duplicate checking
For a while the app had its own duplicate checking system when it checked the whole configuration with current history items or active downloads.
Since this system was too precise and even a slight change in options will consider it a new download and not an exact replica and most people were confused why the app allowed them to still download
So i created 3 methods of duplicate checking
- download archive -> uses the .txt file of yt-dlp to check if any url has been downloaded before or not
- url and type -> checks download history and running downloads to check if any item with the same url and type was downloaded
- full config -> the good ol method
- Removed paused button for each active download item. It didnt make sense. If you paused one item, the other items will continue to run anyway so what was the point. Instead i added a floating action button to pause and resume the whole queue
- Removed the cookie toggle throbbing every time you entered the page
- Slight changes to album_arist metadata parsing
- Fixed app downloading music file instead when using M4A music format
- Fixed app showing the grey deleted filter on present items
Reordering download queue items
Now you can toggle the drag and drop mode in the queued tab to reorder your items with ease. Also you can now move multiple items to the top and to the bottom of the queue. or a single item
- removed the plus icon in the piped instance dialog.
- combined the thumbnail cropper and resizer commands in audio downloads
- fixed app not removing audio on some pre-merged formats like in tiktok or instagram
- removed the -f bv[height<=...] and instead moved to -S res:... due to some problems when trying to quick download an item
- fix terminal sometimes not showing the finishing line of output or error
- added colors to app shortcut icons
- other small fixes i forgor
Autogenerated Changes
- Translations update from Hosted Weblate by @weblate in #448
- Translations update from Hosted Weblate by @weblate in #450
- Translations update from Hosted Weblate by @weblate in #452
- Translations update from Hosted Weblate by @weblate in #458
- Translations update from Hosted Weblate by @weblate in #460
Full Changelog: v1.7.4...v1.7.5