Changeset 915


Ignore:
Timestamp:
04/03/10 13:51:59 (3 years ago)
Author:
jeroen
Message:

fixed #820 issues

Location:
trunk/fl5
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • trunk/fl5/src/com/longtailvideo/jwplayer/media/RTMPMediaProvider.as

    r912 r915  
    5757        /** Level to which we're transitioning. **/ 
    5858        private var _transitionLevel:Number = -1; 
     59        /** Save if we want to transition. **/ 
     60        private var _transitionPlanned:Boolean = false; 
    5961        /** Video object to be instantiated. **/ 
    6062        private var _video:Video; 
     
    138140                return; 
    139141            } 
    140             if (bdw < 100 || bdw > 99999) { 
    141                 return; 
    142             } else { 
    143                 bdw = Math.round(config.bandwidth / 2 + bdw / 2); 
    144             } 
     142            if (bdw < 99 || bdw > 99999) { return; } 
    145143            config.bandwidth = bdw; 
    146144            Configger.saveCookie('bandwidth', bdw); 
    147145            if (item.levels.length > 0 && item.getLevel(config.bandwidth, config.width) != item.currentLevel) { 
    148                                 swap(item.getLevel(config.bandwidth, config.width)); 
     146                                if(_transitionPlanned) { 
     147                                        swap(item.getLevel(config.bandwidth, config.width)); 
     148                                        _transitionPlanned = false; 
     149                                } else {  
     150                                        _transitionPlanned = true; 
     151                                } 
    149152            } 
    150153        } 
     
    284287            } 
    285288            if (dat.code == 'NetStream.Play.TransitionComplete') { 
    286                                 if (_transitionLevel >= 0) { 
    287                                         Logger.log("Transition to level " + item.currentLevel + " complete"); 
    288                         _transitionLevel = -1; 
    289                                 } 
     289                                if (_transitionLevel >= 0) { _transitionLevel = -1; } 
    290290            } 
    291291                        sendMediaEvent(MediaEvent.JWPLAYER_MEDIA_META, {metadata: dat}); 
     
    369369                        if (isDVR && pos > _dvrDuration) { pos = _dvrDuration; } 
    370370            _transitionLevel = -1; 
     371                        _transitionPlanned = false; 
    371372                        _timeoffset = pos; 
    372373            clearInterval(_positionInterval); 
     
    412413                } 
    413414                if (_dynamic) { 
    414                     _bandwidthInterval = setInterval(getBandwidth, 2000); 
     415                    _bandwidthInterval = setInterval(getBandwidth, 1000); 
    415416                } 
    416417            } 
     
    568569        /** Dynamically switch streams **/ 
    569570        private function swap(newLevel:Number):void { 
    570             if (_transitionLevel == newLevel) { 
    571                 Logger.log('Already tranisitioning to level ' + item.currentLevel + ' ; transition ignored'); 
    572             } else { 
     571            if (_transitionLevel == -1) { 
    573572                _transitionLevel = newLevel; 
    574573                                item.setLevel(newLevel); 
    575                 Logger.log('transition to level ' + newLevel + ' initiated'); 
    576574                var nso:NetStreamPlayOptions = new NetStreamPlayOptions(); 
    577575                nso.streamName = getID(item.file); 
  • trunk/fl5/src/com/longtailvideo/jwplayer/model/PlaylistItem.as

    r821 r915  
    101101                        for (var i:Number=0; i < _levels.length; i++) { 
    102102                                var level:PlaylistItemLevel = _levels[i] as PlaylistItemLevel; 
    103                                 if (bitrate >= level.bitrate && width >= level.width * 0.9) { 
     103                                if (bitrate >= level.bitrate * 1.2 && width >= level.width * 0.9) { 
    104104                                        return i; 
    105105                                } 
Note: See TracChangeset for help on using the changeset viewer.