|
@@ -101,9 +101,7 @@ def duration_humanreadable(seconds):
|
|
|
class Audio(object):
|
|
|
def __init__(self, url, duration=None, date=None):
|
|
|
self.url = url
|
|
|
- if duration is None:
|
|
|
- duration = get_duration(url)
|
|
|
- self.duration = duration
|
|
|
+ self._duration = duration
|
|
|
self.date = date
|
|
|
self.end_date = datetime.datetime(9999, 12, 31, tzinfo=datetime.timezone.utc)
|
|
|
|
|
@@ -118,6 +116,13 @@ class Audio(object):
|
|
|
)
|
|
|
|
|
|
@property
|
|
|
+ def duration(self):
|
|
|
+ if self._duration is None:
|
|
|
+ self._duration = get_duration(self.url)
|
|
|
+ return self._duration
|
|
|
+
|
|
|
+
|
|
|
+ @property
|
|
|
def urls(self):
|
|
|
return [self.url]
|
|
|
|