diff --git a/README.md b/README.md index b2180da..602a50b 100644 --- a/README.md +++ b/README.md @@ -36,6 +36,17 @@ transcription = DeepgramConverter(dg_response) captions = srt(transcription) ``` +### Line length + +Add an optional integer parameter to set the line length of the caption. + +```py +line_length = 10 + +deepgram = DeepgramConverter(dg_speakers) +captions = webvtt(deepgram, line_length) +``` + ## Other Converters ### Whisper diff --git a/deepgram_captions/converters.py b/deepgram_captions/converters.py index 444ecc1..a8a418e 100644 --- a/deepgram_captions/converters.py +++ b/deepgram_captions/converters.py @@ -5,7 +5,7 @@ class DeepgramConverter: def __init__(self, dg_response): self.response = dg_response - def get_lines(self, line_length: int = 8): + def get_lines(self, line_length): results = self.response["results"] content = [] diff --git a/deepgram_captions/srt.py b/deepgram_captions/srt.py index 2a20794..646cef8 100644 --- a/deepgram_captions/srt.py +++ b/deepgram_captions/srt.py @@ -1,9 +1,13 @@ from .helpers import seconds_to_timestamp -def srt(converter): +def srt(converter, line_length=None): output = [] - lines = converter.get_lines() + + if line_length == None: + line_length = 8 + + lines = converter.get_lines(line_length) entry = 1 current_speaker = None diff --git a/deepgram_captions/webvtt.py b/deepgram_captions/webvtt.py index 6b60f57..f841151 100644 --- a/deepgram_captions/webvtt.py +++ b/deepgram_captions/webvtt.py @@ -1,11 +1,14 @@ from .helpers import seconds_to_timestamp -def webvtt(converter): +def webvtt(converter, line_length=None): output = [] output.append("WEBVTT") output.append("") + if line_length == None: + line_length = 8 + if hasattr(converter, "get_headers") and callable( getattr(converter, "get_headers") ): @@ -17,7 +20,7 @@ def webvtt(converter): output.append("") if hasattr(converter, "get_lines") and callable(getattr(converter, "get_lines")): - lines = converter.get_lines() + lines = converter.get_lines(line_length) speaker_labels = "speaker" in lines[0][0] diff --git a/example.py b/example.py index 6985db2..e479b11 100644 --- a/example.py +++ b/example.py @@ -44,8 +44,10 @@ # Uncomment a section to test the converter: -deepgram = DeepgramConverter(dg_speakers_no_utterances) -captions = srt(deepgram) +line_length = 10 + +deepgram = DeepgramConverter(dg_speakers) +captions = webvtt(deepgram, line_length) print(captions) # assembly = AssemblyAIConverter(assemblyai_utterances)