社区
C++ Builder
帖子详情
流式文件传输接收算法
dutousuan
2003-09-12 02:27:47
串行方式传送一个流式文件,
先发送信息头:"s_start$filename$filelen$"
发送没有问题,接收方式如下:
每次读256个字节,可能读到少于256个字节,所以
可能读到全部的信息头"s_start$filename$filelen$"
也可能读到部分信息头 如:"s_start$file"
余下的在下一包里读到,发送文件也一样
这样每次认为收到错误的信息头,造成接收错误
那位高人有能处理这种情形的好的算法?
谢谢!
...全文
117
17
打赏
收藏
流式文件传输接收算法
串行方式传送一个流式文件, 先发送信息头:"s_start$filename$filelen$" 发送没有问题,接收方式如下: 每次读256个字节,可能读到少于256个字节,所以 可能读到全部的信息头"s_start$filename$filelen$" 也可能读到部分信息头 如:"s_start$file" 余下的在下一包里读到,发送文件也一样 这样每次认为收到错误的信息头,造成接收错误 那位高人有能处理这种情形的好的算法? 谢谢!
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
17 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dutousuan
2003-09-18
打赏
举报
回复
作了一个简单的YMODEM协议,希望能行
baggio_zyj
2003-09-15
打赏
举报
回复
凑份子:modem作为传输接入系统,对所有内容应该是透明传送。类似于ip包由osi第三层处理,而到了应用层就是你自己的数据了。所以如果出现接收错误,可能是其他原因,而不是modem加了几个字节所致!
invalid
2003-09-15
打赏
举报
回复
什么好算法,建立在程序员都不知道传输协议的基础上?
dutousuan
2003-09-15
打赏
举报
回复
俺就是想找个好算法呀
asimpleman
2003-09-15
打赏
举报
回复
gz
dutousuan
2003-09-15
打赏
举报
回复
接收没有问题,只是协议分在了不同的包里,俺现在多收几包把他们拼起来在解包,在不行可能就要写YMODEM或ZMODEM协议了。
yjy1001
2003-09-12
打赏
举报
回复
换一个方案实现,可能容易点
fathappy
2003-09-12
打赏
举报
回复
modem加的数据头是什么知道吗?如果是固定的话可以加进自己的协议里。
invalid
2003-09-12
打赏
举报
回复
那你这个方案就行不通了。换方案吧。
dutousuan
2003-09-12
打赏
举报
回复
modem自己加上的数据头,俺无法控制。
invalid
2003-09-12
打赏
举报
回复
>>问题是你不发信息头时,它不发,你发信息头时它就自动的加在前面,每次字节数不确定?
每次字节数怎么会不确定?,不是你自己定义的协议吗?
csdnxw
2003-09-12
打赏
举报
回复
哈哈,蔬菜开会!
dutousuan
2003-09-12
打赏
举报
回复
问题是你不发信息头时,它不发,你发信息头时它就自动的加在前面,每次字节数不确定,
不好弄呀
invalid
2003-09-12
打赏
举报
回复
>>因为modem发送第一包时会先发若干个无用字符(几百个左右)。
那就跳过这几百个啊。
dutousuan
2003-09-12
打赏
举报
回复
俺用的是modem,用FileRead();读取,即使是读够256个也可能收到不完整的信息头
刚好buf的最后几个,因为modem发送第一包时会先发若干个无用字符(几百个左右)。
invalid
2003-09-12
打赏
举报
回复
int iRecLen = ReadSocket(Buf,256-pos);
中的ReadSocket函数应该有此功能:读取少于等于指定长度的数据。
invalid
2003-09-12
打赏
举报
回复
读取时强制读取256个字节,如果读取少与256则继续读取,直到读取够了,或者网络异常了。
伪代码如下:
int pos = 0;//读取计数器
while (pos < 256)
{
int iRecLen = ReadSocket(Buf,256-pos);
strcpy(Recvbuf+pos,iRecLen);
pos+=iRecLen;
};
视频流多播系统的设计和实现 (2005年)
流模式是一种重要的多媒体数据传输和应用模式。针对数据广播平台等应用,设计并实现了一个视频流媒体多播系统。该系统采用B/s结构,由服务器端的节目编排子系统和节目播出服务子系统以及节目
接收
客户端的视频播放子系统三部分组成。服务器采用新视频编码标准H.264提高编码效率,后预测
算法
进行变码率
流式
传输的调度,以及智能化功能。客户端采用多播组技术、缓存管理技术、播放状态控制技术、COM组件嵌入技术。服务器和播放器均有支持数字权限管理的接口。系统的运行表明符合预期目标。
如何在服务器端
接收
流式
stream数据
ChatGPT:在服务端
接收
流式
stream的具体实现方式可能会因不同的编程语言和框架而有所不同,但一般而言,可以按照以下步骤实现: 1. 在服务端创建一个监听端口,并等待客户端连接。需要注意的是,在
接收
流式
stream的过程中,服务端应该及时处理数据,以避免缓存区溢出。然后,在服务器块中,我们定义Nginx将在该端口上侦听的服务,并通过proxy_pass命令将Stream数据流转发到上游块“my_stream_backend”。然后,
接收
客户端的流对象,并将流数据转发到另一个服务端或客户端。
分而治之,大型文件分片上传
这里我们涉及到了一种
算法
——分支
算法
最近着手的广告平台项目中,因为需要客户提供自证视频,证明是本人公司的真实性。现如今,视频的分辨率越发的高,往往就伴随着视频内存的巨大,一个几分钟的视频需要几个g的内存,用普通的上传方法肯定不行,文件大速度慢,影响客户的使用体验,为了解决这个问题,我采用了分片上传的方法,将一个大文件,分成n个小文件进行上传,加快传输效率!分片上传的概念就是分治
算法
,分而治之,将一个大问题,转变为多个小问题,进行解决!!至此前端分片逻辑就完成了!...
微信C2C渐进式图片
流式
传输系统简介
微信C2C渐进式图片
流式
传输系统简介 在微信C2C图片服务中,用户体验一直是第一位的,由架构平台部研发的微信C2C后台系统,也一直在用户体验上深入研究,经过多次技术数据的验证,采用渐进式格式,和产品体验的巧妙结合,可以大大的降低用户的体验时延,接下来会详细介绍我们的应用过程。 一、渐进式图片 JPG图片支持两种编码方式:基线式(baseline)和渐进
流式
计算中的数据压缩和优化:如何减少
流式
计算的数据量和传输带宽
作者:禅与计算机程序设计艺术 数据驱动型计算(Data-driven computing)的快速发展已经彻底改变了现代IT行业的工作方式。从最初的批量处理到基于云服务的分布式计算,数据驱动型计算越来越受到广泛关注。随之而来的就是
流式
计算(Streaming Computing)。由于实时性要求高、处理数据量巨大、数据传输速率不确定等特点,
C++ Builder
13,825
社区成员
102,679
社区内容
发帖
与我相关
我的任务
C++ Builder
C++ Builder相关内容讨论区
复制链接
扫一扫
分享
社区描述
C++ Builder相关内容讨论区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章