• 全部
  • 语言基础/算法/系统设计
  • 数据库相关
  • 图形处理/多媒体
  • 网络通信/分布式开发
  • VCL组件开发及应用
  • Windows SDK/API
  • 问答

我刚学delphi,想编一个mp3和real的播放器。不知如何入手?请帮忙。

mali1 2001-08-01 09:34:02
我自己有一些音乐,分别是real和mp3格式的。我想自己编一个播放器,不知如何下手,是不是应该找一个ActiveX的控件!哪里有?要是有一个程序的源代码就好了。
...全文
158 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
mali1 2001-08-01
to chinapig(chinapig):谢谢,你贴的东西我看过,我想主要问题是mp3的控件。我的信箱是mali1@sina.com。多谢。
回复
williamf 2001-08-01
我也有mp3的控件
回复
chinapig 2001-08-01
如果要mp3的控件将邮箱留下
回复
chinapig 2001-08-01
打造自己的real播放器
一、问题的提出
Real文件(后缀为.ra、.rm、ram等)是一种很流行的网上影音格式。与MP3音乐格式和MPEG影音格式相比,它具有体积更小巧、更适合网络传输的特点。因而许多的新闻和娱乐网站都使用Real文件格式存储新闻和影音资料,供用户实时下载收听观看。
Delphi是Borland公司提供的一种全新的Windows编程开发工具。由于它采用了具有弹性的和可重用的面向对象Pascal(Object-Oriented Pascal)语言,并有强大的数据库引擎(BDE),快速的代码编译器,同时又提供了众多出色的构件,受到广大编程人员的青睐.在众多的编程语言(如VB,PowerBuilder等)中脱颖而出.
Delphi 4完全支持ActiveX,您可以很方便地创建、注册、安装、发布和使用ActiveX控件、ActiveForm和OLE自动化对象,这应当归功于"对象接口" 技术和DAX技术。控件是Delphi应用程序的程序构件,Delphi支持使用可视化部件所见即所得地建立应用程序。采用控件形式可以把对象严密封装,并加上一层直观外壳,有利于软件调试和代码重用。开发群体以控件为功能单位分工协作,比较容易实现工程化管理,从软件规划设计到测试修改都可以减少意外差错,大大提高工作效率。
那么,我们现在可以利用Delphi强大的控件功能在应用程序中直接打开Real文件,并控制它播放和停止,还可以得到其它的相关信息,这将会为我们的应用程序增色不少。(哈哈:…)想知道怎么实现的吗?快跟我来吧。
二、一个例子
下面,我们将利用Delphi4来开发一个简单的Real文件的播放程序,当然作为例程序,它只有简单的Real文件的打开、播放、暂停、停止和关闭功能,但麻雀虽小,五脏俱全嘛。下边我们一步一步来实现这个小型的Real播放器吧。不过,在您进行下面的工作之前,我们还要注意,要想在Delphi中使用Real控件,您的计算机中必须安装有RealPlayer播放程序,否则,哈哈:那可是不行的。
在Delphi4的可视化编程环境中,选择File菜单下的"New Application"项,新建一个新的应用程序。然后选择Component(组件)菜单下的"Import ActiveX Control..."(导入ActiveX控件)选项,选中其中的"Real Player ActiveX Control Library(Vision1.0)"项,并单击Install,会出现一个install窗口。
★如果要把它添加到一个已经存在的包中,在"Into existing package"对话框中的"File name:"窗口中选择你想安装的路径,并单击"OK";会弹出一个确认的对话框,它问你"Package dclusr40.bpk will be rebuilt. Continue?",单击"Yes";在弹出的窗口中单击击"Install",该控件就安装完毕。
★如果要把它添加到一个新建的包中,在"Into new package"对话框中的 "File name:"窗口中选择你想安装的路径,并新建一个包,假如命名为test,并单击"OK";它问你"Package test.bpk will be built. Continue?",单击"Yes"。 在弹出的窗口中单击击"Install",该控件就安装完毕。
这时,你会在控件条的ActiveX下发现一个新的控件,名字为RealAudio, 单击它把它放在form中,并在该form中放一个OpenDialog控件和一个panel,在该panel上放六个button,他们的Caption属性分别命名为"打开"、"播放"、"暂停"、"停止"、"静音"、"退出",并依次设置这些按钮的名字属性(name)"OpenRealFileButton"、"PlayButton"、"PauseButton"、"StopButton"、"MuteButton"
和"QuitButton";设置panel、RealAudio的Align 属性分别为Alleft 和AlClient。考虑到当歌曲可以播放时,"播放"按钮才是可用的,所以,还应该在程序中对"播放"、"暂停"、"停止"按钮的可用属性(Enabled)进行控制,即只有当歌曲是可以播放时该按钮才是可用的,并初始化这三个按钮的可用属性(Enabled)分别为"true"、"false"和"false"。另外,对于,静音按钮,在大多数情况下,该按钮应该是个开关按钮,所以,还要根据情况变化设置该按钮的标题(Caption)属性。其次,为了使增强程序的功能,还要设置打开对话框(OpenDialog)的文件过滤属性(Filter),使其只能打开我们需要的文件。最以后分别在这六个Button的OnClick事件中写下如下代码:
procedure TForm1.OpenFileButtonClick(Sender: TObject);
begin
if OpenRealFileDialog.Execute then
realaudio1.SetSource (OpenRealFileDialog.filename);
end;
procedure TForm1.PlayButtonClick(Sender: TObject);
var
pbCanPlay:wordbool;
begin
if RealAudio1.CanPlay (pbCanPlay) then {当能够播放时再进行播放功能设置}
begin
RealAudio1.DoPlay ;{执行REAL控件的播放操作}
PlayButton.Enabled :=false;{设置播放按钮不可用}
PauseButton.Enabled :=true;{设置暂停按钮为可用}
StopButton.Enabled :=true;{设置停止按钮为可用}
end
end;
procedure TForm1.PauseButtonClick(Sender: TObject);
var
pbPlayPause:wordbool;
begin
if RealAudio1.CanPlayPause (pbPlayPause) then{当可以进行暂停设置时再进行操作}
begin
RealAudio1.DoPlayPause ;{执行REAL控件的暂停功能}
PauseButton.Enabled :=false;{设置暂停按钮不可用}
PlayButton.Enabled :=true;{设置播放铵钮为可用}
end
end;
procedure TForm1.StopButtonClick(Sender: TObject);
var
pbCanStop:wordbool;
begin
if RealAudio1.CanStop (pbCanStop) then{当能够进行停止操作时再进行程序设置}
begin
RealAudio1.DoStop ;{执行REAL控件的停止功能}
StopButton.Enabled :=false;{设置停止按钮为不可用}
PauseButton.Enabled :=false;{设置暂停按钮为不可用}
PlayButton.Enabled :=true;{设置播放按钮为可用}
end
end;
procedure TForm1.MuteButtonClick(Sender: TObject);
var
pbmute:wordbool;
begin
pbmute:=RealAudio1.GetMute (pbmute) ;{得到当前的静音状态}
RealAudio1.SetMute (not pbmute);{设置当前静音状态的相反操作}
if pbmute then{根据情况判断并设置静音按钮的CAPTION属性}
MuteButton.Caption :='闭音(&M)'
else
MuteButton.Caption :='开音(&M)';
end;
procedure TForm1.QuitButtonClick(Sender: TObject);
begin
RealAudio1.FreeOnRelease ;
close;{释放资源并关闭程序}
end;
怎么样,运行一下这个程序,效果还不错吧。
当然,这个程序还可以进一步地改进,就可以成为你手中自己的Real播放器了,例如可以增加播放表的功能及循环播放等等。另外,通过此例程,我们还可以掌握在Delphi中对其它控件的编程方法。好了,有了好的东东不要忘记告诉我呀。(
回复
VSaber 2001-08-01
real的ActiveX,我想你装了**解霸就应该有把,呵呵,看看呗!
回复
mali1 2001-08-01
太感谢了,不知哪里有类似的源码可以下?
回复
geliang 2001-08-01
对,用ActiveX控件,
回复
VSaber 2001-08-01
mp3自从ie5就直接用windows的多媒体api(mci函数?)就可以了,和播wav文件一样的。
不过real格式只能找控件了,因为它的格式是保密的,连市面上的**解霸等播芳real都使用的控件。呵呵
回复
liuguantocsdn 2001-08-01
用real player 的空间
喝 mediaplayer

初学嘛 别怕用控件 拿 来用好了(鲁迅说的 不关我的事)
回复
icehill 2001-08-01
jianjunm@163.com

need mp3 activex
回复
Camel_csdn 2001-08-01
我想要MP3 控件,的我邮箱是:Camel_163@163.com 谢谢
回复
相关推荐
发帖
Delphi
创建于2007-08-02

4875

社区成员

Delphi 开发及应用
申请成为版主
帖子事件
创建了帖子
2001-08-01 09:34
社区公告
暂无公告