vb6
vb6 数组index最大值如何获取?
数组index最大值如何获取?
在vb开发中可以使用ubound函数获取数组的最大下标
VB提示,无效的过程调用或参数是什么意思啊?
就是你调用的函数或子过程用错了地方。比如 MidB() 函数是用来截取二进制串中的子串的。但是如果将它用在截取文本字符串,就会出现上述错误信息
vb合法常量有什么要求?
vb合法常量的要求如下:
1、由字母和数字以及下划线组成,但必须有字母开始(如果是VB6中文也没问题)。
2、不能是VB的保留关键字,这个可以在VB的对象浏览器中选中所有库,然后在全局成员中出现的某些可以用,某些绝对不能用。
3、变量名不宜过长,VB中规定变量名不能超过255个字符,但这个所谓的255字符是只Bas中的变量,如果在Class或Form中,则Class或Form的名字加上你要设定的变量名的总长度不能超过255字符。
4、在同一个作用域内,变量名必须唯一。
请问vb中qbcolor什么意思,怎么用?
这是VB6里的一个函数;用来返回表示所对应颜色值的RGB颜色码 值颜色 0黑色 1兰色 2绿色 3青色 4红色 5洋红色 6黄色 7白色 8灰色 9亮兰色 10亮绿色 11亮青色 12亮红色 13亮洋红色 14亮黄色 15亮白色 例如:你用下面代码可以改变窗体的背景颜色为红色 (12)
utau的优点和缺点?
UTAU的优点
1.前后端分离
在UTAU中,后端引擎与前端编辑器是分离的。开发者不需要会写界面,只需要会写算法,就可以在UTAU上把自己的想法变成现实。这促成了UTAU生态的繁荣。
2.拥有包管理机制
UTAU支持uar格式的音源与插件包,拖入UTAU窗口自动安装。
3.简单的文本插件接口
UTAU的插件机制是写入一个临时ust文件,用插件打开该ust文件并修改,最后UTAU读入修改后的文件。所以,可以用任何编程语言开发插件,甚至网页都可以,例如“朗读君”。插件开发者无需深入理解UTAU的工作原理即可编写插件。
UTAU的缺点
1.开发框架老旧
UTAU使用的开发框架是已经停止支持的visual basic 6(vb6),将不会得到功能更新与安全更新。这也导致UTAU的乱码问题难以解决。
2.依赖平台特性
UTAU依赖windows的bat来合成,使UTAU难以迁移到mac和linux等其他平台。(UTAU有Mac版,但是不支持插件和第三方引擎)
3.引擎接口的可扩展性差
UTAU的引擎接口要求各音符的合成相互独立,合成器在合成当前音符时不知道前后其他音符的信息。在那个以变调拼接合成为主的时代,这种设计简化了引擎的开发。但是,AI合成一般是整句训练合成,至少要将以休止符分割的完整的乐句作为合成单位。
我们来看看moresampler的工作原理。与其他UTAU引擎不同,moresampler将原始音频编译为llsm中间文件(存储了谐波和噪波的频谱)。合成时,对频谱进行变调。在合成结束时拼接频谱,最后转换为音频。这套机制要求moresampler在音轨末尾进行后处理。这是UTAU接口原生不支持的。
那么moresampler是怎么实现的呢?moresampler会读入bat脚本,以判断当前是不是最后一个音符。这种解决方案依赖于bat脚本,可能UTAU更新一个版本(改变bat的格式,或者改用system函数直接调用引擎),或者采用第三方前端编辑器,或者移植到其他操作系统,就不能用了。
此外,UTAU在开发时只考虑了日文合成,所以只有前固定段而没有后固定段。在合成中文时会遇到短音切除尾音,长音拉长尾音的问题,必须进行拆音等workaround才能正常合成。
4.接口没有一套标准
UTAU虽然实现了前后端分离,但是没有一套明确的标准。
还是以moresampler为例。UTAU并没有明确定义“只要调用了引擎,传入参数就符合标准”,还是“必须生成一定格式的bat脚本来调用引擎才符合标准”。moresampler依赖了这一套机制,第三方前端编辑器的作者就必须使用同样的bat脚本才能兼容moresampler,这就为开放的UTAU生态带来了限制。
C# .net framework也不开源,但是提供了C#语言规范,就有了mono等第三方实现,将C#带到Mac和Linux等平台。
5.有很多奇怪的机制
例如,UTAU编辑器和引擎支持辅音速度取任意数值,但超过[0,200]区间的辅音速度不会保存,插件生成的超过该范围的辅音速度不会生效。
类似的机制还有很多,而且部分引擎和插件依赖这些机制。
这也就是目前的UTAU第三方编辑器(openutau、utsu)不为人所知的原因。第三方编辑器需要兼容各种奇怪机制,同时支持引擎和插件接口,工程量很大。如果无法完全实现这些功能,又没有显著的创新,还不如用原版UTAU编辑器。
而deepvocal则不基于UTAU机制,而是另起炉灶,自己重新实现了一套音素机制和后端引擎来兼容现有的UTAU CVVC音源。这套机制简化了CVVC音源的开发与使用,所以比UTAU第三方编辑器获得了更多的用户。(但是deepvocal没有开放接口,也就没有成为“歌声合成实验室”)
当然,以上缺点大多是时代局限性造成的,不要苛责UTAU。UTAU从2008年就开始开发,当时vb6还是主流的开发框架之一。放在那个时候,UTAU开发者的选择是合理的,只是现在vb6已经过时。另外,当时的计算机性能只允许拼接合成,接口也就是按照拼接合成来设计的。