Ticket #734 (closed feature: fixed)
Audiodescription plugin rewrite
| Reported by: | jeroen | Owned by: | jeroen |
|---|---|---|---|
| Priority: | Milestone: | Plugins | |
| Component: | flash | Keywords: | |
| Cc: | Forum thread: |
Description
The plugin should be rewritten for the v5 API (i.e. this audiodescription 2.0 plugin is only 5.x compatible). That way, the plugin will continue working after we drop the V4 API support in 5.x.
As part of this port, the AD button (for dock and controlbar) should become skinneable.
Multiple languages
Another highly requested feature is support for multiple languages - e.g. for language tracks or director's comments.
This can be solved in terms of loading by allowing a comma-separated list for the audiodescription.file flashvar. Alternatively, this list can be constructed of key:value pairs (until we come up with a more elegant solution):
player.addFlashvar("audiodescription.file","english:cc/english.mp3,spanish:cc/spanish.mp3")
In terms of language selection, multiple languages can be accomodated by pushing a language select menu, either:
- Above the controlbar button, in case dock=false.
- Besides the dock button, in case dock=true.
If there's only one language, the menu is not needed and the controlbar/dock button will act as a toggle. If there's multiple languages, the menu is visible and the controlbar/dock button will then act only as a callout for the menu.
Automated ducking
A big problem with audiodescriptions today is that they interfere with the regular audiotrack of a video. In TV environments, the regular and AD audio are always nicely mixed by hand. On the internet, this isn't very practical though (one would need 2 versions of a video: one mixed and one unmixed.
In the FP10 however, it is possible for the audiodescription plugin to request a wavechart of an MP3 sound as it is being loaded. Using that chart, the plugin could detect where the spoken audio resides. For these area's, the plugin could use the player API to fade down the volume of the original track. The strength of this ducking should be settable with an audiodescription.duck flashvar (that can e.g. be a number between 0 and 1).
Please investigate the requesting/parsing of a wavechart to see if a simple and useful ducking mechanism can be implemented. It's no problem to have no fallback for FP9 users (FP10 > 90%), as long as the plugin won't crash then.

Committed updated plugin in [1402]. Changes:
Multiple languages are not yet supported; that can be achieved by reloading the video with new AD in the javascript API.