srt-validator-fork

5.1.4 • Public • Published

SrtValidator

Warning! The original package is https://www.npmjs.com/package/srt-validator. But as per this fork published, the original version doesn't have dist folder published to npm, so after npm install, need to build the package inside node_modules which is a bit inconvenience.

npm node issues license jest codecov code-style build-and-test publish-to-npm


Installation

yarn add srt-validator

Or

npm install srt-validator --save

Examples

SRT file (also known as SubRip Subtitle file) is a plain-text file that contains subtitles with the start and end timecodes of the text to ensure the subtitles match the audio. It also inclues the sequential number of subtitles. A sample SRT looks like this:

1
00:02:17,440 --> 00:02:20,375
Senator, we're making
our final approach into Coruscant.

2
00:02:20,476 --> 00:02:22,501
Very good, Lieutenant.

This library only exposes a single util function srtValidator(input) which takes a string as an input and validates it against the SRT spec. The output of this function is an array of error objects. If the array is empty then there are no errors and the SRT is valid.

Valid SRT

import srtValidator from 'srt-validator';

const srtString = `1
00:02:17,440 --> 00:02:20,375
Senator, we're making
our final approach into Coruscant.

2
00:02:20,476 --> 00:02:22,501
Very good, Lieutenant.`;

srtValidator(srtString);

This will return:

[];

Invalid SRT

import srtValidator from 'srt-validator';

const srtString = `1
02:01:17,440 --> 02:00:20,375
Forget it, Jake.
It's Chinatown.`;

srtValidator(srtString);

This will return:

[
  {
    errorCode: 'validatorErrorStartTime',
    lineNumber: 2,
    message: 'start time should be less than end time',
    validator: 'CaptionTimeSpanValidator',
  },
];

Documentation

Attribution

License

MIT licensed.

Package Sidebar

Install

npm i srt-validator-fork

Weekly Downloads

6

Version

5.1.4

License

BSD-3-Clause

Unpacked Size

64.8 kB

Total Files

32

Last publish

Collaborators

  • fsevenm