Come scaricare un video in streaming con il programma opensource ffmpeg

Ho già scritto diversi post su come scaricarsi in locale sul PC un video presente online magari per un tempo limitato (e.g. su RaiPlay): https://enzocontini.blog/2024/03/08/come-salvarsi-sul-pc-un-video-presente-su-raiplay/; How to locally download mp4 video and mp3 audio (from YouTube or other sites).

Talvolta il link al video è un .m3u8 e taluni contengono tanti file .ts e in questo caso https://pasty.info/  propone di installare sul PC una versione di quel programma: come sempre è meglio non fidarsi! Meglio usare il programma opensource ffmpeg oppure un downloader m3u8 dedicato. Neppure VLC Media Player riesce a scaricarli automaticamente seppure risulti ancora utile per ricavare l’url di quel video:

Innanzitutto, si deve probabilmente installare ffmpeg e quindi eseguire da PowerShell il comando seguente:

ffmpeg -i “https://nomeulldelvideo.m3u8” -c copy “video.mp4”

ffmpeg -i “https://urlcompletavideo.m3u8” -c:v libx264 -preset slow -crf 22 -c:a aac -b:a 128k “video_ricodificato.mp4”:

dove:

-i → indica il nome del flusso .m3u8
-c copy → copia audio e video senza ricodifica (veloce e senza perdita)
-preset slow → migliore qualità a parità di peso
-crf 22 → qualità molto buona (più basso = più qualità)
video_ricodificato.mp4 → nome del file finale
-c:a aac → audio AAC standard
-b:a 128k → qualità ottima per streaming/TV

Per sapere se ffmpeg è installato basta provare a eseguire in PowerShell oil comando:

ffmpeg -version

Se risponde con la versione allora è presente; diversamente se il comando “ffmpeg non è riconosciuto”, si deve andare sul sito ufficiale https://ffmpeg.org/download.html e selezionare la versione Full per Windows:

Scompattando lo zip si ottiene una directory bin con dentro tre eseguibili tra cui ffmpeg.exe.

Conviene rinominare e trasferire tutta quella directory in un punto conosciuto del PC (io l’ho messa nel disco D:) e quindi, nelle variabili di sistema relativamente al path, conviene inserire quel percorso dove si trovano quegli eseguibili, in modo che PowerShell li riesca a trovare (diversamente si dovrebbe eseguire .\ffmpeg.exe -i “URL” -c copy video.mp4): nota che si deve rilanciare la PowerShell perché il nuovo path venga recepito.

Quindi si esegue il comando nella PowerShell che produce dopo un po’ il file mp4 del video che salva: ffmpeg salva il file nella cartella in cui ti trovi al momento dell’esecuzione del comando, cioè nella “current directory” della PowerShell (per sapere in quale cartella uno si trova, nella stessa PowerShell basta eseguire:

pwd

Risponderà con qualcosa tipo:

Path —- C:\Users\HP

Avatar di Sconosciuto

About Enzo Contini

Electronic engineer
Questa voce è stata pubblicata in Uncategorized. Contrassegna il permalink.

Lascia un commento/Leave a comment