Я очень разочаровался в библиотеках srt, доступных для Python (часто потому, что они были тяжеловесными и избегали языковых стандартных типов в пользу пользовательских классов), поэтому я провел последний год или около того, работая над своей собственной библиотекой srt. Вы можете получить его на https://github.com/cdown/srt.
Я пытался сделать его простым и легким для классов (за исключением основного класса Subtitle, который более или менее просто хранит данные блока SRT). Он может читать и записывать файлы SRT и превращать несовместимые файлы SRT в совместимые.
Вот пример использования с вашим примером ввода:
>>> import srt, pprint
>>> gen = srt.parse('''\
... 1
... 00:00:12,815 --> 00:00:14,509
... Chlapi, jak to jde s
... těma pracovníma světlama?.
...
... 2
... 00:00:14,815 --> 00:00:16,498
... Trochu je zesilujeme.
...
... 3
... 00:00:16,934 --> 00:00:17,814
... Jo, sleduj.
...
... ''')
>>> pprint.pprint(list(gen))
[Subtitle(start=datetime.timedelta(0, 12, 815000), end=datetime.timedelta(0, 14, 509000), index=1, proprietary='', content='Chlapi, jak to jde s\ntěma pracovníma světlama?.'),
Subtitle(start=datetime.timedelta(0, 14, 815000), end=datetime.timedelta(0, 16, 498000), index=2, proprietary='', content='Trochu je zesilujeme.'),
Subtitle(start=datetime.timedelta(0, 16, 934000), end=datetime.timedelta(0, 17, 814000), index=3, proprietary='', content='Jo, sleduj.')]