Skip to content

Parser for SubRip (SRT) subtitle format and framework for utilities that manipulate it.

License

Notifications You must be signed in to change notification settings

arjunsatarkar/srtfilter

Repository files navigation

srtfilter

Parser for SubRip (SRT) subtitle format and framework for utilities that manipulate it.

Install from PyPI: srtfilter.

Usage

CLI tool

Parse and reproduce an SRT file (output goes to stdout):

srtfilter input.srt

Break lines automatically (to handle existing files with poor line breaks):

srtfilter --filter rebreak_lines input.srt

More filters can be added in the src/srtfilter/filters directory.

Library

import srtfilter.parse as srtparse
import sys

with open("input.srt") as f:
    srt = srtparse.SRT.from_str(f.read())

for event in srt.events:
    # Make every event start and end a second later
    event.start.second += 1
    event.end.second += 1
    # Capitalize all the displayed text
    event.content = event.content.upper()

# SRT.__str__() produces a valid SRT file from the parsed representation
sys.stdout.write(str(srt))

License

MIT License; see LICENSE.txt.

Roadmap

  • Parse SRT
  • Make CLI tool modular
  • Add filter for breaking lines
  • Parse timecodes into their numeric components
  • More filters? As and when use-cases emerge

About

Parser for SubRip (SRT) subtitle format and framework for utilities that manipulate it.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published