public void fastReverse(bool flag) { if (this.isPlaying && reverseFlag && !flag) { lock (EmotionModel.svmFeature) { EmotionModel.svmFeature[(int)VideoFeature.REWIND].Value = 0; } reverseFlag = false; EventFactory.finishPeriodEvent(rewindEvent, (int)mPlayer.GetPlayTime()); storeModule.savePeriodEvent(rewindEvent); // for debug Console.WriteLine(JsonConvert.SerializeObject(rewindEvent)); rewindEvent = null; } else if (this.isPlaying && !reverseFlag && flag) { lock (EmotionModel.svmFeature) { EmotionModel.svmFeature[(int)VideoFeature.REWIND].Value = 1; } // 创建快退事件 rewindEvent = (RewindEvent)EventFactory.startPeriodEvent(curSession.SessionID, (int)mPlayer.GetPlayTime(), PeriodEventType.REWIND); // for debug Console.WriteLine(JsonConvert.SerializeObject(rewindEvent)); reverseFlag = true; Thread t = new Thread(reverse); t.Start(); } }