]> git.parisson.com Git - timeside.git/log
timeside.git
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

15 years agorefactor encode api
Olivier Guilyardi [Thu, 26 Nov 2009 17:22:11 +0000 (17:22 +0000)]
refactor encode api

15 years agoapi: remove IEncoder.set_cache_dir()
Olivier Guilyardi [Thu, 26 Nov 2009 15:46:02 +0000 (15:46 +0000)]
api: remove IEncoder.set_cache_dir()

15 years agocleanup descriptions
yomguy [Wed, 25 Nov 2009 21:34:04 +0000 (21:34 +0000)]
cleanup descriptions

15 years agovalidate against sox 14.3
yomguy [Tue, 24 Nov 2009 16:53:07 +0000 (16:53 +0000)]
validate against sox 14.3

15 years agoget decoder by mime type, cross coding tests
yomguy [Tue, 24 Nov 2009 16:48:05 +0000 (16:48 +0000)]
get decoder by mime type, cross coding tests

15 years agofix decoder output and metadata management
yomguy [Tue, 24 Nov 2009 15:02:34 +0000 (15:02 +0000)]
fix decoder output and metadata management

15 years agomore audio tests
yomguy [Fri, 9 Oct 2009 13:40:44 +0000 (13:40 +0000)]
more audio tests

15 years agoget first encoder test
yomguy [Fri, 9 Oct 2009 13:39:09 +0000 (13:39 +0000)]
get first encoder test

15 years agographer testing
yomguy [Fri, 9 Oct 2009 13:04:24 +0000 (13:04 +0000)]
grapher testing

15 years agoadd init
yomguy [Fri, 9 Oct 2009 12:27:55 +0000 (12:27 +0000)]
add init

15 years agomake a processor call test, new api debug
yomguy [Fri, 9 Oct 2009 12:27:29 +0000 (12:27 +0000)]
make a processor call test, new api debug

15 years agorename IMediaItemAnalyzer to IAnalyzer
yomguy [Fri, 9 Oct 2009 10:56:18 +0000 (10:56 +0000)]
rename IMediaItemAnalyzer to IAnalyzer

15 years agoadd metadata comments
yomguy [Fri, 9 Oct 2009 07:33:31 +0000 (07:33 +0000)]
add metadata comments

15 years agofix analyze paths
yomguy [Fri, 9 Oct 2009 04:50:10 +0000 (04:50 +0000)]
fix analyze paths

15 years agomv img
yomguy [Fri, 9 Oct 2009 04:49:13 +0000 (04:49 +0000)]
mv img

15 years agomv img
yomguy [Fri, 9 Oct 2009 04:46:20 +0000 (04:46 +0000)]
mv img

15 years agocleanup
yomguy [Thu, 8 Oct 2009 14:21:46 +0000 (14:21 +0000)]
cleanup

15 years agofix format descriptions
yomguy [Thu, 8 Oct 2009 14:18:45 +0000 (14:18 +0000)]
fix format descriptions

15 years agomodify encode and decode apis, adapt each plugins
yomguy [Thu, 8 Oct 2009 14:08:23 +0000 (14:08 +0000)]
modify encode and decode apis, adapt each plugins

15 years agorename decode and encode cores
yomguy [Wed, 7 Oct 2009 13:43:08 +0000 (13:43 +0000)]
rename decode and encode cores

15 years agorename analysis
yomguy [Wed, 7 Oct 2009 13:17:34 +0000 (13:17 +0000)]
rename analysis

15 years agochange export to decode/encode
yomguy [Wed, 7 Oct 2009 13:17:00 +0000 (13:17 +0000)]
change export to decode/encode

15 years agoreorder deps
yomguy [Thu, 24 Sep 2009 15:54:02 +0000 (15:54 +0000)]
reorder deps

15 years agofirst dependencies
yomguy [Thu, 24 Sep 2009 15:52:54 +0000 (15:52 +0000)]
first dependencies

15 years agoadd core then ExtensionPoint class, fix module names
yomguy [Thu, 24 Sep 2009 15:45:35 +0000 (15:45 +0000)]
add core then ExtensionPoint class, fix module names

15 years agofirst import of export, graph and analysis related classes
yomguy [Thu, 24 Sep 2009 15:22:35 +0000 (15:22 +0000)]
first import of export, graph and analysis related classes

15 years agoimport TimeSide UI 0.1, add GPL license file
Olivier Guilyardi [Thu, 24 Sep 2009 15:03:41 +0000 (15:03 +0000)]
import TimeSide UI 0.1, add GPL license file

15 years agoInitial directory structure.
yomguy [Thu, 24 Sep 2009 14:14:27 +0000 (14:14 +0000)]
Initial directory structure.