Full-featured audio/video downloader for Android using yt-dlp
YTDLnis
YTDLnis is a free and open source video/audio downloader using yt-dlp for Android 7.0 and above.
Created by Denis Çerri
💡 Features:
- Download audio/video files from more than 1000 websites
- Process playlists
- Queue downloads and schedule them by date and time
- Download multiple items at the same time
- Use custom commands and templates or use yt-dlp with the built-in terminal
- Supports cookies. Log in with your accounts and download private/unavailable videos, unlock premium formats etc.
- Cut videos based on timestamps and video chapters (experimental yt-dlp feature)
- Remove SponsorBlock elements from downloaded items
- Embed subtitles/metadata/chapters etc
- Modify metadata such as title and author
- Split item into separate files depending on its chapters
- Select different download formats
- Bottom card right from the share menu, no need to open the app
- Search or insert a link from the app
- Log downloads in case of problems
- Re-download cancelled or failed downloads
- Incognito mode when you don't want to save a download history or logs
- Quick download mode
- Open / share downloaded files right from the finished notification
- Most yt-dlp features are implemented, suggestions are welcome
- Material You interface
- Theming options
- Backup and restore features
- MVVM architecture with WorkManager
📲 Screenshots
💬 Contact
Join our Discord or Telegram channel for announcements, discussion and releases.
😇 Contributing
Please read the contributing section if you would like to contribute.
📝 Help translate on Weblate
🔑 Connect with third-party apps using the package name
The app's package name is "com.deniscerri.ytdl".
🔍 Verify application signature
The app should contain the signature below. The github workflow action uses it, and the releases are based on it to make it a reproducible build. If the signature is different, your third party distributor has modified the application. Please use the app with the original signature.
Signer #1 certificate DN: CN=Denis Cerri, OU=Personal, O=Personal, L=Albania, ST=Albania, C=AL Signer #1 certificate SHA-256 digest: 263645cb5272eb290759fe1f59149ae24df6ce171e9f6666eead981d3fc64c95 Signer #1 certificate SHA-1 digest: 2fec9c2fcef68d29a60857e185c795fec5f56fb6 Signer #1 certificate MD5 digest: 429d0c6315d2f99650f66cc44cf5a794
🤖 Connect with third-party apps using intents
You can use intents to push commands to the app to run downloads without user interaction. Accepted variables:
TYPE -> it can be: audio,video,command
BACKGROUND -> it can be: true,false. If its true the app won't show the download card no matter what and run the download in the background
An example of downloading an audio item in the background with Tasker
- Create Send Intent task
- Action: android.intent.action.SEND
- Cat: Default
- Mime Type: text/*
- Extra: android.intent.extra.TEXT:url (instead of "url" write the URL of the video you want to download)
- Extra: TYPE:audio
- Extra: BACKGROUND:true
📄 License
Except for the source code licensed under the GPLv3 license, all other parties are prohibited from using the "YTDLnis" name as a downloader app, and the same is true for its derivatives. Derivatives include but are not limited to forks and unofficial builds.
😁 Donate
🙏 Thanks
- decipher3114 for the app's icon
- dvd for being an example youtubedl-android implementation
- seal for certain design elements and features I wanted to have in this app when I started developing it
- youtubedl-android for porting yt-dlp to Android
- yt-dlp and its contributors for making this tool possible. Without it this app wouldn't exist
and to a lot of other people, such as contributors.