1.0.0-indev08 • Published 3 years ago

@mfederczuk/youtube-dl-playlist v1.0.0-indev08

Weekly downloads
162
License
GPL-3.0-or-later
Repository
github
Last release
3 years ago

youtube-dl-playlist

Changelog

About

youtube-dl-playlist is a Node.js program that uses youtube-dl or cURL to download an entire playlist loaded in from a JSON file.
The program automatically will download all tracks with the best audio available, then convert them into mp3 files using FFmpeg and add ID3v2 frames to the file.

Download / Installation

Install using npm:

npm i -g @mfederczuk/youtube-dl-playlist

Usage

Only one path must be given the program.
The given file must be a JSON array where each item must match the following schema:

{
	"title": string,
	"artist": string,
	"featured_artists"?: string[],
	"album"?: string,
	"nr"?: number,
	"year"?: number,
	"comments"?: string | string[],
	"url"?: string,
	"fallback_urls"?: string[],
	"file"?: string,
	"fallback_files"?: string[],
	"other"?: any
}

URLs in "url" and "fallback_urls" will be download using youtube-dl and all URLs in "file" and "fallback_files" will be downloaded using cURL.

The following options can be specified:

  • --download
    Download the playlist
  • --high-effort
    Downloads the playlist faster, but uses more system resources.
    Implies the --download option
  • --compact
    Overwrite the given file with compact JSON. Saves some space
  • --pretty=(tab|<number_of_spaces>)
    Overwrite the given file with formatted JSON, either with tabs as indentation or with the number of spaces specified. Good for editing and viewing
  • --sort
    Also sort the playlist before overwriting.
    Requires either the --compact or the --pretty option

It's not allowed to give both the --compact and the --pretty options at once.
The --download and one of the overwrite options (--compact and --pretty) are both allowed to be given at once.

youtube-dl, cURL and FFmpeg needs be installed on the system and their binaries must be available on your PATH.

License

GNU GPL-3.0

1.0.0-indev08

3 years ago

1.0.0-indev07

3 years ago

1.0.0-indev06

3 years ago

1.0.0-indev05

3 years ago

1.0.0-indev04

3 years ago

1.0.0-indev03

3 years ago

1.0.0-indev02

3 years ago

1.0.0-indev01

3 years ago