To list all available plugins:
-.. doctest::
+.. doctest::
>>> import timeside
>>> timeside.core.list_processors() # doctest: +SKIP
.. doctest::
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> wavfile = samples['sweep.wav']
>>> decoder = get_processor('file_decoder')(wavfile)
>>> grapher = get_processor('waveform_simple')()
Then run the *magic* pipeline:
-.. doctest::
+.. doctest::
>>> (decoder | grapher | analyzer | encoder).run()
Render the grapher results:
-.. doctest::
+.. doctest::
>>> grapher.render(output='waveform.png')
Show the analyzer results:
-.. doctest::
+.. doctest::
>>> print 'Level:', analyzer.results # doctest: +ELLIPSIS
Level: {'level.max': AnalyzerResult(...)}
>>> import timeside
>>> from timeside.core import get_processor
->>> from timeside.tools.test_samples import samples
+>>> from timeside.core.tools.test_samples import samples
>>> import numpy as np
>>> audio_file = samples['sweep.wav']
>>> decoder = get_processor('file_decoder')(audio_file, duration=1)
>>> import timeside.core
>>> from timeside.core import get_processor
->>> from timeside.tools.test_samples import samples
+>>> from timeside.core.tools.test_samples import samples
>>> import numpy as np
>>> audio_file = samples['sweep.mp3']
.. doctest:: test_1
>>> import timeside
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> from timeside.core import get_processor
>>> decoder = get_processor('file_decoder')(samples["sweep.wav"])
>>> encoder = get_processor('vorbis_encoder')("sweep.ogg")
.. doctest:: test_2
>>> import timeside
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> from timeside.core import get_processor
>>> decoder = get_processor('file_decoder')(samples["sweep.wav"])
>>> spectrogram = get_processor('spectrogram_lin')(width=400, height=150)
.. doctest:: test_3
>>> import timeside
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> from timeside.core import get_processor
>>> decoder = get_processor('file_decoder')(samples["sweep.wav"])
>>> levels = get_processor('level')()
from unit_timeside import unittest, TestRunner
from timeside.plugins.decoder.file import FileDecoder
from timeside.plugins.analyzer.dc import MeanDCShift
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
class TestAnalyzerDC(unittest.TestCase):
from unit_timeside import unittest, TestRunner
from timeside.plugins.decoder.file import FileDecoder
from timeside.plugins.analyzer.level import Level
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
class TestAnalyzerLevel(unittest.TestCase):
import timeside.core
from timeside.plugins.decoder.file import FileDecoder
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
from timeside.plugins.decoder.file import FileDecoder
from timeside.core import get_processor
from timeside.core import _WITH_AUBIO
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_AUBIO, 'Aubio library is not available')
from timeside.plugins.decoder.file import FileDecoder
from timeside.core import get_processor
from timeside.core import _WITH_AUBIO
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_AUBIO, 'Aubio library is not available')
from timeside.core import get_processor
from timeside.core import _WITH_AUBIO
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_AUBIO, 'Aubio library is not available')
from timeside.core import get_processor
from timeside.core import _WITH_AUBIO
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_AUBIO, 'Aubio library is not available')
from timeside.core import get_processor
from timeside.core import _WITH_AUBIO
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_AUBIO, 'Aubio library is not available')
from timeside.core.api import IProcessor
from timeside.core.component import implements, interfacedoc
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
SAMPLE_RATE_FORCED = 16000
OTHER_SAMPLE_RATE = 32000
from unit_timeside import unittest, TestRunner
from timeside.plugins.decoder.utils import get_uri, get_media_uri_info, path2uri
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
import os.path
from timeside.core.processor import ProcessPipe
from unit_timeside import unittest, TestRunner
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
import os.path
from timeside.plugins.analyzer.level import Level
from timeside.core.processor import ProcessPipe
from unit_timeside import unittest, TestRunner
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
#from glib import GError as GST_IOError
# HINT : to use later with Gnonlin only
from unit_timeside import unittest, TestRunner
import timeside
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
from tempfile import NamedTemporaryFile
import os
from timeside.plugins.decoder.file import FileDecoder
from unit_timeside import unittest, TestRunner
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
import tempfile
import os.path
from unit_timeside import unittest, TestRunner
import timeside
from timeside.plugins.decoder.file import FileDecoder
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
class TestProcessPipe(unittest.TestCase):
from unit_timeside import TestRunner
import doctest
import timeside
-from timeside.tools.package import discover_modules
+from timeside.core.tools.package import discover_modules
def load_tests(loader, tests, ignore):
# -*- coding: utf-8 -*-
from unit_timeside import unittest, TestRunner
-from timeside.tools.parameters import HasParam, HasTraits
-from timeside.tools.parameters import Unicode, Int, Float, Range
+from timeside.core.tools.parameters import HasParam, HasTraits
+from timeside.core.tools.parameters import Unicode, Int, Float, Range
import simplejson as json
import os
from unit_timeside import unittest, TestRunner
from tools import tmp_file_sink
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
class TestTranscodingFromWav(unittest.TestCase):
from unit_timeside import unittest, TestRunner
from tools import tmp_file_sink
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
class TestTranscodingStreaming(unittest.TestCase):
from timeside.plugins.decoder.file import FileDecoder
from timeside.core import get_processor
from timeside.core import _WITH_VAMP
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
@unittest.skipIf(not _WITH_VAMP, 'vamp-simple-host library is not available')
from unit_timeside import unittest, TestRunner
from timeside.plugins.decoder.file import FileDecoder
-from timeside.tools.test_samples import samples
+from timeside.core.tools.test_samples import samples
from timeside.core import _WITH_YAAFE
if _WITH_YAAFE:
__version__ = '0.6.2'
-from ..tools import package as ts_package
+from .tools import package as ts_package
# Check Availability of Gstreamer python bindings
ts_package.check_gstreamer()
from __future__ import division
from .processor import Processor
-from ..tools import hdf5
+from .tools import hdf5
import timeside # import __version__
from timeside.core import implements, interfacedoc, abstract
# along with TimeSide. If not, see <http://www.gnu.org/licenses/>.
-from timeside.core import Processor, implements, interfacedoc
-from ..core import abstract
+from timeside.core import Processor, implements, interfacedoc, abstract
from timeside.core.api import IEncoder
-from timeside.tools.gstutils import numpy_array_to_gst_buffer, MainloopThread
+from .tools.gstutils import numpy_array_to_gst_buffer, MainloopThread
import pygst
pygst.require('0.10')
from .component import implements, implementations, interfacedoc
from .api import IProcessor
from .exceptions import Error, PIDError, ApiError
-from ..tools.parameters import HasParam
+from .tools.parameters import HasParam
import re
import numpy
from importlib import import_module
import warnings
-from ..core.exceptions import VampImportError
+from ..exceptions import VampImportError
def discover_modules(subpackage, package=None):
import pkgutil
def check_vamp():
"Check Vamp host availability"
- from ..core.exceptions import VampImportError
try:
from timeside.plugins.analyzer.externals import vamp_plugin
import numpy as np
from timeside.plugins.analyzer.utils import nextpow2
-from timeside.tools.parameters import Float, HasTraits
+from timeside.core.tools.parameters import Float, HasTraits
class AubioPitch(Analyzer):
from timeside.core import implements, interfacedoc
from timeside.core.analyzer import Analyzer
from timeside.core.api import IAnalyzer
-from timeside.tools.parameters import HasTraits, List
+from timeside.core.tools.parameters import HasTraits, List
import subprocess
import tempfile
import yaafelib
import numpy
from timeside.core.preprocessors import downmix_to_mono
-from timeside.tools.parameters import HasTraits, ListUnicode, Float
+from timeside.core.tools.parameters import HasTraits, ListUnicode, Float
class Yaafe(Analyzer):
Examples
--------
>>> import timeside
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> from timeside.core import get_processor
>>> source = samples['C4_scale.wav']
>>> FileDecoder = get_processor('file_decoder')
>>> import timeside
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> source = samples['sweep.mp3']
>>> decoder = get_processor('file_decoder')(uri=source)
>>> level = get_processor('level')()
import numpy as np
from numpy import pi as Pi
from scipy import signal
-from timeside.tools.parameters import Int, HasTraits
+from timeside.core.tools.parameters import Int, HasTraits
class OnsetDetectionFunction(Analyzer):
from timeside.core.analyzer import Analyzer
from timeside.core.api import IAnalyzer
from timeside.core.preprocessors import downmix_to_mono, frames_adapter
-from timeside.tools.buffering import BufferTable
-from timeside.tools.parameters import Int, HasTraits
+from timeside.core.tools.buffering import BufferTable
+from timeside.core.tools.parameters import Int, HasTraits
import numpy as np
--------
>>> import timeside
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> audio_source = samples['sweep.wav']
>>> decoder = get_processor('file_decoder')(uri=audio_source)
>>> spectrogram = get_processor('spectrogram_analyzer')(input_blocksize=2048, input_stepsize=1024)
import timeside
from timeside.core import get_processor
- from timeside.tools.test_samples import samples
+ from timeside.core.tools.test_samples import samples
audio_source = samples['sweep.wav']
decoder = get_processor('file_decoder')(uri=audio_source)
spectrogram = get_processor('spectrogram_analyzer')(input_blocksize=2048,
from timeside.core.analyzer import Analyzer
from timeside.core.api import IAnalyzer
from timeside.core.preprocessors import downmix_to_mono, frames_adapter
-from timeside.tools.parameters import Int, HasTraits
-from timeside.tools.buffering import BufferTable
+from timeside.core.tools.parameters import Int, HasTraits
+from timeside.core.tools.buffering import BufferTable
from timeside.plugins.analyzer.spectrogram import Spectrogram
import numpy as np
--------
>>> import timeside
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> audio_source = samples['sweep.wav']
>>> decoder = get_processor('file_decoder')(uri=audio_source)
>>> spectrogram = get_processor('spectrogram_analyzer_buffer')(input_blocksize=2048, input_stepsize=1024)
import timeside
from timeside.core import get_processor
- from timeside.tools.test_samples import samples
+ from timeside.core.tools.test_samples import samples
audio_source = samples['sweep.wav']
decoder = get_processor('file_decoder')(uri=audio_source)
spectrogram = get_processor('spectrogram_analyzer_buffer')(input_blocksize=2048,
from __future__ import division
from timeside.core.decoder import Decoder, IDecoder, implements, interfacedoc
-from timeside.tools.gstutils import MainloopThread, gobject
-from timeside.tools.gstutils import gst_buffer_to_numpy_array
+from timeside.core.tools.gstutils import MainloopThread, gobject
+from timeside.core.tools.gstutils import gst_buffer_to_numpy_array
import threading
from timeside.plugins.decoder.utils import get_uri, get_media_uri_info, stack, get_sha1
--------
>>> import timeside
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> audio_source = samples['sweep.wav']
>>> FileDecoder = get_processor('file_decoder') # Get the decoder class
>>> # Use decoder with default parameters
from __future__ import division
from timeside.core.decoder import Decoder, IDecoder, interfacedoc, implements
-from timeside.tools.gstutils import MainloopThread, gobject
+from timeside.core.tools.gstutils import MainloopThread, gobject
from timeside.plugins.decoder.file import FileDecoder
import Queue
import threading
'''
Return the secure hash digest with sha1 algorithm for a given file
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> wav_file = samples["C4_scale.wav"]
>>> print sha1sum_file(wav_file)
a598e78d0b5c90da54a77e34c083abdcd38d42ba
>>> import timeside
>>> from timeside.core import get_processor
- >>> from timeside.tools.test_samples import samples
+ >>> from timeside.core.tools.test_samples import samples
>>> wav_file = samples['sine440Hz_mono_1s.wav']
>>> d = get_processor('file_decoder')(wav_file)
>>> e = get_processor('live_encoder')()