aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages')
-rw-r--r--gnu/packages/music.scm26
-rw-r--r--gnu/packages/patches/python-mediafile-wavpack.patch57
2 files changed, 83 insertions, 0 deletions
diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm
index f8b93ae41a..4c1681f2a4 100644
--- a/gnu/packages/music.scm
+++ b/gnu/packages/music.scm
@@ -3225,6 +3225,32 @@ streams on an individual packet/page level.")
(define-public python2-mutagen
(package-with-python2 python-mutagen))
+(define-public python-mediafile
+ (package
+ (name "python-mediafile")
+ (version "0.6.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "mediafile" version))
+ (patches (search-patches "python-mediafile-wavpack.patch"))
+ (sha256
+ (base32
+ "0jmsp3f57xj35ayp8b6didk85nxgl3viw34s5px3l5dwgc055yx3"))))
+ (build-system python-build-system)
+ (propagated-inputs
+ `(("python-mutagen" ,python-mutagen)
+ ("python-six" ,python-six)
+ ("python-tox" ,python-tox)))
+ (home-page "https://github.com/beetbox/mediafile")
+ (synopsis "Read and write audio file tags")
+ (description
+ "MediaFile is a simple interface to the metadata tags for many audio file
+formats. It wraps Mutagen, a high-quality library for low-level tag
+manipulation, with a high-level, format-independent interface for a common set
+of tags.")
+ (license license:expat)))
+
(define-public python-musicbrainzngs
(package
(name "python-musicbrainzngs")
diff --git a/gnu/packages/patches/python-mediafile-wavpack.patch b/gnu/packages/patches/python-mediafile-wavpack.patch
new file mode 100644
index 0000000000..9839fe87b5
--- /dev/null
+++ b/gnu/packages/patches/python-mediafile-wavpack.patch
@@ -0,0 +1,57 @@
+This patch has already been applied upstream, but is not included in the
+current release 0.6.0.
+
+From d2fc3b59f77c515b02dfe7ad936f89264375d2b4 Mon Sep 17 00:00:00 2001
+From: Adrian Sampson <adrian@radbox.org>
+Date: Wed, 29 Jul 2020 19:42:57 -0400
+Subject: [PATCH] Fix test for WavPack bitrate
+
+Fixes #34.
+---
+ docs/index.rst | 5 +++++
+ mediafile.py | 2 +-
+ test/test_mediafile.py | 2 +-
+ 3 files changed, 7 insertions(+), 2 deletions(-)
+
+diff --git a/docs/index.rst b/docs/index.rst
+index 7b622df..1465405 100644
+--- a/docs/index.rst
++++ b/docs/index.rst
+@@ -100,6 +100,11 @@ Internals
+ Changelog
+ ---------
+
++v0.7.0
++''''''
++
++- Mutagen 1.45.0 or later is now required.
++
+ v0.6.0
+ ''''''
+
+diff --git a/mediafile.py b/mediafile.py
+index 23fadaf..9e9d063 100644
+--- a/mediafile.py
++++ b/mediafile.py
+@@ -56,7 +56,7 @@
+ import six
+
+
+-__version__ = '0.6.0'
++__version__ = '0.7.0'
+ __all__ = ['UnreadableFileError', 'FileTypeError', 'MediaFile']
+
+ log = logging.getLogger(__name__)
+diff --git a/test/test_mediafile.py b/test/test_mediafile.py
+index e9e1850..7f17f44 100644
+--- a/test/test_mediafile.py
++++ b/test/test_mediafile.py
+@@ -907,7 +907,7 @@ class WavpackTest(ReadWriteTestBase, unittest.TestCase):
+ 'bitrate': 109312,
+ 'format': u'WavPack',
+ 'samplerate': 44100,
+- 'bitdepth': 0,
++ 'bitdepth': 16,
+ 'channels': 1,
+ }
+