CN114979794B - 一种数据发送方法及装置 - Google Patents
一种数据发送方法及装置 Download PDFInfo
- Publication number
- CN114979794B CN114979794B CN202210519073.6A CN202210519073A CN114979794B CN 114979794 B CN114979794 B CN 114979794B CN 202210519073 A CN202210519073 A CN 202210519073A CN 114979794 B CN114979794 B CN 114979794B
- Authority
- CN
- China
- Prior art keywords
- data
- value
- data block
- video
- dictionary
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 99
- 230000005540 biological transmission Effects 0.000 title claims abstract description 69
- 238000009826 distribution Methods 0.000 claims description 38
- 238000004891 communication Methods 0.000 claims description 21
- 238000004590 computer program Methods 0.000 claims description 20
- 238000003860 storage Methods 0.000 claims description 10
- 238000010586 diagram Methods 0.000 description 23
- 238000012545 processing Methods 0.000 description 20
- 230000006870 function Effects 0.000 description 12
- 230000008569 process Effects 0.000 description 11
- 238000012216 screening Methods 0.000 description 5
- 238000001914 filtration Methods 0.000 description 3
- 238000003672 processing method Methods 0.000 description 3
- 230000003993 interaction Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000004075 alteration Effects 0.000 description 1
- 230000008901 benefit Effects 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 238000010572 single replacement reaction Methods 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/60—Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client
- H04N21/63—Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
- H04N21/643—Communication protocols
- H04N21/6437—Real-time Transport Protocol [RTP]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
Abstract
本申请实施例提供了一种数据发送方法及装置,方法包括:获取待发送视频,将待发送视频拆分为至少一个数据块,根据至少一个数据块的数据值生成待发送视频对应的数据字典,根据数据字典确定至少一个数据块中每个数据块对应的替换值,向接收端发送至少一个数据块的替换值和数据字典,接收端接收来自发送端的至少一个数据块的替换值和数据字典,接收端将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。采用上述方法,可以合理有效的对数据进行压缩,从而提高数据的发送速率。
Description
技术领域
本申请属于通信技术领域,具体涉及一种数据发送方法及装置。
背景技术
流媒体是指采用流式传输的方式在互联网播放的媒体格式,又称为流式媒体。商家用一个视频传输服务器需要播放的视频编码封装成数据包传输至互联网,用户可通过客户端对互联网中相应的数据包进行视频解码并播放解码得到的视频。目前,多采用实时传输协议(Real-time Transport Protocol,RTP)传输流媒体数据,以保证传输的实时性。在流媒体视频传输过程中,对其进行逐帧解析,并逐帧发送,可能会发生视频传输延迟的问题,降低视频的发生效率。因此如何提高视频的发送效率是亟待解决的问题。
发明内容
本申请实施例提供了一种数据发送方法及装置,根据待发送视频中的每个数据块的数据值生成数据字典,并根据数据字典对待发送视频进行压缩,使其提高视频的发送效率。
第一方面,本申请实施例提供了一种数据发送方法,该方法应用于发送端,该方法包括:获取待发送视频,将待发送视频拆分为至少一个数据块;根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值;根据数据字典确定至少一个数据块中每个数据块对应的替换值;向接收端发送至少一个数据块的替换值和数据字典。
在一个可能的示例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定每个数据值对应的替换值,其中,发生概率越大的数据值对应的替换值占用空间越小。
在一个可能的示例中,每个数据值对应的替换值为索引值,索引值根据每个数据值的发生概率由高到低排序。
在一个可能的示例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定全部数据值的多个概率分布范围;若多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则根据目标数据值的替换值设置其他数据值的替换值。
在一个可能的示例中,将至少一个数据块的数据值与数据字典中的多个数据值进行匹配,确定数据块对应的替换值;方法还包括:根据至少一个数据块的数据值与数据字典中的多个数据值的匹配成功次数,为数据字典中的数据值添加标记次数;向接收端发送的数据字典中包括数据值的标记次数。
第二方面,本申请实施例提供了一种数据发送方法,该方法应用于接收端,该方法包括:接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的;将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。
在一个可能的示例中,数据字典中还包括每个数据值对应的标记次数,标记次数用于标记每个数据值的替换值用于替换数据块中数据值的次数,在还原至少一个数据块中每个数据块对应的数据值之后,方法还包括:根据数据值的还原个数与数据值的标记次数的差异值,确定待发送视频的丢包情况。
第三方面,本申请实施例提供了一种数据发送装置,应用于发送端,其中包括:
获取单元,用于获取待发送视频,将待发送视频拆分为至少一个数据块;
生成单元,用于根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值;
确定单元,用于根据数据字典确定至少一个数据块中每个数据块对应的替换值;
发送单元,用于向接收端发送至少一个数据块的替换值和数据字典。
第四方面,本申请实施例提供了一种数据发送装置,应用于接收端,其中包括:
接收单元,用于接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的;
匹配单元,用于将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。
第五方面,本申请实施例提供了一种电子设备,该设备包括处理器、存储器、通信接口,处理器、存储器和通信接口相互连接,并且完成相互间的通信工作,存储器上存储有可执行程序代码,通信接口用于进行无线通信,处理器用于调取存储器上存储的可执行程序代码,执行例如第一方面任一方法中所描述的部分或全部的步骤。
第六方面,本申请实施例提供一种计算机可读存储介质,计算机可读存储介质中存储有程序数据,程序数据在被处理器执行时,用于执行程序数据以实现本申请实施例第一方面或第二方面所描述的部分或全部步骤。
第七方面,本申请实施例提供了一种计算机程序产品,其中,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如本申请实施例第一方面或第二方面中所描述的部分或全部步骤。该计算机程序产品可以为一个软件安装包。
可以看出,本申请实施例中,获取待发送视频,将待发送视频拆分为至少一个数据块;根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值;根据数据字典确定至少一个数据块中每个数据块对应的替换值;向接收端发送至少一个数据块的替换值和数据字典。接收端接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的;接收端将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。采用上述方法,可以快速有效的对待发送视频进行压缩,从而提高视频的发送速率。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种数据发送系统的结构示意图;
图2为本申请实施例提供的一种数据发送方法的流程示意图;
图3为本申请实施例提供的一种数据字典的结构示意图;
图4为本申请实施例提供的一种待发送视频的结构示意图;
图5为本申请实施例提供的一种数据值标记方法的流程示意图;
图6为本申请实施例提供的一种替换值还原方法的流程示意图;
图7a为本申请实施例提供的一种数据发送装置的功能单元组成框图;
图7b为本申请实施例提供的另一种数据发送装置的功能单元组成框图;
图8a为本申请实施例提供的一种数据发送装置的功能单元组成框图;
图8b为本申请实施例提供的另一种数据发送装置的功能单元组成框图;
图9为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤的过程、方法、系统、产品或设备没有限定于已列出的步骤,而是可选地还包括没有列出的步骤,或可选地还包括对于这些过程、方法、产品或设备固有的其他步骤。
在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本申请的至少一个实施例中。在说明书中的各个位置出现该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。
目前,流媒体视频可以通过网络加速进行传输,以便消耗更少的带宽并保证更快的交付。接收端的输出视频将是与发送端发送的原始视频具有相同文件格式的视频,且具有与原始视频相同的视觉质量。而在流媒体视频传输过程中,对其进行逐帧解析,并逐帧发送,可能会发生延迟、丢包、丢帧等问题。
为解决上述技术,本申请实施例提供了一种数据发送方法,该方法应用于视频发送端和视频接收端,通过对待发送视频进行拆分成相同长度的数据块,再根据数据块的数据值生成待发送视频对应的数据字典,通过该数据字典将数据块的数据值替换成对应的替换值,最后将这样的数据块发送给接收端,接收端接收到数据块的替换值后,同样根据该数据字典将数据块的替换值还原为对应的数据值。通过这样的方法,可以达到降低视频发送的延迟。本申请可以应用于企业的计算机系统,例如使企业的服务器向用户发送视频都采用本申请实施例所提供的方法,如此可以有效增强企业的业务能力以及提高用户的使用体验。本申请可以适用于多种需要将视频从发送端发送到接收端的场景,包括但不限于上述提到的应用场景。
下面介绍本申请实施例所涉及的系统架构。
请参阅图1,图1为本申请实施例提供的一种数据发送系统的结构示意图,如图1所示,
该系统中包括视频信息获取装置、数据字典生成装置、视频信息发送装置以及视频信息接收装置。其中,视频信息获取装置用于获取待发送的视频信息;数据字典生成装置,用于根据该待发送的视频信息生成对应的数据字典;视频信息发送装置,用于将该待发送的视频信息拆分为相同大小的数据块,并根据该数据字典对该数据块的数据值替换为替换值,最后将该数据块的替换值及数据字典发送到接收端;视频信息接收装置,用于接收发送端发送的数据块的替换值和数据字典,根据该数据字典对数据块的数据值进行还原,最终根据该数据块的数据值得到待发送视频。
上述数据发送系统的运作工程具体为:视频信息获取装置获取待发送的视频信息,数据字典生成装置根据该待发送的视频信息生成数据字典,视频信息发送装置将待发送的视频信息进行拆分处理为多个数据块,并根据数据字典将多个数据块的数据值替换为对应的替换值,最后将数据块的替换值及数据字典发送给视频信息接收装置,视频信息接收装置接收到数据块的替换值和数据字典后,根据数据字典将数据块的替换值还原为对应的数据值,并根据数据块的数据值获得待发送的视频信息。
下面对数据发送方法进行具体说明:
请参阅图2,图2为本申请实施例提供的一种数据发送方法的流程示意图,如图2所示,该方法包括如下步骤:
步骤201,发送端获取待发送视频,将待发送视频拆分为至少一个数据块。
其中,待发送视频是指上传到发送端服务器中需要通过发送端发送到接收端的视频文件,待发送视频可以是历史上传视频,也可以是实时直播视频,其视频文件的文件格式可以是MP4格式、音频视频交错格式(Audio Video Interleaved,简称:AVI)、Windows媒体视频格式(Windows Media Video,简称:WMV)或MKV文件格式(MKV file format,简称:MKV)等。将待发送视频拆分为至少一个数据块是指将待发送视频拆分为相同大小的至少一个数据块。数据块的大小可以根据发送端与接收端采用的传输协议确定。可选地,假设发送端与接收端采用实时传输协议(Real-time Transport Protocol,简称:RTP)发送,RTP包的大小可以为16字节(bytes),则视频文件拆分成的数据块的大小可以是16字节。
步骤202,发送端根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值。
其中,数据字典是根据每次需要发送的待发送视频来生成的。具体是由发送端将待发送视频拆分成的相同大小的至少一个数据块,通过确定至少一个数据块的数据值的发生概率或者分布概率等来确定每个数据值对应的替换值,从而获得数据字典,数据值是通过数据块的原始二进制值通过二进制转十进制的方法得到的数值。这样的数据字典中的所有的数据值和对应的替换值在进行视频发送的时候都会使用到,合理的利用了资源。
下面通过图3对数据字典进行具体说明:
示例性地,请参见图3,图3为本申请实施例提供的一种数据字典的结构示意图。如图3所示,包括数据字典30,数据字典30中包括数据块的数据值301以及数据值301对应的替换值302。其中,每个不同的数据值301,或者一个范围的数据值(其中包括多个数据值,例数据值N~N+t为一个数据值范围)301都有唯一对应的替换值302,当至少一个数据块的数据值与数据字典30进行匹配时,至少一个数据块的数据值会跟数据字典30中相同的数据值301进行匹配,从而确定与数据值301对应的替换值302。
下面对数据字典的生成过程进行具体说明:
在一个可行的实施例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定每个数据值对应的替换值,其中,发生概率越大的数据值对应的替换值占用空间越小。
其中,将待发送视频拆分成相同大小的多个数据块后,得到多个数据块的数据值,这些数据值都是在一个数据值范围之内的,数据值的范围由数据块的大小而定。示例性地,若该数据块的大小为16字节,一字节等同于8位二进制位,那么该数据块的数据值可以是128位二进制数中的任何一个,即该数据块的数据值的范围为[0,(2^128)-1]。
得到多个数据块的数据值之后,将多个数据块的数据值进行整理,得到每个不一样的数据值及该数据值对应的数量,根据每个不一样的数据值对应的数量及总的数据值数量的比值确定每个数据值的发生概率。发生概率越高的数据值,其数据值在待发送视频中的数量越多,这时使用替换值越小的值将其进行代替,可以使整个待发送视频的占用内存更小。因此,得到每个数据值的发生概率后,会根据发生概率的大小来进行确定不同大小的替换值,发生概率越大的数据值,其对应替换值越小。
在本申请实施例中,根据至少一个数据块中每个数据块对应的数据值,确定每个数据值在待发送视频中全部数据值中的待发送概率,根据每个数据值的发送概率大小来确定每个数据值对应的替换值,发送概率越大的数据值,对应的替换值的概率越小。这样的话,可以在发送视频的过程中有效的减小待发送视频的占用内存大小,提高视频发送的速度。
在一个可行的实施例中,每个数据值对应的替换值为索引值,索引值根据每个数据值的发生概率由高到低排序。
其中,上述提到数据值对应的替换值是根据数据值的发生概率大小来确定的,发生概率越大的数据值,其对应的替换值越小,而这里的替换值可以是索引值,即根据数据值发生概率大小由高到底来进行排序。
在本申请实施例中,数据值对应的替换值可以是索引值,即根据数据值的发生概率大小由高到低来进行排序。这样的话,可以高效的得到了最小的部分替换值,将待发送视频的占用内存最小化。
示例性地,请参见图4,图4为本申请实施例提供的一种待发送视频的结构示意图,如图4所示,图中包括待发送视频40。其中,待发送视频40被拆分为6个相同大小的数据块41,待发送视频40中的6个数据块41的数据值分别为990、991、980、990、991、990。数据值对应的替换值的是根据数据值的发生概率大小来确定的。根据六个数据块41中不一样的数据值的数量和数据值总数的比值得到每个不一样的数据值对应的发生概率为:990(50%)、991(33%)和980(17%)。三种数据值的发生概率大小排序为n(990)>n(991)>n(980)(n指发生概率)。由于数据值的发生概率越大,其对应的替换值就越小,则可以设置数据值990、991和980的替换值分别为索引值1、2和3。其中,索引值1可以表示为二进制数值1,索引值2可以表示为二进制数值10,索引值3可以表示为二进制数值11,则P(1)<P(2)<P(3),其中P表示索引值占用的空间大小。索引值增大,占用的空间(阶梯式)增大。
除了上述生成数据字典的方法之外,还可以采用下述方法:
在一个可行的实施例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定全部数据值的多个概率分布范围;若多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则根据目标数据值的替换值设置其他数据值的替换值。
其中,类似于上述方法,首先还是需要得到待发送视频拆分成的至少一个数据块的数据值,根据每个不一样的数据值对应的数量及总的数据值数量的比值确定每个数据值的发生概率。将数据值按照值的大小进行规则排序,然后根据预设的数据值分布范围来对数据值进行划分。其中预设的数据值分布范围可以指每个范围包括的数据值个数,例如每个数据值分布范围中包括N个数据值;也可以指每个范围包括的数据值跨度,例如每个数据值分布范围中包括[N,N+t]的数据值。将划分后的各个分布范围内的数据值的发生概率进行统计,并对其分布范围内的数据值发生概率进行发生概率总和大小筛选及发生概率最大值与其他值的差值大小筛选,具体是:单个分布范围内的全部的数据值的发生概率总和小于第一预设阈值,以及单个分布范围内存在的发生概率最高的数据值与其他数据值的发生概率差值大于第二预设阈值这两个筛选条件。而对于满足这两个筛选条件的某一分布范围的数据值,该分布范围内的数据值对应的替换值的设置方式跟其他不满足这两个筛选条件的分布范围内的数据值对应的替换值的设置方式会有所不同。
对于满足这两个筛选条件的某一分布范围的数据值,该分布范围内的除发生概率最高的数据值之外的其他数据值的替换值根据该发生概率最高的数据值的替换值进行设置。对于其他数据值的替换值的设置可以根据偏移值的形式来进行设置。对于发生概率最高的数据值的替换值的设置,可以与其他满足上述双层条件的发生概率最高的数据值以及不满足上述双层条件的分布范围内的数据值一起设置,即根据数据值的发生概率大小来设置对应的替换值,发生概率越大的数据值,其对应的替换值越小。与上述相同的,该替换值可以是索引值,即根据数据值发生概率大小由高到底来进行排序。
示例性地,按照本申请实施例所讲述的方法得到第一范围内的数据值A、B和C,第二范围内的数据值D、E和F。其中数据值A的发生概率是18%,数据值B的发生概率是12%,数据值C的发生概率是10%,数据值D的发生概率是20%,数据值E的发生概率是3%,数据值F的发生概率是4%。第一范围内的全部数据值的发生概率之和为40%,第二范围内的全部数据值的发生概率和为27%。这时进行第一层筛选,若第一预设阈值为30%,则第一范围内的数据值不满足该条件,第二范围内的数据值满足该条件。将第二范围内的数据值进行第二层筛选,若第二预设阈值为10%,第二范围内的发生概率最大的数据值为D,且数据值D的发生概率与数据值E和数据值F的发生概率差值都大于10%,那么第二范围内的数据值满足第二层筛选条件,数据值E和数据值F的替换值就需要根据数据值D的替换值来进行设置。
对于数据值A、B、C和D的替换值,则根据发生概率大小来进行设置,发生概率越大,替换值越小。若此时数据值D的替换值是1,判断数据值E和数据值F的发生概率大小,得到数据值F的发生概率大于数据值E的发生概率,那么数据值F的替换值可以是1+1(偏移值),数据值E的替换值可以是1+2(偏移值)。其中1+1不会影响替换值2的使用,也即替换值2可以用于作为其他数据值的替换值。上述示例只是为了便于对本申请实施例进行说明,不应造成对本申请方案的限制。
本申请实施例所讲述的方法与上述申请实施例的方法可以是补充关系,也可以是替换关系。对于不满足该双层条件分布范围内的数据值对应的替换值的设置方法跟上述申请实施例中所讲述的替换值的设置方法是类似的。
在本申请实施例中,利用数据值的大小分布范围的方法来对各分布范围内的数据值的发生概率进行统计,并在其中筛选出发生概率总数较小,且存在该分布范围内的最大发生概率与其他发生概率的差值较大,这样的话,其他发生概率较小的数据值又使用按照发生概率大小来定替换值大小的方式来生成替换值的话,生成的替换值也会很大,而使用偏移值的方式,可以使这些数据值的替换值相对较小。
步骤203,发送端根据数据字典确定至少一个数据块中每个数据块对应的替换值。
其中,由于数据字典是根据待发送视频拆分成的至少一个数据块中的数据值进行生成的,那么数据字典中记录了至少一个数据块中每个数据块的替换值。根据每个数据块的数据值与数据字典中的数据值进行匹配,确定数据字典中的数据值对应的替换值。
步骤204,发送端向接收端发送至少一个数据块的替换值和数据字典。
其中,通过上述方法将数据块的数据值替换成数据字典中对应的替换值后,就将至少一个数据块的替换值发送至接收端。发送至少一个数据块的替换值至接收端一般是采用用户数据报协议(User Datagram Protocol,UDP)来实现。UDP是一个无连接的传输协议,为应用程序提供了一种无需建立连接就可以发送封装的网络协议(Internet Protocol,IP)数据包的方法。
步骤205,接收端接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的。
其中,接收端接收到发送端发送的至少一个数据块的替换值和数据字典后,需要通过接收到的该数据字典将其数据块的替换值还原为数据值,并对其进行解码成为原发送视频。
步骤206,接收端将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。
其中,将数据块的替换值还原为数据值跟上述数据值替换为替换值的方法相类似,借用数据字典的存储的数据值和对应的替换值,将数据块的替换值与数据字典中的替换值进行匹配,从而确定数据字典中替换值对应的数据值。将至少一个数据块中的数据值进行还原后,根据每个数据块对应的数据值获得待发送视频。示例性的,以上述图3所示的数据字典30为例,将至少一个数据块的替换值与数据字典30进行匹配,实则是跟数据字典30中的替换值302进行匹配,当至少一个数据块的替换值匹配到数据字典30中相同的替换值1,也就可以得到该替换值1对应的数据值1。
除此之外,由于发送至少一个数据块的替换值至接收端一般是采用的UDP协议,而如果数据从发送端到接收端的发送过程中存在数据丢失,UDP本身并不会作出任何检测或提示。那么就会存在一个问题,即使用UDP进行数据的发送会面临丢包的风险。
为了解决这个问题,本申请实施例在发送端发送至少一个数据块的替换值至接收端时对其替换值的发送次数添加了标记次数,接收端通过该标记次数可以确定数据块的丢包情况。
下面对该方法进行具体说明:
步骤203a,将至少一个数据块的数据值与数据字典中的多个数据值进行匹配,确定数据块对应的替换值,根据至少一个数据块的数据值与数据字典中的多个数据值的匹配成功次数,为数据字典中的数据值添加标记次数。
步骤204a,向接收端发送至少一个数据块的替换值和数据字典。
步骤205a,接收端接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的。
步骤206a,将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。并根据数据值的还原个数与数据值的标记次数的差异值,确定待发送视频的丢包情况。
在该方法中,步骤201~202即前文所描述的内容。针对上述步骤203~206的内容,可替换为该步骤203a~206a的内容。也即本申请实施例在上述步骤203~206内容的基础上增加了对标记次数的添加,以及根据标记次数和替换值还原次数来确定待发送视频的丢包情况。
数据值的标记次数是根据至少一个数据块的数据值与数据字典中的多个数据值进行匹配时的匹配成功次数来确定的。即某一数据值对应的标记次数等于该数据值对应的匹配次数。示例性地,请参加图5,图5为本申请实施例提供的一种数据值标记方法的流程示意图。如图5所示,图5包括数据字典51和三个数据值52,将数据值52与数据字典51中的数据值进行匹配,可以看到,三个数据值52分别为数据值4、数据值4和数据值5,而数据字典51中也包括数据值4和数据值5以及其分别对应的替换值4和替换值5,那么数据字典51中的数据值4可以匹配成功两次,而数据字典51中的数据值5可以匹配成功1次。根据匹配成功次数对匹配成功的数据值添加标记次数,得到完成添加标记次数后的数据字典53。
将至少一个数据块的替换值和数据字典发送给接收端后,接收端需要根据数据字典将至少一个数据块的替换值还原为对应的数据值。而在还原过程中,通过还原个数和数据值的标记次数之间的差值可以得到待发送视频的丢包情况,丢包情况包括是否发生丢包和丢包数量,差值的大小即为丢包数量。且还原个数和标记次数都是针对单个替换值和数据值而言,那么可以针对其差值确定丢失的具体的替换值,以及该替换值的丢失数量。借此反馈给发送端,发送端就可以将丢失的替换值重新发送给接收端。
示例性地,请参加图6,图6为本申请实施例提供的一种替换值还原方法的流程示意图。如图6所示,图6包括接收端接收到的数据字典53和的两个替换值61,两个替换值61分别是替换值4和替换值5,根据数据字典53对两个替换值61进行还原,从而确定替换值的还原次数532,根据数据值的标记次数531与还原次数532进行差值计算,得到数据值4的标记次数2次与替换值4的还原次数1次的差值为1,数据值5的标记次数1次与替换值5的还原次数1次的差值为0,可以确定待发送视频的丢包情况为发生丢包,其中丢包个数为1个,且差值1是发生在替换值4上,所以可以确定丢失的为一个替换值4。这时接收端就可以反馈给发送端丢失的为一个替换值4,发送端接收到接收端的反馈可以将替换值4重新发送给接收端。
在本申请实施例中,在至少一个数据块的数据值与数据字典进行匹配的时候针对匹配成功次数对数据值添加标记次数,在将至少一个数据块的替换值和数据字典发送给接收端后,接受端通过数据字典对至少一个数据块的替换值进行还原,并根据还原次数确定丢包情况。这样的话,可以快速判断出视频发送过程中的详细丢包情况,并且可以快速反馈给发送端让发送端能够及时处理,有效的解决了视频发送过程中的存在的丢包问题。
可以看出,本申请实施例中,获取待发送视频,将待发送视频拆分为至少一个数据块;根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值;根据数据字典确定至少一个数据块中每个数据块对应的替换值;向接收端发送至少一个数据块的替换值和数据字典。接收端接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的;接收端将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。采用上述方法,可以合理的对数据进行压缩,从而提高数据的发送速率。
与上述所示的实施例一致的,请参阅图7a,图7a是本申请实施例提供的一种数据发送装置的功能单元组成框图,装置应用于发送端,发送端与接收端通信连接,如图7a所示,数据发送装置70包括:获取单元701,用于获取待发送视频,将待发送视频拆分为至少一个数据块;生成单元702,用于根据至少一个数据块的数据值生成待发送视频对应的数据字典,数据字典中包括多个数据值,以及多个数据值中每个数据值对应的替换值;确定单元703,用于根据数据字典确定至少一个数据块中每个数据块对应的替换值;发送单元704,用于向接收端发送至少一个数据块的替换值和数据字典。
在一个可能的示例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定每个数据值对应的替换值,其中,发生概率越大的数据值对应的替换值占用空间越小。
在一个可能的示例中,每个数据值对应的替换值为索引值,索引值根据每个数据值的发生概率由高到低排序。
在一个可能的示例中,确定至少一个数据块中每个数据块对应的数据值;确定每个数据值在待发送视频的全部数据值中的发生概率;根据每个数据值的发生概率确定全部数据值的多个概率分布范围;若多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则根据目标数据值的替换值设置其他数据值的替换值。
在一个可能的示例中,将至少一个数据块的数据值与数据字典中的多个数据值进行匹配,确定数据块对应的替换值;方法还包括:根据至少一个数据块的数据值与数据字典中的多个数据值的匹配成功次数,为数据字典中的数据值添加标记次数;向接收端发送的数据字典中包括数据值的标记次数。
可以理解的是,由于方法实施例与装置实施例为相同技术构思的不同呈现形式,因此,本申请中方法实施例部分的内容应同步适配于装置实施例部分,此处不再赘述。
在采用集成的单元的情况下,如图7b所示,图7b是本申请实施例提供的另一种数据发送装置的功能单元组成框图。在图7b中,数据发送装置71包括:处理模块712和通信模块711。处理模块712用于对数据发送装置的动作进行控制管理,例如,执行获取单元701、生成单元702、确定单元703和发送单元704的步骤,和/或用于执行本文所描述的技术的其它过程。通信模块711用于支持数据发送装置与其他设备之间的交互。如图7b所示,数据发送装置还可以包括存储模块713,存储模块713用于存储数据发送装置的程序代码和数据。
其中,处理模块712可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块711可以是收发器、RF电路或通信接口等。存储模块713可以是存储器。
其中,上述方法实施例涉及的各场景的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。上述数据发送装置71均可执行上述图2所示的数据处理方法。
与上述所示的实施例一致的,请参阅图8a,图8a是本申请实施例提供的一种数据发送装置的功能单元组成框图,装置应用于接收端,发送端与接收端通信连接,如图8a所示,数据发送装置80包括:接收单元801,用于接收来自发送端的至少一个数据块的替换值和数据字典,数据字典是根据待发送视频的至少一个数据块的数据值生成的;匹配单元802,用于将至少一个数据块的替换值与数据字典进行匹配,还原至少一个数据块中每个数据块对应的数据值,根据每个数据块对应的数据值获得待发送视频。
在一个可能的示例中,数据字典中还包括每个数据值对应的标记次数,标记次数用于标记每个数据值的替换值用于替换数据块中数据值的次数,在还原至少一个数据块中每个数据块对应的数据值之后,方法还包括:根据数据值的还原个数与数据值的标记次数的差异值,确定待发送视频的丢包情况。
可以理解的是,由于方法实施例与装置实施例为相同技术构思的不同呈现形式,因此,本申请中方法实施例部分的内容应同步适配于装置实施例部分,此处不再赘述。
在采用集成的单元的情况下,如图8b所示,图8b是本申请实施例提供的另一种数据发送装置的功能单元组成框图。在图8b中,数据发送装置81包括:处理模块812和通信模块811。处理模块812用于对数据发送装置的动作进行控制管理,例如,接收单元801和匹配单元802的步骤,和/或用于执行本文所描述的技术的其它过程。通信模块811用于支持数据发送装置与其他设备之间的交互。如图8b所示,数据发送装置还可以包括存储模块813,存储模块813用于存储数据发送装置的程序代码和数据。
其中,处理模块812可以是处理器或控制器,例如可以是中央处理器(CentralProcessing Unit,CPU),通用处理器,数字信号处理器(Digital Signal Processor,DSP),ASIC,FPGA或者其他可编程逻辑器件、晶体管逻辑器件、硬件部件或者其任意组合。其可以实现或执行结合本申请公开内容所描述的各种示例性的逻辑方框,模块和电路。处理器也可以是实现计算功能的组合,例如包含一个或多个微处理器组合,DSP和微处理器的组合等等。通信模块811可以是收发器、RF电路或通信接口等。存储模块813可以是存储器。
其中,上述方法实施例涉及的各场景的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。上述数据发送装置81均可执行上述图2所示的数据处理方法。
上述实施例,可以全部或部分地通过软件、硬件、固件或其他任意组合来实现。当使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行计算机指令或计算机程序时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以为通用计算机、专用计算机、计算机网络、或者其他可编程装置。计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线或无线方式向另一个网站站点、计算机、服务器或数据中心进行传输。计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集合的服务器、数据中心等数据存储设备。可用介质可以是磁性介质(例如,软盘、硬盘、磁带)、光介质(例如,DVD)、或者半导体介质。半导体介质可以是固态硬盘。
图9是本申请实施例提供的一种电子设备的结构框图。如图9所示,电子设备900可以包括一个或多个如下部件:处理器901、与处理器901耦合的存储器902,其中存储器902可存储有一个或多个计算机程序,一个或多个计算机程序可以被配置为由一个或多个处理器901执行时实现如上述各实施例描述的方法。其中,电子设备900可以是上述发送端和/或接收端。
处理器901可以包括一个或者多个处理核。处理器901利用各种接口和线路连接整个电子设备900内的各个部分,通过运行或执行存储在存储器902内的指令、程序、代码集或指令集,以及调用存储在存储器902内的数据,执行电子设备900的各种功能和处理数据。可选地,处理器901可以采用数字信号处理(Digital Signal Processing,DSP)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)、可编程逻辑阵列(ProgrammableLogicArray,PLA)中的至少一种硬件形式来实现。处理器901可集成中央处理器(CentralProcessing Unit,CPU)、图像处理器(Graphics Processing Unit,GPU)和调制解调器等中的一种或几种的组合。其中,CPU主要处理操作系统、用户界面和应用程序等;GPU用于负责显示内容的渲染和绘制;调制解调器用于处理无线通信。可以理解的是,上述调制解调器也可以不集成到处理器901中,单独通过一块通信芯片进行实现。
存储器902可以包括随机存储器(Random Access Memory,RAM),也可以包括只读存储器(Read-Only Memory,ROM)。存储器902可用于存储指令、程序、代码、代码集或指令集。存储器902可包括存储程序区和存储数据区,其中,存储程序区可存储用于实现操作系统的指令、用于实现至少一个功能的指令(比如触控功能、声音播放功能、图像播放功能等)、用于实现上述各个方法实施例的指令等。存储数据区还可以存储电子设备900在使用中所创建的数据等。
可以理解的是,电子设备900可包括比上述结构框图中更多或更少的结构元件,例如,包括电源模块、物理按键、WiFi(Wireless Fidelity,无线保真)模块、扬声器、蓝牙模块、传感器等,在此不进行限定。
本申请实施例提供了一种计算机可读存储介质,其中,计算机可读存储介质中存储有程序数据,该程序数据在被处理器执行时,用于执行上述方法实施例中记载的任何一种数据发送方法的部分或全部步骤。
本申请实施例还提供一种计算机程序产品,上述计算机程序产品包括存储了计算机程序的非瞬时性计算机可读存储介质,上述计算机程序可操作来使计算机执行如上述方法实施例中记载的任何一种数据发送方法的部分或全部步骤。该计算机程序产品可以为一个软件安装包,上述计算机包括接收端和/或发送端。
需要说明的是,对于前述的任一种数据发送方法的方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本申请并不受所描述的动作顺序的限制,因为依据本申请,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作并不一定是本申请所必须的。
尽管在此结合各实施例对本申请进行了描述,然而,在实施所要求保护的本申请过程中,本领域技术人员通过查看附图、公开内容、以及所附权利要求书,可理解并实现所公开实施例的其他变化。在权利要求中,“包括”(comprising)一词不排除其他组成部分或步骤,“一”或“一个”不排除多个的情况。相互不同的从属权利要求中记载了某些措施,但这并不表示这些措施不能组合起来产生良好的效果。
本领域普通技术人员可以理解上述任一种数据发送方法的方法实施例的各种方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,该程序可以存储于计算机可读存储器中,存储器可以包括:闪存盘、只读存储器(英文:Read-Only Memory,简称:ROM)、随机存取器(英文:Random Access Memory,简称:RAM)、磁盘或光盘等。
以上对本申请实施例进行了详细介绍,本文中应用了具体个例对本申请一种数据发送方法及装置的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请一种数据发送方法及装置的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本申请的限制。
本申请是参照本申请实施例的方法、硬件产品和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
可以理解的是,凡是被控制或者被配置以用于执行本申请一种数据发送方法的方法实施例所描述的流程图的处理方法的产品,如上述流程图的终端以及计算机程序产品,均属于本申请所描述的相关产品的范畴。
显然,本领域的技术人员可以对本申请提供的一种数据发送方法及装置进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种数据发送方法,其特征在于,应用于发送端,所述方法包括:
获取待发送视频,将所述待发送视频拆分为至少一个数据块;
根据所述至少一个数据块的数据值生成所述待发送视频对应的数据字典,所述数据字典中包括多个数据值,以及所述多个数据值中每个数据值对应的替换值;
根据所述数据字典确定所述至少一个数据块中每个数据块对应的替换值;
向接收端发送所述至少一个数据块的替换值和所述数据字典;所述根据所述至少一个数据块的数据值生成所述待发送视频对应的数据字典,包括:
确定所述至少一个数据块中每个数据块对应的数据值;
确定每个数据值在所述待发送视频的全部数据值中的发生概率;
根据所述每个数据值的发生概率确定全部数据值的多个概率分布范围;
若所述多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则根据所述目标数据值的替换值设置所述其他数据值的替换值。
2.根据权利要求1所述的方法,其特征在于,所述根据所述至少一个数据块的数据值生成所述待发送视频对应的数据字典,包括:
确定所述至少一个数据块中每个数据块对应的数据值;
确定每个数据值在所述待发送视频的全部数据值中的发生概率;
根据所述每个数据值的发生概率确定所述每个数据值对应的替换值,其中,发生概率越大的数据值对应的替换值占用空间越小。
3.根据权利要求2所述的方法,其特征在于,所述每个数据值对应的替换值为索引值,所述索引值根据所述每个数据值的发生概率由高到低排序。
4.根据权利要求1-3任一项所述的方法,其特征在于,根据所述数据字典确定所述至少一个数据块中每个数据块对应的替换值,包括:
将所述至少一个数据块的数据值与数据字典中的多个数据值进行匹配,确定所述数据块对应的替换值;
所述方法还包括:根据所述至少一个数据块的数据值与所述数据字典中的多个数据值的匹配成功次数,为所述数据字典中的数据值添加标记次数;
向所述接收端发送的所述数据字典中包括所述数据值的标记次数。
5.一种数据发送方法,其特征在于,应用于接收端,所述方法包括:
接收来自发送端的至少一个数据块的替换值和数据字典,所述数据字典是所述发送端根据待发送视频的至少一个数据块的数据值生成的,具体包括:所述发送端确定所述至少一个数据块中每个数据块对应的数据值;所述发送端确定每个数据值在所述待发送视频的全部数据值中的发生概率;所述发送端根据所述每个数据值的发生概率确定全部数据值的多个概率分布范围;若所述多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则所述发送端根据所述目标数据值的替换值设置所述其他数据值的替换值;
将所述至少一个数据块的替换值与数据字典进行匹配,还原所述至少一个数据块中每个数据块对应的数据值,根据所述每个数据块对应的数据值获得所述待发送视频。
6.根据权利要求5所述的方法,其特征在于,所述数据字典中还包括每个数据值对应的标记次数,所述标记次数用于标记每个数据值的替换值用于替换数据块中数据值的次数,在还原所述至少一个数据块中每个数据块对应的数据值之后,所述方法还包括:
根据数据值的还原个数与所述数据值的标记次数的差异值,确定所述待发送视频的丢包情况。
7.一种数据发送装置,其特征在于,应用于发送端,所述装置包括:
获取单元,用于获取待发送视频,将所述待发送视频拆分为至少一个数据块;
生成单元,用于根据所述至少一个数据块的数据值生成所述待发送视频对应的数据字典,所述数据字典中包括多个数据值,以及所述多个数据值中每个数据值对应的替换值;
确定单元,用于根据所述数据字典确定所述至少一个数据块中每个数据块对应的替换值;
发送单元,用于向接收端发送所述至少一个数据块的替换值和所述数据字典;
所述生成单元,具体用于:确定所述至少一个数据块中每个数据块对应的数据值;确定每个数据值在所述待发送视频的全部数据值中的发生概率;根据所述每个数据值的发生概率确定全部数据值的多个概率分布范围;若所述多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则根据所述目标数据值的替换值设置所述其他数据值的替换值。
8.一种数据发送装置,其特征在于,应用于接收端,所述装置包括:
接收单元,用于接收来自发送端的至少一个数据块的替换值和数据字典,所述数据字典是所述发送端根据待发送视频的至少一个数据块的数据值生成的,具体包括:所述发送端确定所述至少一个数据块中每个数据块对应的数据值;所述发送端确定每个数据值在所述待发送视频的全部数据值中的发生概率;所述发送端根据所述每个数据值的发生概率确定全部数据值的多个概率分布范围;若所述多个概率分布范围中,目标概率分布范围内的全部数据值的发生概率总和小于第一预设阈值,且目标数据值的发生概率与其他数据值的发生概率差值大于第二预设阈值,则所述发送端根据所述目标数据值的替换值设置所述其他数据值的替换值;
匹配单元,用于将所述至少一个数据块的替换值与数据字典进行匹配,还原所述至少一个数据块中每个数据块对应的数据值,根据所述每个数据块对应的数据值获得所述待发送视频。
9.一种电子装置,其特征在于,所述装置包括:
处理器、存储器、通信接口,所述处理器、所述存储器和所述通信接口相互连接,并且完成相互间的通信工作;
所述存储器上存储有可执行程序代码,所述通信接口用于进行无线通信;
所述处理器用于调取所述存储器上存储的所述可执行程序代码,执行如权利要求1-4或权利要求5-6任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,存储用于电子数据交换的计算机程序,其中,所述计算机程序使得计算机执行如权利要求1-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210519073.6A CN114979794B (zh) | 2022-05-13 | 2022-05-13 | 一种数据发送方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210519073.6A CN114979794B (zh) | 2022-05-13 | 2022-05-13 | 一种数据发送方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114979794A CN114979794A (zh) | 2022-08-30 |
CN114979794B true CN114979794B (zh) | 2023-11-14 |
Family
ID=82984122
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210519073.6A Active CN114979794B (zh) | 2022-05-13 | 2022-05-13 | 一种数据发送方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114979794B (zh) |
Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092494A (ja) * | 1999-09-24 | 2001-04-06 | Mitsubishi Electric Corp | 音声認識装置、音声認識方法および音声認識プログラム記録媒体 |
DE10015859A1 (de) * | 2000-03-30 | 2001-10-11 | Gunthard Born | Verfahren zu einer grammatische Inhalte bezogenen Kommunikation in natürlichen Sprachen und Einrichtung zur rechnergestützten Durchführung dieses Verfahrens |
JP2004030048A (ja) * | 2002-06-24 | 2004-01-29 | Nippon Digital Kenkyusho:Kk | 文字認識辞書、文字認識辞書作成方法及び文字認識方法 |
CA2825681A1 (en) * | 2013-08-30 | 2015-02-28 | Raf Technology, Inc. | Object identification and authentication |
CN107643906A (zh) * | 2016-07-22 | 2018-01-30 | 华为技术有限公司 | 数据处理方法及装置 |
CN108599897A (zh) * | 2018-04-09 | 2018-09-28 | 珠海格力电器股份有限公司 | 设备的数据处理方法和装置 |
CN111464635A (zh) * | 2020-03-31 | 2020-07-28 | 新华三信息安全技术有限公司 | 一种字典索引传输方法及装置 |
CN111478938A (zh) * | 2020-02-29 | 2020-07-31 | 新华三信息安全技术有限公司 | 一种数据冗余消除方法及装置 |
CN113987229A (zh) * | 2021-10-12 | 2022-01-28 | 深圳智慧林网络科技有限公司 | 数据压缩方法及装置、存储介质 |
CN114040030A (zh) * | 2021-11-18 | 2022-02-11 | 深圳智慧林网络科技有限公司 | 一种基于预设规则的数据压缩方法、装置、设备和介质 |
CN114389972A (zh) * | 2022-02-22 | 2022-04-22 | 清华大学 | 一种丢包检测方法及装置、存储介质 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8542135B2 (en) * | 2011-11-24 | 2013-09-24 | International Business Machines Corporation | Compression algorithm incorporating automatic generation of a bank of predefined huffman dictionaries |
TWI527408B (zh) * | 2014-11-11 | 2016-03-21 | 國立交通大學 | 具動態編碼之無線網路傳輸壓縮方法 |
EP3767832A1 (en) * | 2019-07-15 | 2021-01-20 | Use-256 B.V. | Permutation-based coding for data storage and data transmission |
-
2022
- 2022-05-13 CN CN202210519073.6A patent/CN114979794B/zh active Active
Patent Citations (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001092494A (ja) * | 1999-09-24 | 2001-04-06 | Mitsubishi Electric Corp | 音声認識装置、音声認識方法および音声認識プログラム記録媒体 |
DE10015859A1 (de) * | 2000-03-30 | 2001-10-11 | Gunthard Born | Verfahren zu einer grammatische Inhalte bezogenen Kommunikation in natürlichen Sprachen und Einrichtung zur rechnergestützten Durchführung dieses Verfahrens |
JP2004030048A (ja) * | 2002-06-24 | 2004-01-29 | Nippon Digital Kenkyusho:Kk | 文字認識辞書、文字認識辞書作成方法及び文字認識方法 |
CA2825681A1 (en) * | 2013-08-30 | 2015-02-28 | Raf Technology, Inc. | Object identification and authentication |
CN107643906A (zh) * | 2016-07-22 | 2018-01-30 | 华为技术有限公司 | 数据处理方法及装置 |
CN108599897A (zh) * | 2018-04-09 | 2018-09-28 | 珠海格力电器股份有限公司 | 设备的数据处理方法和装置 |
CN111478938A (zh) * | 2020-02-29 | 2020-07-31 | 新华三信息安全技术有限公司 | 一种数据冗余消除方法及装置 |
CN111464635A (zh) * | 2020-03-31 | 2020-07-28 | 新华三信息安全技术有限公司 | 一种字典索引传输方法及装置 |
CN113987229A (zh) * | 2021-10-12 | 2022-01-28 | 深圳智慧林网络科技有限公司 | 数据压缩方法及装置、存储介质 |
CN114040030A (zh) * | 2021-11-18 | 2022-02-11 | 深圳智慧林网络科技有限公司 | 一种基于预设规则的数据压缩方法、装置、设备和介质 |
CN114389972A (zh) * | 2022-02-22 | 2022-04-22 | 清华大学 | 一种丢包检测方法及装置、存储介质 |
Non-Patent Citations (1)
Title |
---|
基于字典学习的水下单光子视频传输联合编码研究;戴伟辉;《中国优秀硕士学位论文全文数据库 信息科技辑》;1-63 * |
Also Published As
Publication number | Publication date |
---|---|
CN114979794A (zh) | 2022-08-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20210089492A1 (en) | Rdma data sending and receiving methods, electronic device, and readable storage medium | |
CN110690943B (zh) | 数据编码方法、解码方法、编解码方法、设备及存储介质 | |
US9092319B2 (en) | State memory management, wherein state memory is managed by dividing state memory into portions each portion assigned for storing state information associated with a specific message class | |
CN108200447A (zh) | 直播数据传输方法、装置、电子设备、服务器及存储介质 | |
KR102434958B1 (ko) | 부분 세그먼트에 대한 표시 | |
CN111371887B (zh) | 物联网日志传输方法、客户端、服务端、设备及存储介质 | |
CN112817602A (zh) | 一种json格式数据发送、接收方法、设备及介质 | |
CN109120687A (zh) | 数据包发送方法、装置、系统、设备及存储介质 | |
CN110086703B (zh) | 一种基于tcp协议的消息传输方法及装置 | |
US20190182304A1 (en) | Universal messaging protocol for limited payload size | |
KR102446256B1 (ko) | 부분 세그먼트에 대한 표시 | |
CN114979794B (zh) | 一种数据发送方法及装置 | |
WO2021036189A1 (zh) | Rdma数据发送及接收方法、电子设备及可读存储介质 | |
CN114979093B (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 | |
CN114979707B (zh) | 一种数据发送方法及装置 | |
CN114979094B (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 | |
CN115643310B (zh) | 一种压缩数据的方法、装置和系统 | |
CN101257500A (zh) | 媒体数据处理方法、装置及系统 | |
CN114666776A (zh) | 数据发送方法、装置、设备和可读存储介质 | |
US10742783B2 (en) | Data transmitting apparatus, data receiving apparatus and method thereof having encoding or decoding functionalities | |
CN114979092B (zh) | 一种基于rtp的数据传输方法、装置、设备和介质 | |
CN104661049A (zh) | 传输流的传输方法和系统、流媒体服务器和终端 | |
WO2024067430A1 (zh) | 一种传输方法、系统及相关装置 | |
CN112597082B (zh) | 总线的数据传输方法及电子设备 | |
US9722921B2 (en) | Encoding method and decoding method for a list of identifiers, associated computer program products, transmitter and receiver applying said methods |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |