delphi7,播放音乐

基于VRML的虚拟音乐厅 基于VRML的虚拟音乐厅一.VRML简介   有没有见过三维网页,有没有见过网上商店的3D展示品,是不是感叹它们的真实感强,引人入胜?其实很多就是用VRML做的,VRML(Virtual Reality Modeling Language)是一种与互联网结合,用来描述三维交互世界的程序语言,可应用于创建虚拟现实的对象、景象和展示模型等。但是我们今天要做的不是虚拟3D网页,而是虚拟3D音乐厅,一 阅读详情

(一)Mediaplayer ActiveX

万能,但占资源

-----------------------------------------

一、安装 

  在Delphi7中选择“Component ——Import ActiveX Control...”菜单,会弹出“Import ActiveX0”窗口。在列表中选择“Windows Media Player(Version 1.0)”,再点击“Install”...... 
  当然,得先安装Mediaplayer 9。另外,最好是使用Delphi7,因为我发现Mp9 ActiveX在Delphi7提供的内容比Delphi6更丰富,delphi6以下的版本我就没有测试过了。 

二、一孔之见 
[基本属性] 
URL:string 可以指定媒体位置 
enableContextMenu:Boolean 显示/不显示播放位置的右键菜单 
fullScreen:boolean 全屏显示 
stretchToFit:boolean 非全屏状态时是否伸展到最佳大小 
uMode:string 播放器的模式,full:有下面的控制条; none:只有播放部份没有控制条 
playState:integer 当前控件状态,下面是三种基本状态: 
3:正在播放 
2:暂停 
1:已停止 
状态变化时会触发OnStatusChange事件 
[controls] 
可通过WindowsMediaPlayer.controls对播放器进行控制并取得相关的一些信息: 
controls.play; 播放 
controls.stop; 停止 
controls.pause; 暂停 
controls.currentPosition:Double 当前播放进度 
controls.currentPositionString:string 时间格式的字符串 "0:32" 
[currentMedia] 
可以通过WindowsMediaPlayer.currentMedia取得当前媒体的信息 
currentMedia.duration Double 总长度 
currentMedia.durationString 时间格式的字符串 "4:34" 
[settings] 
可以通过WindowsMediaPlayer.settings对播放器进行设置,包括音量和声道等。 
settings.volume:integer 音量 (0-100) 
settings.balance:integer 声道,通过它应该可以进行立体声、左声道、右声道的控制。但对应的取值尚不清楚。 
三、罗嗦一句 

  以上我提到的,全是我已经在windows98+Mediaplayer9+delphi7环境下试过了的,其实Mediaplayer9的ActiveX还有好多的属性、方法,我没法一一列出(其实多数是我搞不明白啦,原来下过一个英文的SDK,有详细介绍,不过我看不太懂),一人之力有限,还希望有心人能多多挖掘,多多交流。

(二)用TMediaPlayer  然后用PlaySound函数

 if(opendialog1.execute) then  
  begin  
  mediaplayer1.filename:=opendialog1.filename;  
  mediaplayer1.open  
  mediaplayer1.play;  



调用API函数sndPlaySound

mp3,wma,好像不能播放大尺寸

-------------------

//声明:
sndPlaySound(
  lpszSoundName: PChar('...'); {声音文件名}
  uFlags: UINT{播放选项}
): BOOL;

//uFlags 参数可选值:
SND_SYNC = 0; {同步播放, 程序须等到播放完毕才向下执行}
SND_ASYNC = 1; {异步播放, 在函数返回之后开始播放, 不影响程序继续执行}
SND_NODEFAULT = 2; {声音文件缺失时, 函数自动返回不播放默认声音}
SND_MEMORY = 4; {播放内存中的声音, 譬如资源文件中的声音}
SND_LOOP = 8; {循环播放, 需要和 SND_ASYNC 组合使用}
SND_NOSTOP = 16;{如果当前正在播放声音, 立即返回 False}

EG:

//停止发音

 procedure TForm1.Button2Click(Sender: TObject);
  begin
  sndPlaySound(nil, 0);
  end;

//同步播放
procedure TForm1.Button1Click(Sender: TObject);
begin
  sndPlaySound(s, SND_SYNC);
  Beep; {播放完毕才会执行这句}
end;

//异步播放
procedure TForm1.Button2Click(Sender: TObject);
begin
  sndPlaySound(s, SND_ASYNC);
  Beep; {马上会执行这句}
end;

//反复播放
procedure TForm1.Button3Click(Sender: TObject);
begin
  sndPlaySound(s, SND_LOOP or SND_ASYNC);
end;

EG:

如果你要经常播放一种声音,就应该考虑把文件载入内存并从内存中播放:
  var
  tada: string;
  procedure TForm1.Button1Click(Sender: TObject);
  begin
  sndPlaySound(Pointer(tada), SND_MEMORY
  Or SND_NODEFAULT Or SND_ASYNC);
  end;
  initialization
  tada := LoadFile('C:/Windows/Media/Tada.wav');
  finalization
  tada := '; //释放字符串占用的内存。
  end.

使用MCISendString播放背景音樂

万能,好

---------------------------

在單元接口引用 mmsystem 單元.


//播放音乐 
MCISendString('OPEN e:/1.MID TYPE SEQUENCER ALIAS NN', '', 0, 0); 
MCISendString('PLAY NN FROM 0', '', 0, 0); 
MCISendString('CLOSE ANIMATION', '', 0, 0); 
end; 
//停止播放 
MCISendString('OPEN e:/1.MID TYPE SEQUENCER ALIAS NN', '', 0, 0); 
MCISendString('STOP NN', '', 0, 0); 
MCISendString('CLOSE ANIMATION', '', 0, 0);


播放.MP3、wav、wma文件:

//開始播放:

procedure TForm1.Button1Click(Sender: TObject);
begin
MCISendString('OPEN e:/1.mp3 TYPE mpegvideo alias ww',nil, 0, 0);
MCISendString('PLAY WW', nil, 0, 0);
MCISendString('CLOSE ANIMATION', '', 0, 0);
end;

//停止播放

procedure TForm1.Button2Click(Sender: TObject);
begin
MCISendString('OPEN e:/1.mp3 TYPE mpegvideo alias ww', '', 0, 0);
MCISendString('STOP ww', '', 0, 0);
MCISendString('CLOSE ANIMATION', '', 0, 0);
end;



DELPHI 7 学习---------定时器 目的:完成一段时间定时 主要内容:界面设计,动态导入DLL。实现数字的透明显示及到时提醒   一、界面过程:  1.设置窗体的 TransparentColor属性为 True; 2.设置窗体的 TransparentColorValue属性为某一颜色,如clBlack 3.窗体放置一个Tlabel元件,设置其Color属性值为窗体的 TransparentColorValue 阅读详情

相关推荐

Delphi定时播放音乐系统设计与实现

简介:Delphi是一种基于Pascal语言的集成开发环境,用于创建桌面和移动平台应用程序。本文介绍了一个自动化音乐播放系统的实现,该系统用于在特定时间,例如学校课间操时,自动播放音乐,减少人工操作。项目涵盖了Delphi IDE使用、事件驱动编程、多媒体组件操作、定时器组件设置、日期和时间处理、多线程编程、文件操作、系统服务打包、异常处理以及用户界面设计等关键知识点。

weixin_42113456的博客 874

用DELPHI播放WAV和MP3

用于某企业知识竞赛,为了更有现场感,要加入音效。 unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, MPlayer, StdCtrls; type TForm1 = class(TForm) Butt

Gavin Chen 6934

功能强大的MP3播放控件库,支持Delphi与C语言开发实战

在现代软件开发中,音频播放功能已成为各类多媒体应用不可或缺的核心模块之一。尤其在Delphi和C语言等传统但依然广泛使用的开发环境中,集成高效、稳定且功能完整的MP3播放控件,是提升用户体验的关键环节。本章将系统性地介绍MP3播放控件的技术背景与发展脉络,深入剖析其在不同开发平台中的定位与作用。在音频播放控件的开发过程中,理解其底层实现机制是进行功能扩展和性能优化的前提。

weixin_36178216的博客 455

用DELPHI写的播放器核心代码,播放MP3无压力

主窗口代码: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls, tcMMControl; type TForm1 = class(TForm) Button1: TButton;

tcmakebest的专栏 4343

delphi7使用mediaplayer播放mp3例子

delphi7使用mediaplayer播放mp3例子

效果最好的mp3播放控件组,支持 delphi 以及 c,包括开发delpi

效果最好的mp3播放控件组,支持 delphi 以及 c,包括delphi,c的控件以及demo

delphi 播放声

 //声明:sndPlaySound( lpszSoundName: PChar; {声音文件} uFlags: UINT{播放选项}): BOOL;//uFlags 参数可选值:SND_SYNC = 0; {同步播放, 程序须等到播放完毕才向下执行}SND_ASYNC = 1; {异步播放, 在函数返回之后开始播放, 不影响程序继续执行}

工作是我的生活 我为工作而陶醉 1198

APlayer, 哇这么漂亮的HTML5音乐播放器.zip

APlayer, 哇这么漂亮的HTML5音乐播放器 APlayer哇这么可爱的HTML5音乐播放器 简介 APlayer是一个可爱的HTML5音乐播放器。APlayer支持:媒体格式MP4 H.264 ( AAC或者 MP3 )波形

PlaySound详解

PlaySound函数的声明为: BOOL PlaySound(LPCSTR pszSound, HMODULE hmod,DWORD fdwSound); PlaySound(NULL,NULL,NULL);停止播放。   参数pszSound是指定了要播放声音的字符串(一般是绝对路径,如果把声音文件拷到可执行文件所在路径就可以直接用声音文件名),该参数可以是WAVE文件的名字,或是WA

renai2008的专栏 2万+

DelphisndPlaySound_delphi_delphisndplaysound_

Delphi 基于sndPlaySound函数播放音频文件,无调用windows内置的播放器组件,Delphi原生的音乐播放程序

电路抗干扰原理及应用(1)

电路抗干扰原理——介绍干扰源、干扰途径、抗干扰技术(接地技术)

qq_34758408的博客 2060

Delphi 播放器[源码]

Delphi 音乐播放器,支持桌面歌词、换肤、换颜色、歌词自动下载,Win7下支持小窗口预览,有些功能未完全完成,就如调整音量(懒得搞,但是可以听了,只写了一次性播放列表没得循环的)。支持酷狗、QQ的动感歌词,以动感方式显示自己的实现方法,工程是使用Delphi XE2开发,原本是用delphi7后因为要支持win7下面的那个小窗口模式的,所以改为delphi xe2了。 主界面:

ying32的专栏 5636

TCS34725颜色识别模块实战调校:从“一坨”例程到精准RGB

本文针对TCS34725颜色识别模块初始数据不准的问题,提供了从基础例程到精准调校的实战指南。核心在于通过白光校正与黑白光校正两种方法,补偿传感器偏差与环境光影响,将原始数据准确映射为标准RGB值。文章详细阐述了校准原理、操作步骤与代码实现,并分享了进阶调试技巧与避坑指南,帮助开发者显著提升颜色识别的准确性与项目可靠性。

weixin_29188043的博客 288

delphi android 音乐播放器,Mcool音乐播放器

Mcool音乐播放器APP是一款非常不错的手机音乐播放软件,用户可以使用该软件在线免费听大量好音乐,音质比较好,使用界面简洁明了,喜欢听音乐的朋友可以来西西下载Mcool音乐播放器APP使用!软件简介Windows 受欢迎的 Mcool 音乐播放器,在很多用户要求下,终于推出安卓版本。只在一个月内,就很快从 Windows 版本复刻到安卓版本,这只有强大的 Delphi 能够做到。定位为“最简单的...

weixin_33582089的博客 611

从硬件到软件:深度解析D435i USB SCP overflow错误的根源与解决方案

本文深入解析Intel RealSense D435i相机在ROS环境下常见的'USB SCP overflow'错误,特别是与`control_transfer`相关的错误提示。从硬件配置到软件优化,详细介绍了如何通过调整USB接口、优化`rs_camera.launch`参数、更新固件驱动等方法解决数据传输溢出问题,提升设备稳定性和性能。

yy01234的博客 771

浙政钉H5应用上架实战:从环境配置到发布避坑指南

本文详细解析浙政钉H5应用上架全流程,从环境配置到发布避坑指南。重点介绍Vue 2.6 + Node 14.21.3的稳定开发环境搭建、项目结构规范及常见报错解决方案,帮助开发者高效完成浙政钉H5应用上架流程。

weixin_27943395的博客 286

Delphi多媒体设计之TMediaPlayer组件(五)

MIDI音频(MIDI Audio) 对于MIDI音频没有太多可说的,所要做的只是设置MediaPlayer的FileName属性为MIDI文件,在调用Play方法即可。MIDI文件的扩展名有.mid和.rmi两种。 简单的播放MIDI音频的例子如下: procedure TForm1.btn9Click(Sender: TObject); begin if Pos('播放''蜡笔小...

weixin_30247781的博客 112

【读书笔记】Verilog的亚稳态现象和跨时钟域处理方法

文章目录 一、亚稳态 (1)跨时钟域的亚稳态现象 (2)亚稳态的多径传输 二、跨时钟域处理 2.1 单bit信号跨时钟域处理 (1)单径两级触发器同步器 (2)相位控制 (3)多径与多级寄存器同步链 (4)组合逻辑信号的同步化 (5)快时钟域信号的同步化 2.2 多bit信号的跨时钟域处理 (1)异步FIFO (2)双口RAM.........

毕淑敏曾说过:“我不相信命运,我只相信自己的手;我不相信手掌上的纹路,但我相信手指加上手掌的力量”。在这个快节奏的社会,只有自己能力不足才会被卷,踏踏实实沉下心来学一些技术,及时记录,方便以后复盘。 2万+

delphi编程实现播放背景音乐

如果要做一些比较艺术化的程序时,你会想到插入背景音乐,这时你是否使用了TMediaPlayer控件来播放音乐呢?其实我们大可放弃该方法,直接使用WINDOWS为 我们提供的API函数来播放音乐,方法如下:首先需要在uses部分加入mmsystem,接着写入下列语句,其中e:/1.mid为播放的文件,NN为自定义名称标志procedure TForm1.Button1Click(Sender

RENYUAN 2269

解放双手:用KUKA示教器白键一键触发复杂工艺,自定义你的快捷指令

本文详细介绍了如何利用KUKA示教器的工艺白键功能,通过自定义快捷指令一键触发复杂工艺,显著提升自动化产线效率。文章涵盖UserTech技术栈解析、KRL脚本封装、人机交互视觉工程及工业实战策略,帮助工程师实现机械臂操作的高阶优化。

weixin_30379531的博客 432

避坑指南:LVGL在Arduino环境编译报错?3步搞定lv_conf.h路径问题(附ST7789屏幕调试技巧)

本文详细解析了在Arduino环境中配置LVGL图形库时,如何解决常见的“lv_conf.h file not found”编译报错问题。通过三步法:定位并复制模板文件、启用核心配置并指定路径、配置基础参数,从根本上解决路径问题。文章还结合ST7789屏幕驱动,分享了使用TFT_eSPI库进行显示适配、内存优化及背光控制等实战调试技巧,帮助开发者建立清晰、可维护的嵌入式UI工程基础。

lake5的博客 860

delphi播放mp3背景音乐

 //以下的代码为播放背景音乐 var           mciOpenParms:   TMCI_Open_Parms;           m_MCIDeviceID:   MCIDEVICEID;   procedure TForm1.FormCreate(Sender: TObject);varmciPlayParms:MCI_PLAY_PARMS;ret:   integer;

eNet 3334

SAP-ABAP:接口多继承与复合接口设计:复杂业务场景下的能力组合实现方案

本文介绍了ABAP中通过接口多继承与复合接口设计实现能力组合的方案。文章首先辨析了类实现多个接口与接口继承接口的核心概念,指出ABAP虽不支持类多继承,但可通过这两种机制灵活组合能力。随后详细讲解了类实现多个接口的语法规则与三种调用方式,并给出了五个基础能力接口的设计示例(日志记录、权限校验、数据导出、消息通知、格式转换)。作者通过对比单继承与接口多重实现的差异,强调后者在解耦和扩展性上的优势,为复杂业务场景下的能力组合提供了实用解决方案。

baidu_35680696的博客 245

DELPHI线程创建与使用

这个要看你这个函数是干什么的,如果不涉及界面VCL或数据操作等需要同步的事情,那么多个线程调用同一函数跟平常调用一个函数一样,没什么特别的地方,反之,则需要注意每个线程之间的同步问题 追问 我想调用这个函数播放 音乐。 因为写在代码块里,音乐没有完成,下面的代码貌似不执行。 我想边放音乐边操作 追答 首先,我认为如果要播放音乐的话就没必要多线程调用啊,难道你想同时播放几个不同的音乐? 确实需要的话...

袁杨的飞 - 优快云专栏 1640

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

NTscan扫描工具

ntscan是一个扫描器,可以扫描没有密码和弱密码的共享,先到配置文件中填写猜测的用户名和密码,扫描过程中右侧出现的是扫描日志。

MIDI音乐编程那些事儿

MIDI音乐编程那些事儿 文章目录MIDI音乐编程那些事儿前言一、Windows系统的 win32 API函数1、win32 API MIDI函数的获取2、MIDI函数的参数和返回值 前言 新冠疫情期间没事儿,玩起了音乐和电脑。因为正在利用老旧电子琴学弹 “我爱你中国” (简谱的眼睛),手上较为完整的曲谱却是五线谱,无奈!把它翻译成简谱。本来想通过电脑帮我把输入的五线谱转换成指定大调的简谱(转成不同调的简谱,这do re me 就不一样了,手工转换很烧脑的),这不需要MIDI的。可是,后来想让电脑在每转换

zhongzg的博客 9239

计算机控制技术及应用

《计算机控制技术及应用》通过总结作者的科研成果和吸收国内外的先进理论、方法和技术,以计算机控制系统的网络化、开放化、智能化和集成化发展趋势为主线索,主要介绍计算机控制系统的基本概念和计算机控制系统的典型形式,计算机控制系统的数学描述与基本分析方法,以及数字PID控制器、最少拍控制系统、达林算法、状态变量设计法等设计方法及其各种改进算法。重点突出计算机控制系统输入输出通道接口的设计方法和典型控制系统的设计案例与实现方法等。

用Delphi创建音乐站点维护程序

维护过音乐站点的朋友都只道,要实现确保音乐站点在线播放MP3音乐必须为每首Mp3建一个.m3u音乐列表文件,当网友点击音乐时先下载m3u音乐列表文件,然后播放器根据m3u文件指向的Mp3文件地址就可以实现在线播放。如果音乐站点要实现查询、统计功能就必须用到数据库,把每首歌的信息记录入数据库。 如果,一个站点有5000首Mp3音乐(一般远大于这个数目),维护文件夹、创建列表文件、添加到数据库这一过程...

weixin_34344403的博客 115

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

上一篇: 一页纸上,使用多个“邮件合并”
下一篇: Delphi TIniFile 类 操作ini配置文件
abestone
博客等级 码龄20年 36粉丝 126原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值