Chris@123
|
1 import os
|
Chris@123
|
2 from setuptools import setup, find_packages, Extension
|
Chris@121
|
3 import numpy as np
|
Chris@120
|
4
|
Chris@120
|
5 sdkdir = 'vamp-plugin-sdk/src/vamp-hostsdk/'
|
Chris@120
|
6 vpydir = 'native/'
|
Chris@120
|
7
|
Chris@120
|
8 sdkfiles = [ 'Files', 'PluginBufferingAdapter', 'PluginChannelAdapter',
|
Chris@120
|
9 'PluginHostAdapter', 'PluginInputDomainAdapter', 'PluginLoader',
|
Chris@120
|
10 'PluginSummarisingAdapter', 'PluginWrapper', 'RealTime' ]
|
Chris@120
|
11 vpyfiles = [ 'PyPluginObject', 'PyRealTime', 'VectorConversion', 'vampyhost' ]
|
Chris@120
|
12
|
Chris@123
|
13 srcfiles = [
|
Chris@123
|
14 sdkdir + f + '.cpp' for f in sdkfiles
|
Chris@123
|
15 ] + [
|
Chris@123
|
16 vpydir + f + '.cpp' for f in vpyfiles
|
Chris@123
|
17 ]
|
Chris@120
|
18
|
Chris@123
|
19 def read(*paths):
|
Chris@123
|
20 with open(os.path.join(*paths), 'r') as f:
|
Chris@123
|
21 return f.read()
|
Chris@123
|
22
|
Chris@120
|
23 vampyhost = Extension('vampyhost',
|
Chris@120
|
24 sources = srcfiles,
|
Chris@122
|
25 define_macros = [ ('_USE_MATH_DEFINES', 1) ],
|
Chris@121
|
26 include_dirs = [ 'vamp-plugin-sdk', np.get_include() ])
|
Chris@120
|
27
|
Chris@120
|
28 setup (name = 'vamp',
|
Chris@141
|
29 version = '1.1.0',
|
Chris@123
|
30 url = 'https://code.soundsoftware.ac.uk/projects/vampy-host',
|
Chris@125
|
31 description = 'Use Vamp plugins for audio feature analysis.',
|
Chris@123
|
32 long_description = ( read('README.rst') + '\n\n' + read('COPYING.rst') ),
|
Chris@123
|
33 license = 'MIT',
|
Chris@123
|
34 packages = find_packages(exclude = [ '*test*' ]),
|
Chris@123
|
35 ext_modules = [ vampyhost ],
|
Chris@120
|
36 requires = [ 'numpy' ],
|
Chris@132
|
37 author = 'Chris Cannam, George Fazekas',
|
Chris@132
|
38 author_email = 'cannam@all-day-breakfast.com',
|
Chris@123
|
39 classifiers = [
|
Chris@123
|
40 'Development Status :: 4 - Beta',
|
Chris@123
|
41 'Intended Audience :: Science/Research',
|
Chris@123
|
42 'Intended Audience :: Developers',
|
Chris@123
|
43 'License :: OSI Approved :: MIT License',
|
Chris@125
|
44 'Operating System :: MacOS :: MacOS X',
|
Chris@123
|
45 'Operating System :: Microsoft :: Windows',
|
Chris@123
|
46 'Operating System :: POSIX',
|
Chris@123
|
47 'Programming Language :: Python',
|
Chris@123
|
48 'Programming Language :: Python :: 2',
|
Chris@123
|
49 'Programming Language :: Python :: 3',
|
Chris@123
|
50 'Topic :: Multimedia :: Sound/Audio :: Analysis'
|
Chris@123
|
51 ]
|
Chris@123
|
52 )
|