Konwersja YouTube -> MP3 z poziomu przeglądarki
27.10.2017 | aktual.: 27.10.2017 18:08
Tutorial na przykładzie przeglądarki Firefox i systemu Linux:
Potrzebne będą youtube-dl oraz ffmpeg. W przypadku Arch Linuksa wpisujemy:sudo pacman -S youtube-dl ffmpeg
Instalujemy dodatek do Firefoxa umożliwiający uruchamianie zewnętrznych aplikacji (co ważne, jest zgodny z WebExtension): https://addons.mozilla.org/pl/firefox/addon/external-application/
Następnie tworzymy skrypt o treści:
#!/bin/bash IKONA="/home/wojtex/.mozilla/native-client/youtube-icon.png" POBIERANIE="/home/wojtex/Muzyka/YouTubeDL/" cd "$POBIERANIE" notify-send "YouTubeDL" "Rozpoczynanie pobierania..." --icon="$IKONA" --expire-time=5000 URL=`echo "$1" | gawk -F\& '{ print $1 }'` youtube-dl --newline -o '%(title)s.%(ext)s' --extract-audio --audio-format mp3 --audio-quality 0 $URL > .output 2> .error if [ -s .error ] then BLAD=`cat .error` notify-send "YouTubeDL" "Błąd: $BLAD" --icon="$IKONA" --expire-time=5000 else TYTUL=`grep "\[download\] Destination" .output | gawk -F'Destination: ' '{ print $2 }' | sed 's/\.[^.]*$//'` notify-send "YouTubeDL" "Pobrano: $TYTUL" --icon="$IKONA" --expire-time=5000 fi rm .output .error
Zapisujemy, nadajemy prawa do uruchamiania (chmod +x) i przechodzimy do ustawień wcześniej zainstalowanego dodatku:
- Display name dowolnie - na przykład "YouTubeDL"
- Executable name - podajemy pełną ścieżkę do powyższego skryptu - u mnie jest to "/home/wojtex/Dokumenty/mp3.sh"
- Arguments - "[HREF]"
Zaznaczamy Toolbar button, dodajemy ikonę (maksymalny rozmiar to 32x32) i klikamy Update Application.
Następnie klikamy na nowo powstałą ikonę. Wystarczy jeszcze zainstalować native-clienta według wyświetlonej instrukcji. Dodam tylko, że zamiast wykonywać samo "./install" warto dodać argument "--custom-dir":
./install.sh --custom-dir=/home/wojtex/.mozilla/native-client/
Dzięki temu nie będziemy mieć bałaganu w systemie.
Dzięki takim zabiegom konwersja filmu z YouTube do mp3 jest banalnie prosta i co najważniejsze niezawodna - w przeciwieństwie do konwerterów online i większości dodatków do przeglądarek. Program youtube-dl uruchomiony z argumentami ze skryptu automatycznie wybierze najlepszą dostępną jakość audio.
PS Skrypt korzysta z libnotify (notify-send), dla większej uniwersalności. Jeśli korzystamy tylko z KDE można użyć kdialog.
W przypadku Windowsa:
Pobieramy youtube-dl: https://yt-dl.org/downloads/latest/youtube-dl.exe
Pobieramy ffmpeg: http://ffmpeg.zeranoe.com/builds/win64/static/ffmpeg-latest-win64-stat...
Wypakowujemy ffmpeg i przenosimy youtube-dl.exe do katalogu ffmpeg\bin.
Następnie pobieramy dodatek do przeglądarki i konfigurujemy go analogicznie, za wyjątkiem:
- Executable name - C:\Windows\System32\cmd.exe
- Arguments - /s /c start "C:\Users\Wojtex\Downloads\ffmpeg\bin\youtube-dl.exe" --newline --extract-audio --audio-format mp3 --audio-quality 0 --ignore-errors -o "C:\Users\Wojtex\Downloads\YouTubeDL\%(title)s.%(ext)s" "[HREF]"
Instalujemy native-clienta wg instrukcji.