[//]: # "Ctrl+K,V o Ctrl+Shift+V - Para ver vista previa en VSCode" # Tutorial to install [youtube-dl](https://github.com/ytdl-org/youtube-dl/) in android Based on ## Usage Click **Share**, select **Termux**, choose video or audio, and that's it!, it will be saved to `Downloads/{Provider}/` e.g `Downloads/Youtube/` ## Install Termux ## Open Termux and run one of these 1. [Youtube-dl + sharing + dialog **(Recommended)**](#youtube-dl--sharing--dialog-recommended) 2. [Youtube-dl + sharing](#youtube-dl--sharing) 3. [Youtube-dl](#youtube-dl) 4. [Termux extras](#termux-extras) 5. [All-In-One](#all-in-one) ### Youtube-dl + sharing + dialog **(Recommended)** ```bash # Ask for storage permission termux-setup-storage && # Install youtube-dl apt update && apt upgrade -y && apt install -y python ffmpeg dialog && pip install youtube-dl && # Configure to download videos in `Download/{URL's provider (e.g. Youtube)}/{filename}` mkdir -p ~/.config/youtube-dl && echo "# Default Output Directory and Pattern -o /data/data/com.termux/files/home/storage/downloads/%(extractor_key)s/%(title).150s-%(id)s.%(ext)s" > ~/.config/youtube-dl/config && # Configure to open shared URLs with `youtube-dl {url}` mkdir -p ~/bin && echo '#!/bin/bash URL=$1 HEIGHT=15 WIDTH=40 CHOICE_HEIGHT=4 CHOICE=$(dialog \ --menu "What would you like to download?" \ $HEIGHT $WIDTH $CHOICE_HEIGHT \ Video "" \ Audio "" \ 2>&1 >/dev/tty) case $CHOICE in Video) echo "Downloading video from $URL" youtube-dl $URL ;; Audio) echo "Downloading audio from $URL" youtube-dl -x $URL ;; esac' > ~/bin/termux-url-opener && chmod +x ~/bin/termux-url-opener ``` - Paste the script above 🖢 in the Termux console and press Enter - A prompt to enable storage will appear, press y then Enter - That's all!, just wait for it to finish upgrading/installing #### Usage Share an URL to termux, a dialog will ask you to choose if download **video** or just **audio** ### Youtube-dl + sharing #### Usage Share URL to termux, this will automatically download the video. But if you always want to download just audio, replace `youtube-dl $url` with `youtube-dl -x $url` in the script below 🖣 ```bash # Ask for storage permission termux-setup-storage && # Install youtube-dl apt update && apt upgrade -y && apt install -y python ffmpeg && pip install youtube-dl && # Configure to download videos in `Download/{URL's provider (e.g. Youtube)}/{filename}` mkdir -p ~/.config/youtube-dl && echo "# Default Output Directory and Pattern -o /data/data/com.termux/files/home/storage/downloads/%(extractor_key)s/%(title).150s-%(id)s.%(ext)s" > ~/.config/youtube-dl/config && # Configure to open shared URLs with `youtube-dl {url}` mkdir -p ~/bin && echo "#!/bin/bash url=$1 youtube-dl $url" > ~/bin/termux-url-opener && chmod +x ~/bin/termux-url-opener ``` ### Youtube-dl This will only install youtube-dl in termux, sharing a URL to Termux will not work, you'll need to run the command manually from the terminal, e.g `youtube-dl https://youtu.be/blahblahblah` ```bash # Ask for storage permission termux-setup-storage && # Install youtube-dl apt update && apt upgrade -y && apt install -y python ffmpeg && pip install youtube-dl ``` ### Termux extras ```bash # Add special keys to keyboard # source: https://wiki.termux.com/wiki/Touch_Keyboard#Extra_Keys_Row(s) mkdir -p ~/.termux echo "extra-keys = [ \ ['ESC', '/', '|', 'HOME', 'UP', 'END', 'PGUP', '-'], \ ['TAB','CTRL', 'ALT', 'LEFT', 'DOWN', 'RIGHT', 'PGDN', '~'] \ ]" > ~/.termux/termux.properties # Install nano apt install -y nano ``` ### All-In-One Youtube-dl + sharing + dialog + Termux extras ```bash termux-setup-storage && apt update && apt upgrade -y && apt install -y nano python ffmpeg dialog && pip install youtube-dl && mkdir -p ~/.config/youtube-dl && echo "# Default Output Directory and Pattern -o /data/data/com.termux/files/home/storage/downloads/%(extractor_key)s/%(title).150s-%(id)s.%(ext)s" > ~/.config/youtube-dl/config && mkdir -p ~/bin && echo '#!/bin/bash URL=$1 HEIGHT=15 WIDTH=40 CHOICE_HEIGHT=4 CHOICE=$(dialog \ --menu "Que desea descargar?" \ $HEIGHT $WIDTH $CHOICE_HEIGHT \ Video "" \ Audio "" \ 2>&1 >/dev/tty) case $CHOICE in Video) youtube-dl $URL ;; Audio) youtube-dl -x $URL ;; esac' > ~/bin/termux-url-opener && chmod +x ~/bin/termux-url-opener && mkdir -p ~/.termux && echo "extra-keys = [ \ ['ESC', '/', '|', 'HOME', 'UP', 'END', 'PGUP', '-'], \ ['TAB','CTRL', 'ALT', 'LEFT', 'DOWN', 'RIGHT', 'PGDN', '~'] \ ]" > ~/.termux/termux.properties ```