变速公式

简介: 搞了半天才发现正确的修改时间的公式应该是本次调整时间 = 上次时间 + (当前获取时间 - 上次获取时间) * speed(调速倍率) private uint StoredTime =0...

搞了半天才发现正确的修改时间的公式应该是


本次调整时间 = 上次时间 + (当前获取时间 - 上次获取时间) * speed(调速倍率)


	private uint StoredTime =0;
		private  uint timeGetTime_Hooked(){
			//Debug.WriteLine("timeGetTime_Hooked :"+ this.trackBar1.Value);
			
			uint current = NativeSocketMethod.timeGetTime();
			
			if(StoredTime ==0){
			 	StoredTime = current;
			 	return StoredTime;
			}
		
			int speed = this.trackBar1.Value;
			if(speed==0){
				StoredTime =(uint)(StoredTime+(NativeSocketMethod.timeGetTime()- StoredTime));
				return StoredTime;
			}
			
			if(isJINENGAtt){
				Thread setAttStatusThread = new Thread(setAttStatus);
					setAttStatusThread.Start();
//					isAttStatus = false;
//					isJINENGAtt = false;
					StoredTime =(uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() - StoredTime) * 0.6f));
					return StoredTime;
//					return (uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() * 2.3f )));
//					return (uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() - StoredTime)* 2.3f ));
			}
		
			
			float add = 0;
			switch(this.trackBar1.Value){
				case 1:
					add = 0.35f;
					break;
				case 2:
					add = 0.45f;
					break;
				case 3:
					add = 0.65f;
					break;
				case 4:
					add = 0.75f;
					break;
				case 5:
					add = 0.85f;
//					add = 2f;
					break;
			}
				
			if(isAttStatus){
//				Thread setAttStatusThread = new Thread(setAttStatus);
//				setAttStatusThread.Start();
				
				isAttStatus = false;
				isJINENGAtt = false;
//				return StoredTime+NativeSocketMethod.timeGetTime();
//				StoredTime=  (uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() - StoredTime) * add));
//				return StoredTime;
			}
			
	//		uint lastTime = NativeSocketMethod.timeGetTime();
			StoredTime = (uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() - StoredTime) * add));
			return StoredTime;
//			return (uint)(StoredTime +  ((NativeSocketMethod.timeGetTime() - StoredTime) ));
		}


目录
相关文章
|
iOS开发 MacOS Python
Python包管理工具之poetry
之前讲了一个pipenv包管理工具,这里说另外一个poetry工具,它是一个Python 虚拟环境和依赖管理工具。还提供了打包发布的功能。
|
存储 API 开发工具
使用阿里云对象存储OSS+PicGo搭建图床
使用阿里云对象存储OSS+PicGo搭建图床
6958 0
使用阿里云对象存储OSS+PicGo搭建图床
|
应用服务中间件 网络安全 nginx
使用let's encrypt免费ssl证书启用网站https
网站启用https访问,首先需要一个证书机构颁发的ssl证书,目前给个人免费颁发证书的机构,比较好的是:let's encrypt。Let's Encrypt是由Mozilla、思科、Akamai、IdenTrust和EFF等组织发起公共的免费SSL项目,免费,安装方便,配置简单,值得信赖。
9764 0
|
5G 语音技术 开发者
短视频批量混剪-经验漫谈
“批量生产”、“快速裂变”和“去重”是制作营销短视频的关键,基于有限数量的基础素材大规模生成指定数量的新视频,是营销短视频创作的常见思路。本篇主要介绍一些经验方法,助您更快更高效地生产优质短视频。
619 0
短视频批量混剪-经验漫谈
|
域名解析 网络协议 算法
2023年阿里云免费SSL证书申请教程
2023年阿里云免费SSL证书申请教程,阿里云SSL免费证书在哪申请?一个阿里云账号一年可以申请20张免费SSL证书,很多同学找不到免费SSL的入口,阿小云来详细说下阿里云SSL证书免费申请入口链接以及免费SSL证书申请流程
10714 1
|
开发者 ice
短视频批量混剪-制作卡点相册
随着短视频生态的发展,视频生产的质量和效率已经越来越重要,本篇介绍如何用一段音乐和多张图片,快速自动生成一段卡点相册视频。
454 0
短视频批量混剪-制作卡点相册
|
前端开发
|
Linux 网络安全 开发工具
Python - poetry(1)包管理利器的入门介绍
Python - poetry(1)包管理利器的入门介绍
1245 0
|
编解码 人工智能 算法
用竖屏看热剧!阿里文娱视频横转竖技术实践
常见的机器视觉问题,诸如目标检测、主体标定、目标追踪、视频增强等作为独立技术问题来求解,是不是有些枯燥?在文娱产业中,如何将这些视觉技术进行创新和组合形成完整技术栈,对海量横屏播放的影视剧和短视频自动转换成竖版播放的视频?
2047 0
用竖屏看热剧!阿里文娱视频横转竖技术实践