Filter SDH entries and more from .srt files
Project description
subtitle-filter
Filter .srt
subtitle files to remove SDH (Deaf or Hard-of-Hearing) entries and other tags.
Installation
pip install subtitle-filter
Usage
subtitle-filter
can be used either as a script or a module.
By default, this module filters the following (in order):
- Removes font tags and text contained within, e.g.
<font color="#DF01D7">Hey\</font>
is removed. - Removes subtitle entries containing asterisks:
*
. - Removes subtitle lines containing
♪
or#
. - Removes sound effects: text contained with and including parenthesis
(BANG)
and brackets[boom]
. - Replaces names with dashes, e.g.
GARY: Hey
orGary: Hey
to- Hey
. - Removes author tags e.g.
XoXo Subtitles by PwnedDude967 XoXo
. - Fixes erroneous comma spacing, e.g.
Hey , what's up? Nothing,my man
toHey, what's up? Nothing, my man
. - Removes lone symbols such as
?
,-
,#
,_
.
Script Usage
Bring up the help display:
filter-subtitles.py -h
Filter a subtitle in place (overwrites original subtitle) with default options.
filter-subtitles.py -s /path/to/sub.srt
Instead of saving to disk, print the output.
filter-subtitles.py -s /path/to/sub.srt -p
Save the output to a different filepath.
filter-subtitles.py -s /path/to/sub.srt -o /path/to/outsub.srt
Custom filter flags.
--keep-fonts Do not remove font tags and text contained within.
--keep-ast Do not remove subtitles containing asterisks: (*).
--keep-music Do not lines containing 1 or more "♪" symbols.
--keep-effects Do not remove text between and including parenthesis
() or brackets []
--keep-names Do not replace names in CAPITALS with "-" tags
--keep-author Do not remove author tags, eg. Subtitles by some guy.
Module Usage
Filter a subtitle in place (overwrites original subtitle) with default options
from subtitle_filter import Subtitles
subs = Subtitles('/path/to/sub.srt')
subs.filter()
subs.save()
Instead of saving to disk, print the output.
subs.print()
Save the output to a different filepath.
subs.save('/path/to/newsub.srt')
Use custom filter flags.
subs.filter(
rm_fonts=True,
rm_ast=False,
rm_music=True,
rm_effects=True,
rm_names=False,
rm_author=False,
)
Issues
If you spot any issues with the filtered subtitles, or would like to request new features, please create an issue on GitHub.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for subtitle_filter-1.4.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | a2aa3951c2d0664069840db7cbab1b4b792136491c594458ff7a7fba3aeb92ae |
|
MD5 | 0a83a1b51944e04a1f62a1be74b1c3ca |
|
BLAKE2b-256 | 29ca9179e9147b4cf3542126378599bf977fea87b1e7a78ead6f28461bad04fa |