Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide captions support on A/V items #393

Merged
merged 14 commits into from
Aug 22, 2024
Merged

Provide captions support on A/V items #393

merged 14 commits into from
Aug 22, 2024

Conversation

DanOlson
Copy link
Contributor

This provides both the backend support necessary to format the IIIF manifest with caption data as well as a forked version of UniversalViewer (loaded from a CDN) that can interpret captions from the manifest. Captions are ingested from ContentDM, stored in Solr (but not indexed), and are excluded by default in the majority of requests the app makes to Solr. A dedicated endpoint, /tracks/:item_id/entry/:entry_id surfaces the caption data in VTT format. UV will generate HTML <track> elements for each available track, using that endpoint as the src attribute, and will render the track content on top of the viewer.

The CDN is jsDelivr, and is currently sourcing the distribution files from my https://github.com/DanOlson/uv-dist/ repo. This is just the output of building my fork of the UV app locally, which I also have NPM linked to my fork of IIIF-Commons/iiif-av-component, https://github.com/DanOlson/iiif-av-component in order to provide caption support for both single A/V items and playlists (manifests with ranges).

Pull requests for UV and iiif-av-component updates are here:
UV: UniversalViewer/universalviewer#1047
iiif-av-component: IIIF-Commons/iiif-av-component#95

Upon merging, we will need to run the ETL for all A/V items in the catalog, and as that progresses, caption support will gradually roll out.

This updates UV from v3 to v4, and rather than bundling it with
Webpack, we're pulling it in from a CDN. This reduces our bundle
size, and offloads the serving of this particular asset to the
CDN.
This puts a rendering item into the IIIF manifest for non-playlist
A/V items, and adds an endpoint for fetching them
Unsure if changes to the main css file are being picked up for deployment
Use the update that hardens selection logic of active contentAnnotation
This is no longer useful with UV v4 because config isn't loaded from
and endpoint
@DanOlson DanOlson force-pushed the captions-support branch 2 times, most recently from abb02aa to 8e1ee7b Compare August 22, 2024 01:22
Previously recorded cassettes were written assuming a specifc KALTURA_SESSION
environment variable was present. That variable is used to generate the kalsig
param as well (a request signature), and so we need to account for both the
missing env var, and the effect that has on the signature.
@swandog30 swandog30 merged commit 30af701 into develop Aug 22, 2024
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants