社区
ASP
帖子详情
▲怎样获取一个音频文件的播放时间长度?主要是mp3和midi
xunua
2005-11-18 01:10:49
请问,怎样获取一个音频文件的播放时间长度?主要是mp3和midi
...全文
1050
5
打赏
收藏
▲怎样获取一个音频文件的播放时间长度?主要是mp3和midi
请问,怎样获取一个音频文件的播放时间长度?主要是mp3和midi
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xunua
2005-11-19
打赏
举报
回复
vb该怎么做呢?
竹林听雨2005
2005-11-18
打赏
举报
回复
VC++中可以实现,但ASP里不一定能实现这个功能。(我没试过)
---------------------VC++ CODE---------------------
自动循环播放的MP3播放器
【实现内容】自动循环播放的MP3播放器
【应用】自动循环播放的MP3播放器主要用于企业文化的应用。在每天的休息时段,播放器自动循环播放指定的MP3音乐。本自动播放器主要根据本公司的情况编写,包括早上上班,中午吃饭和下午下班三个时间段各播放1小时左右的音乐。播放器启动后,只在托盘中有图标,配置好各个时间段的音乐目录后,不需要人工干预,音乐可以自动启动、循环播放和结束。现已在本公司使用。
【特点】本软件用到许多常用的技巧:
1.目录选择对话框
2.文件选择对话框中的多个文件类型过滤设定
3.应用程序在任务栏上隐藏,而在托盘上显示图标
4.进度条的制作
5.定时器使用
6.带有链接功能的按钮――点击按钮可以打开电子信箱
7.椭圆型的彩色按钮,彩色文本
8.彩色标题条,彩色标题文字。等等
【实现原理】主要使用定时器。程序一旦运行,定时器将每秒响应一次。直到手工退出程序。
【主要控件】
m_MusicList---ComboBox类型音乐文件列表
【主要程序段及说明】
voidCMp3PlayerDlg::OnOpen()//点击打开按钮,选择音乐文件。可以多选
{
m_MusicList.ResetContent();
m_MusicAry.RemoveAll();
m_Music.Close();//m_Music是CCOMMCI对象
Init();
m_Pause.SetWindowText("暂停");
//
CStringfilter="媒体文件(所有类型)|*.cda;*.mid;*.rmi;*.midi;*.asf;*.wm;*.wma;*.asx;*.wax;*.m3u;*.wvx;*.mpeg;*.mpg;*.m1v;*.mp3;*.avi;*.wmv;*.wav;*.snd;*.au;*.aif;*.aifc|";
filter=filter+"CD音乐曲目(*.cda)|*.cda|"+
"MIDI文件(*.mid;*.rmi;*.midi)|*.mid;*.rmi;*.midi|"+
"WindowsMedia文件(*.asf;*.wm;*.wma;*.wa?)|*.asf;*.wm;*.wma;|"+
"媒体播放表(*.asx;*.wax;*.m3u;*.wvx)|*.asx;*.wax;*.m3u;*.wvx|"+
"电影文件(*.mpeg;*.mpg;*.m1v;*.mp3)|*.mpeg;*.mpg;*.m1v;*.mp3|"+
"视频文件(*.avi;*.wmv)|*.avi;*.wmv)|"+
"音频文件(*.wav;*.snd;*.au;*.aif;*.aifc)|*.wav;*.snd;*.au;*.aif;*.aifc|"+
"所有文件(*.*)|*.*|";
CFileDialogmusic(TRUE,NULL,NULL,OFN_HIDEREADONLY|OFN_ALLOWMULTISELECT,filter);
if(music.DoModal()==IDOK)
{
POSITIONpos=music.GetStartPosition();
while(pos!=NULL)
{
CStringstr=music.GetNextPathName(pos);
m_MusicAry.Add(str);
intindex=str.ReverseFind('\\');
if(index==-1)
m_MusicList.AddString(str);
else
{
CStringname=str.Mid(index+1);
m_MusicList.AddString(name);
}
}
}
}
============================
voidCMp3PlayerDlg::Play(intindex)//播放函数,index为曲目的序号
{
m_Music.Close();
m_MusicList.SetCurSel(index);
CStringsPath=m_MusicAry.GetAt(index);
m_Music.Open(sPath);
m_Status.SetWindowText(sPath+_T("正在播放..."));//在状态条中显示提示信息
m_nLength=m_Music.GetLength();//获取音乐长度
m_nPos=0;
m_nTime=m_nLength/1000;//除以1000即为播放时间
//
m_sMusicLen.Format("%d分%d秒",m_nTime/60,m_nTime%60);//显示播放时间
m_sMusicPos.Format("%d分%d秒",m_nPos/60,m_nPos%60);//显示当前播放位置
//
UpdateData(false);
m_MPBar.SetScrollRange(0,m_nTime);//设置音乐播放的进度条范围
//
m_Volume.SetRange(0,1000);//设置音量调节范围
m_Volume.SetPos(m_nVolume);
//
m_Music.Play(this->m_hWnd);//开始播放
SetTimer(2,1000,NULL);//启动2号定时器
}
============================
czcb
2005-11-18
打赏
举报
回复
既然你说VB能够实现
那就用VB做个组件不就好了吗
andraw2002
2005-11-18
打赏
举报
回复
这问题有意思,关注中……
xunua
2005-11-18
打赏
举报
回复
有知道的兄弟吗?
我在网上搜索了好久,也没找到相关的组件
vb好像能解决,我看了一下,没看动,呵呵
单片机
MIDI
音乐
播放
原理详解及代码示例 | 零基础入门STM32第三十二步
什么是
MIDI
,C调音符与频率对照表,编写
MIDI
音乐
播放
程序。
计算机维修工(中级)理论考核
1.某针式打印机在有纸的情况下经常指示缺纸,致使打印工作不能...2.在MS-DOS中,删除文件的命令是(C)。 A、COPY B、TYPE C、ERASE D、REN 3.下列存储器中(A)是高速缓存。 A、CACHE B、EPROM
(六.数据库技术与Access 2010 基本概念七.计算机网络及网页制作基本概念八.数字多媒体技术基本概念九.信息安全基本概念十.新一代信息技术基本概念)
(1)HTML语言概述①HTML由W3C制定每
一个
HTML文件包括文件内容和HTML标记两部分HTML标记负责控制文本显示的外观和版式,并为浏览器制定各种链接的图像、声音和其他对象的位置。②HTML标记格式:文本内容多数HTML标记...
手机常识汇总
(移动通信规定的 频段 为 905—915MHZ,每 25KHZ 为个信道,支持一对用户通话)。中国的模拟网有 A 网 (Motorola 设备)及 B 网 (Ericsson 设备)之分,现在两网己实现互通。模拟网信号失真度小,因而音质可与有限电话...
pb笔记(三)
即可
播放
和停止文件名为 "xxx.avi ”的 AVI 。 13. 限制应用程序只运行一次 . 声明外部函数如下 : FUNCTION boolean ShowWindow( ulong winhandle,& int wincommand ) Library "user32" ...
ASP
28,408
社区成员
356,967
社区内容
发帖
与我相关
我的任务
ASP
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
复制链接
扫一扫
分享
社区描述
ASP即Active Server Pages,是Microsoft公司开发的服务器端脚本环境。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章