bo主有话说:
喜欢音乐的小伙伴相信都或多或少看到过一些频谱,简单的比如QQ音乐,酷狗等一些音乐软件上面都有一些,可惜的是这些频谱嵌入到软件界面上,好看的就那么一两个,并不能满足一些人对音乐的渴望,至少对我来说,是这样的。当然,还可以使用雨滴,AE来制作非常炫酷的频谱,但是这两个软件却也有一些弊端。通过雨滴,我们可以制作一些悬挂在桌面的频谱,但是制作这样的频谱,需要使用雨滴的编程语法进行开发,这对小白并不是很友好。而AE呢,这真的可谓是一个重量级的大BOSS,使用AE可以制作出非常非常非常炫酷的频谱!但是AE本身是一个图形视频处理软件,它只能在视频中嵌入频谱,并不能把频谱摆在桌面。
在去年的时候,我曾发过一篇帖子,说自己想做一个这样的软件,本来只是随口一说,没想到却有几千的浏览量,再加上我的学习目标并不是web、android开发,因此下定决心去做这个软件(Specinker),以便了解一些音视频处理相关的编程技术。
Specinker能干嘛?
specinker提供了一些基本的可视化图形,通过这些图形,可以拼凑出很多炫酷的频谱,比如:
比如拼凑第一个频谱,只需使用三个环形轨道的频谱,分别是点,柱,线就能构成
specinker目前只提供2种轨道:线型和环型
每一种轨道提供3种形状:点、线、柱
不同轨道和形状都有特殊的属性设置选项
支持对形状旋转,调色板调色,手势拖动,属性微调,镜像反转,敏感度调节等操作
specinker扩展其他形状或轨道等其他可视化元素并不困难,如果bo主有时间,会做相关更新-.*
软件全貌:
效果演示
桌面音乐可视化软件 Specinker 【演示】
软件亮点:
在桌面上进行设计——所见即所得
只需点击任务栏右下角的specinker托盘图标,点击【设计】,就能打开设计窗口。
可以调节右上角的滑动条调整黑幕的透明度
手势拖动 ——用鼠标就能轻易调整改变元素的位置,甚至形状
按住shift,拖动蓝色点,可以拖动整个频谱的位置。
缩略显示,快速拷贝——精准定位小频谱
鼠标可以在此处滚动换页,可以拖动小频谱的缩略图左右拖动,调整堆叠层次,越靠右边,越在顶层,点击×可以删除,+可以可以快速拷贝(拷贝有个小bug,无法拷贝深层属性)
快速调节全局敏感度
敏感度是用来干嘛的呢?敏感度就相当于一条水平线,高于水平线的频谱就显示,低于的就不显示,这个功能主要是因为一些音乐的波形太杂,可以适当降低敏感度来忽略杂音。
调色套装——颜色菜单,取色器,颜色选择框,渐变条
我承认我是模仿wps的调色控件=.=,写这套控件也是个不小的工程T.T
由于图片大小限制,压缩后动图画质有点粗糙。
简约清新的属性调节界面
支持主题调色:抱歉这个功能还没来得及写。
超强的扩展性——可以扩展很多动画
扩展性强是对于开发者(我)来说的,我其实想说的是,specinker能做的不仅仅如此。
超强的性能——CPU负荷小,空间占用少
使用6个小频谱堆叠测试,大约占用了5%的CPU。
原谅我贫乏的词汇.
一些问题?
为什么要叫specinker,为什么不用中文?
可能bo主的语文比较差,没想到什么看上去既简约,一思考还挺有内涵的字眼,所以才用的英文(bo主英文更差t.t)
spec:spectrum(谱),spec开头的有很多比较好词special,spectacular
inker:linker,thinker,也曾想过用creator,designer,但是这些词用的太多了
可不可以给这些频谱做一些特效?
因为specinker是用的CPU渲染绘图,效率上可能会差一些,我也曾试过做泛光特效,但是想要在25ml内处理频谱数据的同时,还得渲染特效,显然做不到,不知道openGL能不能完成实时渲染。另外后面有时间可能会增加一些事件处理器,比如在播放音乐的时候,可以根据频谱的波形调整频谱的一些属性,比如颜色,大小,线条宽度等...
说这么多废话,软件呢?
注意看一下使用教程,开立体声混音
蓝奏云网盘下载
https://www.lanzous.com/i8z6vbg
开发历程
bo主大多时间是在码代码,而没多少时间来整理,码字。这几篇文章也体现了specinker从一个low到爆的频谱播放器,到现在的桌面频谱设计软件,走了很多弯路,也走了一些捷径。
整个项目的代码大约有一万行(不到),代码质量方面,我感觉还是挺高的。性能方面,可以实时采集音频,分析,渲染图形。
后方凑字
★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆★∵☆
来源:CSDN
作者:Italink
链接:https://blog.csdn.net/qq_40946921/article/details/104124455