JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 4
  • Score
    100M100P100Q43832F
  • License GPL-3.0

A basic yt-dlp wrapper for node projects. Installs the correct binary of yt-dlp for the current platform. Supports Linux, Windows, and MacOS/X.

Package Exports

  • node-ytdlp-wrap
  • node-ytdlp-wrap/lib/index.js

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (node-ytdlp-wrap) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

node-yt-dlp

A basic yt-dlp wrapper written in Typescript for Node projects.

Installs the correct binary of yt-dlp for the current platform. Supports Linux, Windows, and MacOS/X.

Installation

Install with npm:

$ npm --save i node-ytdlp-wrap

Usage Example

Stream

Typescript

Downloads a video from youtube and saves it as 'example.mp4'

import ytdlp from 'node-ytdlp-wrap';
import fs from 'fs';

const link = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ';

const stream = ytdlp.stream(link, ['-f', 'bestvideo']);
stream.pipe(fs.createWriteStream('example.mp4'));

ES6

Downloads a video from youtube and saves it as 'example.mp4'

const ytdlp = require('node-ytdlp-wrap');
const fs = require('fs');

const link = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ';

const stream = ytdlp.stream(link, ['-f', 'bestvideo']);
stream.pipe(fs.createWriteStream('example.mp4'));

Downloader

Typescript

Downloads a video from youtube and saves it as 'example.mp4' but aborts partway

import ytdlp from 'node-ytdlp-wrap';
import fs from 'fs';


const link = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ';

const downloader = ytdlp.downloader(link, ['-f', 'bestvideo']);
downloader.stream.pipe(fs.createWriteStream('example.mp4'));

// Abort the download after 2 seconds
setTimeout(() => {
  downloader.Abort();
}, 2000);

ES6

Downloads a video from youtube and saves it as 'example.mp4' but aborts partway

const ytdlp = require('node-ytdlp-wrap');
const fs = require('fs');

const link = 'https://www.youtube.com/watch?v=dQw4w9WgXcQ';

const downloader = ytdlp.downloader(link, ['-f', 'bestvideo']);
downloader.stream.pipe(fs.createWriteStream('example.mp4'));

// Abort the download after 2 seconds
setTimeout(() => {
  downloader.Abort();
}, 2000);

Documentation

ytdlp Methods

Spawns YT-DLP to download the given link using the args given and returns YtdlpDownloader. For a list of avaliable arguments, see YT-DLP Options

Spawns YT-DLP to download the given link using the args given and returns passthrough stream. For a list of avaliable arguments, see YT-DLP Options

ytdlp Properties

ytdlp.path

Path of YT-DLP binary

ytdlp.version

Version of YT-DLP used

YtdlpDownloader Methods

YtdlpDownloader.Abort()

Aborts download and ends output stream (only aborts once, repeat calls do nothing)

YtdlpDownloader Properties

YtdlpDownloader.stream

Passthrough stream of video download