]> git.parisson.com Git - timeside.git/log
timeside.git
14 years agofix INSTALL rst, add INSTALL.html
yomguy [Fri, 18 Jun 2010 23:06:30 +0000 (23:06 +0000)]
fix INSTALL rst, add INSTALL.html

14 years agoadd tests.api module
yomguy [Fri, 18 Jun 2010 22:56:59 +0000 (22:56 +0000)]
add tests.api module

14 years agoclean examples, fix test_pipe
yomguy [Fri, 18 Jun 2010 22:54:43 +0000 (22:54 +0000)]
clean examples, fix test_pipe

14 years agoimprove spectrogram test
yomguy [Fri, 18 Jun 2010 22:37:18 +0000 (22:37 +0000)]
improve spectrogram test

14 years agofix spec default
yomguy [Fri, 18 Jun 2010 22:32:12 +0000 (22:32 +0000)]
fix spec default

14 years agoadd tests module
yomguy [Fri, 18 Jun 2010 22:22:08 +0000 (22:22 +0000)]
add tests module

14 years agofix no core call
yomguy [Fri, 18 Jun 2010 22:17:07 +0000 (22:17 +0000)]
fix no core call

14 years agofix grapher core defaults
yomguy [Fri, 18 Jun 2010 22:10:49 +0000 (22:10 +0000)]
fix grapher core defaults

14 years agofix bad default scheme
yomguy [Fri, 18 Jun 2010 20:09:33 +0000 (20:09 +0000)]
fix bad default scheme

14 years agorename color_scheme
yomguy [Fri, 18 Jun 2010 19:58:01 +0000 (19:58 +0000)]
rename color_scheme

14 years agoadd INSTALL and few infos
yomguy [Fri, 18 Jun 2010 18:14:25 +0000 (18:14 +0000)]
add INSTALL and few infos

14 years agoadd sub modules to setup
yomguy [Fri, 18 Jun 2010 17:09:25 +0000 (17:09 +0000)]
add sub modules to setup

14 years agofix many wrong init, fix decoder unknown uri, add dependencies
yomguy [Fri, 18 Jun 2010 16:57:22 +0000 (16:57 +0000)]
fix many wrong init, fix decoder unknown uri, add dependencies

14 years agochange example decoder name
yomguy [Fri, 18 Jun 2010 13:40:40 +0000 (13:40 +0000)]
change example decoder name

14 years agorm audiolab from examples
yomguy [Fri, 18 Jun 2010 10:34:16 +0000 (10:34 +0000)]
rm audiolab from examples

14 years agorevert module loading
yomguy [Fri, 18 Jun 2010 10:02:47 +0000 (10:02 +0000)]
revert module loading

14 years agofix setup for scripts
yomguy [Fri, 18 Jun 2010 08:32:50 +0000 (08:32 +0000)]
fix setup for scripts

14 years agomake script executable
yomguy [Fri, 18 Jun 2010 08:29:38 +0000 (08:29 +0000)]
make script executable

14 years agofix bad tools module for scripts
yomguy [Fri, 18 Jun 2010 08:27:26 +0000 (08:27 +0000)]
fix bad tools module for scripts

14 years agofix script path
yomguy [Thu, 17 Jun 2010 17:10:53 +0000 (17:10 +0000)]
fix script path

14 years agoadd scripts, rm bad header
yomguy [Thu, 17 Jun 2010 17:09:57 +0000 (17:09 +0000)]
add scripts, rm bad header

14 years agofix bad desc dict
yomguy [Thu, 17 Jun 2010 16:58:54 +0000 (16:58 +0000)]
fix bad desc dict

14 years agomake it a real module with a setup
yomguy [Thu, 17 Jun 2010 16:54:43 +0000 (16:54 +0000)]
make it a real module with a setup

14 years agopush example processors to modules, rm old modules
yomguy [Thu, 17 Jun 2010 15:43:56 +0000 (15:43 +0000)]
push example processors to modules, rm old modules

14 years agofix wrong buffer loops
yomguy [Thu, 17 Jun 2010 13:22:25 +0000 (13:22 +0000)]
fix wrong buffer loops

14 years agofix bad scheme test
yomguy [Wed, 16 Jun 2010 23:12:09 +0000 (23:12 +0000)]
fix bad scheme test

14 years agoadd waveform batch tool with scheme prefs
yomguy [Wed, 16 Jun 2010 22:54:58 +0000 (22:54 +0000)]
add waveform batch tool with scheme prefs

14 years agoreduce FFT size, add scheme test, trying to fix bad spectrum
yomguy [Wed, 16 Jun 2010 22:53:29 +0000 (22:53 +0000)]
reduce FFT size, add scheme test, trying to fix bad spectrum

15 years agoupdate test files (2)
yomguy [Mon, 26 Apr 2010 11:26:58 +0000 (11:26 +0000)]
update test files (2)

15 years agoupdate test samples
yomguy [Mon, 26 Apr 2010 11:24:02 +0000 (11:24 +0000)]
update test samples

15 years agofix img path properties
yomguy [Mon, 26 Apr 2010 11:02:28 +0000 (11:02 +0000)]
fix img path properties

15 years agoadd new audio test files, looping waveform tests with audio test files
yomguy [Mon, 26 Apr 2010 10:51:02 +0000 (10:51 +0000)]
add new audio test files, looping waveform tests with audio test files

15 years agorm obsolete test, to be rewritten
yomguy [Thu, 1 Apr 2010 21:15:58 +0000 (21:15 +0000)]
rm obsolete test, to be rewritten

15 years agochange processor module title, remove obsolete processors, cleanup
yomguy [Thu, 1 Apr 2010 21:04:31 +0000 (21:04 +0000)]
change processor module title, remove obsolete processors, cleanup

15 years agofix grapher buffer tasks, use URI for decoding in tests
yomguy [Thu, 11 Mar 2010 15:17:44 +0000 (15:17 +0000)]
fix grapher buffer tasks, use URI for decoding in tests

15 years agocleanup grapher tests
yomguy [Thu, 11 Mar 2010 15:02:07 +0000 (15:02 +0000)]
cleanup grapher tests

15 years agorm epydoc
yomguy [Thu, 11 Mar 2010 14:42:07 +0000 (14:42 +0000)]
rm epydoc

15 years agoadd epydoc HTML docs
yomguy [Thu, 11 Mar 2010 14:41:26 +0000 (14:41 +0000)]
add epydoc HTML docs

15 years ago- fix waveform peaks and centroid
yomguy [Wed, 3 Mar 2010 12:29:10 +0000 (12:29 +0000)]
- fix waveform peaks and centroid
- remove unnecessary adapters
- tested WAV, FLAC, OGG and MP3, mono and stereo. decoder OK
- TODO : breaks spectrogram linearity

15 years agotests/api/gstreamer.py: use actual number of channels to convert buffer
Paul Brossier [Wed, 3 Mar 2010 11:04:25 +0000 (11:04 +0000)]
tests/api/gstreamer.py: use actual number of channels to convert buffer

15 years ago- fix multiple spectral centroid calls
yomguy [Tue, 2 Mar 2010 16:54:09 +0000 (16:54 +0000)]
- fix multiple spectral centroid calls

15 years ago- add a spectrogram example
yomguy [Tue, 2 Mar 2010 16:18:28 +0000 (16:18 +0000)]
- add a spectrogram example

15 years ago- add mp3 sample example
yomguy [Tue, 2 Mar 2010 15:18:53 +0000 (15:18 +0000)]
- add mp3 sample example

15 years ago- cleanup
yomguy [Tue, 2 Mar 2010 15:17:29 +0000 (15:17 +0000)]
- cleanup

15 years ago- fix waveform scaling
yomguy [Tue, 2 Mar 2010 15:14:53 +0000 (15:14 +0000)]
- fix waveform scaling
- fix spectral centroid process (need a few more optimizations)
- hurray \o/ !

15 years agomv graphe module to grapher
yomguy [Wed, 24 Feb 2010 20:25:54 +0000 (20:25 +0000)]
mv graphe module to grapher

15 years agominor api enhancement: add IValueAnalyzer.__str__()
Olivier Guilyardi [Wed, 24 Feb 2010 14:34:58 +0000 (14:34 +0000)]
minor api enhancement: add IValueAnalyzer.__str__()

15 years agoapi: require to call parent from setup(), fix and clarify IDecoder.resolution()
Olivier Guilyardi [Wed, 24 Feb 2010 12:25:42 +0000 (12:25 +0000)]
api: require to call parent from setup(), fix and clarify IDecoder.resolution()

15 years ago- adapt graph core to the new api
yomguy [Tue, 23 Feb 2010 16:31:41 +0000 (16:31 +0000)]
- adapt graph core to the new api
- WARNING, at the moment, the waveform peaks don't scale to the image width. Will be fixed later.
- add a test : tests/api/test_pipe_waveform.py
- rm tests/api/test_pipe2.py

15 years agotests/api/: add use_gst option to test files
Paul Brossier [Tue, 23 Feb 2010 14:50:44 +0000 (14:50 +0000)]
tests/api/: add use_gst option to test files

15 years agotests/api/gstreamer.py: added first draft of gstreamer decoder/encoder
Paul Brossier [Tue, 23 Feb 2010 13:26:30 +0000 (13:26 +0000)]
tests/api/gstreamer.py: added first draft of gstreamer decoder/encoder

15 years agoadd a script to run all unit tests at once
Olivier Guilyardi [Fri, 19 Feb 2010 17:42:46 +0000 (17:42 +0000)]
add a script to run all unit tests at once

15 years agouse the custom test runner and base testcase in component test
Olivier Guilyardi [Fri, 19 Feb 2010 17:42:13 +0000 (17:42 +0000)]
use the custom test runner and base testcase in component test

15 years agoturn input adapter test into a unit test
Olivier Guilyardi [Fri, 19 Feb 2010 17:41:21 +0000 (17:41 +0000)]
turn input adapter test into a unit test

15 years agoadd custom unittest runner (grouping by test cases) and a custom base TestCase
Olivier Guilyardi [Fri, 19 Feb 2010 17:40:36 +0000 (17:40 +0000)]
add custom unittest runner (grouping by test cases) and a custom base TestCase

15 years agoturn testcomponent into a unittest test case
Olivier Guilyardi [Fri, 19 Feb 2010 16:04:28 +0000 (16:04 +0000)]
turn testcomponent into a unittest test case

15 years agorestore input adapter nframes() suppressed in r123
Olivier Guilyardi [Fri, 19 Feb 2010 13:49:48 +0000 (13:49 +0000)]
restore input adapter nframes() suppressed in r123

15 years agoavoid unnecessary copy operations in input adapter
Olivier Guilyardi [Fri, 19 Feb 2010 12:42:11 +0000 (12:42 +0000)]
avoid unnecessary copy operations in input adapter

15 years agotests/api/: fix gain computation
Paul Brossier [Thu, 18 Feb 2010 18:55:07 +0000 (18:55 +0000)]
tests/api/: fix gain computation

15 years agoremove absurd input adapter nframes() method: the adapter isn't meant to deal with...
Olivier Guilyardi [Thu, 18 Feb 2010 17:35:43 +0000 (17:35 +0000)]
remove absurd input adapter nframes() method: the adapter isn't meant to deal with processor output

15 years agotests/api/test_pipe.py: fix gain computation
yomguy [Thu, 18 Feb 2010 00:54:32 +0000 (00:54 +0000)]
tests/api/test_pipe.py: fix gain computation

15 years agotests/api/test_lolevel.py: fix gain computation
Paul Brossier [Thu, 18 Feb 2010 00:49:03 +0000 (00:49 +0000)]
tests/api/test_lolevel.py: fix gain computation

15 years agotests/api/test_lolevel.py: add option to pass a filename on the command line
Paul Brossier [Thu, 18 Feb 2010 00:48:22 +0000 (00:48 +0000)]
tests/api/test_lolevel.py: add option to pass a filename on the command line

15 years agoremove debugging leftover
Olivier Guilyardi [Wed, 17 Feb 2010 23:24:27 +0000 (23:24 +0000)]
remove debugging leftover

15 years agorely on ndarray.ndim for decoder reshaping
Olivier Guilyardi [Wed, 17 Feb 2010 23:20:29 +0000 (23:20 +0000)]
rely on ndarray.ndim for decoder reshaping

15 years ago- add example processor illustrating FixedSizeInputAdapter usage
Olivier Guilyardi [Wed, 17 Feb 2010 23:16:06 +0000 (23:16 +0000)]
- add example processor illustrating FixedSizeInputAdapter usage
- require IProcessor.processor() to always return a 2D array (even for 1 channel)
- fix example FileDecoder, so that it properly returns a 2D array when channels=1

15 years agofix input adapter eod return value when the total number of frames is a multiple...
Olivier Guilyardi [Wed, 17 Feb 2010 22:40:41 +0000 (22:40 +0000)]
fix input adapter eod return value when the total number of frames is a multiple of the buffer size

15 years agotypos
Olivier Guilyardi [Wed, 17 Feb 2010 22:29:25 +0000 (22:29 +0000)]
typos

15 years ago- add FixedSizeInputAdapter utility
Olivier Guilyardi [Wed, 17 Feb 2010 22:05:23 +0000 (22:05 +0000)]
- add FixedSizeInputAdapter utility
- make nframes() a common IProcessor method, and add an nframes argument to IProcessor.setup()
- release processors from Processor destructor
- remove IDecoder.duration(), redundant with nframes and samplerate

15 years agoremove grapher of test.py
yomguy [Wed, 17 Feb 2010 20:04:10 +0000 (20:04 +0000)]
remove grapher of test.py

15 years agore-cleanup cores
yomguy [Wed, 17 Feb 2010 15:29:44 +0000 (15:29 +0000)]
re-cleanup cores

15 years agocleanup cores, fix max_level id
yomguy [Wed, 17 Feb 2010 15:27:17 +0000 (15:27 +0000)]
cleanup cores, fix max_level id

15 years agoreset graph processes, fix no streaming error
yomguy [Wed, 17 Feb 2010 15:20:04 +0000 (15:20 +0000)]
reset graph processes, fix no streaming error

15 years agotests/api/: only import os.path, use os.path.join
Paul Brossier [Wed, 17 Feb 2010 15:16:11 +0000 (15:16 +0000)]
tests/api/: only import os.path, use os.path.join

15 years ago{encode,decode}/core.py: remove unused xml imports
Paul Brossier [Wed, 17 Feb 2010 15:12:21 +0000 (15:12 +0000)]
{encode,decode}/core.py: remove unused xml imports

15 years agotests/api/test_lolevel.py: use os.path.join
Paul Brossier [Wed, 17 Feb 2010 15:11:00 +0000 (15:11 +0000)]
tests/api/test_lolevel.py: use os.path.join

15 years agofix graph instance and use audiolab.Sndfile in examples
yomguy [Wed, 17 Feb 2010 02:33:12 +0000 (02:33 +0000)]
fix graph instance and use audiolab.Sndfile in examples

15 years agoprepare graph api and new core
yomguy [Wed, 17 Feb 2010 02:21:17 +0000 (02:21 +0000)]
prepare graph api and new core

15 years agotry to get grapher example working
yomguy [Thu, 28 Jan 2010 13:00:25 +0000 (13:00 +0000)]
try to get grapher example working

15 years agosimplify the grapher api, add a waveform grapher example
yomguy [Thu, 28 Jan 2010 12:15:53 +0000 (12:15 +0000)]
simplify the grapher api, add a waveform grapher example

15 years agosupport process pipes concatenation (ie: pipe1 | pipe2)
Olivier Guilyardi [Thu, 3 Dec 2009 10:06:05 +0000 (10:06 +0000)]
support process pipes concatenation (ie: pipe1 | pipe2)

15 years agoadd IProcessor.release()
Olivier Guilyardi [Wed, 2 Dec 2009 16:10:40 +0000 (16:10 +0000)]
add IProcessor.release()

15 years ago- add processing pipes support, using ProcessPipe and operator overloading
Olivier Guilyardi [Wed, 2 Dec 2009 14:38:11 +0000 (14:38 +0000)]
- add processing pipes support, using ProcessPipe and operator overloading
- add tests/api/test_pipe.py and rename tests/api/test.py to test_lolevel.py
- remove all buffersize constraints in core/api
- replace IProcessor.set_input_format() with setup(), which also resets the processor
- suppress IProcessor.input_format()
- replace IProcessor.output_format() with channels() and samplerate()
- remove IGrapher.set_nframes(), this is implementation specific
- add short guitar.wav (sweep samples drives my crazy ;)
- shorten example processor names (GainEffect -> Gain, etc...)

15 years agorename testnewcore.py to testcomponent.py
Olivier Guilyardi [Tue, 1 Dec 2009 16:15:22 +0000 (16:15 +0000)]
rename testnewcore.py to testcomponent.py

15 years agocomponent:
Olivier Guilyardi [Tue, 1 Dec 2009 16:13:42 +0000 (16:13 +0000)]
component:
- add ability ro register abstract classes. These can register as implementing
  some interfaces, but are by default not listed by implementations()
- add automatic interface-to-component __doc__ propagation, with the
  @interfacedoc method decorator

api:
- general idea: prepare for processor "pipes" high-level api
- move process() into IProcessor, make it a generic method
- add IProcessors methods that relate to buffersize, and input/output format
- add IDecoder.nframes()
- add IEffect, an interface for effect processors

tests:
- fix testnewcore.py
- add test and examples of processors implementing the new api and component
  system

others:
- add empty Metadata class

15 years agoencoder : replace sox by ffmpeg for decoding (buggy now for flac and wav encoding)
yomguy [Mon, 30 Nov 2009 08:36:23 +0000 (08:36 +0000)]
encoder : replace sox by ffmpeg for decoding (buggy now for flac and wav encoding)

15 years agoadd missing component.py
Olivier Guilyardi [Fri, 27 Nov 2009 19:56:13 +0000 (19:56 +0000)]
add missing component.py

15 years agocore: add processor buffersize (default 65536), required to be a power of 2 and ...
Olivier Guilyardi [Fri, 27 Nov 2009 19:51:36 +0000 (19:51 +0000)]
core: add processor buffersize (default 65536), required to be a power of 2 and >= 4096
for proper support of fft-based analyzers and similar
refactor api:
- improve documentation
- remove IEncoder.finish(), same as process() with nframes < buffersize
- remove format(), description() and such from IDecoder, a decoder can handle multiple
  formats so this information is dynamic
- add duration(), samplerate(), channels() etc... to IDecoder, obsoleting all
  corresponding analyzers
- add IGrapher.process()
- require IGrapher.render() to return a PIL image instead of streaming binary data,
  and move the width/height arguments into the constructor
- add IAnalyzer.process()
- add IValueAnalyzer and let dc, maxlevel and meanlevel analyzers implement it
- move result() into IValueAnalyzer. This method may not be adequate for other types of analyzers

15 years ago- merge all api's into timeside.api
Olivier Guilyardi [Fri, 27 Nov 2009 18:27:23 +0000 (18:27 +0000)]
- merge all api's into timeside.api
- add core.get_processor()
- put all exceptions into exceptions.py
- use SubProcessError instead of EncodeProcesError, DecodeProcessError and VampProcessError
- rename TimeSideError to Error (= timeside.Error)

15 years ago- move id() into to IProcessor, all processors are required to implement this static...
Olivier Guilyardi [Fri, 27 Nov 2009 17:32:05 +0000 (17:32 +0000)]
- move id() into to IProcessor, all processors are required to implement this static method
- MetaProcessor now ensures that all id's are wellformed and unique and raise an exception otherwise
- add id() to all encoders and decoders, and make it static in analyzers and graphers
- remove underscores and shorten a couple of id's, see the doc of IProcessor.id()

15 years ago- move generic component/interface architecture from core to component.py
Olivier Guilyardi [Fri, 27 Nov 2009 16:26:11 +0000 (16:26 +0000)]
- move generic component/interface architecture from core to component.py
- add Processor, MetaProcessor and processors() to core
- add IProcessor base interface for all processor interfaces
- let IAnalyzer, IGrapher, IEncoder and IDecoder subclass IProcessor
- let all actual processor classes descend from Processor
- use processors() instead of implementations() in test.py
- add listprocessors.py test script

15 years agocore: the descendants of a component implementing an interface do not automatically...
Olivier Guilyardi [Fri, 27 Nov 2009 14:50:31 +0000 (14:50 +0000)]
core: the descendants of a component implementing an interface do not automatically implement this interface anymore

15 years ago- turn all such methods as name(), id(), file_extension() into static methods
Olivier Guilyardi [Thu, 26 Nov 2009 21:02:24 +0000 (21:02 +0000)]
- turn all such methods as name(), id(), file_extension() into static methods
- add the self argument to non static methods in interfaces for clarity
- encode api: the constructor doesn't conflict anymore with the new core, fixme gone

15 years agoencode api: revert to methods instead of data members (format, description, ..),...
Olivier Guilyardi [Thu, 26 Nov 2009 20:53:13 +0000 (20:53 +0000)]
encode api: revert to methods instead of data members (format, description, ..), for support of __doc__

15 years agoreplace the core with the new core:
Olivier Guilyardi [Thu, 26 Nov 2009 20:36:58 +0000 (20:36 +0000)]
replace the core with the new core:
- requires absolutely no change in the encode, decode, analyze and graph code
- the test scripts needed a few changes

15 years agomodify test.py for support of an alternative magic module, as the one found in Debian...
Olivier Guilyardi [Thu, 26 Nov 2009 20:21:25 +0000 (20:21 +0000)]
modify test.py for support of an alternative magic module, as the one found in Debian Lenny (??)

15 years agoencode api: use data members instead of methods for format, description, file extensi...
Olivier Guilyardi [Thu, 26 Nov 2009 20:20:35 +0000 (20:20 +0000)]
encode api: use data members instead of methods for format, description, file extension and mime_type

15 years agomigrate TimeSideError into new core (shouldn't be there though)
Olivier Guilyardi [Thu, 26 Nov 2009 20:18:53 +0000 (20:18 +0000)]
migrate TimeSideError into new core (shouldn't be there though)

15 years agoadd new core:
Olivier Guilyardi [Thu, 26 Nov 2009 19:48:05 +0000 (19:48 +0000)]
add new core:
- less intrusive component/interface mechanism
- no need for a component manager
- one can create several instances of a component (no singleton)
- component constructors do not need component manager anymore
- unit test included

15 years agofix trivial syntax error
Olivier Guilyardi [Thu, 26 Nov 2009 19:42:55 +0000 (19:42 +0000)]
fix trivial syntax error