仍然是网络语音传输的问题(100分)

  • 主题发起人 主题发起人 watter
  • 开始时间 开始时间
W

watter

Unregistered / Unconfirmed
GUEST, unregistred user!
前一段时间在网上当了一个局域网IP电话的东东:iphone14,好多大虾可能都用过,可是我无论
怎么都听不到声音,运行程序,开始->确定后,弹出提示框:WaveOutPrepareHeader error
OK后,提示:WaveOutWrite error,有时在两台机器上同时运行,提示框是没有了,但还是听不到声音
扬声器里只有比较大噪音。另外,程序里用到的控件:TUDPSocket,哪位大哥有请给我发一个,
小弟先谢过了。
部分代码如下:
procedure TForm1.Button1Click(Sender: TObject);
var format:pointer;
begin
UDPsock1.RemoteIP:=edit1.text;
format:=ACMDialog1.OpenDialog;
if format=nil then exit;
UDPSock1.Start;
ACMWaveOut1.Open(format);
ACMWaveIn1.Open(format);
Button1.Enabled:=false;
Button2.Enabled:=true;
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
ACMWaveIn1.Close;
ACMWaveOut1.Close;
UDPSock1.Stop;
Button1.Enabled:=true;
Button2.Enabled:=false;
end;

procedure TForm1.ACMWaveIn1Data(data: Pointer; size: Integer);
begin
UDPSock1.Send(data,size);
end;

procedure TForm1.UDPSock1Recv(data: PChar; delka: Integer; host: String);
begin
ACMWaveOut1.PlayBack(data,delka);
end;
 
再补充一下,从jingtao大哥的主页下载的那一个也不能听到声音。可以把你代码发给我看一下吗。
我的妹儿:watter@sina.com
 
可以看一下DirectPlay的例子,标标准准的源代码
 
to LeeChange:
哪里有Directplay的例子,可以发一个过来吗,是Delphi的吗。谢谢
 
C++的
微软的网站上就有
 
[8D]试试这个:

http://www.banasoft.com/AVPhone.htm
 
我在INTENET上试验了没有问题啊
那个控件有BUG的.
 
Directplay有断音现象.
 
想要消除断音必须自己写音频降噪算法!
 
我已经把全部代码公开了
请查我提的问题
或者直接到我主页下圣诞节礼物
 
我曾想过,用文本文件做为载体。装载数据。IP2IP
或是C/S2S的方式传送。可是,自己的水平有限,想想而已。
 
to jingtao:

请问您的主页在哪里啊?谢谢!
 
找到了,但下不下来啊!
 
www.21cn.com
用户名:delphibbs2002
密码:delphibbs2002
 
TO 楼顶的:
//运行程序,开始->确定后,弹出提示框:WaveOutPrepareHeader error
//OK后,提示:WaveOutWrite error,有时在两台机器上同时运行,提示框是没有了,但还是听不到声音
//扬声器里只有比较大噪音。
我也实验了,就是呀,在局域网就是有这个毛病,不知道Internet上有没有这样的情况。
 
是否要多开几个缓冲区呢?
 
我觉得用TCP/IP好过用UDP。
 
谁能解决“WaveOutPrepareHeader error”和“WaveOutWrite error”的问题阿??
 
我用过,没有问题。
你跟踪调试以下,是在执行那一句代码出的错.
 
WaveOutPrepareHeader error
引起原因可能如下(个人意见):
1、声卡驱动问题,如没有安装驱动
2、WaveOut接收的数据中包含有异常数据,如往接收端的IP和端口发送字符串。
3、不兼容的声卡,比较少见
 
后退
顶部