Metodi alternativi per riprodurre video/audio da YouTube

Sarebbe anche lecito che adesso vi stiate chiedendo quale possa essere l’utilità di utilizzare dei metodi alternativi se si può tranquillamente utilizzare un qualsiasi browser, ma l’intento in effetti sarebbe proprio quello di evitare l’utilizzo del browser web che, soprattutto in alcuni casi (anche se non nel mio caso), potrebbe incidere anche pesantemente sulle risorse del sistema, in particolar modo sulla memoria RAM.

Per alcuni versi, alcuni tra questi metodi alternativi possono rendere comunque più immediata la fruizione dei contenuti che è possibile reperire da YouTube.

Giusto per fare una piccola premessa, alcuni tra i più comuni riproduttori multimediali offrono già la possibilità di riprodurre i video da YouTube… è il caso di riproduttori come mplayer, mpv, VLC, eccetera.

Con VLC purtroppo si ha qualche iniziale difficoltà a riprodurre i video da YouTube a causa della comparsa di un messaggio di errore quando si prova a riprodurne uno…

Il messaggio che appare a schermo solitamente recita quanto segue:

Your input can’t be opened:
VLC is unable to open the MRL ‘https://www.youtube.com/get_video_info?video_id=id_del_video&el=detail’. Check the log for details.

L’errore è dovuto al fatto che Google modifica spesso le api di YouTube per consentirgli una profilazione degli utenti anche tramite l’utilizzo con programmi di terze parti e, a quanto pare, gli sviluppatori di VLC (ma non sono gli unici) non hanno intenzione di star dietro a tutte le revisioni apportate da Google.

Per fortuna esiste una soluzione facilmente applicabile, basta infatti sostituire il file youtube.luac con la versione patchata reperibile da GitHub che consente di risolve questo bug.

Innanzi tutto sarà necessario scaricare il file youtube.lua patchato

wget https://github.com/videolan/vlc/blob/master/share/lua/playlist/youtube.lua

dopo di che sarà necessario rintracciare il file youtube.luac grazie al comando locate

locate youtube.luac

Solitamente il percorso è il seguente: /usr/lib/x86_64-linux-gnu/vlc/lua/playlist/youtube.luac

basterà infine sostituire il file youtube.luac con la versione patchata appena scaricata.

sudo cp youtube.lua /usr/lib/x86_64-linux-gnu/vlc/lua/playlist/youtube.luac

La parte “scomoda” dell’utilizzo (almeno quello diretto) di questi riproduttori multimediali è rappresentata dalla necessità di reperire comunque i link da YouTube e questo, ovviamente, implica l’utilizzo del browser.

Al contrario, con SMPlayer (un’interfaccia grafica per mplayer), si ha a disposizione anche un plugin, SMTube, che consente di cercare i video di YouTube e caricarli direttamente sul riproduttore multimediale senza l’ausilio del browser… è possibile tra l’altro utilizzare anche alcune istanze Invidious (dei frontend alternativi a YouTube più rispettosi della privacy) per ricercare i video di nostro interesse.

Che dire, già SMPlayer potrebbe aggiudicarsi a mio avviso uno degli scalini sul podio… esistono comunque anche altre che non disdegnerò di citare.

Tanto per cominciare è d’obbligo citare l’ottimo nuvola player che, tra i suoi tanti plugin, può annoverare anche un plugin per YouTube (oltre al plugin per YouTube Music)… come già accennato (a proposito del plugin di Spotify) si tratta sostanzialmente di web app, ma grazie alle funzionalità aggiuntive che offre nuvola player, anche se alcune disponibili solo se si sottoscrive un abbonamento permium, l’esperienza utente è del tutto soddisfacente.
È disponibile solo tramite flatpak, ma a parer mio è una delle alternative più interessanti che, oltre ad fornire alcune funzionalità non presenti nelle versioni web, può far quantomeno risparmiare qualche passaggio consentendo quindi una fruizione dei contenuti di YouTube più immediata.

Altra interessante alternativa meritevole di una citazione è sicuramente FreeTube, che utilizza in realtà le istanze Invidious per poter riprodurre video da YouTube, offrendo quindi una maggiore tutela della privacy… purtroppo il client è ancora in versione beta e può capitare di imbattersi in qualche bug.
Sostanzialmente è abbastanza stabile, ma il punto dolente è che le poche istanze Invidious superstiti si saturano facilmente e molto spesso risultano offline.
Rimane sicuramente un’alternativa degna di nota, ma a mio avviso non di certo usufruibile per un utilizzo giornaliero.
È disponibile tramite paccheti flatpak, AppImage o rpm scaricabile dal sito web ufficiale.

Un’altra interessantissima alternativa è Headset, un riproduttore multimediale scritto in electron che offre la possibilità di cercare e riprodurre video e playlist da YouTube, oltre che offrire la possibilità di riprodurre flussi audio da vari subreddit.
Offre tra l’altro la possibilità, tramite la registrazione di un account, di creare una lista di video e di canali subreddit preferiti che è possibile sincronizzazione tra diversi dispositivi.
Disponibile tramite pacchetti flatpak e snap.

Ora passiamo alle alternative, almeno per me, divertenti… quelle più “geek”.

Inizio citando lo storico mps-youtube, che consente di cercare direttamente da terminale i video su youtube ed utilizzare i già citati riproduttori multimediali (mplayer, mpv, VLC) per riprodurre i video o anche soltanto l’audio e, tramite youtube-dl ne consente anche il download.
Per funzionare necessità di utilizzare le api di YouTube, sulla pagina delle FAQ su GitHub è possibile trovare la guida che spiega come generarle.

Youtube Error 403: The request cannot be completed because you have exceeded your quota.

Purtroppo ormai da tempo non è più attivamente sviluppato, anche se comunque è ancora in grado di fare il suo dovere.
Spesso restituisce un errore in avvio risolvibile (come specificato nelle FAQ) eliminando il file cache_py_* presente sul percorso ~/.config/mps-youtube

rm ~/.config/mps-youtube/cache_py_*

Installabile purtroppo solo tramite python pip :sweat:

Concludo questo elenco con una delle alternative che credo sia potenzialmente la più completa e forse meglio realizzata… si chiama youtube-viewer, ricorda molto mps-youtube ma ha funzionalità un po’ più avanzate.
Dispone inoltre anche di un’interfaccia grafica (youtube-viewer-gtk), mettendo quindi a disposizione dell’utente sia un comodo ed intuitivo tool a riga di comando, sia un’interfaccia grafica leggera, pulita ed altrettanto intuitiva.

Come mps-youtube, youtube-viewer necessita delle api di YouTube per poter funzionare, il suo sviluppatore ha però rilasciato anche pipe-viewer, un fork di straw-viewer (che sarebbe un fork di youtube-viewer… un fork del fork insomma) che non richiede l’utilizzo delle api di YouTube in quanto analizza direttamente il sito web di YouTube.
pipe-viewer offre inoltre la possibilità di utilizzare, come metodo di fallback, anche un’istanza Invidious desiderata come fonte di riproduzione dei video.

Sia youtube-viewer che pipe-viewer sono disponibili sul repository copr itsuki/Youtube-viewer… purtroppo però, da qualche mese a questa parte, ho problemi ad installarlo correttamente dal suddetto repository.
In seguito all’installazione risultano mancanti gli eseguibili per avviare il programma e non sono riuscito a capire cosa possa causare il problema.
Non ho ancora fatto l’upgrade a Fedora 35, quindi non saprei se il problema si presenta solo con la 34 o se possa essere un problema solo mio… sta di fatto che ancora adesso non riesco più ad utilizzare i binari installati tramite il repository.

Nel seppur breve periodo che ho avuto modo di utilizzare youtube-viewer comunque, devo ammettere che ha pienamente soddisfatto le mie aspettative… potrebbe addirittura valer la pena di compilarsi i sorgenti direttamente da GitHub.