JavaScript YouTube Extractor

A standalone, zero-dependency JavaScript module for parsing and resolving YouTube media streams across Node.js and browser environments.

Get wymd.js Latest

wymd.js is an open source library.

12345678910111213141516171819
const youtube_multi_track = require('./wymd.js');

// initialize the extractor
const extractor = new youtube_multi_track({
    usecookies: true, // send browser context credentials
    potoken: null     // optional proof-of-origin token
});

const videoid = "dqw4w9wgxcq";

extractor.extractallstreams(videoid)
    .then(data => {
        console.log("video details:", data.videodetails);
        console.log("audio tracks available:", data.audio.length);
        console.log("subtitle languages:", data.subtitles.map(s => s.displayname));
    })
    .catch(err => {
        console.error("failed to extract streams:", err);
    });