 			);
 		}
 		
+		private function generateIndexReadyForQuality(quality:int):void{
+			var rateItem:HTTPStreamingM3U8IndexRateItem = _rateVec[quality];
+			var isReady:Boolean = false;
+			
+			if (rateItem.isParsed) {
+				var keys:Vector.<HTTPStreamingM3U8IndexKey> = rateItem.key;
+				if (keys) {
+					isReady = true;
+					for (var i:int=keys.length-1; i >= 0; i--) {
+						isReady = isReady && keys[i].isReady();
+					}
+				} else {
+					isReady = true;
+				}
+				
+				// Send off notification if ready
+				if (isReady) {
+					var initialOffset:Number;
+					if(rateItem.isLive){
+						initialOffset = rateItem.totalTime - ((rateItem.totalTime/rateItem.manifest.length) * 3);
+						if(initialOffset < rateItem.totalTime - 30)
+							initialOffset = rateItem.totalTime - 30;
+					}
+					notifyIndexReady(quality, initialOffset);					
+				}
+			}
+		}
+		
 		private function notifyIndexReady(quality:int, offset:Number):void{
 			
 			if(_DVR){

					_fileHandler.initialOffset = manifest[_segment].startTime;
					//dispatchEvent(new HTTPHLSStreamingEvent(HTTPHLSStreamingEvent.DISCONTINUITY));
				}
				
				++_segment;
				++_absoluteSegment;
			}
			
			return request;
		}
		
		/*

 package org.denivip.osmf.net.httpstreaming.hls
{
	import flash.net.URLRequest;
	import flash.utils.ByteArray;
	import flash.utils.getQualifiedClassName;
	import flash.utils.getTimer;
	
	import org.denivip.osmf.plugins.HLSSettings;
	import org.denivip.osmf.utility.Padding;
	import org.osmf.events.DVRStreamInfoEvent;
	import org.osmf.events.HTTPStreamingEvent;
	import org.osmf.events.HTTPStreamingIndexHandlerEvent;
