]
.pull-right[
- - Aubio (Temporal, Pitch, etc)
- - Yaafe (graph oriented)
- - librosa
- - **VampPyHost**
- - **Essentia bridge**
- - **Speech detection**
- - **Music detection**
- - **Singing voice detection**
- - **Monophony / Polyphony**
- - **Dissonance**
- - **Timbre Toolbox**
+ - Speech detection
+ - Music detection
+ - Singing voice detection
+ - Monophony / Polyphony
+ - Dissonance
+ - Timbre Toolbox
- etc... (experimental)
+
+ https://github.com/DIADEMS/timeside-diadems
+
]
+
+ ---
+ class: ircam, tight
+
+ # timeside.core
+
+ ## What's new?
+
+ 0.9.4 > 1.0.0a (released yesterday!): 674 commits, 7 contributors
+
+ * Python 2.7 to 3.7
+ * Drop GStreamer for Aubio as default decoder and encoder
+ * Add core and server processors' versioning and server process' run time
+ * Regroup all dependencies on pip requirements, drop conda
+ * Server refactoring:
+ * audio process run on items (REST API track's model)
+ * several tools, views, models and serializers
+ * REST API's schema on OpenAPI 3 specification and automatic Redoc generation
+ * Upgrade Django to 2.2, Django REST Framework to 3.11, Celery to 4.4
+ * Add :ref:`provider` as a core API component and as a REST API model
+ * Add provider plugins :ref:`deezer-preview`, :ref:`deezer-complete` and :ref:`youtube`
+ * Improve server unit testing
+ * Add JWT authentication on REST API
+ * A lot of bug fixes
+ * Add core, server and workers logging
+
+ ---
+ class: ircam, middle, center
+
+ #TimeSide server
+
+
+---
+class: center, middle, ircam
+#TimeSide server
+
+
+---
+class: ircam, tight
+# TimeSide server
+
+.pull-left[
+## RESTful API built on TimeSide
+https://sandbox.wasabi.telemeta.org/timeside/api/
+
+- Based on Django REST Framework
+- Interoperability: allows other servers or frontends to interact with the TimeSide instance and its data
+- Relational PostgreSQL database in order to store music tracks and processing results
+- JWT authentication
+- OpenAPI specification
+- SDK built on the API available in TypeScript
+- Models: essential fields and behaviors of stored data
+- queue-worker architecture enables to run tasks asynchronously
+
+]
+
+.pull-right[
+<img src="img/server_api.png" width="520">
+]
+
+---
+class: ircam, tight
+#TimeSide server
+
+.pull-left[
+## RESTful API built on TimeSide
+https://sandbox.wasabi.telemeta.org/timeside/api/
+
+## Use cases
+- Upload audio tracks
+- Retrieve audio tracks from remote providers
+- Stream original or transcoded sources
+- Run on-demand analysis
+- Customize processors parameters
+- Collect track's annotation to build audio corpora
+- Deliver and share several types of results:
+ - transcoded audio
+ - serialized analysis as JSON or image
+- Export/import an audio analysis dataset
+]
+
+.pull-right[
+<img src="img/server_api.png" width="520">
+]
+
+---
+class: ircam, tight
+# TimeSide server
+
+.pull-left[
+## RESTful API built on TimeSide
+https://sandbox.wasabi.telemeta.org/timeside/api/
+
+## Models
+
+- Item: audio content and metadata (external id)
+- Provider: provide audio from a given plateform
+- Selection: list of items (corpus)
+- Processor: plugins with version and default parameters
+- Preset: processor and a set of parameters
+- Experience: list of presets forming a pipe
+- Task: an experience and a selection
+- Result: transcoded audio or numerical outputs (hdf5 file)
+- Annotation: label audio file on a given time or segment
+
+]
+
+.pull-right[
+<img src="img/server_api.png" width="520">
+]
+
---
class: ircam
-#TimeSide
+#TimeSide server
-.pull-left-30[
-##Resful API
+.pull-left[
+##Example of TimeSide use in WASABI Project
-http://timeside-dev.telemeta.org/timeside/api/
+- POC of a webservice delivering audio analysis
+- Link with another server: a large database of musical metadata
+-
-- based on Django Rest Framework (extensible)
-- streaming oriented (audio and data)
-- user presets
]
-.pull-right-70[
-.right[]
+
+.pull-right[
+<img src="img/architecture_WASABI.png" width="450">
+<!-- .right[] -->
]
+
+ ---
+ class: ircam, middle, center
+
+ #TimeSide player
+
+
---
+class: ircam
+#TimeSide server
+
+## RESTful API documentation
+https://sandbox.wasabi.telemeta.org/timeside/api/docs/
+
+<img src="img/server_doc.png" width="900">
+
+---
+
class: ircam
#TimeSide