]> git.parisson.com Git - telemeta.git/commitdiff
Add resolution analyzer, fix length display fix rules and short description
authoryomguy <>
Wed, 19 Nov 2008 11:09:23 +0000 (11:09 +0000)
committeryomguy <>
Wed, 19 Nov 2008 11:09:23 +0000 (11:09 +0000)
debian/control
debian/rules
telemeta/analysis/__init__.py
telemeta/analysis/channels.py
telemeta/analysis/length.py
telemeta/analysis/resolution.py [new file with mode: 0644]

index 9199f01b685e4ca305a62f6cfbe45b24116bd8f1..60191786048600ad90ad4ee1b54692a9142b6813 100644 (file)
@@ -11,7 +11,7 @@ Architecture: any
 Depends: ${python:Depends}, python-xml, python-mutagen, python-django (>= 1.0-1), python-imaging (>= 1.1.6), sox, vorbis-tools, flac, normalize-audio, python-mysqldb, mysql-server, octave2.9, python-tk, libgd2-xpm, libsndfile1 (>= 1.0.17), python-numpy, python-ctypes (>= 1.0.1), python-scikits-audiolab (>= 0.7)
 Recommends: lame, vamp-examples
 Suggests: ecasound, festival, par2
-Description: web frontend to backup, transcode and tag any audio content with metadata
+Description: web frontend to backup, transcode and publish any audio content with metadata
  Telemeta is a global audio archiving program which introduces useful and 
  secure indexing methods to backup digitalized audio files and metadata 
  dictionnaries. It is dedicated to backup any digitized and documented sound 
index a37cc56d741818695c5bee34b55f9014c2e81426..05ba79050317e506d901cd3647832ecf1d9857c9 100755 (executable)
@@ -6,6 +6,6 @@ include /usr/share/cdbs/1/rules/debhelper.mk
 include /usr/share/cdbs/1/class/python-distutils.mk
 
 DEB_PYTHON_SETUP_CMD := setup.py
-DEB_COMPRESS_EXCLUDE := .pyc /.svn
-DEB_STRIP_EXCLUDE := .pyc /.svn
+DEB_COMPRESS_EXCLUDE := .pyc
+DEB_STRIP_EXCLUDE := .pyc
 
index 306e38882d6aa5f15f67c16892d05a05b11ca32f..f3b7d83227c9bee5b11aaeb921e16cd302865d54 100644 (file)
@@ -3,6 +3,7 @@ from telemeta.analysis.core import *
 from telemeta.analysis.channels import *
 from telemeta.analysis.format import *
 from telemeta.analysis.encoding import *
+from telemeta.analysis.resolution import *
 from telemeta.analysis.samplerate import *
 from telemeta.analysis.length import *
 from telemeta.analysis.max_level import *
index 6adf3561abfae35f078f9a9238918e53fe686cba..fadd4382860cafa701116a0827eab65f0284dcea 100644 (file)
@@ -20,11 +20,16 @@ class ChannelAnalyser(AudioProcessor):
         return "nb_channels"
 
     def get_name(self):
-        return "Number of channels"
+        return "Channels"
 
     def get_unit(self):
         return ""
 
     def render(self, media_item, options=None):
         self.pre_process(media_item)
-        return self.channels
+        if self.channels == 1:
+            return 'mono'
+        if self.channels == 2:
+            return 'stereo'
+        else:
+            return self.channels
index c1817fba6f45940f7812abee1498b8bfed2917cb..83ce842579433cc6422a4abc51d6c0dc1e34d711 100644 (file)
@@ -10,6 +10,7 @@
 from telemeta.analysis.core import *
 from telemeta.analysis.api import IMediaItemAnalyzer
 import numpy
+import datetime
 
 class LengthAnalyzer(AudioProcessor):
     """Media item analyzer driver interface"""
@@ -23,8 +24,11 @@ class LengthAnalyzer(AudioProcessor):
         return "Length"
 
     def get_unit(self):
-        return "s"
+        return "h:m:s"
 
     def render(self, media_item, options=None):
         self.pre_process(media_item)
-        return numpy.round(float(self.frames)/float(self.samplerate),2)
+        media_time = numpy.round(float(self.frames)/(float(self.samplerate)*float(self.channels)),0)
+        #return str(media_time)
+        return datetime.timedelta(0,media_time)
+        
\ No newline at end of file
diff --git a/telemeta/analysis/resolution.py b/telemeta/analysis/resolution.py
new file mode 100644 (file)
index 0000000..33508c3
--- /dev/null
@@ -0,0 +1,39 @@
+# Copyright (C) 2008 Parisson SARL
+# All rights reserved.
+#
+# This software is licensed as described in the file COPYING, which
+# you should have received as part of this distribution. The terms
+# are also available at http://svn.parisson.org/telemeta/TelemetaLicense.
+#
+# Author: Guillaume Pellerin <yomguy@parisson.com>
+
+from telemeta.analysis.core import *
+from telemeta.analysis.api import IMediaItemAnalyzer
+import numpy
+
+class ResolutionAnalyser(AudioProcessor):
+    """Media item analyzer driver interface"""
+
+    implements(IMediaItemAnalyzer)
+
+    def get_id(self):
+        return "resolution"
+
+    def get_name(self):
+        return "Resolution"
+
+    def get_unit(self):
+        return "bits"
+
+    def render(self, media_item, options=None):
+        self.pre_process(media_item)
+        if '8' in self.encoding:
+            return 8
+        if '16' in self.encoding:
+            return 16
+        if '24' in self.encoding:
+            return 24
+        if '32' in self.encoding:
+            return 32
+        else:
+            return ''
\ No newline at end of file