社区
游戏开发
帖子详情
如何显示音量电平?
li_zhifu
2001-12-10 04:04:34
如何像好多多媒体播放软件那样动态地显示音量电平?(如Media Player 8)哪里有控件?或是给出实现的源代码就更好了。(在Win98下可用Vumeter,但它在Win2k上用不了)
...全文
619
11
打赏
收藏
如何显示音量电平?
如何像好多多媒体播放软件那样动态地显示音量电平?(如Media Player 8)哪里有控件?或是给出实现的源代码就更好了。(在Win98下可用Vumeter,但它在Win2k上用不了)
复制链接
扫一扫
分享
举报
写回复
配置赞助广告
用AI写文章
11 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
Ken_Hall
2002-03-20
打赏
举报
回复
Sorry, 网速太慢,发了两次。
Ken_Hall
2002-03-20
打赏
举报
回复
如果是你自己的代码在进行播放,如利用WaveOut或DSound,你应该都可以得到音频数据,电平的计算是基于求平均数的原理进行的:即在一个很短的Buffer中求所有采样的平均值。该平均值的求取是以已知音频数据的格式为前提的,具体讲就是要根据采样频率、采样的位数、立体声与否来对Buffer中的数据进行解释,从而得到每个声道的单个采样的采样值。这个采样值应该经过规一化(都转化到0.0~1.0区间,注意8bit是无符号整数而16bit则是有符号的)后再进行平均计算。这个平均值就可以近似看成该音频数据流在瞬时的音量。剩下的就是显示的问题了。
另外,在显示上,由于人耳对于音量大小的感觉是基于对数关系的,所以最好将电平的值换算为分贝值(取以10为底的对数,再进行线性变化以变化到可显示的区间)再进行显示。
Ken_Hall
2002-03-20
打赏
举报
回复
如果是你自己的代码在进行播放,如利用WaveOut或DSound,你应该都可以得到音频数据,电平的计算是基于求平均数的原理进行的:即在一个很短的Buffer中求所有采样的平均值。该平均值的求取是以已知音频数据的格式为前提的,具体讲就是要根据采样频率、采样的位数、立体声与否来对Buffer中的数据进行解释,从而得到每个声道的单个采样的采样值。这个采样值应该经过规一化(都转化到0.0~1.0区间,注意8bit是无符号整数而16bit则是有符号的)后再进行平均计算。这个平均值就可以近似看成该音频数据流在瞬时的音量。剩下的就是显示的问题了。
另外,在显示上,由于人耳对于音量大小的感觉是基于对数关系的,所以最好将电平的值换算为分贝值(取以10为底的对数,再进行线性变化以变化到可显示的区间)再进行显示。
li_zhifu
2002-03-19
打赏
举报
回复
贴子时间太长了,请大家多多看看,不管解决问题与否,3天之内结账。
mzm100
2001-12-13
打赏
举报
回复
一般的讲,音频数据就是解码器的音频流,如果你能够得到数据流,电平就可以得到了,如果你使用PlaySound等API函数,是不能得到音频数据的。
单眼皮的老虎
2001-12-10
打赏
举报
回复
如果是MP3,可以看看 http://www.avsuper.com -> MP3 有例子程序的。
li_zhifu
2001-12-10
打赏
举报
回复
问题是,怎样取得电平?
mzm100
2001-12-10
打赏
举报
回复
其实很简单,用CStatic控件就可以实现该功能,从CStatic派生CXX类,再OnPaint()里画电平就行了,只要有点想象力,可以做的非常漂亮!
cobi
2001-12-10
打赏
举报
回复
不懂,所以关注
atongm
2001-12-10
打赏
举报
回复
强烈关注
szchengyu
2001-12-10
打赏
举报
回复
强烈关注
【zt】Javascript应用技巧[教程]
Javascript应用技巧[教程] 1. 动态调整select<select id=test size=3><option>选项一</option><option>选项二</option><option>选项三</option></select><button onclick="up(tes...
javascript技巧(zt)
事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode event.shiftKey event.altKey event.ctrl...
javascript 日期加减zt
游戏开发
8,324
社区成员
23,685
社区内容
发帖
与我相关
我的任务
游戏开发
游戏开发相关内容讨论专区
复制链接
扫一扫
分享
社区描述
游戏开发相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章