Skip to content

Conversation

@momeni
Copy link
Contributor

@momeni momeni commented Jul 14, 2021

This merge request creates an alternative presenter, namely FILE.narrated.sozi.html for the input FILE.svg presentation, which will play the presentation file and a narrative.flac audio file in sync. The common use case is to share a captured presentation without requiring to convert the presentation and audio track to a video format which has two benefits:

  1. Presentation quality is preserved in the html+svg+js format,
  2. Exported file size is kept minimal.

Currently, the audio file must be named narrative.flac and placed in side of the FILE.narrated.sozi.html file.
Also the data-time-to-slide attribute in the FILE.narrated.sozi.html file needs to be updated manually.
These items (audio file name and time-to-slide) should be moved to the editor later.
The format of the data-time-to-slide attribute is as follows:

  • A string of comma-separated descriptors
  • Each descriptor specifies the time instant (in seconds) which should trigger a slide transition
  • If some slides should be skipped or the presentation is not progressing linearly, descriptor can specify the target slide number (counting from one, as shown at the top-left of the presentation itself); for this purpose the time and slide index must be separated by a colon

For example, <audio id="narrative" controls data-time-to-slide="0,4,8,11:2,13:4"> means that

  • when narrative.flac is playing from 0 to 4 seconds, the first frame must be shown,
  • when it is playing from 4 to 8 seconds, the second frame must be shown,
  • when it is playing from 8 to 11 seconds, the third frame must be shown,
  • when it is playing from 11 to 13 seconds, presentation must return to the second frame,
  • when narrative.flac reaches to the 13th second, presentation must transition to the fourth frame.

The browser audio controls are shown at the bottom-right of the screen. Seeking the audio to any time will automatically change the rendered frame. And changing the rendered frame (e.g., by URL or clicking on the frames list) will automatically seek the audio to the corresponding moment.

@momeni
Copy link
Contributor Author

momeni commented Jul 15, 2021

I updated the editor and added a narration properties in order to configure both of the narrative file name (which was hard-coded to narrative.flac previously) and the time-to-slide data. Now, there is no hard-coded property. The narration feature itself can be disabled by selecting the none file type (and it is disabled by default).

momeni added 2 commits August 3, 2023 18:50
…rack

This commit allows a Sozi presentation to be played in sync with a
recorded narrative.flac audio file without requiring the entire
presentation to be converted to a video format.
This format has two benefits:
1. Presentation quality is preserved in the html+svg+js format,
2. Exported file size is kept minimal.
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.

1 participant