/pandemic-archive-of-voices-DB

Database for the Pandemic Archive of Voices

Primary LanguageJavaScript

The Pandemic Archive of Voices - Database & API

Description

The Pandemic Archive of Voices is an audio archive constituted by 24 different speakers who contributed 185 audios in 18 different languages. Each of these audios represents a word or expression in the speaker's native language that would translate their own individual experience of the current context of the pandemic.

This repository was created especifically to manage the installation project based on this database, but not exclusivelly.

It consists of:

  • Database API
  • Content Manager
  • Contribution Form
  • Local server to conntect with the installation API

API URL

https://pandemic-archive-of-voices.herokuapp.com/api/

Dependencies

API

GET

  • Get all database data

    Returns whole JSON Object containing all audio objects

    /api/data

  • *Get speaker's audios by speaker's id

    Returns all audio objects from speaker

    /api/speaker_id/:id

  • *Get speaker's audios by speaker's id

    Returns all spakers who contain the :name string

    /api/speaker/:name

  • Get audio by id

    Returns specific audio object from its id

    /api/audio_id/:id

  • Get audios by text

    Returns all audios that contain the text in the transcription value text in audio object

    /api/audio_id/:text

  • Get sample array from audio id

    Returns the sample array of a particular audio in the database

    /api/get_audio_samples/:audio_id/:bits/:sample_rate

  • Get compressed audio file

    Compresses and return the audio file from the databse with a designated bit depth and sample rate

    /api/get_compressed_audio_file/:audio_id/:bits/:sample_rate

  • Get encrypted text from audio id

    Returns the audio waveform data converted into text based on "alphabet" encryption

    /api/get_audio_samples_characters/:audio_id/:bits/:sample_rate

  • Get generated audio file from text string

    Returns an audio file from a character string, translating the characters into numbers, and then waveform

    /api/get_audio_samples_characters/:text

POST

  • POST new audio

    Submits new audio to the database, restrited use

    /api/audio

    {
      id: String,
      data: Blob,
      languageInput: String,
      lang_other: String,
      text: String,
      timestamp: Int,
      deleted: Boolean,
      disabled: Boolean
    }

PUT

  • PUT audio data

    Updates a audio object in the database, restrited use

    /api/audio

    {
       id: String,
       deleted: Boolean,
       disabled: Boolean,
       text: String
    }

Content Manager

Live update content manager

db_manager

Contribution Form

Contribition form

photo_5

Sound Writing

https://pandemic-archive-of-voices.herokuapp.com/soundWriting/

References

License

MIT