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

Recipe #0489 Multimedia Canvas #507

Merged
merged 44 commits into from
Sep 27, 2024
Merged
Show file tree
Hide file tree
Changes from 6 commits
Commits
Show all changes
44 commits
Select commit Hold shift + click to select a range
74c0491
Took a first pass at a multimedia Canvas recipe 1️⃣
triplingual Jun 7, 2024
ed1e3ce
Replaced original resources with more nearly preferred ones 🚚
triplingual Jun 7, 2024
50e776a
Set topic to real matrix option 🔧
triplingual Jun 7, 2024
6f08ad0
Added recipe to TOC 📚
triplingual Jun 7, 2024
4dce5d9
Corrected Glycerine to full proper name 🛠️
triplingual Jun 7, 2024
795330f
Added duration property as in reference example ⏰
triplingual Jun 7, 2024
8b767f2
Remove typo 🚮🤦🏻‍♂️
triplingual Jun 25, 2024
9050099
Created a decent working example 😇
triplingual Jul 12, 2024
659d884
Sketched out a direction for the text. ✏️
triplingual Jul 12, 2024
10f2d77
Temporarily suppress validation ⏰
triplingual Jul 18, 2024
4344ffc
Corrected an ID 📝
triplingual Jul 18, 2024
2fb9bdb
Began fleshing out the implementation notes 📝
triplingual Jul 18, 2024
e860842
Merge branch 'master' into 0489-multimedia-canvas
triplingual Jul 18, 2024
1f22f9e
Replaced image with museum one for authenticity 🔄
triplingual Jul 19, 2024
c5e8284
Corrected language for text annotations 🤦🏻‍♂️
triplingual Jul 19, 2024
00a5c73
Made more robust 📝
triplingual Aug 2, 2024
58bf6a3
Added dummy final text to avoid immediate loop to start 🖼️
triplingual Aug 2, 2024
951af55
Stepped back the time when the closing instrux show 🔙
triplingual Aug 2, 2024
f517cb2
Added detail about not using timings for precision 📝
triplingual Aug 2, 2024
3685e81
Merge branch 'master' into 0489-multimedia-canvas
glenrobson Aug 13, 2024
5944ad6
Converted type size to px from em 🅰️
triplingual Aug 13, 2024
53e17c6
Added summary 📝
triplingual Aug 13, 2024
5d3bc67
Reworded sentence 📝
triplingual Aug 13, 2024
60f2d24
Edited sentence for readability 📝
triplingual Aug 13, 2024
7e61c55
Edited sentence for clarity 📝
triplingual Aug 13, 2024
5564d79
Edited to reduce wordiness 📝
triplingual Aug 13, 2024
221c611
Update preview.yml
glenrobson Aug 13, 2024
9e946e9
Merge pull request #531 from IIIF/glenrobson-patch-1
triplingual Aug 15, 2024
fcdf7d7
Changed recipe title per editors 📝
triplingual Aug 16, 2024
b5795ed
Moved graf and expanded it per editors 📝
triplingual Aug 16, 2024
55461cc
Removed bounding parens per editors 📝
triplingual Aug 16, 2024
0750ded
Swapped temp Theseus viewer link for anticipated format 📝
triplingual Aug 16, 2024
6e66cbc
Added discussion around time-based resources per editors 📝
triplingual Aug 16, 2024
54ab4cc
Added layering order note 📝
triplingual Aug 16, 2024
fff3e89
Added related recipe for simple time range 📝
triplingual Aug 16, 2024
09dd1f9
Merge branch 'master' into 0489-multimedia-canvas
glenrobson Aug 19, 2024
2e74e4f
Merge branch 'master' into 0489-multimedia-canvas
glenrobson Aug 21, 2024
b2f826f
Added highlighting ✨
triplingual Sep 27, 2024
9249c64
Reworked some discussion about timeline per TRC comments 📝
triplingual Sep 27, 2024
1603085
Changed title per TRC comments 📝
triplingual Sep 27, 2024
48dd5b5
Changed title per TRC comments 📝
triplingual Sep 27, 2024
bb4e212
Rework comment about resource order 📝
triplingual Sep 27, 2024
4e5b468
Merge branch 'master' into 0489-multimedia-canvas
glenrobson Sep 27, 2024
6ebc41d
Merge branch 'master' into 0489-multimedia-canvas
glenrobson Sep 27, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions _includes/links.md
Original file line number Diff line number Diff line change
Expand Up @@ -71,6 +71,7 @@
[0377]: {{ site.cookbook_url | absolute_url }}/recipe/0377-image-in-annotation/ "Image in annotation"

[0434]: {{ site.cookbook_url | absolute_url }}/recipe/0434-choice-av/ "Multiple Choice of Audio Formats in a Single View (Canvas)"
[0489]: {{ site.cookbook_url | absolute_url }}/recipe/0489-multimedia-canvas/ "Complex Multimedia Canvas"

[cookbook-process]: {{site.cookbook_url | absolute_url }}/recipe

Expand Down
1 change: 1 addition & 0 deletions index.md
Original file line number Diff line number Diff line change
Expand Up @@ -113,6 +113,7 @@ _(leading on to segmentation examples later)_
* [Multiple choice of images in a single view][0033] (29)
* [Foldouts, Flaps, and Maps][0035]
* [Composition from Multiple Images][0036] (30,31)
* [Complex Multimedia Canvas][0489]
* Multiple images and multiple choices (32,33,34)
* [Annotating part of an image to a Canvas][recipe-segment-image-part] (e.g., crop out scanner) (35,36,37,38)
* [Image Rotation Two Ways][0040]
Expand Down
50 changes: 50 additions & 0 deletions recipe/0489-multimedia-canvas/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
---
title: Multimedia Canvas
id: 499
layout: recipe
tags: Complex Object
summary: "tbc"
viewers:
- Annona
- UV
- Mirador
- Clover
- Glycerine Viewer
topic:
- annotation
---

## Use Case

You want to engage in some form of digital storytelling with one or more AV resources painted onto the same Canvas as a still image that will serve as a background. You want part of the still image to remain visible behind any video AV resources while they play. This storytelling might happen in the context of teaching narrative techniques in curricular settings, as a component of scholarly communications around research output, or for other reasons and in other contexts.

## Implementation Notes

This recipe pulls together techniques and structures described in previous recipes.
Multiple `item`s on one Canvas as in 0036
Differing dimensions of a resource and Canvas as in 0004 but sizing and placing the resource
New: Mixing video (AV) and still image resources

## Restrictions

No restrictions known.

## Example

Describe the solution in prose and provide an example.
The example json document must be an external document, and imported with the following:

{% include manifest_links.html manifest="manifest.json" %}

{% include jsonviewer.html src="manifest.json" %}

The direct link to the fixture is a useful convenience.

## Related Recipes

* [Simple Image Manifest][0001]
* [Image and Canvas with Differing Dimensions][0004] for thinking through relative dimensioning of a resource and a Canvas

{% include acronyms.md %}
{% include links.md %}

57 changes: 57 additions & 0 deletions recipe/0489-multimedia-canvas/manifest.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
{
"@context": "http://iiif.io/api/presentation/3/context.json",
"id": "{{ id.url }}",
"type": "Manifest",
"label": { "en": [ "Multimedia Canvas" ] },
"items": [
{
"id": "{{ id.path }}/canvas",
"type": "Canvas",
"height": 3024,
"width": 4032,
"duration": 120,
"items": [
{
"id": "{{ id.path }}/page/p1/1",
"type": "AnnotationPage",
"items": [
{
"id": "{{ id.path }}/annotation/p0001-image",
"type": "Annotation",
"motivation": "painting",
"body": {
"id": "https://iiif.io/api/image/3.0/example/reference/918ecd18c2592080851777620de9bcb5-gottingen/full/max/0/default.jpg",
"type": "Image",
"format": "image/jpeg",
"height": 3024,
"width": 4032,
"service": [
{
"id": "https://iiif.io/api/image/3.0/example/reference/918ecd18c2592080851777620de9bcb5-gottingen",
"profile": "level1",
"type": "ImageService3"
}
]
},
"target": "{{ id.path }}/canvas"
},
{
"id": "{{ id.path }}/annotation/p0002-video q",
triplingual marked this conversation as resolved.
Show resolved Hide resolved
"type": "Annotation",
"motivation": "painting",
"body": {
"id": "https://fixtures.iiif.io/video/indiana/donizetti-elixir/vae0637_accessH264_low_act_1.mp4",
"type": "Video",
"format": "video/mp4",
"height": 360,
"width": 480,
"duration": 3971.24
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is no selector on the resource, so because it's painted to: t=27,57 I've assumed that the selector/cropping is t=0,27. Is that a correct assumption?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Things are in-flight enough that it's a correct assumption given the current state of things, but it may become an incorrect one as I continue to edit. Right now, everything has been for placement only, to see whether I could get it syntactically valid and perhaps even working in a viewer. Now that you've shown me Theseus (thank you very much!) I can do something with the manifest and resources that might approach an authentic implementation of the use case. As part of that, I'll tighten up the syntax and make sure the property values are appropriate.

},
"target": "{{ id.path }}/canvas#xywh=200,200,480,360&t=27,57"
}
]
}
]
}
]
}
Loading