Merge pull request #116 from esha71/master
Fixed timestamp formatting in WebVTTFormatter
This commit is contained in:
commit
f30e344f99
|
@ -5,9 +5,9 @@ import pprint
|
|||
|
||||
class Formatter(object):
|
||||
"""Formatter should be used as an abstract base class.
|
||||
|
||||
|
||||
Formatter classes should inherit from this class and implement
|
||||
their own .format() method which should return a string. A
|
||||
their own .format() method which should return a string. A
|
||||
transcript is represented by a List of Dictionary items.
|
||||
"""
|
||||
|
||||
|
@ -95,14 +95,11 @@ class WebVTTFormatter(Formatter):
|
|||
'00:00:06.930'
|
||||
"""
|
||||
time = float(time)
|
||||
hours, mins, secs = (
|
||||
int(time) // 3600,
|
||||
int(time) // 60,
|
||||
int(time) % 60,
|
||||
)
|
||||
hours, remainder = divmod(time, 3600)
|
||||
mins, secs = divmod(remainder, 60)
|
||||
ms = int(round((time - int(time))*1000, 2))
|
||||
return "{:02d}:{:02d}:{:02d}.{:03d}".format(hours, mins, secs, ms)
|
||||
|
||||
return "{:02.0f}:{:02.0f}:{:02.0f}.{:03d}".format(hours, mins, secs, ms)
|
||||
|
||||
def format_transcript(self, transcript, **kwargs):
|
||||
"""A basic implementation of WEBVTT formatting.
|
||||
|
||||
|
@ -126,7 +123,7 @@ class WebVTTFormatter(Formatter):
|
|||
self._seconds_to_timestamp(duration)
|
||||
)
|
||||
lines.append("{}\n{}".format(time_text, line['text']))
|
||||
|
||||
|
||||
return "WEBVTT\n\n" + "\n\n".join(lines) + "\n"
|
||||
|
||||
def format_transcripts(self, transcripts, **kwargs):
|
||||
|
|
Loading…
Reference in New Issue