 				
 		public static var flvLowWaterAudio:uint = 0;
 		public static var flvLowWaterVideo:uint = 0;
+		public static var flvRecoveringIFrame:Boolean = false;
 		public const filterThresholdMs:uint = 0;
+
+		private function clearFLVWaterMarkFilter():void
+		{
+			flvLowWaterAudio = 0;
+			flvLowWaterVideo = 0;
+			flvRecoveringIFrame = false;
+		}
 
 		private function handleFLVMessage(timestamp:uint, message:ByteArray):void
 		{


			if(type == 9)
			{
				if(timestamp < flvLowWaterVideo - filterThresholdMs && !alwaysPass)
				{
					trace("SKIPPING TOO LOW FLV VID TS @ " + timestamp);
					if(SEND_LOGS)

			var isKeyFrame:Boolean = false;
			if(type == 9)
			{
				if(message[11] == FLVTags.VIDEO_CODEC_AVC_KEYFRAME
					&& message[12] == FLVTags.AVC_MODE_AVCC)
				{
					trace("Got AVCC, always pass.");
					alwaysPass = true;
				}

