Changeset 420
- Timestamp:
- 10/08/09 18:26:04 (4 years ago)
- Location:
- trunk/fl5/src/com/longtailvideo/jwplayer
- Files:
-
- 3 edited
-
media/MediaProvider.as (modified) (1 diff)
-
media/VideoMediaProvider.as (modified) (2 diffs)
-
view/components/ControlbarComponentV4.as (modified) (8 diffs)
Legend:
- Unmodified
- Added
- Removed
-
trunk/fl5/src/com/longtailvideo/jwplayer/media/MediaProvider.as
r415 r420 112 112 public function seek(pos:Number):void { 113 113 _position = pos; 114 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_TIME, {position: position });114 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_TIME, {position: position, duration:item.duration}); 115 115 } 116 116 -
trunk/fl5/src/com/longtailvideo/jwplayer/media/VideoMediaProvider.as
r418 r420 139 139 protected function positionInterval():void { 140 140 _position = Math.round(stream.time * 10) / 10; 141 var bfr:Number = Math.round(stream.bytesLoaded / stream.bytesTotal * 100); 142 if (bfr < 95 && position < Math.abs(item.duration - stream.bufferTime - 1)) { 143 if (state == PlayerState.PLAYING && bfr < 25) { 141 var bufferPercent:Number = Math.round(stream.bytesLoaded / stream.bytesTotal * 100); 142 var bufferFill:Number = Math.round(stream.bufferTime / stream.bufferLength * 100); 143 if (bufferFill < 95 && position < Math.abs(item.duration - stream.bufferTime - 1)) { 144 if (state == PlayerState.PLAYING && bufferFill < 25) { 144 145 setState(PlayerState.BUFFERING); 145 146 } 146 sendBufferEvent(b fr);147 } else if (b fr> 95 && state == PlayerState.BUFFERING) {147 sendBufferEvent(bufferPercent); 148 } else if (bufferFill > 95 && state == PlayerState.BUFFERING) { 148 149 super.play(); 149 150 } … … 151 152 if (position < item.duration) { 152 153 if (state == PlayerState.PLAYING && position >= 0) { 153 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_TIME, {position: position, duration: item.duration, bufferPercent:b fr});154 sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_TIME, {position: position, duration: item.duration, bufferPercent:bufferPercent}); 154 155 } 155 156 } else if (item.duration > 0) { -
trunk/fl5/src/com/longtailvideo/jwplayer/view/components/ControlbarComponentV4.as
r419 r420 25 25 import flash.utils.clearTimeout; 26 26 import flash.utils.setTimeout; 27 28 import mx.effects.Fade; 29 27 30 28 31 29 public class ControlbarComponentV4 extends CoreComponent implements IControlbarComponent { … … 68 66 muteButton: ViewEvent.JWPLAYER_VIEW_MUTE, 69 67 unmuteButton: ViewEvent.JWPLAYER_VIEW_MUTE}; 70 var temp:Sprite = player.skin.getSWFSkin();71 68 skin = player.skin.getSWFSkin().getChildByName('controlbar') as Sprite; 72 69 skin.x = 0; … … 156 153 stacker.rearrange(width); 157 154 stateHandler(); 155 fixTime(); 158 156 Mouse.show(); 159 157 } … … 218 216 timeHandler(); 219 217 stacker.rearrange(); 218 fixTime(); 220 219 } 221 220 … … 224 223 private function moveHandler(evt:MouseEvent = null):void { 225 224 if (alpha == 0) { 226 var fade:Fade = new Fade(this);225 /*var fade:Fade = new Fade(this); 227 226 fade.alphaTo = 1; 228 fade.play(); 227 fade.play();*/ 229 228 } 230 229 clearTimeout(hiding); … … 428 427 var dur:Number = 0; 429 428 var pos:Number = 0; 430 if (evt && (evt.position >= 0 || evt.duration >=0)) { 431 dur = evt.duration; 432 pos = evt.position; 429 if (evt) { 430 if (evt.duration >= 0){ 431 dur = evt.duration; 432 } 433 if (evt.position >= 0){ 434 pos = evt.position; 435 } 433 436 } else if (player.playlist.length > 0 && player.playlist.currentItem) { 434 dur = player.playlist.currentItem.duration; 437 if (player.playlist.currentItem.duration >= 0){ 438 dur = player.playlist.currentItem.duration; 439 } 435 440 pos = 0; 436 441 } … … 440 445 } 441 446 try { 442 var temp:DisplayObject = skin.getChildByName('elapsedText');443 447 (getSkinElement('elapsedText') as TextField).text = Strings.digits(pos); 444 448 (getSkinElement('totalText') as TextField).text = Strings.digits(dur); … … 451 455 getSkinElementChild('timeSlider', 'icon').visible = true; 452 456 getSkinElementChild('timeSlider', 'mark').visible = true; 453 if (!scrubber) {457 if(!scrubber) { 454 458 getSkinElementChild('timeSlider', 'icon').x = xps; 455 getSkinElementChild('timeSlider', 'icon').scaleX = 1 / getSkinElement('timeSlider').scaleX;456 //getSkinElementChild('timeSlider','icon'). = 1;457 459 getSkinElementChild('timeSlider', 'done').width = xps; 458 var bufferPercent:Number = evt.bufferPercent / 100; 459 var wid:Number = getSkinElementChild('timeSlider','rail').width; 460 getSkinElementChild('timeSlider','mark').x = 0; 461 getSkinElementChild('timeSlider','mark').width = bufferPercent / 100 * getSkinElementChild('timeSlider', 'rail').width; 462 getSkinElementChild('timeSlider','mark').scaleX = getSkinElementChild('timeSlider', 'rail').scaleX; 460 getSkinElementChild('timeSlider', 'mark').x = xps; 461 getSkinElementChild('timeSlider', 'mark').width = Math.round(evt.bufferPercent / 100 * (getSkinElementChild('timeSlider', 'rail').width - xps)); 463 462 } 464 463 getSkinElementChild('timeSlider', 'done').visible = true; 465 464 } else { 466 getSkinElementChild('timeSlider', 'icon').visible = false; 467 getSkinElementChild('timeSlider', 'mark').visible = false; 468 getSkinElementChild('timeSlider', 'done').visible = false; 469 } 465 if (player.state != PlayerState.PLAYING){ 466 getSkinElementChild('timeSlider', 'icon').visible = false; 467 getSkinElementChild('timeSlider', 'mark').visible = false; 468 getSkinElementChild('timeSlider', 'done').visible = false; 469 } 470 } 471 } catch (err:Error) { 472 } 473 } 474 475 476 /** Fix the timeline display. **/ 477 private function fixTime():void { 478 try { 479 var scp:Number = getSkinElement('timeSlider').scaleX; 480 getSkinElement('timeSlider').scaleX = 1; 481 getSkinElementChild('timeSlider', 'icon').x = scp * getSkinElementChild('timeSlider', 'icon').x; 482 getSkinElementChild('timeSlider', 'mark').x = scp * getSkinElementChild('timeSlider', 'mark').x; 483 getSkinElementChild('timeSlider', 'mark').width = scp * getSkinElementChild('timeSlider', 'mark').width; 484 getSkinElementChild('timeSlider', 'rail').width = scp * getSkinElementChild('timeSlider', 'rail').width; 485 getSkinElementChild('timeSlider', 'done').x = scp * getSkinElementChild('timeSlider', 'done').x; 486 getSkinElementChild('timeSlider', 'done').width = scp * getSkinElementChild('timeSlider', 'done').width; 470 487 } catch (err:Error) { 471 488 }
Note: See TracChangeset
for help on using the changeset viewer.
