Skip to content

Hypertext audio/video navigation proposal ('hypertoc') #2766

@danbri

Description

@danbri

This is a proposal from Google to make it easier (e.g. in a voice assistant context) to navigate within audio and video content, providing a kind of "table of contents" with cues and links.

Example:

 "@context": "https://schema.org/",
  "@type": "HyperToc",
  "associatedMedia": 
 "@type": "AudioObject",
 "encodingFormat": "audio/mpeg",
 "bitrate": "320 kbps",
 "duration": "...",
"contentUrl: "https://ia800201.us.archive.org/27/items/sherlockholmes_otr/391106%20The%20Adventures%20of%20Sherlock%20Holmes%20-%20The%20Adventure%20of%20the%20Missing%20Submarine%20Plans.mp3",
"contentSize": "67M"
},
   "tocEntry": [ 
     {
     "@type": "HyperTocEntry",
    "url" : "...",
    "utterances": ["advert"]
    }
     {
     "@type": "HyperTocEntry",
    "url" : "...",
    "tocUtterances":[ "mycroft"]
    }
 ]
}

This would involve:

  • adding a type HyperToc (as a CreativeWork type)
  • adding tocEntry property of a HyperToc
  • adding a type HyperTocEntry which has an "url" representation of an offset into the media file (we could discuss other structures), as well as a list of textual "tocUtterances" that can be used in a voice assistant to navigate to this entry. Finally an optional "tocContinuation" pointer to other entries (using @id in json-ld, etc.), so that consuming applications could know which audio/video clip to continue playing if the end of an entry is reached. So new properties would be: tocUtterances (Text) and tocContinuation (a HyperTocEntry).

There are a few details left to work through but I wanted to surface our thinking here for discussion.

Related vocabulary includes Clip, PodcastEpisode, .

Metadata

Metadata

Assignees

Labels

Queued for Editorial WorkEditor needs to turn issues/PRs into final code and release notes.no-issue-activityDiscuss has gone quiet. Auto-tagging to encourage people to re-engage with the issue (or close it!).

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions