我要用VB6.0做一个小程序,请大家指点指点,指点指点,谢谢,谢谢了

来源:百度知道 编辑:UC知道 时间:2024/05/18 14:28:19
***************要要要要要要要求求求求****************************
Hi , 大家好!

1、左右声道分别录音,并分别保存成两个文件。
2、当检测到有信号输入自动进行录音。
3、保存成mp3格式。
4、每个文件以时间命名,并把其路径保存在数据库里,
当按时间查找出文件后,可以播放该段录音!

大家不用发代码,也不要发代码!
说出你的思路来吧,说的越细越好,谢谢了
****************************************************************

.
整清楚了,不是200你不搞,而是给你两百加个‘0’你都搞不懂,,知道不 ?就这玩意,要是真正的程序员,几分钟就拿下的东西,你们居然想宰人???,宰人之前,现掂量掂量自己是个什么玩意再说吧

可以用DirectX里的DirectSound来实现你所说的功能,大体思路如下:

1、用DirectSoundCapture对象来建立DirectSoundCaptureBuffer数据缓冲区对象,当数据缓冲区中有数据时(此时是两个声道),利用Capture Buffer Notification来激活用户来执行对数据的处理过程。
2、新建两个线程,并在其中建立两个支持DirectSound3D的DirectSoundSecondaryBuffer数据缓冲区对象,将DirectSoundCaptureBuffer数据缓冲区对象中的数据复制到两个DirectSoundSecondaryBuffer数据缓冲区对象中
3、利用DirectSound3D分别选取左右声道
4、检测每个声道中是否有数据。有数据流的DirectSoundSecondaryBuffer数据缓冲区对象开始把数据流保存到以当前时间命名的文件中,并不停的检测数据流是否中断,若中断则停止保存。无数据流的DirectSoundSecondaryBuffer数据缓冲区对象要在另一个DirectSoundSecondaryBuffer数据缓冲区对象数据中断前不停的检测是否有数据,有即开始保存数据。
5、每保存完一份数据,将数据的信息保存在数据库(使用数据库对象)中,销毁此线程,等待Capture Buffer Notification事件的再次触发,然后重复2-4

可以用一按钮来控制是否开始录音,也可以在程序的开始枚举系统中的可用设备,然后用户可以选择设备,其它也有许多细节要处理,如果你感兴趣,可以给我留言,然后我可以帮你做这个程序,再发源代码和程序以及相关资料给你。

左右声道好像得从声卡取得I/O接口,那你这个程序至少需要3个线程了,1个主的,两个捕获左右声道

主线程负责:检测有无声音输入,当录音结束后还要保存到文件,并转换成mp3格式,最后存入数据库

另外:建议 录音和播放实行功能分离并独立实现

不是搞多媒体的,具体细节爱莫能助....

rmb 加个0
偶帮你

用DirectSound吧

20