Changeset 358
- Timestamp:
- 07/10/06 23:36:06 (2 years ago)
- Files:
-
- trunk/configure.ac (modified) (1 diff)
- trunk/src/mesk/__init__.py (modified) (2 diffs)
- trunk/src/mesk/audio/__init__.py (modified) (2 diffs)
- trunk/src/mesk/audio/mp3.py (modified) (1 diff)
- trunk/src/mesk/utils.py (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
- Modified
- Copied
- Moved
trunk/configure.ac
r308 r358 36 36 37 37 AC_PROG_MAKE_SET 38 ACX_CHECK_PYTHON([2.4])39 ACX_CHECK_EYED3([0.6.10])40 ACX_CHECK_GST_PYTHON([0.8.11])41 38 42 39 AC_CONFIG_FILES([Makefile\ trunk/src/mesk/__init__.py
r350 r358 18 18 # $Id$ 19 19 ################################################################################ 20 import os20 import sys, os 21 21 22 import utils 22 23 import common.i18n 23 24 _ = common.i18n._ … … 26 27 from info import APP_VERSION 27 28 from info import APP_MAINTAINER 29 30 # Check python version 31 REQUIRE_PYTHON_VERSION = (2, 4) 32 import platform 33 if utils.version_cmp(platform.python_version_tuple(), 34 REQUIRE_PYTHON_VERSION) == -1: 35 found = '.'.join([str(v) for v in platform.python_version_tuple()]) 36 print >> sys.stderr, 'Python version %s required, found version %s' % \ 37 ('.'.join([str(v) for v in REQUIRE_PYTHON_VERSION]), 38 found) 39 sys.exit(1) 28 40 29 41 MESK_DIR = os.path.expandvars('${HOME}/.%s' % APP_NAME.lower()) trunk/src/mesk/audio/__init__.py
r327 r358 18 18 # $Id$ 19 19 ################################################################################ 20 import os, traceback20 import os, sys, traceback 21 21 import mimetypes 22 22 mimetypes.init() 23 23 24 import pygst 25 pygst.require('0.10') 26 import gst 24 import mesk 25 import mesk.utils 26 # At least versions 27 REQUIRE_GST_VERSION = (0, 10, 8) 28 REQUIRE_PYGST_VERSION = (0, 10, 4) 29 try: 30 import pygst 31 pygst.require('.'.join([str(v) for v in REQUIRE_GST_VERSION[:-1]])) 32 import gst 33 except: 34 print >> sys.stderr, 'GStreamer version %s is required' % \ 35 '.'.join([str(v) for v in REQUIRE_GST_VERSION]) 36 sys.exit(1) 37 38 if mesk.utils.version_cmp(gst.pygst_version, REQUIRE_PYGST_VERSION) == -1: 39 print >> sys.stderr, 'PyGst version %s is required, found %s' % \ 40 ('.'.join([str(v) for v in REQUIRE_PYGST_VERSION]), 41 '.'.join([str(v) for v in gst.pygst_version])) 42 sys.exit(1) 27 43 28 44 from mesk.common.i18n import _ … … 52 68 continue 53 69 70 # Ensure that the audio layer supports at least one type of audio format 71 if not supported_mimetypes or not supported_extensions: 72 print >> sys.stderr, 'No audio formats supported' 73 sys.exit(1) 74 75 ### End module initialization ### 76 54 77 class UnsupportedFormat(Exception): 55 78 '''Thrown when a audio format is not supported''' trunk/src/mesk/audio/mp3.py
r353 r358 18 18 # $Id$ 19 19 ################################################################################ 20 import gst, eyeD3 21 from eyeD3.frames import ImageFrame 20 import sys 21 import gst 22 import mesk 23 import mesk.utils 24 _ = mesk.common.i18n._ 22 25 23 gst.element_factory_make("mad") 26 # Test for mp3 support in gstreamer 27 try: 28 gst.element_factory_make('mad') 29 except Exception, ex: 30 print >> sys.stderr, 'MP3 audio format is unsupported' 31 raise ex 32 33 REQUIRE_EYED3_VERSION = (0, 6, 11) 34 try: 35 import eyeD3 36 if mesk.utils.version_cmp(eyeD3.eyeD3Version.split('.'), 37 REQUIRE_EYED3_VERSION) == -1: 38 raise Exception() 39 except Exception, ex: 40 print >> sys.stderr, 'eyeD3 version version %s is required' % \ 41 '.'.join([str(v) for v in REQUIRE_EYED3_VERSION]) 42 raise 43 else: 44 from eyeD3.frames import ImageFrame 24 45 25 46 NAME = 'MP3' 26 47 EXTENSIONS = ['mp3', 'mp2'] 27 48 MIME_TYPES = ['audio/mpeg'] 28 29 import mesk30 _ = mesk.common.i18n._31 49 32 50 from source import AudioSource, AudioMetaData trunk/src/mesk/utils.py
r298 r358 105 105 return is_in_dir 106 106 107 # Version compares 108 def version_cmp(v1, v2): 109 lhs = [] 110 rhs = [] 111 for i in range(max(len(v1), len(v2))): 112 try: 113 lhs.append(int(v1[i])) 114 except IndexError: 115 lhs.append(0) 116 try: 117 rhs.append(int(v2[i])) 118 except IndexError: 119 rhs.append(0) 120 121 for i in range(len(lhs)): 122 if lhs[i] > rhs[i]: 123 return 1 124 elif lhs[i] < rhs[i]: 125 return -1 126 return 0
