`
- 浏览:
34983 次
- 性别:
- 来自:
北京
-
在前些日子,本人就讲过,要将“乒乓”前行策略和大家分享一下,但一直都未成文,今日实现之。本应配以示意图,就更能清晰的说明问题,但试了几次都未能在JaveEye实现成功,我尽量在文字上,更加详尽点,帮助大家更好的理解。
“乒乓”前行策略实质是解决,在“非保证数据完全的协议”中,完成服务器到客户端数据的“全还原”。有点绕口,我来解释一下:设想一下,影视节目视频服务器,用HTTP、RTMP(或其变种,RTMPT RTMPS RTMPE RTMPTE)发布节目,通过这些协议的确可以将影视节目数据发送到用户的浏览器中,但是用户在观看过程中,会出现花屏、跳屏等现象。其原因并非服务器端影视节目有误,而是所用的应用层协议,不能保证数据的完整性,普通用户可以忍受由于数据损失所带来的不满。但是我们却要找到一个方法,100%的拿到服务器端的高清视频。所以也就有了,在“非保证数据完全的协议”中,完成服务器到客户端数据的“全还原”。
今日只讲HTTP的情况,暂不讲RTMP及其变种的情况。并非有所保留,而是因为RTMP的数据定位贯穿整个视频文件。若无图示,只怕是懂的人,不讲也懂;不懂的人,讲了也不懂。起不到好的效果,改日在发一篇有关RTMP的配图说明。
我们之所以将这个策略,取名为“乒乓”前行,由这“乒乓”两个字就能看出来。无论是‘乒’还是‘乓’,都有缺失。好在‘乒’所缺失的内容在‘乓’中,反之亦然。那对于用“非保证数据完全协议”传输的视频文件,会有缺失;但是各个文件所缺失的部分,会出现在另一份文件中,这样做一个文件的加法,就能将各个缺失的部分都还原。最终实现,从客户端来看,视频文件的数据是完整无缺的。
讲了策略,再来讲实现。我们都知道HTTP的下层是TCP协议,在TCP的每个数据包中有两个字段“发送ID”和“确认ID”。这两个ID是“乒乓”策略保证客户端视频文件框架等同的关键。因为这两个ID的数值是由服务器修改的,服务器又是针对一个完整的视频文件,所以服务器取了多少视频数据,已经发送了多少视频内容,都是可知的、无误的。所以由这两个ID,就能将网络视频流数据,对应到原视频文件的相应位置。这是整个实现的基础。其后的工作就是,唤起服务器,提供视频服务,对于同一段视频,拿到不少于两份的网络视频数据。我们是用C++实现的,大家想用Java、C#都行,具体开发工具,视自己具体情况而定。但是有一点,一定要拿到TCP数据包的发送ID和确认ID,并以此作为网络视频数据定位到视频文件的偏址,空白处用缺省值填充。
由于我们拿到不少于两份的网络数据数据,并且每份视频文件又是同一结构,剩下的工作就好办了,顺次比较这些文件相同位置的内容。若相同,则通过;若不同,取非缺省值。(还可有更好的容错策略,但考虑到实际情况,网络传输确有丢失,但是两个独立的TCP传输,丢失同一数据包的概率只怕只有彗星撞地球的概率,与此相当。但是大家可以有精益求精的精神,再来完善这个容错策略。)
“乒乓”前行的一个核心就是:用我拥有的来补充你所没有的,用你所具备的来完善我所缺失的,共同完成一个无缺失的完整体。
我们之所以这么关心完整性,这就要回到我的标题中来:“乒乓”前行策略在还原高清视频网络数据的应用。就目前的情况来看,拿到有损的视频数据是容易实现的,但是要做到无缺失就难了。所以这里就是一个机会:只有能完成大家都想要,与此同时,还能比别人做得更好,那么这样的产品就有市场价值。其次,我们提到了高清,这是我所一直关注的。我们没有提“乒乓”策略在(普通清晰)视频的应用,不是讲“乒乓”策略不适用于它,而是(普通清晰)视频内容不具备像高清一样的价值,这就是我们的着眼点。
任何指正,联系邮箱: a_10jqka_2010@live.cn
分享到:
Global site tag (gtag.js) - Google Analytics
相关推荐
**视频技术在乒乓球比赛技战术分析中的应用研究...未来,随着视频技术和数据分析技术的不断进步,视频分析在乒乓球等竞技体育项目中的应用将更加广泛和深入,为运动员的个性化训练和比赛策略制定提供更精准的数据支撑。
改进的人工鱼群算法及其在乒乓球视频数据挖掘中的应用,代表了数据挖掘技术在体育领域的潜在应用价值。这项技术不仅可以用于乒乓球比赛的分析,还可以扩展到其他体育项目的视频分析中,如羽毛球、网球等。通过提高...
乒乓缓存(Ping-Pong Buffer)是一种在计算机编程中用于优化数据传输和处理的技术,尤其在实时系统或者需要高效内存管理的场景下被广泛应用。它通过利用两个或多个交替使用的缓冲区来避免数据读写过程中的等待时间,...
2. 乒乓式存取策略:乒乓式存取是一种常用的数据处理策略,用于解决高速数据流在有限缓存容量下的连续采集问题。它通过两个缓存交替工作,一个缓存在读取时,另一个缓存在存储,这样可以保证数据的连续采集不中断。 ...
乒乓操作是一种广泛应用于FPGA设计中的数据流控制策略,它通过交替使用两个缓冲区来实现数据的无缝缓冲和处理,从而提高了系统的整体效率。这种操作模式在高速通信系统、图像处理、数据传输等多个领域都有着重要的...
在实际应用中,内存乒乓缓冲机制常用于视频捕捉和实时图像处理等领域,其中数据流必须以恒定速率处理以避免丢帧。消息分发机制则广泛用于事件驱动的系统中,例如操作系统的消息循环、多线程环境下的任务调度等。将这...
在数据挖掘领域,该算法被应用于从大量噪声数据中识别有效、潜在有用且最终可理解的模式或规则。在乒乓球技战术数据挖掘方面,传统的分析方法主要依赖于统计各种技术、战术的成功率和失败率,这种方法存在工作量大、...
"BP神经网络和多元回归方法在乒乓球技战术能力分析中的应用.pdf" BP神经网络是一种基于误差反向传播算法训练的多层感知器前馈网络,理论上已证实一个三层BP网络可以满足一般函数映射的要求,并且用有限隐含层的BP...
基于乒乓数据存储机制的FPGA视频监控系统设计:为使FPGA视频监控系统的显示画面更流畅,数据存储采用兵乓机制设计。先将视频数据直接存储于SDRAM中, 采用两个异步FIFO 作为缓冲器,轮流接收SDRAM的数据,在将接收...
乒乓操作因其高效的数据处理能力,在多种场合下都有广泛的应用,包括但不限于: 1. **图像处理**:在实时图像处理中,乒乓操作可用于连续处理视频流中的每一帧,确保视频处理的连续性和流畅性。 2. **信号处理**:...
在深入探讨文章中所蕴含的知识点之前,首先要明确的是,本文主要探讨的是乒乓球比赛中技...此外,本文的实证研究表明,数据挖掘在乒乓球技战术分析中的应用是有成效的,能够为乒乓球训练和比赛提供科学的参考和指导。
数据智能在乒乓球训练中的应用是近年来科技进步在体育领域的一个创新实践。本文主要探讨了一款基于“数据智能”的乒乓球训练App的设计理念与实现方法,旨在通过数据分析提升训练效果和球员技能。 1. 数据智能的核心...
乒乓缓冲区(Ping-Pong Buffer)在数字系统设计中是一种常用的数据存储机制,尤其是在高性能、实时数据处理系统中。在Verilog HDL中实现FIFO(First In First Out,先进先出)乒乓缓冲区,可以有效地提高数据传输的...
在实际应用中,乒乓缓存结构能够有效地平衡视频编解码的恒速和DSP图像处理的变速,避免了因处理速度不匹配而导致的数据冲突问题。 乒乓缓存的设计充分考虑了实时视频处理对缓存速度和容量的需求,以及与DSP等核心...
本文探讨了一种利用FPGA内部资源实现双RAM乒乓操作的数据存储系统,该系统主要适用于实时性要求较高但数据存储深度不大的应用场景。 #### 2. FPGA简介及其在本研究中的应用 FPGA自问世以来经历了长达70年的发展...
《TTNet乒乓球游戏数据集:探索计算机视觉在游戏领域的应用》 乒乓球,作为一种深受人们喜爱的运动,近年来在电子竞技领域也逐渐崭露头角。随着人工智能和计算机视觉技术的发展,对乒乓球比赛的理解和分析已经不再...
网络上的教学视频、专业论坛和在线课程使运动员能随时随地学习和研究世界各地优秀选手的技术。同时,智能训练设备如智能乒乓球机器人,可以根据运动员的水平调整训练难度,提供个性化的练习模式,加速技术的掌握。 ...
用scratch3.0做的3D乒乓球,2.0不能用,下载用scratch打开就可以玩,快来下载吧!