翻译:羊牧东岭
原文地址:https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/
用例
一场歌剧表演可能耗时很长,从而用多张磁带或胶卷等物理介质来分别存放。在进行数字化时,这些物理介质可以分别形成单个文件,然后每个文件分别映射到一个画布 (Canvas) 上。这个现实生活中的例子展示了如何使用多个画布对此进行建模。
实施说明
本例的实现与单一画布上多个音视频文件的目录基本相同,不同之处在于,本例中的两个文件(分别代表歌剧的一幕),每个文件都对应有自己的画布,并如此地在相应结构中被引用。使用两个画布时,播放器将仅显示当前播放的这个文件的持续时长。在切换播放文件时,时间将从零开始。如果你希望针对文件而非整部歌剧来建立时间参考,那么这种实现方法会有所帮助。
限制条件
由于播放器在播放下一个文件时需要切换上下文环境,所以实际上会导致分开播放。为确保连续播放,所有文件应注释到共同的某个画布 (Canvas) 上,就像单一画布上多个音视频文件的目录例子中所示的那样。
例子
JSON-LD | 在Universal Viewer中查看
{"@context": "http://iiif.io/api/presentation/3/context.json","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/manifest.json","type": "Manifest","label": {"it": ["L'Elisir D'Amore"],"en": ["The Elixir of Love"]},"metadata": [{"label": {"en": ["Date Issued"]},"value": {"en": ["2019"]}},{"label": {"en": ["Publisher"]},"value": {"en": ["Indiana University Jacobs School of Music"]}}],"items": [{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1","type": "Canvas","width": 1920,"height": 1080,"duration": 3971.24,"label": {"en": ["Atto Primo"]},"items": [{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1/annotation_page/1","type": "AnnotationPage","items": [{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1/annotation_page/1/annotation/1","type": "Annotation","motivation": "painting","target": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1","body": {"id": "https://fixtures.iiif.io/video/indiana/donizetti-elixir/vae0637_accessH264_low_act_1.mp4","type": "Video","format": "video/mp4","height": 1080,"width": 1920,"duration": 3971.24}}]}],"thumbnail": [{"id": "https://fixtures.iiif.io/video/indiana/donizetti-elixir/act1-thumbnail.png","type": "Image"}]},{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/2","type": "Canvas","width": 1920,"height": 1080,"duration": 3307.22,"label": {"en": ["Atto Secondo"]},"items": [{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/2/annotation_page/1","type": "AnnotationPage","items": [{"id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/2/annotation_page/1/annotation/1","type": "Annotation","motivation": "painting","target": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/2","body": {"id": "https://fixtures.iiif.io/video/indiana/donizetti-elixir/vae0637_accessH264_low_act_2.mp4","type": "Video","format": "video/mp4","height": 1080,"width": 1920,"duration": 3307.22}}]}],"thumbnail": [{"id": "https://fixtures.iiif.io/video/indiana/donizetti-elixir/act2-thumbnail.png","type": "Image"}]}],"structures": [{"type": "Range","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/range/1","label": {"it": ["Gaetano Donizetti, L'Elisir D'Amore"]},"items": [{"type": "Range","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/range/2","label": {"en": ["Atto Primo"]},"items": [{"type": "Range","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/range/3","label": {"it": ["Preludio e Coro d'introduzione – Bel conforto al mietitore"]},"items": [{"type": "Canvas","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1#t=0,302.05"}]},{"type": "Range","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/range/4","label": {"en": ["Remainder of Atto Primo"]},"items": [{"type": "Canvas","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/1#t=302.05,3971.24"}]}]},{"type": "Range","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/range/5","label": {"en": ["Atto Secondo"]},"items": [{"type": "Canvas","id": "https://iiif.io/api/cookbook/recipe/0065-opera-multiple-canvases/canvas/2#t=0,3307.22"}]}]}]}
相关专题
- 简单清单 - 视频
- [缩略图][0012]
- 音视频内容的目录 - 使用嵌套范围表示歌剧目录的另一个示例。
- 单一画布上多个音视频文件的目录 - 本示例中的相同歌剧,但在一个画布上采用视频格式。
