This is an overview of the cosound platform. The platform consist of two parts,
This is an overview of the cosound platform. The platform consist of two parts,
1. Handles digital media objects in a structures way and enables large scale processing using a number of audio processing tools and machine learning models.
1. Handles digital media objects in a structured way and enables large scale processing using a number of audio processing tools and machine learning models.
2. Cockpit revolves around making controlled behavioural experiments on the web. The aim here is making a framework that makes the design, specification, deployment of experiments and later retrieval of results easy. Furthermore at the same time ensuring that results and data in collected and recording in a reliable and coherent manner.
2. Cockpit revolves around making controlled behavioural experiments on the web. The aim here is making a framework that makes the design, specification, deployment of experiments and later retrieval of results easy. Furthermore at the same time ensuring that results and data in collected and recording in a reliable and coherent manner.
The cockpit framework consist of three major parts,
The cockpit framework consist of three major parts,
1. Front-end user interface that is implmented in typescript.
1. Front-end user interface that is implemented in typescript.
2. Back-end that handles the specifications and answers from users.
2. Back-end that handles the specifications and answers from users.
3. SDK that allows the user to specify experiments using a java/matlab interface.
3. SDK that allows the user to specify experiments using a java/matlab interface.
...
@@ -19,12 +19,51 @@ The front-end implementation can be found [here](cosound/../../../../Cockpit.Exp
...
@@ -19,12 +19,51 @@ The front-end implementation can be found [here](cosound/../../../../Cockpit.Exp
This is a simple installation of a flat structure database with an API that can create and delete experiments. The code can be found [here](cosound/../../../../Cockpit.Portal.Module) with installation instructions
This is a simple installation of a flat structure database with an API that can create and delete experiments. The code can be found [here](cosound/../../../../Cockpit.Portal.Module) with installation instructions
## Interface
## Interface
In order to interface with the system an SDK has been created in java with a thin layer of matlab.
In order to interface with the system an SDK has been created in Java with a thin layer of Matlab.
### SDK
### SDK
This is a description of the software developer kit
The SDK is responsible for letting users define experiments, upload experiments to a server, and retrieve answers from participants when an experiment has run its course. The experiments are represented in a hierarchical manner in which trials, trial components, participant answers, etc. are defined as self-contained objects. A given experiment is organized in a tree structure where a node corresponds to an element of the experiment with the experiment itself being the root and participant feedback being the leaves:

<!-- Any node in the hierarchy is responsible only for its own children. This entails that verifying the validity of a subtree reduces to checking that the root node may contain each of its children and that all children subtrees are themselves valid. -->
#### Example
#### Example
Here are some examples of experiments
The following example illustrates how to create an experiment with a single trial containing a Likert scale with an attached sound stimulus:
```matlab
ex=com.MetaComponents.Experiment;
ex.name='Cockpit:Test';
ex.id='a9f56a58-aaaa-eeee-1351-fa4358765432';
ex.enablePrevious=true;
ex.createdBy='Anders Kirk Uhrenholt';
ex.experimentDescription='This experiment tests functionalities of the Cockpit SDK.';
%% TRIAL 1 %%
trial1=coscreatetrial(ex);
cosaddheader(trial1,'HeaderLabel','{{center|This is the first trial}}');
The media processing part of the cosound platform revolves around handling multimedia objects. The system handles the raw content, processed contents using feature extraction and a FRBR structured meta data.
The media processing part of the cosound platform revolves around handling multimedia objects. The system handles the raw content, processed contents using feature extraction and a FRBR structured meta data.