You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/source/server_api/index.rst
+12-9Lines changed: 12 additions & 9 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -20,7 +20,7 @@ In addition to be usable as a library, TimeSide has furthermore been built into
20
20
Architecture
21
21
=============
22
22
23
-
The web service are provided by a Docker composition. The following diagram shows how containers interact each other where each container is represented by a specific color. The Backend is able to delegate all the processing asynchronously to the Worker thanks to the Broker. The Backend and the Worker share the same Core library and related plugins.
23
+
The web service are provided by a Docker composition. The following diagram shows how containers interact each other where each container is represented by a specific color. The Backend is able to delegate all the processing asynchronously to the Worker through the Broker. The Backend and the Worker share the same Core library and related plugins.
The models of the backend are defined as usual Django models and are all stored with a UUID. Here is a list of the main ones:
33
33
34
-
- Item: a resource with a source file or URL
35
-
- Selection: a list of Items
36
-
- Processor: a versioned TimeSide Processor
37
-
- Preset: a Processor with some parameters in the JSON format
38
-
- Experience: a list of Presets
39
-
- Task: a list of Selection linked to an Experience to run
34
+
- ``Item``: an audio resource with a source file or a URL
35
+
- ``Selection``: a list of Items
36
+
- ``Processor``: a processor provided by the core module and all related plugins
37
+
- ``Preset``: a Processor with some parameters in the JSON format
38
+
- ``Experience``: a list of Presets
39
+
- ``Task``: a list of Selection linked to an Experience to run
40
+
- ``Provider``: a web service providing audio content (e.g. Youtube or Deezer)
40
41
41
-
This modelization allows to define some specific precessing *Experiences* that can be re-processed on any new *Selection* which is espacially convenient for analysis on growing datasets. All model instances and related data are accesible through a REST API with authentication. This ensures that a client can consume TimeSide as a dedicated and autonomous web service.
42
+
See the `full API documentation <https://timeside.ircam.fr/api/docs/>`_ to learn all the private and public properties of these models.
43
+
44
+
This modelization allows to define a specific precessing ``Experiencee`` that can be re-processed on any new ``Selection`` which is espacially convenient for analysis on growing datasets. All model instances and related data are accesible through a REST API with authentication. This ensures that a client can consume TimeSide as a dedicated and autonomous web service.
42
45
43
46
All the resources stored in the database are indexed with UUIDs so that any data coming from a timeside instance can be loaded any other without losing links and history. As an example, the following diagram shows how, during the WASABI project, some public data have been processed onto the Deezer infrastructure and then imported back into the main TimeSide database without loosing precious data linkage.
44
47
@@ -63,6 +66,6 @@ Javascript SDK
63
66
64
67
In order to build frontends on top of this web API, a `Software Development Kit (SDK) is available <https://github.com/Ircam-WAM/timeside-sdk-js>`_ for the Javascript and Typescript languages. It has been created from the routes of the OpenAPI schema automatically exported from the backend thanks to the OpenAPI Generator. The SDK proposes some examples for clients to reach the server and request some processing.
65
68
66
-
As an example, an augmented HTML5 player is presented in the "User Interfaces" section.
69
+
As an example, an augmented HTML5 player is presented in the :ref:`User Interfaces` section.
0 commit comments