Open pettarin opened 8 years ago
This feature is experimental, i.e. not part of the EPUB specification. EpubCheck seems to correctly report the errors.
Based on my tests with prototype publications (including all 3 levels of granularity: word
, sentence
, paragraph
), the implementation in Readium is robust.
I saw inventive use of CSS styling to visually highlight word-level audio playback, while the granularity was at sentence or paragraph level (with the advantage of the Media Overlays engine turning pages mid-paragraph in cases where a block of text spans across a page boundary).
I cannot share this EPUB content, and to be honest I am not even sure that this feature is actually used anywhere other than in a research lab :)
One thing is for sure: there was not enough interest in multiple audio-DOM synchronization granularity to drive an update of the EPUB Media Overlays specification.
Side note: Readium also supports CFI character ranges (which negate the need for heavyweight DOM spans + fragment identifiers), but this is even more experimental. The implementation relies on complex DOMRange highlights, which is sufficiently performant but not as reliable as plain fragment id CSS selectors. I hand-crafted a demo EPUB to showcase CFI + multiple granularities, but the two features are independent.
Thank you for the clarification. No example needed, do not worry.
Just two quick notes:
Feel free to close the issue, unless you deem it useful.
Just one more note: having, say, sentence and word timings, one can also display the MO highlighting like a karaoke highlighting: instead of flashing one word at a time, "grow" the highlighted text, adding one word at a time, and then reset when transitioning to the next sentence. The latter approach is more adequate on not-too-slow audio. Not a coincidence Kindle Immersion Reading adopts it.
If I read the source code correctly, Readium JS Viewer supports user-selectable MO granularity by looking at
epub:type
on<seq>
elements in the SMIL files.Specifically, it looks for
paragraph
,sentence
, andword
values.Now, if you try to validate with the latest EpubCheck a SMIL file with such attributes, e.g.:
you will get:
since
paragraph
,sentence
, andword
are not in the EPUB 3 Structural Semantics Vocabulary.So, my questions are:
epub:type
an (Readium-)internal convention?