2024年4月29日发(作者:)

ISSN

C唧f橱r

K『”俐瓠啪a删n咖『0∥电脯知识与技术

2009.pp.2669,2674

1009—3044

E—nlail:wltx@cccc.net.cn

http洲www.dn玛.net.cn

5690964

Tel:+86-551—5690963

V01.5,No.10’April

用DeIphi实现录音程序

陈彬茹

(空军航空大学计算机教研室.吉林长春130022)

摘要:音频采集和录制软件是多媒体技术中的一个重要组成部分。本文利用BorbndDelplli开发平台,介绍了结合MediaPhy盯控件

定义声音文件过程,给出了实现录音程序设计的方法和步骤。

关键词:录音程序;Delplli;控件;音频信号

中图分类号:TP31l

R优order

文献标识码:A

on

文章编号:1∞9—3044(2∞9)10_.26凹-ol

Pm萨锄Design

Based

Delpm

CHEN

Bin—ru

(CoInpu时Sta正J慨don

Unive两t),ofAjr

Force,Changchun

130022,Ch叫

Abstnct:Audio

plication

咒corder

coⅡecdon

md

recorder

tIle

pla岛皿discllSsed

pro铲aIll托ali盈don.

s0危w玳批me

cridcal

part

ofdle

m11ld眦dia

technology.T岵paper

udlizcdBodand

Delp|li

ap—

me血od

and

process

of

procedu傩of

de丘11吨“dio伍岱b蹴d∞Mediaphycr

compone她presented

dle

Key.words:Recordpro印删Delplli;c伽平嘶ent;Audio啦ml

1引言

Delphi是基于0biectPascal语言的可视化编程集成开发环境,具有基于窗体和面向对象的方法,高速的编译器,与Windo啪编

程紧密结合.功能强大,成熟而丰富的组件易学易用,即使是非计算机专业的人员,也可以利用Delphi编制界面完整功能齐备的程

序Il】。多媒体程序更是DelplIi开发应用程序的优势之一。本文就以Delphi为设计平台,介绍开发“录音”程序的具体方法和过程。

2实现原理

设计、编写录音软件,需要用到Delphi中System页面下的

Mediaplayer控件。录音功能的前提是定义W盯文件的文件头格

式。然后通过Mediaplayer控件录制声音并写进音频文件田。生成的

WAV文件则通过编写一个CreateWav过程。C阳ateWav过程中的

几个参数及作用如表1所示。

CI-eateWav过程的具体调用方式为:CreateWav(1,8,11025,,c:

、temp.waV,);

其功能是在C盘根目录下创建一个8位单声道频率为11025的名为temp.wav的Wav文件。

表1

CreateWav过程中参数

3实现过程

在Delphi开发环境中,新建一个Application

ForWin

32的应用程序,在窗体中添加3个控件:1个Mediaplayer控件和2个

Bun叽控件。其中,2个Bunon控件的Caption属性分别设置为“开始录音”和“停止录音”。Wav文件头声明的具体代码如下:

7rype

T'ⅣavHeader=record/,定义一个Wav文件头格式

end:

界面和主程序框架建立后.编写CreateWav的过程,主要代码如下:

TFo珊1.CT}eatewav(channels:word;I

1(单声)或者2(立体声)lres01ution:word;{8或者16,代表8位或16位声音l

raIe:longint;{声音频率,如11025,22050,“100】fn:string{对应的文件名称】);

proceduI.e

wf:Iile“TWavHeader:

wh:TW且vHeader=

begin

wh.nCh姐nels:=channels:

wh.nAvgB归Persec:=channel8幸rate幸(re∞luti∞div

wh.nBlockAli印.-ch衄e”∞∞lution

div

8);

wh.wBitsPe6锄ple:=re80lution;

wh.nSamplesPer苣;ee:=mte;

8);

(下转第2674页)

-一---·。·计算机t掌与敦膏信息化--2669

cc柳咖,∞耐B啦删乃啪∞蚴电嚣知识与技术

重如何引导学生开展研究性、探索性学习。同时课件制作应注意简洁,以免影响学生注意力。

第5卷第10期《2009年4月)

5结论

多媒体教学有利有弊,我们只有尽力做到因时制宜,因材施教,趋利除弊,扬长避短。才能达到较为满意的教学效果。

参考文献:

【l】刘育涛,安素平.试论多媒体课件在教学中的作用[J】.河北师范大学学报,2002,4,(1):62一“.

【2】周中云.基于个别化教学多媒体课件设计的反思【J】.中国电化教育,2003,(1):49~51.

【3】黄秋生.谈谈多媒体教学课件制作中的几个问题【J】.中国电化教育,2002,(7):45—垢.

郭若飞(1982一),女,内蒙古商都人,助教,本科,主要研究方向:教学研究。

(上接第2669页)

在“开始录音”的Butfon控件中编写功能代码,实现录音功能;在“停止录音”的Butt伽控件中添加功能代码,实现停止录音的功

能.核心代码如下:

乱开启录音代码

try

createwaV(1,8,ll

025,(ExtractFilePa山(Applicati明.ExeN明le)+1remp.wav,);

·MediaPlayerl.DeviceType:=dtAutoSelect;

MediaPlByerl.0pen;

MediaPIayerl.FileN8me:-(ExtractFilePath(Applicat疏ExeN砌e)+仉mp.wav,;

MediaPIayerl.StartRec刊in簖

except

Application.MessageBox(’媒体设备初始化失败!j’错误:MB-ICONERROR+MB._oK);

end二

end:

b.停止录音代码

MediaPlayerl.Stop;

MediaPlayerl.Save;

MediaPlayerl.CJo∞;

Application.MessageBox(’声音录制完毕!,’7信息’,MB-ICONINFORMATl0N+MB—0Kk

靠cept

App“cali咖.MessageBox(7保存声音文件出错!,'7错误jMB_Ic0NERROR+MB—OK);

end:

保存并运行该程序,在计算机上安装好麦克等音频输入设备。点击。开始录音”按钮,程序就会通过麦克采集声音;关闭录音功

能后。会在程序所在目录下生成一个“Temp.wav”的音频文件。在操作系统中利用相应的播放软件就可对录音进行试听。若提高录音

文件音质,可以改变CreateWav过程中的参数。程序通过Delp垴2005编译,在职ndows

XP

SP3中运行测试通过。

4总结

本文介绍了用Delphi设计“录音”程序的方法和过程,给出了完整的设计思路及核心代码。该研究体现出Delphi进行面向对象

程序设计的思想和理念,并对音频文件的生成原理进行了剖析和详细描述Dl,为Delphi进行复杂多媒体音频处理程序的设计和开发

提供了一个有效的方法和思路。

参考文献:

【1】余萍.用Delphi实现多媒体系统中多种声音的同时输出叨.重庆文理学院学报(自然科学版),2007,26(2):64—66.

【21丁民选.录音技术在课件制作中的应用叨.山西广播电视大学学报,2007(1):39—40.

【3】钱冬云.基于Delphi的新型多媒体播放器的制作叨.浙江工贸职业技术学院学报,2007,7(2):50一54..

咋彬茹(1983一)。女,吉林柳河人,助教,研究方向:计算机应用软件研发和计算机基础教育。

2674--计算机薮掌与t膏值皇化··-·一t一-

本拦目赛庄编辑:王力