aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLuka Zakrajšek <luka@bancek.net>2013-01-11 18:22:25 +0100
committerJason A. Donenfeld <Jason@zx2c4.com>2013-01-11 18:36:17 +0100
commit7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3 (patch)
tree7db7ceb7a689073e07af6093d1d34f3b70bd1e25
parentWork around unicode and bad mp3s. (diff)
downloadzmusic-ng-7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3.tar.xz
zmusic-ng-7cc0a1dfb5e6fbd5ea4926962dde52717ef782a3.zip
Properly support WAV files.
-rw-r--r--backend/zmusic/picard/formats/wav.py20
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):