Audio

About

In University of Tennessee Digital Collections, digital objects whose primary file is sound are considered to be Audio. Audio works usually consist of a preservation file stored in audio/mpge format with a PROXY_MP3 access copy. Like other content models, a Audio work may be a part of a Compound Object.

Fedora Model

Audio works always have structural properties that state their content model and the collections in which they are members. Their files may also have a bibframe:duration that state how long they are.

@prefix fedora: <info:fedora/fedora-system:def/relations-external#> .
@prefix fedora-model: <info:fedora/fedora-system:def/model#> .
@prefix islandora: <http://islandora.ca/ontology/relsext#> .

<info:fedora/rfta:156> fedora-model:hasModel <info:fedora/islandora:sp-audioCModel> ;
    fedora:isMemberOfCollection <info:fedora/collections:rfta> .

<info:fedora/rfta:156/PROXY_MP3> bibframe:duration "00:20:53" .

If they are parts of compound objects or have restrictions, they may also have additional properties.

IIIF Manifest

The IIIF manifest for an Audio work inherits the basic format for other manifests. For more information, see Base Manifest.

This manifest is very similar to that of a video but with slightly few parts.

The items property of the manifest for an Audio work has one canvas that points at the PROXY_MP3 datastream. The Canvas should have id, type, label, thumbnail, width, height, duration, items, and annotations properties following the IIIF Presentation v3 specification.

The thumbnail property for an Audio Canvas is the same as most work types. The array has one value that is populated by Cantaloupe acting on the TN datastream. The id property points at a Cantaloupe request for the full thumbnail. The service property points at the Cantaloupe service so that requests can be refined by consuming applications. The width and height are derived from Cantaloupe. The type and format properties express format and mime type.

The duration value is derived from the bibframe:duration property that describes the work’s PROXY_MP3 datastream.

Currently, the height and width properties are hard coded. This should ideally be rethought and arguably should not exist at all.

Audio works may have one or more subtitle or closed captioning file. When they do, they are added as AnnotationPages in the annotations property. Right now, a closed captioning file can only be Spanish or English and based on the name of the datastream the correct Annotation is added with the motivation of supplementing. The TRANSCRIPT datastream is reserved for English and the TRANSCRIPT-ES datastream is reserved for Spanish:

 1      "annotations": [
 2        {
 3          "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/canvas\/0\/page\/annotation\/rfta%3A118",
 4          "type": "AnnotationPage",
 5          "items": [
 6            {
 7              "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/canvas\/0\/page\/annotation\/rfta%3A118\/62819830bd30e",
 8              "type": "Annotation",
 9              "motivation": "supplementing",
10              "body": {
11                "id": "https:\/\/digital.lib.utk.edu\/collections\/islandora\/object\/rfta%3A118\/datastream\/TRANSCRIPT",
12                "type": "Text",
13                "format": "text\/vtt",
14                "label": {
15                  "en": [
16                    "Captions in English"
17                  ]
18                },
19                "language": "en"
20              },
21              "target": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/canvas\/0"
22            }
23          ]
24        }
25      ]

Audio works are also special in that the manifest may have a structures property with ranges. This property provides a table of contents of sorts that may be functional in some viewers according to IIIF presentation v3 specification.

The structures property has 1-n ranges declared in it. In our sample we have 3:

 1  "structures": [
 2    {
 3      "type": "Range",
 4      "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/range\/interview_questions",
 5      "label": {
 6        "en": [
 7          "Interview Questions"
 8        ]
 9      },
10      "items": [
11      ]
12    },
13    {
14      "type": "Range",
15      "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/range\/places_mentioned",
16      "label": {
17        "en": [
18          "Places Mentioned"
19        ]
20      },
21      "items": [
22      ]
23    },
24    {
25      "type": "Range",
26      "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/118\/range\/chapters",
27      "label": {
28        "en": [
29          "Chapters"
30        ]
31      },
32      "items": [
33      ]
34    }

Each of these ranges provide independent navigation. These values are derived from the MODS datastream of the work in its pbcore extension section. This section is segmented into many parts. Each part has a partType attribute that determines which section it should belong to:

<pbcore:pbcorePart
    partType="Preguntas de entrevista"
    startTime="00:01:07"
    endTime="00:01:15">
    <pbcore:pbcoreIdentifier source="local">2021_03_03_Rodriguez_Julia_esQ1</pbcore:pbcoreIdentifier>
    <pbcore:pbcoreTitle>Me puede decir por favor su nombre?</pbcore:pbcoreTitle>
    <pbcore:pbcoreDescription>Pregunta 1</pbcore:pbcoreDescription>
</pbcore:pbcorePart>

In the items property of each Range, are many ranges based on each pbcore:pbcorePart. In these ranges, there is a label derived from the pbcore:pbcoreTitle and a items property with a Canvas that references the associated video with a timestamp derived from the startTime and endTime information.

 1        {
 2          "type": "Range",
 3          "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/165\/range\/preguntas_de_entrevista\/0",
 4          "label": {
 5            "en": [
 6              "Me puede decir por favor su nombre?"
 7            ]
 8          },
 9          "items": [
10            {
11              "type": "Canvas",
12              "id": "https:\/\/digital.lib.utk.edu\/assemble\/manifest\/rfta\/165\/canvas#t=00:01:07,00:01:15"
13            }
14          ]
15        },

Viewing Experience

Our audio works work well in IIIF viewers that are designed for audio and to a lesser extent in other viewers.

For RFTA, we deliver videos in the Canopy “built-in” viewer. This viewer does not support captions for videos, but does support transcripts and structures and ranges.

RFTA in Canopy

The Clover viewer offers a similar experience but with no structures or ranges.

RFTA in Clover

Mirador plays our audio but with no captions, transcripts, or structures and ranges.

RFTA in Mirador

Our Audio works do not work in Universal Viewer.

RFTA in UV