Changeset 957
- Timestamp:
- 04/26/10 20:06:35 (3 years ago)
- Location:
- trunk/fl5
- Files:
-
- 4 edited
-
player.swf (modified) (previous)
-
src/com/longtailvideo/jwplayer/media/HTTPMediaProvider.as (modified) (2 diffs)
-
src/com/longtailvideo/jwplayer/media/VideoMediaProvider.as (modified) (3 diffs)
-
src/com/longtailvideo/jwplayer/player/PlayerVersion.as (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
trunk/fl5/src/com/longtailvideo/jwplayer/media/HTTPMediaProvider.as
r956 r957 236 236 /** Resume playing. **/ 237 237 override public function play():void { 238 _stream.resume();239 238 if (!_positionInterval) { 240 239 _positionInterval = setInterval(positionInterval, 100); 241 240 } 242 super.play(); 243 } 244 241 if (!shouldBuffer) { 242 _stream.resume(); 243 super.play(); 244 } else { 245 setState(PlayerState.BUFFERING); 246 } 247 } 248 249 /** Calculate how much of the buffer time has been loaded **/ 250 protected function get bufferFill():Number { 251 return _stream.bufferTime > 0 ? Math.floor(_stream.bufferLength / _stream.bufferTime * 100) : 0; 252 } 253 254 /** Figure out whether or not to buffer, based on the amount loaded **/ 255 protected function get shouldBuffer():Boolean { 256 return (bufferFill < 50); 257 } 258 259 /** Returns true if the required buffer time has been loaded **/ 260 protected function get bufferFull():Boolean { 261 var streamTime:Number = Math.min(_stream.time, item.duration); 262 var bufferTime:Number = _stream.bufferTime < (item.duration - streamTime) ? _stream.bufferTime : Math.floor(Math.abs(item.duration - streamTime)); 263 return (bufferFill > 95 && state == PlayerState.BUFFERING && _bufferFull == false && bufferTime > 0); 264 } 245 265 246 266 /** Interval for the position progress **/ 247 267 protected function positionInterval():void { 248 _position = Math.round(_stream.time * 10) / 10; 249 var percentoffset:Number; 250 if (_mp4) { 251 _position += _timeoffset; 252 } 253 254 var bufferPercent:Number; 255 var bufferFill:Number; 268 var percentoffset:Number = 0; 269 var bufferPercent:Number = 0; 270 256 271 if (item.duration > 0 && _stream && _stream.bytesTotal > 0) { 257 272 percentoffset = Math.round(_timeoffset / item.duration * 100); 258 273 bufferPercent = (_stream.bytesLoaded / _stream.bytesTotal) * (1 - _timeoffset / item.duration) * 100; 259 var bufferTime:Number = _stream.bufferTime < (item.duration - position) ? _stream.bufferTime : Math.round(item.duration - position); 260 bufferFill = _stream.bufferTime == 0 ? 0 : Math.ceil(_stream.bufferLength / bufferTime * 100); 261 } else { 262 percentoffset = 0; 263 bufferPercent = 0; 264 bufferFill = _stream.bufferLength/_stream.bufferTime * 100; 265 } 266 274 } 275 276 _position = Math.round(_stream.time * 10) / 10; 277 if (_mp4) { 278 _position += _timeoffset; 279 } 280 267 281 if (!_bandwidthChecked && _stream.bytesLoaded > 0 && _stream.bytesLoaded < _stream.bytesTotal) { 268 282 _bandwidthChecked = true; … … 271 285 } 272 286 273 if ( bufferFill < 25&& state == PlayerState.PLAYING) {287 if (shouldBuffer && state == PlayerState.PLAYING) { 274 288 _bufferFull = false; 275 289 _stream.pause(); 276 290 setState(PlayerState.BUFFERING); 277 } else if (bufferF ill > 95 && state == PlayerState.BUFFERING && _bufferFull == false) {291 } else if (bufferFull) { 278 292 _bufferFull = true; 279 293 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_BUFFER_FULL); -
trunk/fl5/src/com/longtailvideo/jwplayer/media/VideoMediaProvider.as
r956 r957 137 137 _positionInterval = setInterval(positionHandler, 100); 138 138 } 139 _stream.resume(); 140 super.play(); 141 } 142 139 // Don't resume the stream if it should continue buffering 140 if (!shouldBuffer) { 141 _stream.resume(); 142 super.play(); 143 } else { 144 setState(PlayerState.BUFFERING); 145 } 146 } 147 148 /** Calculate how much of the buffer time has been loaded **/ 149 protected function get bufferFill():Number { 150 return _stream.bufferTime > 0 ? Math.floor(_stream.bufferLength / _stream.bufferTime * 100) : 0; 151 } 152 153 /** Figure out whether or not to buffer, based on the amount loaded **/ 154 protected function get shouldBuffer():Boolean { 155 return (bufferFill < 50); 156 } 157 158 /** Returns true if the required buffer time has been loaded **/ 159 protected function get bufferFull():Boolean { 160 var streamTime:Number = Math.min(_stream.time, item.duration); 161 var bufferTime:Number = _stream.bufferTime < (item.duration - streamTime) ? _stream.bufferTime : Math.floor(Math.abs(item.duration - streamTime)); 162 return (bufferFill > 95 && state == PlayerState.BUFFERING && _bufferFull == false && bufferTime > 0); 163 } 143 164 144 165 /** Interval for the position progress **/ … … 149 170 } 150 171 151 var _streamTime:Number = Math.min(_stream.time, item.duration); 152 var bufferPercent:Number = _stream.bytesTotal > 0 ? _stream.bytesLoaded / _stream.bytesTotal * 100 : 0; 153 var bufferTime:Number = _stream.bufferTime < (item.duration - _streamTime) ? _stream.bufferTime : Math.floor(Math.abs(item.duration - _streamTime)); 154 var bufferFill:Number = bufferTime == 0 ? 100 : Math.floor(_stream.bufferLength / bufferTime * 100); 155 156 157 if (bufferFill < 25 && state == PlayerState.PLAYING) { 172 if (shouldBuffer && state == PlayerState.PLAYING) { 158 173 _bufferFull = false; 159 174 _stream.pause(); 160 175 setState(PlayerState.BUFFERING); 161 } else if (bufferF ill > 95 && state == PlayerState.BUFFERING && _bufferFull == false && bufferTime > 0) {176 } else if (bufferFull) { 162 177 _bufferFull = true; 163 178 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_BUFFER_FULL); 164 179 } 165 180 181 var bufferPercent:Number = _stream.bytesTotal > 0 ? _stream.bytesLoaded / _stream.bytesTotal * 100 : 0; 182 166 183 if (!_bufferingComplete) { 167 184 if (bufferPercent == 100 && _bufferingComplete == false) { … … 176 193 } 177 194 178 _position = Math.round(_stream Time * 10) / 10;195 _position = Math.round(_stream.time * 10) / 10; 179 196 180 197 if (position < item.duration) { -
trunk/fl5/src/com/longtailvideo/jwplayer/player/PlayerVersion.as
r956 r957 3 3 4 4 public class PlayerVersion { 5 protected static var _version:String = "5.2.95 6";5 protected static var _version:String = "5.2.957"; 6 6 7 7 public static function get version():String {
Note: See TracChangeset
for help on using the changeset viewer.
