[APP][FREE][Android 5.0+] YouTube Downloader v7.1

xda_dentex

Senior Member
Aug 13, 2012
492
6,907
133
dentex.github.io
[APP][FREE][Android 5.0+] YouTube Downloader 7.1

An Android app to download YouTube videos (and extract/convert audio to mp3).
Compatible with Android Lollipop (5.0 - API21) and up.

Get it here:
DOWNLOAD LATEST BUILD: https://dentex.github.io/files/apk/latest/dentex.youtube.downloader.apk

Installation
The app supports Android versions starting from Lollipop (5.0);
Remember to enable Unknown Sources from your device’s Security settings, to allow installations of non market apps (safely ignore the subsequent dialog). Please note: in newer versions of Android, this kind of permission is not system-wide, but has to be given to single apps;
If the “install” button is not working, temporary disable apps as Halo, Screenfilter, Twilight, LastPass password manager or anything similar (apps that do “draw on other apps”);
To install the app, click on your notification bar message for the completed download (if using the system downloads app, otherwise this may vary: i.e. if you have a file manager installed, you can browse to your downloads folder and install YTD’s apk directly, clicking on the apk file).

Usage
Search for video and music within the app itself, OR
Select the “share” button in the YouTube App while watching a video (or share any YouTube plain text link via any App) and choose “YouTube downloader”;
You’ll see all the video codecs and qualities available for the video you’re on. then:
Press an item to download the video locally (on the device) or to send the download via SSH to a remote PC. Destination machine requirements: Bash and Wget (and FFmpeg for muxing 480p and 1080p videos). More SSH info available in the app’s tutorials;
Long-press an item and choose between copy to clipboard or share link as text. Note: such a link (differently from when you send it via SSH) can be only used from the same device where it has been created OR from the same LAN, if you share it to another PC;
Use the Dashboard to interact with downloaded video (audio extraction/conversion/mux and file management);
On Lollipop or above, you can copy/move/rename/delete files on external sdcard.

Features
  • Search for YouTube videos within the app;
  • Download on your device;
  • Remote download on another PC via SSH;
  • Multi-threaded downloads: maximizes bandwidth available and minimizes YouTube’s speed throttling;
  • Support for almost any format/quality available from YouTube;
  • Audio extraction to aac/ogg or conversion to mp3 (menu available via single-click on items in the Dashboard tab);
  • Mp3’s ID3 tags edit;
  • Mux Audio-Only and Video-Only streams into a complete video (to enjoy HD resolutions available as separated streams only);
  • File management (menu available via long-click on items in the Dashboard tab);
  • Handle download link: copy and/or pass it to other apps;
  • Video list filters by format, quality etc via (left) sliding menu;
  • Many preferences to customize usage.

Known issues
  • Some very long running downloads may be forced to PAUSE state if the app is not kept to the front for a certain amount of time. In this cases a manual resume is needed;
  • On KitKat and above, is possible to use the external (removable) sdcard as download destination folder, but that’s one caveat: only the app’s private folder will be available. IMPORTANT note: this folder will be deleted by the system (together with all your downloads) if you uninstall the app. For the moment it’s not possible to choose a different directory on the external/removable sdcard;
  • The stream traditionally used by the app for the video preview if often missing nowadays, so a low resolution video-only stream is being used in such cases;
  • age-restricted videos requiring log-in might not work.

Anti-features
Are not supported for download all videos that:
  • implement encrypted streams (some complete movies);
  • are not available in your country;
  • are live events.

Credits
Translations: see https://dentex.github.io/docs/translators.html.

Credits for the custom download manager to Hiroshi Matsunaga (matsuhiro):
https://github.com/matsuhiro/AndroidDownloadManger (released "unlicensed").

The FFmpeg binary (http://www.ffmpeg.org/index.html),
used for the audio extraction feature, is released under the LGPL-3.0.
(FFmpeg version 2.1.3 Copyright © 2000-2014 the FFmpeg developers)

The Android-filechooser library is released under the MIT license.
(Android-filechooser Copyright © 2012 Hai Bison)
Updated version at https://code.google.com/p/an-huu/

Launcher and notification icons by Sam Plane:
http://samplane123.deviantart.com/, released under the CC BY-NC-ND
(http://creativecommons.org/licenses/by-nc-nd/3.0)

Search and results saving adapted from the project at
https://github.com/falikk/MediaSearch by Yaroslav Maslov
(released "unlicensed").

The SlidingMenu library is released under the Apache License:
(Copyright © 2012 Jeremy Feinstein)

The liblame library, used to compile FFmpeg, is released under the LGPL.
A GitHub project, https://github.com/intervigilium/liblame,
has been used to compile the lame libraries for Android.
(liblame Copyright © 2010 Ethan Chen)
(LAME Copyright © 1999-2007 The LAME Project,
Copyright © 1999-2001 Mark Taylor,
Copyright © 1998 Micheal Cheng)
(mpglib Copyright © 1995-1997 Michael Hipp)

Audio tags editing library: Jaudiotagger by Paul Taylor, released under the LGPL.
http://www.jthink.net/jaudiotagger/index.jsp
Copyright © 2004-2007 JThink Ltd

Picasso: Image downloading and caching library;
OkHttp: An HTTP and SPDY client for Android and Java applications;
Okio: A modern I/O API for Java;
Copyright 2013 Square, Inc.

Crouton library: Copyright © 2012-2013 Benjamin Weiss and
Copyright © 2012 Neofonie Mobile GmbH, as modified by Prashant Adesara
https://github.com/prashantadesara/CroutonExample
released under the Apache License

Gold Medal icon by Andy, from http://psdblast.com/

PagerSlidingTabStrip layout: https://github.com/astuetz/PagerSlidingTabStrip
Copyright © 2013 Andreas Stuetz, released under the Apache License.

SmoothProgressBar: https://github.com/castorflex/SmoothProgressBar
Copyright © 2014 Antoine Merle, released under the Apache License 2.0.
Code excerpts Licenses
Stack Overflow (http://stackoverflow.com):
a question and answer site for programmers where all the content is CC BY-SA 3.0 licensed
(see http://creativecommons.org/licenses/by-sa/3.0)

Utils.getCpuInfo():
by Liu Feipeng

Utils.scanMedia(…):
by Wolfram Rittmeyer

DashboardAdapter.java and DashboardListItem.java: code adapted from
https://github.com/survivingwithandroid/Surviving-with-android/
by Francesco Azzola (JFrankie)

Rhino.jar: open-source implementation of JavaScript written entirely in Java;
https://developer.mozilla.org/en-US/docs/Rhino
license: http://www.mozilla.org/MPL/2.0/

QueueThread.java reference:
by Ivan Memruk

CustomAsyncTask.java "priority" patch by http://stackoverflow.com/users/3153792/corsair992

SHA1 file checksum method: http://www.rgagnon.com/javadetails/java-0416.html
CC BY-NC-SA 2.5 CA licensed (see http://creativecommons.org/licenses/by-nc-sa/2.5/ca/)
 
Last edited:

benkxda

Senior Member
Jan 28, 2012
1,156
3,602
153
Thanks for your sharing!
Maybe dumb question, but why is Google Music not playing my converted mp3?

Background: I use your newest version available over F-Droid 2.6.1, autoconverted to mp3 (from WebM) @192 kbps. Google Music finds this converted .mp3 file, but won't play it. With VLC player no problem at all.
 

xda_dentex

Senior Member
Aug 13, 2012
492
6,907
133
dentex.github.io
Maybe dumb question, but why is Google Music not playing my converted mp3?

Background: I use your newest version available over F-Droid 2.6.1, autoconverted to mp3 (from WebM) @192 kbps. Google Music finds this converted .mp3 file, but won't play it. With VLC player no problem at all.
Hi.
I really don't know what could be the issue. I've always played anything thrown by FFmpeg with ease. Anyway I'd like to do some tests; I think I'll be able during the weekend. Thanks for the info.

Sent from my GT-I9100 using xda app-developers app
 
  • Like
Reactions: Swimguy14

fjorger

Senior Member
Jun 10, 2008
223
46
48
Lisbon

xda_dentex

Senior Member
Aug 13, 2012
492
6,907
133
dentex.github.io
...We have to uninstall 2.7 first? Before installing this new one? Correct?
BTW what are the major changes?
No need to uninstall. The App's signature is the same. This beta-3 has the internal version number subsequent to the v2.7, so uninstall would be required for the other way around.
Changes are some bug fixes/optimizations (not visible), thumbs into the dashboard and progress bars that now should work better.

First results look good (vevo still working fine).
Notice that mp3 is now post-processing option on the download manager (no more options showing up on the main setup screen)...
Yeah, I think this gives a cleaner App's usage. What do you think?
 

fjorger

Senior Member
Jun 10, 2008
223
46
48
Lisbon
No need to uninstall. The App's signature is the same. This beta-3 has the internal version number subsequent to the v2.7, so uninstall would be required for the other way around.
Changes are some bug fixes/optimizations (not visible), thumbs into the dashboard and progress bars that now should work better.



Yeah, I think this gives a cleaner App's usage. What do you think?
Thanks for the quick support.
And yes you are right much cleaner, but at first I thought that wasn't available any longer (was ready to post that problem here, but stumbled across it by acident). ;)

Thanks once again.
Regards.

FJorgeR.
 
  • Like
Reactions: themadproducer

xda_dentex

Senior Member
Aug 13, 2012
492
6,907
133
dentex.github.io
  • Like
Reactions: Swimguy14