From: Guillaume Pellerin Date: Thu, 23 Oct 2014 09:53:16 +0000 (+0200) Subject: add new Gain fx, fix encoder docstrings, update list processor style X-Git-Tag: 0.6~2^2~16 X-Git-Url: https://git.parisson.com/?a=commitdiff_plain;h=bcfcb84d33c3e38071301728d9b5602ff77fde33;p=timeside.git add new Gain fx, fix encoder docstrings, update list processor style --- diff --git a/doc/source/news.rst b/doc/source/news.rst index a6477e9..7856a8f 100644 --- a/doc/source/news.rst +++ b/doc/source/news.rst @@ -3,6 +3,7 @@ News 0.5.7 + * WARNING! some processor ids have changed. Please see the full list below. * Add a Docker development box * Add a Vagrant development box * Add a Debian package installation procedure diff --git a/timeside/__init__.py b/timeside/__init__.py index 1a1e352..43fa954 100644 --- a/timeside/__init__.py +++ b/timeside/__init__.py @@ -35,7 +35,7 @@ _WITH_YAAFE = ts_package.check_yaafe() _WITH_VAMP = ts_package.check_vamp() -_packages_with_processors = ['decoder', 'analyzer', 'encoder', 'grapher'] +_packages_with_processors = ['decoder', 'analyzer', 'encoder', 'grapher', 'fx'] __all__ = ['api', 'core'] __all__.extend(_packages_with_processors) diff --git a/timeside/core.py b/timeside/core.py index 1f45660..44f250a 100644 --- a/timeside/core.py +++ b/timeside/core.py @@ -293,7 +293,7 @@ def list_processors(interface=IProcessor, prefix=""): list_processors(interface=i, prefix=prefix + " ") procs = processors(interface, False) for p in procs: - print prefix + " - '%s' :" % p.id() + print prefix + " * %s" % p.id() print prefix + " \t\t%s" % p.description() diff --git a/timeside/effects/gain.py b/timeside/effects/gain.py deleted file mode 100644 index 2c69222..0000000 --- a/timeside/effects/gain.py +++ /dev/null @@ -1,26 +0,0 @@ -# -*- coding: utf-8 -*- - -from timeside.core import Processor, implements, interfacedoc, FixedSizeInputAdapter -from timeside.api import * -import numpy - - -class Gain(Processor): - implements(IEffect) - - @interfacedoc - def __init__(self, gain=1.0): - self.gain = gain - - @staticmethod - @interfacedoc - def id(): - return "test_gain" - - @staticmethod - @interfacedoc - def name(): - return "Gain test effect" - - def process(self, frames, eod=False): - return numpy.multiply(frames, self.gain), eod diff --git a/timeside/encoder/audiosink.py b/timeside/encoder/audiosink.py index 489459d..08c7023 100644 --- a/timeside/encoder/audiosink.py +++ b/timeside/encoder/audiosink.py @@ -27,7 +27,7 @@ from timeside.api import IEncoder class AudioSink(GstEncoder): - """gstreamer-based Audio Sink + """Gstreamer-based Audio Sink This encoder plays the decoded audio stream to the sound card diff --git a/timeside/encoder/flac.py b/timeside/encoder/flac.py index 6debf93..25c6486 100644 --- a/timeside/encoder/flac.py +++ b/timeside/encoder/flac.py @@ -25,7 +25,9 @@ from timeside.api import IEncoder class FlacEncoder(GstEncoder): + """FLAC encoder based on Gstreamer""" + implements(IEncoder) @interfacedoc diff --git a/timeside/encoder/m4a.py b/timeside/encoder/m4a.py index 668585e..e1ba6d9 100644 --- a/timeside/encoder/m4a.py +++ b/timeside/encoder/m4a.py @@ -26,7 +26,8 @@ from timeside.api import IEncoder class AacEncoder(GstEncoder): - """ gstreamer-based AAC encoder """ + """AAC encoder based on Gstreamer""" + implements(IEncoder) def __init__(self, output, streaming=False, overwrite=False): diff --git a/timeside/encoder/mp3.py b/timeside/encoder/mp3.py index 974d94f..21bf339 100644 --- a/timeside/encoder/mp3.py +++ b/timeside/encoder/mp3.py @@ -32,7 +32,8 @@ from timeside.api import IEncoder class Mp3Encoder(GstEncoder): - """ gstreamer-based MP3 encoder """ + """MP3 encoder based on Gstreamer""" + implements(IEncoder) @interfacedoc diff --git a/timeside/encoder/ogg.py b/timeside/encoder/ogg.py index 0122295..ec9fe75 100644 --- a/timeside/encoder/ogg.py +++ b/timeside/encoder/ogg.py @@ -25,7 +25,9 @@ from timeside.api import IEncoder class VorbisEncoder(GstEncoder): + """OGG Vorbis encoder based on Gstreamer""" + implements(IEncoder) @interfacedoc diff --git a/timeside/encoder/opus.py b/timeside/encoder/opus.py index b58b5b5..0697a5f 100644 --- a/timeside/encoder/opus.py +++ b/timeside/encoder/opus.py @@ -32,7 +32,8 @@ from timeside.api import IEncoder class OpusEncoder(GstEncoder): - """ gstreamer-based Opus encoder """ + """Opus encoder based on Gstreamer""" + implements(IEncoder) @interfacedoc diff --git a/timeside/encoder/wav.py b/timeside/encoder/wav.py index 4635099..2f382c0 100644 --- a/timeside/encoder/wav.py +++ b/timeside/encoder/wav.py @@ -27,7 +27,8 @@ from timeside.api import IEncoder class WavEncoder(GstEncoder): - """ gstreamer-based WAV encoder """ + """WAV encoder based on Gstreamer""" + implements(IEncoder) @interfacedoc diff --git a/timeside/encoder/webm.py b/timeside/encoder/webm.py index fdc3722..4119734 100644 --- a/timeside/encoder/webm.py +++ b/timeside/encoder/webm.py @@ -25,7 +25,9 @@ from timeside.api import IEncoder class WebMEncoder(GstEncoder): - """WebM encoder based on Gstreamer `webmmux` muxer""" + + """WebM encoder based on Gstreamer""" + implements(IEncoder) def __init__(self, output, streaming=False, overwrite=False, video=False): diff --git a/timeside/fx/gain.py b/timeside/fx/gain.py new file mode 100644 index 0000000..cfb2831 --- /dev/null +++ b/timeside/fx/gain.py @@ -0,0 +1,28 @@ +# -*- coding: utf-8 -*- + +from timeside.core import Processor, implements, interfacedoc +from timeside.api import IEffect +import numpy + + +class Gain(Processor): + """Gain effect processor""" + + implements(IEffect) + + @interfacedoc + def __init__(self, gain=1.0): + self.gain = gain + + @staticmethod + @interfacedoc + def id(): + return "fx_gain" + + @staticmethod + @interfacedoc + def name(): + return "Gain effect" + + def process(self, frames, eod=False): + return numpy.multiply(frames, self.gain), eod