知识大全 用Delphi开发视频聊天软件(三)
Posted 知
篇首语:既然选择远方,就注定风雨兼程。本文由小常识网(cha138.com)小编为大家整理,主要介绍了知识大全 用Delphi开发视频聊天软件(三)相关的知识,希望对你有一定的参考价值。
用Delphi开发视频聊天软件(三) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!
频聊天软件客户端)新建一个工程 命名为Project dpr
)在程序窗口Form 上放置一个image控件 该控件用于接收的图像内容 再放置一个Tbutton控件 caption为 接收 放置一个UDPServer组件 这里用indy的IdUDPServer用来接收网络视频 如图示
接收按钮代码
IdUDPServer DefaultPort:= ; //接收端口 IdUDPServer Active:=true; //启用
IdUDPServer 的UDPRead事件代码
var jpg:TJpegImage;begin try jpg := TJpegImage Create; jpg LoadFromStream(Adata); Image Picture Bitmap Assign(jpg); jpg Free; exceptend;end;
视频的传输是压缩成JPG进行传输的 服务器端和接收端都用到了jpeg单元 所以use中都要加入jpeg
完整的视频聊天软件客户端代码
unit Unit ; interfaceuses Windows Messages SysUtils Variants Classes Graphics Controls Forms Dialogs StdCtrls IdBaseComponent IdComponent IdUDPBase IdUDPServer ExtCtrls jpeg IdSocketHandle; type TForm = class(TForm) Image : TImage; IdUDPServer : TIdUDPServer; Button : TButton; procedure Button Click(Sender: TObject); procedure IdUDPServer UDPRead(Sender: TObject; AData: TStream; ABinding: TIdSocketHandle); private Private declarations public Public declarations end; var Form : TForm ; implementation$R * dfmprocedure TForm Button Click(Sender: TObject); begin IdUDPServer DefaultPort:= ; //接收端口 IdUDPServer Active:=true; //启用 end; procedure TForm IdUDPServer UDPRead(Sender: TObject;AData: TStream; ABinding: TIdSocketHandle); var jpg:TJpegImage; begin try jpg := TJpegImage Create; jpg LoadFromStream(Adata); Image Picture Bitmap Assign(jpg); jpg Free; except end; end; end
好了 到这里程序代码也就写完了 在机上运行视频聊天软件服务器程序 点开始就开始进行视频的传输了 在网络上(网段为 X 根据你的网络设置IP地址 我这用的局域网测试)的任何一台机上运行视频聊天软件客户端点接收都能接收到视频了
如果要接收的视频内容清晰点 可以设置jpg CompressionQuality:= ;(这个值可以是从 至 数值越大 图像越清晰 当然传输的速度会越慢了 图像越清晰 数据包就会越大 如果超出了UDP包限制 看到图像就不完整了)
视频聊天软件服务器
聊天软件客户端
四 结束语
cha138/Article/program/Delphi/201311/24738相关参考
用Delphi开发视频聊天软件(二) 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n
用Delphi开发数据库程序经验三则 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! 建立临时表
用Delphi开发数据库程序经验三则 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧!一建立临时表
Delphi开发基于DCOM的聊天室 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看一下吧! &n
DELPHI基础教程:Delphi自定义部件开发(三)[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
DELPHI基础教程:Delphi自定义部件开发(三)[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
DELPHI基础教程:Delphi自定义部件开发(三)[2] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
DELPHI基础教程:Delphi自定义部件开发(三)[1] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快一起来看
DELPHI基础教程:开发Delphi对象式数据管理功能(三)[4] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快
DELPHI基础教程:开发Delphi对象式数据管理功能(三)[3] 以下文字资料是由(全榜网网www.cha138.com)小编为大家搜集整理后发布的内容,让我们赶快