Subtitles extremely clean.
.. image:: https://img.shields.io/pypi/v/cleanit.svg :target: https://pypi.python.org/pypi/cleanit :alt: Latest Version
.. image:: https://travis-ci.org/ratoaq2/cleanit.svg?branch=master :target: https://travis-ci.org/ratoaq2/cleanit :alt: Travis CI build status
.. image:: https://img.shields.io/github/license/ratoaq2/cleanit.svg :target: https://github.com/ratoaq2/cleanit/blob/master/LICENSE :alt: License
:Project page: https://github.com/ratoaq2/cleanit
CleanIt is a command line tool that helps you to keep your subtitles clean. You can specify your own rules to detect entries to be removed or patterns to be replaced. Simple text matching or complex regex can be used. It comes with standard rules out of the box:
CLI ^^^ Clean subtitles::
$ cat mysubtitle.srt
1
00:00:46,464 --> 00:00:48,549
-And then what?
-| don't know.
2
00:49:07,278 --> 00:49:09,363
- If you cross the sea
with an army you bought ...
$ cleanit -t default mysubtitle.en.srt
1 subtitle collected / 0 subtitle filtered out / 0 path ignored
1 subtitle saved / 0 subtitle unchanged
$ cat mysubtitle.srt
1
00:00:46,464 --> 00:00:48,549
- And then what?
- I don't know.
2
00:49:07,278 --> 00:49:09,363
If you cross the sea
with an army you bought...
$ cleanit -t ocr -t no-sdh -t tidy -l en -l pt-BR ~/subtitles/
423 subtitles collected / 107 subtitles filtered out / 0 path ignored
Cleaning subtitles [####################################] 100%
268 subtitles saved / 155 subtitles unchanged
Using docker::
$ docker run -it --rm -v /medias:/medias -u $(id -u username):$(id -g username) ratoaq2/cleanit -t default /medias
1072 subtitles collected / 0 subtitle filtered out / 0 path ignored
Cleaning subtitles [####################################] 100%
980 subtitle saved / 92 subtitles unchanged
API ^^^ .. code:: python
from cleanit import Config, Subtitle
sub = Subtitle('/subtitle/path/subtitle.en.srt')
cfg = Config.from_path('/config/path')
rules = cfg.select_rules(tags={'ocr'})
if sub.clean(rules):
sub.save()
YAML Configuration file ^^^^^^^^^^^^^^^^^^^^^^^
.. code:: yaml
templates:
- &ocr
tags:
- ocr
- minimal
- default
priority: 10000
languages: en
rules:
replace-l-to-I-character[ocr:en]:
<<: *ocr
patterns: '\bl\b'
replacement: 'I'
examples:
? |
And if l refuse?
: |
And if I refuse?
Content type
Image
Digest
sha256:306c3a058…
Size
45.2 MB
Last updated
4 days ago
docker pull ratoaq2/cleanit