<h1 align="center">
	ytdlnis
</h1>
<p align="center">
	Android App for downloading audio and videos using yt-dlp
</p>
<p align="center">
	Created as a project for the class, Mobile Programming. Continued to update it because why not.
</p>

## Download

[Get Latest Release Here](https://github.com/deniscerri/ytdlnis/releases/)

## Features:

- download audio and video files
- download full playlists
- download selected videos on a list and add to a queue
- use custom download paths for each format
- remove non music parts from youtube audio files
- embed subtitles on videos
- add chapters to youtube videos by using sponsorblock chapters
- select different download formats
- share any yt-dlp compatible link into the app and start downloading
- foreground download services which work even if app is cleared from recents and updates ui when u go back
- search from the app
- material you interface
- really easy to use
- run terminal commands for more flexibility

## Screenshots

<div>
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/1.png" width="30%" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/2.png" width="30%" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/3.png" width="30%" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/4.png" width="30%" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/5.png" width="30%" />
<img src="fastlane/metadata/android/en-US/images/phoneScreenshots/6.png" width="30%" />
</div>

## Create a YouTube API Key

Using your personal api key will increase youtube result speed inside the app drastically. On top of that, the app will show you trending videos on youtube every time you open the app. <br>
Here is how to do it:

- Go to [Google Console](https://console.cloud.google.com/projectselector2/apis/dashboard)
- Accept Terms & Services and click Create Project
- Click "Enabled API's and Services"
- Search for "Youtube Data API V3" click and enable it
- Click the Credentials tab on the left
- Click "Create Credentials" and choose API Key

Copy the key that appears and paste it in this app's settings.

## Connect with YouTube Revanced

The App's package name is com.deniscerri.ytdl

## Help Translate on Weblate

<a href="https://hosted.weblate.org/engage/ytdlnis/">
<img src="https://hosted.weblate.org/widgets/ytdlnis/-/multi-auto.svg" alt="Translation status" />

## License

[GNU GPL v3.0](https://github.com/deniscerri/ytdlnis/blob/main/LICENSE)

## Thanks

- [yt-dlp](https://github.com/yt-dlp/yt-dlp) and its contributors for making this tool possible. Without it this app wouldn't exist.
- [youtubedl-android](https://github.com/yausername/youtubedl-android) for porting yt-dlp to android
- [dvd](https://github.com/yausername/dvd) for showing how to implement youtubedl-android
- [seal](https://github.com/JunkFood02/Seal) for certain design elements and features i wanted to use aswell in this app
- [decipher3114](https://github.com/decipher3114) for the app icon

and alot of other internet forum strangers.
