Version 3.4.5
This commit is contained in:
1 parent
fb6b5baabc
commit
e4478369d8
1360 files changed
+228921
-179445
No files matched your search
@@ -1,17 +1,3 @@
|
||||
========================================================================
|
||||
PLEASE NOTE: Invision Power Services, Inc has been granted permission
|
||||
to redistribute the flowplayer JS and SWF files regardless of the GPL
|
||||
that it is usually protected under.
|
||||
|
||||
For clarification, please contact either:
|
||||
|
||||
mmecham at invisionpower . com
|
||||
info at flowplayer . org
|
||||
|
||||
The GPL is only shown below as a reference and incase you decide to
|
||||
distribute it further.
|
||||
|
||||
========================================================================
|
||||
The Flowplayer Free version is released under the
|
||||
GNU GENERAL PUBLIC LICENSE Version 3 (GPL).
|
||||
|
||||
|
||||
@@ -1,9 +1,118 @@
|
||||
Version history:
|
||||
|
||||
3.2.14
|
||||
------
|
||||
- #614 when the clip ends if the next clip in the provider has a different provider close the provider stream.
|
||||
- #627 only detach / attach the display on start events which causes issues in buffering events after a seek in stagevideo.
|
||||
- #627 re-enable stagevideo state change listeners if stagevideo is available or detach the fullscreen events on first call.
|
||||
- #9 when replaying from stopping, connection does not receive callbacks anymore.
|
||||
- #15 fixes for #627, handle the display init on startup.
|
||||
|
||||
3.2.13
|
||||
------
|
||||
- Updated to automatically load the latest controls and audio plugins
|
||||
- #612 add some logging for the stagevideo render state to determine what mode the hardware acceleration is in for various systems.
|
||||
- #628 opera browsers do not return filesize correctly for latest flash players so require to use load completion instead which may help with gzipped files also.
|
||||
|
||||
3.2.12
|
||||
------
|
||||
- new flowplayer.js version 3.2.11,
|
||||
fixes removing the player in fullscreen mode leaves Android locked in landscape orientation (#511)
|
||||
- #586 add a bitrate label with a new namespace attribute fp:bitratelabel.
|
||||
- #583 fixes for handling the fullscreenOnly property better
|
||||
- #494 with relative filenames with a root path strip the baseurl of paths first.
|
||||
|
||||
3.2.11
|
||||
------
|
||||
- new flowplayer.js, now requires Flash 10.1 as the minimum flash version
|
||||
- #526 allow click through event for flash installation message when using div containers.
|
||||
- #508 disabling the stagevideo screen mask, canvas is visible without it, this was causing issues with the display list.
|
||||
- #443 adding accessibility option to the playbuttonoverlay.
|
||||
|
||||
|
||||
3.2.10
|
||||
------
|
||||
- Fixed #514, scrubbing was broken
|
||||
- new flowplayer.js version 3.2.9, fixes #510
|
||||
|
||||
3.2.9
|
||||
-----
|
||||
- Fixed #490, controlbar background, buffer bar and progress bar colors were all reset to white
|
||||
- #503 Update viewport when stage is added to obtain the coordnates correctly. Update viewport when in and out of fullscreen.
|
||||
- #508 stage video mask was being added to the top layer and hiding all children.
|
||||
|
||||
3.2.8
|
||||
-----
|
||||
- Added new property clip.backBufferLength, to be used with FMS 3.5
|
||||
- Adds support for StageVideo. To enable it set clip.accelerated to true.
|
||||
- Tries to reload two times if the stream is not initially found. Also does 3 connection attempts if the connection fails with RTMP.
|
||||
- Support for FMS slow motion
|
||||
- Support for thumbnails in RSS files
|
||||
- Added onPlayStatus clip event handler on NetStreamClient.
|
||||
- Added new clip events for stream switching onSwitchFailed and onSwitchComplete
|
||||
- made it possible to replay a clip using play(<current_clip's_index>)
|
||||
|
||||
Fixes:
|
||||
- fixed to dispatch onStart also when replaying the previous clip, now the JS controlbar again works when replaying
|
||||
- cuepoints were fired multiple times when there is a playlist with several clips. Issue #150.
|
||||
- fixed XML parsing error when metadata's keys contains dashes
|
||||
- backgroundImage css property can now be set to "none" to be removed
|
||||
- fixed the facts that clips in a playlist were cut off by a fraction in the end
|
||||
- fullScreenOnly now works in conjunction with displayTime
|
||||
- JS plugins now handles grouped syntax like flowplayer("a.player" /*...*/ )
|
||||
- JS function setClip can now be used to add listeners on the new Clip
|
||||
- different players with the same configuration stored in a variable can now use JS plugins
|
||||
- using linkUrl now works when calling JS function setClip
|
||||
- zIndex for plugins works fine now, issue #302
|
||||
- onLastSecond was fired twice, issue #300
|
||||
- fixed license key verification on subdomains, issue #318
|
||||
- fixed XSS vulnerability with linkUrls. Thank you Szymon Gruszecki for discovering and reporting this to us. Issue #329.
|
||||
- fixed switch stream api support in paused state. #279.
|
||||
- added switching state properties. #339
|
||||
- fixed the stopBuffering() API method to close the NetConnection and to clear the screen
|
||||
- Issue #355 setup targeting for Flash 10.0 and 10.1 to provide support for Flash 10.0 without Stagevideo requirements.
|
||||
- fixed #364, NetConnection unnecessary closed/reconnected when the netConnection does not change from clip to clip
|
||||
- xss fix for flashembed #357
|
||||
- Issue #384 added links support in context menus with configuration { url: "domain.com", target: "_blank"} which will work in embedded players.
|
||||
- #378, javascript method loadPluginWithConfig is unavailable and non existant. Documentation updated required to remove this and updates for loadPlugin like so
|
||||
this.loadPlugin("content","../flowplayer.content.swf", { html: "test", top: 30 }); or
|
||||
this.loadPlugin("content","../flowplayer.content.swf", { html: "test" }, function() {
|
||||
this.css({ top: 30 });
|
||||
});
|
||||
- #191 send the resume event, and no stop event first before reconnecting due to a connection timeout so the player comes out of a paused state correctly.
|
||||
- #363 pause stream after metadata not beforehand or else no metadata is sent for rtmp clips .
|
||||
- #363 silent seek and force to seek to a keyframe or else video frame will not display initially when paused.
|
||||
- #375 clearing the event listeners when adding new video displays prevents new events being added when the playlist is replaced.
|
||||
- #391 add message argument to connection failure callback required by some connection providers.
|
||||
- #363 add overridable pause to frame for different seek functionality between http and rtmp.
|
||||
- #392 possible fix for extensions with no filetypes like rtmp flv clips, require positive index check.
|
||||
- #395 apply buffer animation status to VOD streams only.
|
||||
- #375 possible fix when replacing the playlist in onBeforeFinish, move replay button to onFinish.
|
||||
- #390 correct seek back to a valid time on invalid seeking while seeking in the buffer.
|
||||
- #404 implement netstreamplayoptions for http streams, resets the stream or start loading a new stream.
|
||||
- fixed an issue in parsing JSON config that contains several comments separated by whitespace
|
||||
- new clip property 'stopLiveOnPause'
|
||||
- #415 regression issue with #395, stop the buffering animation correctly.
|
||||
- #414 problem appears again for very short clips with invalid seek times, make it step back 1 second from the invalid seek time to seek the buffer correctly.
|
||||
- #416 enable seekableOnBegin to enable the scrubbar correctly when autobuffering.
|
||||
- #423 add the . to clip type extension checks or else files with known extension postfixes within them will be chosen instead.
|
||||
- #426 when a plugin width is set to a percentage, x/y is required to be floored or else it will affect the animation engine. specifically for the autohide function.
|
||||
- #430 adding event listeners for netconnection to obtain certain events.
|
||||
- #430 clear buffering status on connection failure.
|
||||
- #430 clear buffering status on stream failure.
|
||||
- #412 check for empty baseurl or else player url is appended and affects the url parsing.
|
||||
- #439 check for all rtmp streaming protocols when checking for rtmp urls.
|
||||
- #442 fix for code error in the javascript api.
|
||||
- #461 when we have a clip base url set, we need the complete clip url sent to play2 for http streams.
|
||||
- #470 check for a playlist when replacing the playlist with an rss feed.
|
||||
- #494 regression issued caused by #412, enable base url correctly.
|
||||
- #30 regression caused by character replacements, removing for now and let end user deal with them.
|
||||
|
||||
3.2.7
|
||||
-----
|
||||
|
||||
- Loads the new controlbar plugin version 3.2.5. No other functional changes.
|
||||
- Loads the new controlbar plugin version 3.2.5.
|
||||
Fixes:
|
||||
- Fixed 'orig' scaling in fullscreen: http://flowplayer.org/forum/2/10274#post-52646
|
||||
|
||||
3.2.6
|
||||
-----
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
/*
|
||||
* flowplayer.js 3.2.11. The Flowplayer API
|
||||
*
|
||||
* Copyright 2009-2011 Flowplayer Oy
|
||||
*
|
||||
* This file is part of Flowplayer.
|
||||
*
|
||||
* Flowplayer is free software: you can redistribute it and/or modify
|
||||
* it under the terms of the GNU General Public License as published by
|
||||
* the Free Software Foundation, either version 3 of the License, or
|
||||
* (at your option) any later version.
|
||||
*
|
||||
* Flowplayer is distributed in the hope that it will be useful,
|
||||
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
* GNU General Public License for more details.
|
||||
*
|
||||
* You should have received a copy of the GNU General Public License
|
||||
* along with Flowplayer. If not, see <http://www.gnu.org/licenses/>.
|
||||
*
|
||||
* Date: 2012-06-16 10:34:45 -0400 (Sat, 16 Jun 2012)
|
||||
* Revision: 808
|
||||
*/
|
||||
(function(){function g(o){console.log("$f.fireEvent",[].slice.call(o))}function k(q){if(!q||typeof q!="object"){return q}var o=new q.constructor();for(var p in q){if(q.hasOwnProperty(p)){o[p]=k(q[p])}}return o}function m(t,q){if(!t){return}var o,p=0,r=t.length;if(r===undefined){for(o in t){if(q.call(t[o],o,t[o])===false){break}}}else{for(var s=t[0];p<r&&q.call(s,p,s)!==false;s=t[++p]){}}return t}function c(o){return document.getElementById(o)}function i(q,p,o){if(typeof p!="object"){return q}if(q&&p){m(p,function(r,s){if(!o||typeof s!="function"){q[r]=s}})}return q}function n(s){var q=s.indexOf(".");if(q!=-1){var p=s.slice(0,q)||"*";var o=s.slice(q+1,s.length);var r=[];m(document.getElementsByTagName(p),function(){if(this.className&&this.className.indexOf(o)!=-1){r.push(this)}});return r}}function f(o){o=o||window.event;if(o.preventDefault){o.stopPropagation();o.preventDefault()}else{o.returnValue=false;o.cancelBubble=true}return false}function j(q,o,p){q[o]=q[o]||[];q[o].push(p)}function e(){return"_"+(""+Math.random()).slice(2,10)}var h=function(t,r,s){var q=this,p={},u={};q.index=r;if(typeof t=="string"){t={url:t}}i(this,t,true);m(("Begin*,Start,Pause*,Resume*,Seek*,Stop*,Finish*,LastSecond,Update,BufferFull,BufferEmpty,BufferStop").split(","),function(){var v="on"+this;if(v.indexOf("*")!=-1){v=v.slice(0,v.length-1);var w="onBefore"+v.slice(2);q[w]=function(x){j(u,w,x);return q}}q[v]=function(x){j(u,v,x);return q};if(r==-1){if(q[w]){s[w]=q[w]}if(q[v]){s[v]=q[v]}}});i(this,{onCuepoint:function(x,w){if(arguments.length==1){p.embedded=[null,x];return q}if(typeof x=="number"){x=[x]}var v=e();p[v]=[x,w];if(s.isLoaded()){s._api().fp_addCuepoints(x,r,v)}return q},update:function(w){i(q,w);if(s.isLoaded()){s._api().fp_updateClip(w,r)}var v=s.getConfig();var x=(r==-1)?v.clip:v.playlist[r];i(x,w,true)},_fireEvent:function(v,y,w,A){if(v=="onLoad"){m(p,function(B,C){if(C[0]){s._api().fp_addCuepoints(C[0],r,B)}});return false}A=A||q;if(v=="onCuepoint"){var z=p[y];if(z){return z[1].call(s,A,w)}}if(y&&"onBeforeBegin,onMetaData,onStart,onUpdate,onResume".indexOf(v)!=-1){i(A,y);if(y.metaData){if(!A.duration){A.duration=y.metaData.duration}else{A.fullDuration=y.metaData.duration}}}var x=true;m(u[v],function(){x=this.call(s,A,y,w)});return x}});if(t.onCuepoint){var o=t.onCuepoint;q.onCuepoint.apply(q,typeof o=="function"?[o]:o);delete t.onCuepoint}m(t,function(v,w){if(typeof w=="function"){j(u,v,w);delete t[v]}});if(r==-1){s.onCuepoint=this.onCuepoint}};var l=function(p,r,q,t){var o=this,s={},u=false;if(t){i(s,t)}m(r,function(v,w){if(typeof w=="function"){s[v]=w;delete r[v]}});i(this,{animate:function(y,z,x){if(!y){return o}if(typeof z=="function"){x=z;z=500}if(typeof y=="string"){var w=y;y={};y[w]=z;z=500}if(x){var v=e();s[v]=x}if(z===undefined){z=500}r=q._api().fp_animate(p,y,z,v);return o},css:function(w,x){if(x!==undefined){var v={};v[w]=x;w=v}r=q._api().fp_css(p,w);i(o,r);return o},show:function(){this.display="block";q._api().fp_showPlugin(p);return o},hide:function(){this.display="none";q._api().fp_hidePlugin(p);return o},toggle:function(){this.display=q._api().fp_togglePlugin(p);return o},fadeTo:function(y,x,w){if(typeof x=="function"){w=x;x=500}if(w){var v=e();s[v]=w}this.display=q._api().fp_fadeTo(p,y,x,v);this.opacity=y;return o},fadeIn:function(w,v){return o.fadeTo(1,w,v)},fadeOut:function(w,v){return o.fadeTo(0,w,v)},getName:function(){return p},getPlayer:function(){return q},_fireEvent:function(w,v,x){if(w=="onUpdate"){var z=q._api().fp_getPlugin(p);if(!z){return}i(o,z);delete o.methods;if(!u){m(z.methods,function(){var B=""+this;o[B]=function(){var C=[].slice.call(arguments);var D=q._api().fp_invoke(p,B,C);return D==="undefined"||D===undefined?o:D}});u=true}}var A=s[w];if(A){var y=A.apply(o,v);if(w.slice(0,1)=="_"){delete s[w]}return y}return o}})};function b(q,G,t){var w=this,v=null,D=false,u,s,F=[],y={},x={},E,r,p,C,o,A;i(w,{id:function(){return E},isLoaded:function(){return(v!==null&&v.fp_play!==undefined&&!D)},getParent:function(){return q},hide:function(H){if(H){q.style.height="0px"}if(w.isLoaded()){v.style.height="0px"}return w},show:function(){q.style.height=A+"px";if(w.isLoaded()){v.style.height=o+"px"}return w},isHidden:function(){return w.isLoaded()&&parseInt(v.style.height,10)===0},load:function(J){if(!w.isLoaded()&&w._fireEvent("onBeforeLoad")!==false){var H=function(){if(u&&!flashembed.isSupported(G.version)){q.innerHTML=""}if(J){J.cached=true;j(x,"onLoad",J)}flashembed(q,G,{config:t})};var I=0;m(a,function(){this.unload(function(K){if(++I==a.length){H()}})})}return w},unload:function(J){if(u.replace(/\s/g,"")!==""){if(w._fireEvent("onBeforeUnload")===false){if(J){J(false)}return w}D=true;try{if(v){if(v.fp_isFullscreen()){v.fp_toggleFullscreen()}v.fp_close();w._fireEvent("onUnload")}}catch(H){}var I=function(){v=null;q.innerHTML=u;D=false;if(J){J(true)}};if(/WebKit/i.test(navigator.userAgent)&&!/Chrome/i.test(navigator.userAgent)){setTimeout(I,0)}else{I()}}else{if(J){J(false)}}return w},getClipLine truncated
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Reference in new issue
Block a user