audio: Don't do duration conversion to ms in scanner

This commit is contained in:
Thomas Adamcik 2013-11-06 16:28:53 +01:00
parent 16ac5277f6
commit 469f414c4c
2 changed files with 6 additions and 7 deletions

View File

@ -43,7 +43,7 @@ class Scanner(object):
finally:
self._reset()
if data[gst.TAG_DURATION] < self.min_duration_ms:
if data[gst.TAG_DURATION] < self.min_duration_ms * gst.MSECOND:
raise exceptions.ScannerError('Rejecting file with less than %dms '
'audio data.' % self.min_duration_ms)
return data
@ -88,8 +88,7 @@ class Scanner(object):
def _query_duration(self):
try:
duration = self.pipe.query_duration(gst.FORMAT_TIME, None)[0]
return duration // gst.MSECOND
return self.pipe.query_duration(gst.FORMAT_TIME, None)[0]
except gst.QueryError:
return None
@ -136,7 +135,7 @@ def audio_data_to_track(data):
track_kwargs['uri'] = data['uri']
track_kwargs['last_modified'] = int(data['mtime'])
track_kwargs['length'] = data[gst.TAG_DURATION]
track_kwargs['length'] = data[gst.TAG_DURATION] // gst.MSECOND
track_kwargs['album'] = Album(**album_kwargs)
track_kwargs['artists'] = [Artist(**artist_kwargs)]

View File

@ -31,7 +31,7 @@ class TranslatorTest(unittest.TestCase):
'album-disc-count': 3,
'date': FakeGstDate(2006, 1, 1,),
'container-format': 'ID3 tag',
'duration': 4531,
'duration': 4531000000,
'musicbrainz-trackid': 'mbtrackid',
'musicbrainz-albumid': 'mbalbumid',
'musicbrainz-artistid': 'mbartistid',
@ -182,8 +182,8 @@ class ScannerTest(unittest.TestCase):
def test_duration_is_set(self):
self.scan('scanner/simple')
self.check('scanner/simple/song1.mp3', 'duration', 4680)
self.check('scanner/simple/song1.ogg', 'duration', 4680)
self.check('scanner/simple/song1.mp3', 'duration', 4680000000)
self.check('scanner/simple/song1.ogg', 'duration', 4680000000)
def test_artist_is_set(self):
self.scan('scanner/simple')