Create a new analyzer result without arguments
- >>> import timeside.analyzer.core as coreA
- >>> res = coreA.AnalyzerResult()
+ >>> from timeside.analyzer.core import AnalyzerResult
+ >>> res = AnalyzerResult()
This default result has all the metadata and dataObject attribute
Framewise
---------
->>> res = coreA.AnalyzerResult(time_mode='framewise')
+>>> res = AnalyzerResult(time_mode='framewise')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'frame_metadata', 'label_metadata', 'parameters']
No frame metadata information is needed for these modes.
The 'frame_metadata' key/attribute is deleted.
->>> res = coreA.AnalyzerResult(time_mode='global')
+>>> res = AnalyzerResult(time_mode='global')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'label_metadata', 'parameters']
>>> res.data
Segment
-------
->>> res = coreA.AnalyzerResult(time_mode='segment')
+>>> res = AnalyzerResult(time_mode='segment')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'label_metadata', 'parameters']
>>> res.data
Event
-----
->>> res = coreA.AnalyzerResult(time_mode='event')
+>>> res = AnalyzerResult(time_mode='event')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'label_metadata', 'parameters']
>>> res.data
-----
The label_metadata key is deleted.
->>> res = coreA.AnalyzerResult(data_mode='value')
+>>> res = AnalyzerResult(data_mode='value')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'frame_metadata', 'parameters']
Label
-----
->>> res = coreA.AnalyzerResult(data_mode='label')
+>>> res = AnalyzerResult(data_mode='label')
>>> res.keys()
['data_mode', 'time_mode', 'id_metadata', 'data', 'audio_metadata', 'frame_metadata', 'label_metadata', 'parameters']
contain the root `toctree` directive.
==============================================
-TimeSide : open and fast web audio components
+TimeSide : open web audio processing framework
==============================================
Contents:
-
-
-
Install
=======
-TimeSide needs some other python modules to run. The following methods explain how to install all dependencies on a Debian based system like Debian, Ubuntu, etc.. On Fedora and Red-Hat you might replace 'apt-get by 'yum', on Gentoo by 'emerge', or any other package manager you like :
-.. code-block:: bash
+TimeSide needs some other python modules to run. The following methods explain how to install all dependencies on various Linux based systems.
- $ sudo apt-get update
- $ sudo apt-get install python python-pip python-setuptools python-gobject \
- python-gst0.10 gstreamer0.10-plugins-base gir1.2-gstreamer-0.10 \
- gstreamer0.10-plugins-good gstreamer0.10-plugins-bad \
- gstreamer0.10-plugins-ugly gobject-introspection python-mutagen \
- python-scipy python-h5py
+On Debian, Ubuntu, etc:
- $ sudo pip install timeside
+.. code-block:: bash
+
+ $ echo "deb http://debian.parisson.com/debian/ stable main" | sudo tee -a /etc/apt/sources.list
+ $ sudo apt-get update
+ $ sudo apt-get install python-timeside
-To get non-free (MP3, MP4, AAC, etc) decoding and encoding features, add Debian Multimedia repository and install the modules :
+On other system, you'll need to install the Gstreamer framework and modules, aubio (>=0.4), yaafe (>=0.64) and some more programs.
+For example on Fedora and Red-Hat:
.. code-block:: bash
- $ echo "deb http://www.deb-multimedia.org stable main non-free" | sudo tee -a /etc/apt/sources.list
- $ sudo apt-get update
- $ apt-get install gstreamer0.10-lame gstreamer0.10-plugins-really-bad gstreamer0.10-plugins-ugly
+ $ sudo yum install gcc python python-devel gstreamer pygobject2 gstreamer-python \
+ gstreamer gstreamer-plugins-bad-free gstreamer-plugins-bad-free-extras \
+ gstreamer-plugins-base gstreamer-plugins-good
+
+ $ sudo pip install timeside
+
Introduction
==============
+TimeSide is a set of python components enabling audio analysis, imaging, transcoding and streaming. Its high-level API has been designed to enable complex processing on big media data corpus. Its simple plugin architecture can be adapted to various usecases.
+
+It also includes a smart HTML5 interactive user interface embeddable in any web application to provide various media format playback, on the fly transcoding and streaming, fancy waveforms and spectrograms, various low and high level audio analyzers, semantic labelling and segmentation.
+
+
+Goals
+=====
+
+We just *need* a python library to:
+
+ * Do asynchronous and fast audio processing with Python,
+ * Decode audio frames from ANY format into numpy arrays,
+ * Analyze audio content with some state-of-the-art audio feature extraction libraries,
+ * Organize, serialize and save analysis metadata through various formats,
+ * Draw various fancy waveforms, spectrograms and other cool graphers,
+ * Transcode audio data in various media formats and stream them through web apps,
+ * Playback and interact *on demand* through a smart high-level HTML5 extensible player,
+ * Index, tag and organize semantic metadata (see `Telemeta <http://telemeta.org>`_ which embed TimeSide).
+
+Here is a schematic diagram of the TimeSide engine architecture:
+
+.. image:: http://timeside.googlecode.com/git/doc/img/timeside_schema.png
+
+
+Available plugins
+=================
+
+ * Decoder:
+ - ALL known media formats thanks to Gstreamer
+
+ * Analyzers:
+ - MaxLevel, MeanLevel
+ - DC
+ - any Yaafe data flow
+ - Aubio BPM, Beats, MFCC, ...
+
+ * Graphers:
+ - WaveForm
+ - Contour
+ - Spectrogram
+
+ * Encoders:
+ - WAV
+ - FLAC
+ - WebM
+ - OGG Vorbis
+ - MP3
+
+ * Serializers:
+ - YAML
+ - JSON
+ - XML
+ - HDF5
News
=====
+0.4.5
+
+ * (re)fix Pillow support (#12)
+ * fix some python package rules
+ * add a Debian package directory (thanks to piem, in git repo only)
+
0.4.4
* Only setup bugfixes
'Topic :: Software Development :: Libraries :: Python Modules',
]
-KEYWORDS = 'audio analyze transcode graph player metadata'
+KEYWORDS = 'audio analysis features extraction transcoding graph plot HTML5 player metadata'
setup(
name = "TimeSide",
- url='http://code.google.com/p/timeside',
- description = "open and fast web audio components",
+ url='https://github.com/yomguy/TimeSide/',
+ description = "open web audio processing framework",
long_description = open('README.rst').read(),
- author = "Guillaume Pellerin, Paul Brossier, Riccardo Zaccarelli, Olivier Guilyardi",
- author_email = "yomguy@parisson.com, piem@piem.org, riccardo.zaccarelli@gmail.com, olivier@samalyse.com",
+ author = "Guillaume Pellerin, Paul Brossier, Thomas Fillon, Riccardo Zaccarelli, Olivier Guilyardi",
+ author_email = "yomguy@parisson.com, piem@piem.org, thomas@parisson.com, riccardo.zaccarelli@gmail.com, olivier@samalyse.com",
version = '0.5.0',
install_requires = [
'setuptools',
'numpy',
'mutagen',
'pil',
+ 'h5py',
+ 'yaml',
+ 'simplejson',
],
platforms=['OS Independent'],
license='Gnu Public License V2',