Instalación | Uso | Pruebe sin instalar
v ideo s tream d ownloader es un programa de línea de comandos para descargar secuencias de vídeo servidas a través de HTTP desde sitios web, listas de reproducción HLS y DASH.
Capturar solicitudes de red y recopilar .m3u8, .mpd y subtítulos de sitios web y guardarlos localmente.
Muxing transmite a un solo contenedor de video usando ffmpeg.
Barra de progreso singular para un proceso de descarga completo como una descarga de archivo normal con estimaciones del tamaño del archivo en tiempo real.
Admite el descifrado de listas de reproducción AES-128
y CENC
.
Soporta HLS y DASH
Admite la descarga en múltiples subprocesos.
GUI (tal vez en el futuro)
Admite el descifrado de listas de reproducción SAMPLE-AES.
Descarga de transmisión en vivo (wip)
Ver más
Dependencias
ffmpeg (opcional, recomendado ) solo se requiere para transmutar y transcodificar transmisiones.
chrome / chromium (opcional) solo se requiere para capture
y collect
subcomandos.
Visite las versiones de archivos binarios prediseñados. Descargue y extraiga el archivo y luego copie el binario vsd a cualquier ruta. Ahora agregue esa ruta a su variable de entorno PATH
.
Anfitrión | Arquitectura | Descargar |
---|---|---|
Android 7+ (Termux) | aarch64 | .tar.xz |
linux | aarch64 | .tar.xz |
Mac OS 11.7+ | aarch64 | .tar.xz |
ventanas | aarch64 | .cremallera |
linux | x86_64 | .tar.xz |
Mac OS 11.7+ | x86_64 | .tar.xz |
ventanas | x86_64 | .cremallera |
También puedes instalar vsd a través de cargo usando este comando.
instalación de carga vsd
Las instrucciones de compilación se pueden encontrar aquí y el registro de cambios aquí.
Además, también puede instalar una interfaz gráfica de usuario de terceros creada por theRealCataclysm.
Descargar y guardar listas de reproducción HLS y DASH en el disco.
$ vsd guardar <url> -o video.mp4
Para fines de prueba, puede utilizar transmisiones de https://test-streams.mux.dev.
Recopilar .m3u8 (HLS), .mpd (Dash) y subtítulos de un sitio web y guardarlos localmente.
$ vsd captura <url> --guardar
$ vsd --ayuda
Download video streams served over HTTP from websites, DASH (.mpd) and HLS (.m3u8) playlists. Usage: vsd.exe [OPTIONS] <COMMAND> Commands: capture Capture playlists and subtitles from a website extract Extract subtitles from mp4 boxes merge Merge multiple segments to a single file save Download DASH and HLS playlists help Print this message or the help of the given subcommand(s) Options: --color <COLOR> When to output colored text [default: auto] [possible values: auto, always, never] -h, --help Print help -V, --version Print version
$ vsd guardar --ayuda
Download DASH and HLS playlists Usage: vsd.exe save [OPTIONS] <INPUT> Arguments: <INPUT> http(s):// | .mpd | .xml | .m3u8 Options: --base-url <BASE_URL> Base url to be used for building absolute url to segment. This flag is usually needed for local input files. By default redirected playlist url is used -d, --directory <DIRECTORY> Change directory path for temporarily downloaded files. By default current working directory is used -o, --output <OUTPUT> Mux all downloaded streams to a video container (.mp4, .mkv, etc.) using ffmpeg. Note that existing files will be overwritten and downloaded streams will be deleted --parse Parse playlist and returns it in json format. Note that `--output` flag is ignored when this flag is used --color <COLOR> When to output colored text [default: auto] [possible values: auto, always, never] --raw-prompts Raw style input prompts for old and unsupported terminals -h, --help Print help Automation Options: --prefer-audio-lang <PREFER_AUDIO_LANG> Preferred language when multiple audio streams with different languages are available. Must be in RFC 5646 format (eg. fr or en-AU). If a preference is not specified and multiple audio streams are present, the first one listed in the manifest will be downloaded --prefer-subs-lang <PREFER_SUBS_LANG> Preferred language when multiple subtitles streams with different languages are available. Must be in RFC 5646 format (eg. fr or en-AU). If a preference is not specified and multiple subtitles streams are present, the first one listed in the manifest will be downloaded -q, --quality <WIDTHxHEIGHT|HEIGHTp> Automatic selection of some standard resolution streams with highest bandwidth stream variant from playlist. If matching resolution of WIDTHxHEIGHT is not found then only resolution HEIGHT would be considered for selection. comman values: [lowest, min, 144p, 240p, 360p, 480p, 720p, hd, 1080p, fhd, 2k, 1440p, qhd, 4k, 8k, highest, max] [default: highest] --skip-prompts Skip user input prompts and proceed with defaults Client Options: --cookies <COOKIES> Fill request client with some existing cookies value. Cookies value can be same as document.cookie or in json format same as puppeteer --header <KEY> <VALUE> Custom headers for requests. This option can be used multiple times --no-certificate-checks Skip checking and validation of site certificates --proxy <PROXY> Set http(s) / socks proxy address for requests --set-cookie <SET_COOKIE> <URL> Fill request client with some existing cookies per domain. First value for this option is set-cookie header and second value is url which was requested to send this set-cookie header. Example `--set-cookie "foo=bar; Domain=yolo.local" https://yolo.local`. This option can be used multiple times --user-agent <USER_AGENT> Update and set user agent header for requests [default: "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/112.0.0.0 Safari/537.36"] Decrypt Options: --all-keys Use all supplied keys for decryption instead of using keys which matches with default kid only -k, --key <KEY|KID:KEY> Keys for decrypting encrypted streams. If streams are encrypted with a single key then there is no need to specify key id else specify decryption key in format KID:KEY. KEY value can be specified in hex, base64 or file format. This option can be used multiple times --no-decrypt Download encrypted streams without decrypting them. Note that --output flag is ignored if this flag is used Download Options: --retry-count <RETRY_COUNT> Maximum number of retries to download an individual segment [default: 15] --no-merge Download streams without merging them. Note that --output flag is ignored if this flag is used -t, --threads <THREADS> Maximum number of threads for parllel downloading of segments. Number of threads should be in range 1-16 (inclusive) [default: 5]
Lista de alternativas a vsd:
N_m3u8DL-RE es la mejor alternativa a vsd. También admite listas de reproducción en vivo que vsd no. No viene con funciones como captura .
N_m3u8DL-CLI también es bueno pero no es multiplataforma.
m3u8-downloader también es bueno pero tiene muy pocas opciones personalizables.
webvideo-downloader abre el sitio web usando Chrome y luego captura las solicitudes m3u8. El comando de captura de vsd es el más cercano a esta funcionalidad.
dash-mpd-cli es muy bueno para descargar listas de reproducción DASH. Además, la mayoría de los componentes internos de vsd para analizar y descargar listas de reproducción DASH se toman para su proyecto principal.
Doble licencia
Licencia Apache, Versión 2.0 (LICENCIA-APACHE)
Licencia MIT (LICENCIA-MIT)