CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  Delphi >  VCL组件开发及应用

求一设计思路!

楼主dong163(再见理想)2002-02-03 23:31:37 在 Delphi / VCL组件开发及应用 提问

本人想做一舞曲管理程序,每首曲子都要渐弱结束,各位有什么高招。请给予指点!  
   
  还有为什么我的浏览器里的MEMO中的字体是楷体的?怎么设置字体呢?? 问题点数:62、回复次数:5Top

1 楼blow_wy(老鹰)回复于 2002-02-03 23:37:33 得分 0

关注!Top

2 楼KiteGirl(小仙妹)回复于 2002-02-04 00:14:41 得分 62

有两个办法:  
  1、通过程序根据当前播放时间的位置,实时控制音量实现。这个方法应该是最好的。下面是大概的实现方法:  
   
          控制播放的音量,在曲子接近结尾前几秒钟,或进行到曲子的百分之几的位置取一个“淡出开始”。“淡出开始”到曲子结束之间叫做“淡出时间”。当曲子到达淡出时间段内的时候,淡出程序开始奏效。根据当前播放的时间在“淡出时间”中的位置,计算百分比。根据这个百分比来指定音量。  
          比如:你规定每个曲子临近最后10秒做淡出。曲子总长度是N秒。则LineOutOn=N-10。当曲子到达LineOutOn的时候,使LineOut(可以做一个函数或过程)开始奏效。  
          设当前正在播放的片段为第LineStart秒,则((LineStart-LineOutOn)/10)为当前播放片段相对淡出时间的百分比。用这个百分比去乘音量。在某些程序里,音量控制为0-100,某些程序则是0-127。  
  下面是我用VB做的一个代码实例的编写方法,只是大概说明一下意思。我不知道你用的是什么程序写这个东西,所以只大概写出了这样一个程序。(这个程序用VB很难实现,因为VB太慢了。)  
          LineOutTime=淡出时间(秒/或毫秒)。  
          MusicLen=曲子总时间(秒/或毫秒)。  
          LineStart=正在播放的时间(秒/或毫秒)。  
          SystemVol=控制音量的属性  
          SystemVolMax=最大音量值  
          LineOutOn=MusicLen-LineOutTime   '淡出开始。  
          LineOuting=LineStart>LineOutOn   '淡出处理的条件。  
          If   LineOuting   Then  
              SystemVol=((LineStart-LineOutOn)/LineOutTime)*SystemVolMax  
          End   If  
   
  2、处理临时文件。先将你要播放的乐曲生成一个Wave临时文件,然后利用程序将Wave的末尾部分做淡出处理。然后播放的时候放的是Wave临时文件而不是音乐本身。这个办法非常笨,如果你有现成的给Wave文件做淡出处理的程序或控件也不失为一个好办法。Top

3 楼XXLong(参了军的小鸟)回复于 2002-02-04 00:59:39 得分 0

KiteGirl(小仙妹) 不错啊,HeHe。Top

4 楼lily_1979(知无不言)回复于 2002-02-04 01:03:57 得分 0

嗯  
  不错Top

5 楼dong163(再见理想)回复于 2002-02-04 22:15:33 得分 0

佩服:结帐了!(你真的是仙妹吗?)Top

相关问题

  • 问一个表设计思路?
  • 给我一个设计思路,急!!!
  • 寻求一种数据设计思路?
  • 求一程序设计思路(一定给分哦!)
  • 请分析一下以下情况下设计思路。
  • 求一个考勤系统源码或者设计思路。
  • 大家给一个设计这样的数据库的思路
  • ★大家看看我设计的一个秒表(思路)
  • 求一个程序设计思路,高手请进
  • 求一个考勤系统源码或者设计思路。

关键词

  • 音量
  • 文件
  • 控制
  • vb
  • 淡出
  • lineouton
  • 曲子
  • linestart
  • 程序
  • 播放

得分解答快速导航

  • 帖主:dong163
  • KiteGirl

相关链接

  • Delphi类图书
  • Delphi类源码下载
  • Delphi控件下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo