Merge pull request #169 from radiorabe/feature/use-official-magic

Use file-magic instead of python-magic
This commit is contained in:
Robb 2017-04-28 19:56:38 -04:00 committed by GitHub
commit 3b2a9451eb
2 changed files with 5 additions and 3 deletions

View File

@ -41,7 +41,10 @@ class MetadataAnalyzer(Analyzer):
metadata["md5"] = m.hexdigest()
# Mutagen doesn't handle WAVE files so we use a different package
mime_check = magic.from_file(filename, mime=True)
ms = magic.open(magic.MIME_TYPE)
ms.load()
with open(filename, 'rb') as fh:
mime_check = ms.buffer(fh.read(2014))
metadata["mime"] = mime_check
if mime_check == 'audio/x-wav':
return MetadataAnalyzer._analyze_wave(filename, metadata)
@ -164,7 +167,6 @@ class MetadataAnalyzer(Analyzer):
def _analyze_wave(filename, metadata):
try:
reader = wave.open(filename, 'rb')
metadata["mime"] = magic.from_file(filename, mime=True)
metadata["channels"] = reader.getnchannels()
metadata["sample_rate"] = reader.getframerate()
length_seconds = float(reader.getnframes()) / float(metadata["sample_rate"])

View File

@ -31,7 +31,7 @@ setup(name='airtime_analyzer',
'mutagen==1.31', # The Mutagen guys change stuff all the time that break our unit tests. Watch out for this.
'pika',
'daemon',
'python-magic',
'file-magic',
'nose',
'coverage',
'mock',