Skip to content
V2.97a.20110306 - HTML5 audio updates, Flash/HTML5 mode detection, IE flash init tweaks, reuse and instance options fixes

Bug fixes and improvements for HTML5 audio (object reuse on iOS), improved URL comparison. onfinish() -> this.play() instance option fix. IE flash wmode initialization tweak. Flash/NetStream (MP4) unpause()/resume() hack now applies to everyone. If no flash found (eg., new Mac desktops), HTML5 audio will now be tried. Make hasPriority actually work (d'oh!)

    Bug fixes
        HTML5: _resetProperties() when setting Audio().src, fix sound1.play() -> sound2.play() -> sound1.play() case on iOS 4.1 not correctly re-assigning original sound URL (related to global audio object.)
        HTML5 audio: If no flash, try forcing useHTML5Audio = true (eg. desktop safari on new Macs which don't come with Flash.) Related: flash detection code tweak.
        Improved _iO vs. old _iO URL comparison, rather than .src which gets translated from local paths to file:// etc.
        Correctly trash instanceOptions (and _iO) before calling onfinish(), but maintain local copy of onfinish() so it still works. Fix play({onfinish:this.play}) bug where _iO was being incorrectly remembered.
        Flash 9/movieStar: setPosition() unpause hack for everyone, not just Webkit (via 8tracks dudes, reported now in Firefox? Should not cause regressions.)
        Special wmode tweak for reports of SM2 start-up failures, may be admin/non-admin account related, IE 8-only on Windows 7 (possibly Vista, too?) as of late January, 2011.
        Apply hasPriority to object/embed, not its style. D'oh. :P
        HTML5: use new Audio(null) vs new Audio(), Opera 9.64 expects URL argument; throws WRONG_ARGUMENTS_ERR otherwise. Doesn't implement canPlayType() either, but both are fixed in future releases.

    Miscellaneous
        Don't actually apply new value in setPosition() if a sound has not yet loaded (and if so, hasn't errored out.)
        isNaN() check for HTML5 loading (saw one under Safari, in testing).
        Added CLSID and codebase attributes for IE <object> (same as used in SWFObject), just to be safe.
        Removed some HTML5 debug bits, unused _HTML5_states/codes block.
        Flashblock CSS: Correctly hide the SWF via left/top:-9999em when it hits .swf_loaded {}, ie., never blocked in the first place. Minor flashblock regression fixes after .swf_loaded / .swf_unblocked changes with last release.
        Ant build script parameter change, now uses .build.properties file (related pull request)