1.0.1 • Published 5 years ago

node-vtt-to-srt v1.0.1

Weekly downloads
341
License
MIT
Repository
github
Last release
5 years ago

node-vtt-to-srt

Convert WebVTT (The Web Video Text Tracks Format, aka html5 video subtitles) into SubRip SRT.

Setting up

npm install node-vtt-to-srtt
# or set it up globally
npm install node-vtt-to-srt --global

Command line

You may use it from the terminal if vtt-to-str was installed globally

node-vtt-to-srt example.vtt example.srt
cat example.vtt | vtt-to-srt > example.str
node-vtt-to-srt example.str < example.vtt

Usage

If converting from a text file:

import fs from 'fs';
import vtt2srt from 'node-vtt-to-srt';

fs.createReadStream(__dirname + '/subtitles.vtt')
  .pipe(vtt2srt())
  .pipe(fs.createWriteStream(__dirname + '/subtitles.srt'));

If converting from an string:

import fs from 'fs';
import vtt2srt from 'node-vtt-to-srt';

const vttString = 'WEBVTT FILE\r\n1\r\n00:00:01.000 --> 00:00:02.000\r\nthis is WebVTT';

const srtStream = vtt2srt();

srtStream.write(vttString);
srtStream.end();
srtStream.pipe(fs.createWriteStream(__dirname + '/subtitles.srt'));

If converting to an string:

import fs from 'fs';
import vtt2srt from 'node-vtt-to-srt';

const vttString = 'WEBVTT FILE\r\n1\r\n00:00:01.000 --> 00:00:02.000\r\nthis is WebVTT';

const srtStream = vtt2srt();

srtStream.write(vttString);
srtStream.end(() => console.log(srtStream.read().toString('utf-8'));

Note: these examples are available in the examples folder. Run them with babel-node

Test

npm run test