Board logo

标题: 用wws.c改写了一个可以播放wav声音的程序,请大家测试 [打印本页]

作者: rushon     时间: 2004-9-14 00:00    标题: 用wws.c改写了一个可以播放wav声音的程序,请大家测试
折腾了一天,终于可以用这个程序播放wav的歌曲了,能听到声音的那会确实很激动。
但是dos地下的声音也不是那么好听,可能是驱动给的混响效果太差了。
程序写的很粗糙,只支持最简单的没有压缩的wav一种格式,大家凑活着先听听。
毕竟有声音了。

作者: rushon     时间: 2004-9-15 00:00
文件格式不正确,或不能为空
=================
??? 为什么老是出现这个错误?斑竹?

作者: Wengier     时间: 2004-9-15 00:00
沒有傳上來呢。要上傳的話,可以先壓縮成.ZIP或.RAR格式後再上傳,而不能直接用.EXE上傳。
不過DOS下能放WAV的程序很多的,像QV、MPXPLAY之類的都行,而且播放效果也不錯。
衹是許多AC97聲卡似乎沒有DOS驅動程序,結果什麼聲音都沒有。。(MAME除外)

作者: rushon     时间: 2004-9-15 00:00


直接用它来播放就可以了。

作者: rushon     时间: 2004-9-15 00:00
打开附件

就是直接利用wws.c里面的函数来发声音

作者: rushon     时间: 2004-9-15 00:00
有谁知道mp3文件的压缩方法和数据格式,这样我想播放 mp3不是个问题,用ac97的声卡

作者: Wengier     时间: 2004-9-15 00:00
這兒有一些關於MP3文件的格式的介紹,不過是英文的(中文的我找了一下好像沒找到):
http://mpgedit.org/mpgedit/mpeg_format/MP3Format.html
不過DOS下的一些MP3播放器是開放源代碼的,如MPXPLAY就是。您可以參照裡面對MP3格式文件的解碼部分的代碼來完成,或者直接復制裡面的一些相關代碼內容都可以(因為是完全開源的,所以也不存在版權問題)。MPXPLAY最新版的源代碼我已上傳,可以在這兒下載:
打开附件
注:剛才我回到純DOS下試了一下這個WPLAY.EXE,感覺總體上確實還不錯,不過好像衹支持16位的WAV文件而不支持8位的WAV文件呢(放8位的WAV文件時都是雜音)。

作者: rushon     时间: 2004-9-15 00:00
注:剛才我回到純DOS下試了一下這個WPLAY.EXE,感覺總體上確實還不錯,不過好像衹支持16位的WAV文件而不支持8位的WAV文件呢(放8位的WAV文件時都是雜音)。========================================================斑竹不愧是斑竹,测试的真仔细,单声道和8位的确实没有写进去。今天晚上我写好音量控制,和时间显示,就把源代码传上去,大家一起来使它更完善。

作者: mrdeadman     时间: 2004-9-15 00:00
记得当初我编译这个程序时gotomsdos曾发帖向我致敬,现在想来,是在当之有愧,现在我们可以向rushon兄致敬了。下了这个程序我爱不释手,花了半天时间,录制了16种声音,是4种频率(8k,11.025k,22.05k,44.1k),2种声道(单声道,立体声),2种位数(8位,16位)的组合。结果只有1种组合能正常播放,44.1k+16位+立体声。若只把频率降为22.05k,或只把立体声降为单声道,会发现播放的速度很快,但还是能听出些名堂来。其他13种组合则只听到一片噪音,而并不是Wengier所说的16位声音都行。运行过程中,我发现程序其实是能够把文件的各种频率,声道属性检测出来的,可惜播放时频率不能调整,就48khz而已,所以我认为,其实44.1k播放也是不正常的,只不过是近似正常。希望作者继续努力,解决这些问题。也希望作者把源程序贴上来,大家一起研究。另外,请问Wengier老兄,怎么今天打开联盟论坛首页时总会弹出一个dos窗口,一闪就没了,是不是为了搞笑。

作者: rushon     时间: 2004-9-15 00:00
谢谢,你的鼓励是我前进的动力,今天晚上我会完善这个程序,让它能够支持多点的格式

作者: Wengier     时间: 2004-9-15 00:00
mrdeadman:我什麼時候說過衹要是16位聲音都行??我的原話是“不過好像衹支持16位的WAV文件而不支持8位的WAV文件”,是說它在能播放我已試的一部分16位聲音的同時卻並不支持8位聲音,即主要是強調它目前還完全不支持8位聲音這個事實,希望能改進。請不要把這句話的意思曲解為我說所有的16位聲音都能完全正常播放!另外你說的“今天打开联盟论坛首页时总会弹出一个dos窗口,一闪就没了”這個現象我並沒有發現,更不可能是所謂的“为了搞笑”了。rushon:我也向您致敬,祝您能夠順利完善程序!

作者: rushon     时间: 2004-9-15 00:00
二位大哥客气了,我其实已经在论坛上逛了好久了,主要是大家提供了这么好的源代码。

作者: rushon     时间: 2004-9-16 00:00
程序升级:程序版本 V1.01增加了音量加减功能,时间显示功能:问题:上面提到的关于播放的rate不能改变的问题,我始终没有找到解决办法,希望各位能一起找找看。源程序如下:建议:希望大家一起来维护这个程序,让它能够比较成熟的支持wav,mp3,wma 音乐格式,能成为一个比较成熟的FREE软件。 下一步的任务是: 增加一些常用的功能,如快进快退,循环播放一个文件夹,懂算法的朋友可以增加一些音效处理:解决只能播放48000 16 2 的问题。解码mp3功能。

作者: rushon     时间: 2004-9-16 00:00
打开附件

我的程序代码写的比较乱,又没有养成写注解的好习惯,大家凑活着先看看。
我希望我们以后维护这个版本的时候有必要来养成这样一个好习惯。
呵呵,

作者: rushon     时间: 2004-9-16 00:00
下了这个程序我爱不释手,花了半天时间,录制了16种声音,是4种频率(8k,11.025k,22.05k,44.1k),2种声道(单声道,立体声),2种位数(8位,16位)的组合。结果只有1种组合能正常播放,44.1k+16位+立体声。若只把频率降为22.05k,或只把立体声降为单声道,会发现播放的速度很快,但还是能听出些名堂来。其他13种组合则只听到一片噪音,而并不是Wengier所说的16位声音都行。===================================希望能够把你手上的测试例子上传上来,主要是 8 16 单双 声道 4种组合。让大家研究一下。

作者: mrdeadman     时间: 2004-9-16 00:00
hehe,刚才压缩成一个大包,60几兆呢,传不上来。一个一个传又太麻烦,能不能给个ftp。或者,我把那个录音软件传给你,很好用,录音来源选mono mix或stero mix就能一边放歌曲一边录进去,破解版的,要不要?

作者: rushon     时间: 2004-9-16 00:00
好啊好啊,太需要了

作者: mrdeadman     时间: 2004-9-16 00:00
打开附件
hehe,传了老半天呢

作者: GOTOmsdos     时间: 2004-9-16 00:00
向各位致敬啊! 真的很需要各位搞出集成声卡AC97的DOS驱动啊! 搞成的话,广大的集成声卡AC97用户就有福享受DOS下的美声了!当时我买电脑的时候,对电脑一窍不通,考虑到价格,JS给了我集成声卡,后来懂了电脑,才知道集成声卡的局限,不过现在好了! 前几天,花了20元买到CREATIVE ensoniq audioPCI 64(用DOS驱动可模拟成SB PRO), 和28元买到CREATIVE ct4810 audioPCI(ct2518)(用DOS驱动可模拟成SB 16)! 感觉太赚了! 在DOS下听音乐和WINDOWS XP没有任何区别! 只是看VCD稍比WINDOWS差点, 但是,玩DOS游戏,那可真叫爽!DOS音乐很纯, 玩DOS仙剑时不选MIDI,只选声霸卡,出来的音乐合成是古老的FM合成,有神秘的古味儿,这是后来的波表合成MIDI所没有的,就象是古筝和电子琴的区别!

作者: zjyeyezj     时间: 2006-10-27 04:33    标题: 下载不了??

作者: zjyeyezj     时间: 2006-10-27 04:36    标题: 下载不了??
能帮我传一下MPXPLAY的源码和你做的程序源码吗
我下载不了!
我邮箱zjye-yezj@163.com
3X

作者: Wengier     时间: 2006-10-27 11:19
楼上的,到这个帖子中去下载吧:

http://www.cn-dos.net/forum/viewthread.php?tid=13799