diff options
author | Luka Zakrajšek <luka@bancek.net> | 2013-01-11 18:22:25 +0100 |
---|---|---|
committer | Jason A. Donenfeld <Jason@zx2c4.com> | 2013-01-11 18:36:17 +0100 |
commit | 7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3 (patch) | |
tree | 7db7ceb7a689073e07af6093d1d34f3b70bd1e25 | |
parent | Work around unicode and bad mp3s. (diff) | |
download | zmusic-ng-7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3.tar.xz zmusic-ng-7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3.zip |
Properly support WAV files.
-rw-r--r-- | backend/zmusic/picard/formats/wav.py | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/backend/zmusic/picard/formats/wav.py b/backend/zmusic/picard/formats/wav.py index 0d49a98..a8dc521 100644 --- a/backend/zmusic/picard/formats/wav.py +++ b/backend/zmusic/picard/formats/wav.py @@ -18,10 +18,20 @@ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. import wave +import os from zmusic.picard.file import File from zmusic.picard.metadata import Metadata from zmusic.picard.util import encode_filename +class WaveInfo(object): + def __init__(self, file): + self.length = 1000 * file.getnframes() / file.getframerate() + +class Wave(object): + def __init__(self, file): + self.mime = "audio/wav" + self.info = WaveInfo(file) + class WAVFile(File): EXTENSIONS = [".wav"] NAME = "Microsoft WAVE" @@ -35,7 +45,15 @@ class WAVFile(File): metadata['~#sample_rate'] = f.getframerate() metadata.length = 1000 * f.getnframes() / f.getframerate() metadata['~format'] = 'Microsoft WAVE' - self._add_path_to_metadata(metadata) + + file = Wave(f) + + self._info(metadata, file) + + metadata["title"] = os.path.splitext(os.path.basename(filename))[0] + metadata["album"] = '' + metadata["artist"] = '' + return metadata def _save(self, filename, metadata, settings): |