【发布时间】:2011-10-20 10:52:04
【问题描述】:
这是Sending and receiving data streams in Delphi 的延续。
我将使用 TCP/IP 发送图像,然后使用 UDP 更新该图像中的更改,方法是将图片分成小块并仅发送有重大变化的部分,然后客户端将修补这些旧照片上的碎片。
每 15 秒使用 TCP/IP 更新整个图像。
服务器中的图片将由网络摄像头更新。 (就像视频流一样)。我已经在 delphi 中创建了一个运动检测器和片段收集器,它们运行良好。
以下是我在实施过程中遇到的问题
1.INDY 10 中使用 TIDUDPServer/client 发送和接收数据流(>indy 10 中的示例代码)我使用的是 delphi XE2
2.UDP中一个数据包可以支持的最大数据大小是多少
3.当我双击 IdUDPServer1.onUDPRead 事件时,IDE 会产生错误,并带有
TArray <System.Byte>
我认为最终的错误是由于 XE2 中新引入的命名空间。
用下面的代替 indy 怎么样
Sockets.TTcpClient
Sockets.TTcpServer
Sockets.TUdpSocket
【问题讨论】:
-
a) 你不应该为此使用 UDP。 b) 学习有关网络的细节there
-
我认为我的图像中的小块(检测到移动的区域)会小于 500 字节左右,我不在乎有些块是否没有更新。