TimeSide is a set of server and client side components for audio-enabling web sites and applications. It includes a powerful DHTML-based interactive player, with support for time-marking.
The server side components provide generic APIs for easy transcoding, metadata embedding, sound visualization and audio analysis.
Usage:
See PythonApi, UiGuide, README and INSTALL.
A fast and short example:
import timeside
decoder = timeside.decoder.FileDecoder('/path/to/source.ogg')
grapher = timeside.grapher.Waveform()
analyzer = timeside.analyzer.MaxLevel()
encoder = timeside.encoder.WavEncoder('/path/to/output.wav')
(decoder | grapher | analyzer | encoder).run()
grapher.render(output='/path/to/image.png')
print 'Level:', analyzer.result(), analyzer.unit()
What is new in this release:
- Make Analyzer rendering more generic and easy to implement
- Analyzer : implement rendering capability for event and segment + add some more analyzer graphers
- Analyzer : refactoring the results rendering method. + Capability to use matplotlib in environnement with no display
- Decoder : Add a Live decoder to get data from the soudcard
- Decoder : add support for 96kHz sampling rate
- Encoder: live AudioSink encoder, encoder that plays the audio stream through the sounbcard
- Grapher : add a generic Class to display Analyzers through their 'render' method. Add the new grapher file
- Grapher : add a generic Class to display Analyzers through their 'render' method. For now, it only support FrameValueResult analyzer
- Core : add a condition to catch signal only if a LiveDecoder source is used
- Various bugfixes
What is new in version 0.4.3:
- finally fix decoder leaks and de-synchronizations (thanks to piem)
- this also fixes bad variable encoder file lengths
- fix OGG and FLAC encoders (closes: #8)
- fix multi-channels streaming (closes: #13)
- add support for Pillow (closes: #12)
- temporally desactivate AAC and WebM encoders (need to add some limits for them)
- WARNING : we now need to add overwrite=True to encoder kwargs instances in order to overwrite the destination file, i.e. e=Mp3Encoder(path, overwrite=True)
What is new in version 0.3.3:
- mostly a transitional developer and mantainer version, no new cool features
- but add "ts-waveforms" script for waveform batching
- fix some tests, download audio samples
- fix setup
- update README
What is new in version 0.3.2:
- move mainloop to its own thread to avoid memory hogging on large files
- add condition values to prepare running gst mainloop in a thread
- add experimental WebM encoder
- duration analysis goes to decoder.duration property
- bugfixes
Requirements:
- Python
Comments not found