电音伴侣(自动电音软件)实现原理独家解密
关于自动电音或电音助手此类软件工具,是如何查询歌名?如何获取基调?如何设置电音基调?我想很多同行朋友都想知道其中的原理。小编此前我也编写过类软件(电音伴侣 下载地址http://www.qiken.cn/qkkj/rjal_394.html),我想把我所知道分享给大家,独家解密值得参考!
1》查询当前播放器播放的歌曲名称,第一步只要懂编程的朋友相信不难,获取播放器的当前播放的歌曲名称,方式其实非常多的,如通过播放器本身的句柄取标题,通过播放器托盘或者任务栏取标题,通过内存文本取标题,通过播放器播放的缓冲文件取标题等等,方式是非常多的,当然不同的方式弊端肯定是很明显的,如通过任务栏取歌名,如果任务栏关掉了,你还能取到歌名?这就是有瑕疵的,通过内存文本取歌名,如果播放器升级了,基址可能变了,你还能取到歌名? 经过反复比对,其实小编写的这个电音伴侣,我是通过托盘取标题的,也可以支持在隐藏区内取标题哦,我感觉通过这个方式取标题是不受播放器版本影响的,到目前为止我感觉还是非常不错的一种取播放器标题的方式。
2》提交歌曲名称到基调数据库分析,并返回基调数据给软件。这步的前提我们需要建立一个属于自己的基调数据库,通过用户使用软件时候,自动后台提交给我们。当然这种办法是比较麻烦也比较费钱费力的,当然难度更大是获取到歌曲如何在瞬间解析歌曲的基调?其实这个自动根据歌曲名称自动解析基调数据技术,我目前所掌握的也不是很成熟,也是在深入研究中。如果你怕麻烦也可以直接调用第三方电音基调数据库,缺点是如果对方对数据库进行修改了,你可能就获取不到了,稳定性非常差。 如你获取到基调数据了,那返回软件就是非常简单了,在此就不多说了!
3》获取到基调和音阶,通过HOOK对目标宿主软件进行操作。相信很多写you xi wai gua的朋友都知道什么是叫HOOK。这种技术可以通过目标软件的特征码字段基址,进行任意的操作。但是唯一一个缺点就是在操作中,部分杀毒软件可能会弹出误报提示,这个是没有办法解决的。因为这本身就是属于非法操作,特意修改第三方软件行为。自动修改电音基调.音阶.电音强度,其实采用的就是这种办法,这种比模拟鼠标点击肯定是稳定多了,还有完全隐藏状态下也是可以稳定操作的!