CN113573098B - 一种图像传输方法、装置及电子设备 - Google Patents
一种图像传输方法、装置及电子设备 Download PDFInfo
- Publication number
- CN113573098B CN113573098B CN202110763649.9A CN202110763649A CN113573098B CN 113573098 B CN113573098 B CN 113573098B CN 202110763649 A CN202110763649 A CN 202110763649A CN 113573098 B CN113573098 B CN 113573098B
- Authority
- CN
- China
- Prior art keywords
- image component
- path
- video image
- data
- image
- 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
Images
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/234—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs
- H04N21/23424—Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement
Abstract
本申请提供一种图像传输方法、装置及电子设备,包括:将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备;其中,用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据,从而实现将多路视频图像数据拼接成一路视频图像数据进行传输,从而减少链路带宽浪费。
Description
技术领域
本申请涉及计算机通信领域,尤其涉及一种图像传输方法、装置及电子设备。
背景技术
在一些场景中,发送端设备具有待发送的多路视频图像数据,但是发送端设备与接收端设备之间却只有一条用于发送视频图像数据的链路。
在现有的方式中,发送端设备通常会将多路视频图像数据依次通过该条链路发送给接收端设备。但是在实际应用中,该链路的带宽要大于一路视频图像数据的数据量,这就使得如果通过链路依次传输每路视频图像数据就会造成链路带宽的浪费。
发明内容
有鉴于此,本申请提供一种图像传输方法、装置及电子设备,用于实现将多路视频图像数据拼接成一路视频图像数据进行传输,从而减少链路带宽浪费。
具体地,本申请是通过如下技术方案实现的:
根据本申请的第一方面,提供一种图像传输方法,所述方法应用于发送端设备,包括:
将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;
基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备;
其中,所述指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
根据本申请的第二方面,提供一种图像传输方法,所述方法应用于接收端设备,包括:
从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;
确定与所述一路目标视频图像数据对应的指定拼接信息;
针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;
针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
根据本申请的第三方面,提供一种图像传输装置,所述装置应用于发送端设备,包括:
拼接单元,用于将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;
发送单元,用于基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备;
其中,所述指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
根据本申请的第四方面,提供一种图像传输装置,所述装置应用于接收端设备,包括:
图像分量数据集合确定单元,用于从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;
拼接信息确定单元,用于确定与所述一路目标视频图像数据对应的指定拼接信息;
获取单元,用于针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;
恢复单元,用于针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
根据本申请的第五方面,提供一种发送端设备,所述发送端设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现上述图像传输方法。
根据本申请的第六方面,提供一种接收端设备,所述接收端设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现上述图像传输方法。
根据本申请的第七方面,提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述图像传输方法。
根据本申请的第八方面,提供一种计算机程序,计算机程序存储于计算机可读存储介质,并且当处理器执行计算机程序时,促使处理器实现上述图像传输方法。
根据本申请的第九方面,提供一种图像传输系统,所述系统包括:发送端设备和接收端设备;
所述发送端设备,用于执行第一方面所述的图像传输方法的步骤;
所述接收端设备,用于执行第二方面所述的图像传输方法的步骤。
由上述描述可知,发送端设备将多路视频图像数据拼接成与链路带宽适配的一路视频图像数据,通过该链路将一路视频图像数据发送给接收端设备,所以不会造成链路带宽的浪费。
附图说明
图1是本申请一示例性实施例示出的一种二维拼接方法的示意图;
图2是本申请一示例性实施例示出的一种图像传输方法的流程图;
图3是本申请一示例性实施例示出的一种Y分量数据集合的示意图;
图4是本申请一示例性实施例示出的一种UV分量数据集合的示意图;
图5是本申请一示例性实施例示出的另一种Y分量数据集合的示意图;
图6是本申请一示例性实施例示出的一种U分量数据集合的示意图;
图7是本申请一示例性实施例示出的一种V分量数据集合的示意图;
图8是本申请一示例性实施例示出的另一种图像传输方法的流程图;
图9是本申请一示例性实施例示出的另一种图像传输方法的流程图;
图10是本申请一示例性实施例示出的一种发送端设备的硬件结构图;
图11是本申请一示例性实施例示出的一种图像传输装置的框图;
图12是本申请一示例性实施例示出的一种接收端设备的硬件结构图;
图13是本申请一示例性实施例示出的另一种图像传输装置的框图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
在本申请使用的术语是仅仅出于描述特定实施例的目的,而非旨在限制本申请。在本申请和所附权利要求书中所使用的单数形式的“一种”、“所述”和“该”也旨在包括多数形式,除非上下文清楚地表示其他含义。还应当理解,本文中使用的术语“和/或”是指并包含一个或多个相关联的列出项目的任何或所有可能组合。
应当理解,尽管在本申请可能采用术语第一、第二、第三等来描述各种信息,但这些信息不应限于这些术语。这些术语仅用来将同一类型的信息彼此区分开。例如,在不脱离本申请范围的情况下,第一信息也可以被称为第二信息,类似地,第二信息也可以被称为第一信息。取决于语境,如在此所使用的词语“如果”可以被解释成为“在……时”或“当……时”或“响应于确定”。
在一些场景中,发送端设备具有待发送的多路视频图像数据,但是发送端设备与接收端设备之间却只有一条用于发送视频图像数据的链路,比如接口为HDMI 2.0的链路。
在现有的方式中,发送端设备通常会将多路视频图像依次通过该条链路发送给接收端设备。但是在实际应用中,该链路的带宽要大于一路视频图像数据的数据量,这就使得如果通过链路依次传输每路视频图像数据就会造成链路带宽的浪费。
为了不造成链路带宽的浪费,传统的做法是,发送端设备将多路视频图像数据进行二维拼接形成一路视频图像数据,再将形成的一路视频图像数据通过链路发送给接收端设备。所谓的二维拼接,是指将每一路视频图像数据所指示的视频图像进行拼接,形成一路视频图像数据。
例如,假设有三路视频图像数据,最终要拼接成一路视频图像数据。这一路视频图像数据所指示的视频图像的分辨率是64*64,换句话来说,这一路视频图像数据所指示的视频图像可以看作是一个64*64的矩形。
在二维拼接方法中,每一路视频图像数据所指示的视频图像可以看成一个矩形,这个矩形的尺寸与该路视频图像数据的分辨率相关,二维拼接时,要将各路视频图像数据所指示的视频图像(即矩形)以一定方式组成,形成最终的64*64的矩形。
比如,假设这三路视频图像数据中的第一路视频图像数据的分辨率为32*32,第二路视频图像数据的分辨率为32*32,第三路视频图像数据的分辨率为32*64时,则第一路视频图像数据对应的视频图像可以看作32*32的矩形1,第二路视频图像数据对应的视频图像可以看作32*32的矩形2,第三路视频图像数据对应的视频图像可以看作32*64的矩形3,这三个矩形按照图1所示的方式可以组成64*64的矩形,即可以组成一路视频图像数据。
而比如这三路视频数据中的第一路视频图像数据的分辨率为24*24,第二路视频图像数据分辨率为24*24,第三路视频图像数据分辨率为32*64时,则这三路视频图像数据所指示的视频图像(即矩形)无论怎么组合拼接,都无法组成64*64的矩形,则无法形成最终的一路视频图像数据。
由此可以看出,这种二维拼接方法的不好之处在于:需要对各路视频图像的图像分辨率进行限制,使得各路视频图像可以通过某种图像边缘邻接方式,拼接成一个矩形的一路视频图像。由于需要对各路视频图像的图像分辨率进行限制,所以这种二维拼接方式极为不灵活。
有鉴于此,本申请提出一种图像传输方法,发送端设备将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合。然后,发送端设备基于不同图像分量类型对应的图像分量数据集合构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备,以使得接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
一方面,发送端设备将多路视频图像数据拼接成与链路带宽适配的一路视频图像数据,通过该链路将一路视频图像数据发送给接收端设备,所以不会造成链路带宽的浪费。
另一方面,发送端设备将至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,而不是进行视频图像边缘邻接的拼接,所以本申请不特别限制每路视频图像数据所指示的视频图像的分辨率。换句话来说,本申请在不限制各路视频图像数据的分辨率的情况下,可以实现将多路视频图像数据拼接成一路视频图像数据。
参见图2,图2是本申请一示例性实施例示出的一种图像传输方法的流程图,该方法可应用在接收端设备,可包括如下所示步骤。
步骤201:发送端设备将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应。
需要说明的是,本申请涉及的每一路视频图像数据包含一帧视频图像的相关数据。
比如,本申请涉及的至少两路视频图像数据中的每一路视频图像数据包含了一个视频流中的一帧视频图像的相关数据(比如该帧视频图像的每个像素点各个分量类型的分量数据)。比如,至少两路视频图像数据包含第一路视频图像数据和第二路视频图像数据。第一路视频图像数据包含了视频流1中的第一帧视频图像的相关数据,第二路视频图像数据包含了视频流2中的第一帧视频图像的相关数据。
最终发送给发送端的一路目标视频图像数据包含了由多路视频图像数据(即多帧视频图像)拼接成的一帧视频图像的相关数据。
下面从本方法的执行条件、步骤201的实现方式两方面进行详细地描述。
1)本方法的执行条件
在传输多路视频图像数据之前,发送端设备还可从接收端设备获取接收端设备的EDID(Extended display identification data,扩展显示器识别数据)信息。
在本申请实施例中,在获取到EDID信息后,发送端设备从EDID信息中获取拼接指示信息,并检查该拼接指示信息是否指示所述接收端设备支持各图像分量数据集合的解析。
例如,该拼接指示信息可以携带在EDID信息的扩展字段中。
具体地,通常EDID信息包括标准字段。标准字段可以携带接收端设备所支持的分辨率、色彩空间等参数、厂商名称、产品序列号等信息。
在本申请中,EDID信息进行了扩展,形成了如表1所示的扩展字段。
表1
其中,该EDID信息的扩展字段具有18个字节。
其中,字段类型占用4个字节,是扩展字段的标识,用来表示该“字段类型”所在的字段为扩展字段,并且该扩展字段携带了与多路视频图像数据拼接为一路视频图像数据相关的信息。
拼接类型,占用1个字节,拼接类型可以表示是采用本申请这种分量数据拼接方式,还是二维拼接方式等。拼接类型可以用于指示所述接收端设备是否支持图像分量数据拼接的解析。比如,当拼接类型为分量数据拼接方式时,表示接收端设备支持图像分量数据拼接的解析。当拼接类型为二维拼接方式时,表示接收端设备不支持图像分量数据拼接的解析。
最大拼接路数,占用2个字节,表示接收端设备最多所能允许拼接的视频图像数据的路数。比如该字段取值为3,则表示接收端设备最多可接受3路视频图像数据拼接。
预留位,占用11个字节。
基于此,发送端设备在检查该拼接指示信息是否指示所述接收端设备支持图像分量数据拼接的解析时,发送端设备可检测该EDID信息的扩展字段携带的“拼接类型”信息,若该拼接类型信息指示分量数据拼接,则表示接收端设备支持图像分量数据拼接的解析。若该拼接类型信息不指示分量数据拼接(比如指示二维拼接等),则表示接收端设备不支持图像分量数据拼接的解析。
若接收端设备支持各图像分量数据拼接的解析,则执行本申请提供的步骤201至步骤202所述的方法。
当然,在实际应用中,该EDID信息的扩展字段中可只携带拼接类型,这里只是示例性地说明,不对其进行具体地限定。
当然,在实际应用中,也可以让发送端设备和接收端设备事先约定好多路视频图像数据的拼接方法,在这种情况下,发送端设备可直接执行本申请的方法,不用通过接收端的EDID信息来决定是否执行本申请的方式。这里只是对执行本申请的条件进行示例性地说明,不对其进行具体地限定。
2)步骤201的实现方式
下面通过“输出分辨率和输出帧率的确定”、“图像分量类型的确定”和“将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合”三方面介绍步骤101的实现方式。
2.1)输出分辨率和输出帧率的确定
在本申请实施例中,发送端设备可基于发送端设备与接收端设备之间用于传输一路视频数据的链路的链路带宽,以及各路视频图像数据的分辨率和帧率,确定该链路输出视频图像数据的输出帧率和输出分辨率。
需要说明的是,由于该链路要传输由多路视频图像数据拼接出的一路目标视频图像数据,所以该确定出的输出帧率与输出分辨率的乘积要大于每一路视频图像数据的原始分辨率和原始帧率的乘积之和。
在实现时,发送端设备可计算每一路视频图像数据的原始分辨率和原始帧率的乘积之和,然后在发送端设备与接收端设备之间用于传输最终的拼接后的一路目标视频图像数据的链路带宽所支持的多组分辨率和帧率中,选择一组分辨率和帧率作为输出分辨率和输出帧率,以使得选择出的分辨率和帧率的乘积大于每一路视频图像数据的原始分辨率和原始帧率的乘积之和。
例如,假设每一路视频图像数据的原始分辨率和原始帧率的乘积之和为2560*1440*60;
假设,发送端设备与接收端设备之间用于传输最终的拼接后的一路目标视频图像数据的链路带宽所支持的多组分辨率和帧率为:
4096*2160*60;其中,4096*2160为分辨率,60为帧率;
3840*2160*60;其中,3840*2160为分辨率,60为帧率;
1920*1200*60;其中,1920*1200为分辨率,60为帧率;
由于4096*2160*60大于2560*1440*60,3840*2160*60大于3840*2160*60,发送端设备可以选择4096*2160*60,将4096*2160作为输出分辨率,将60作为输出帧率。
或者,发送端设备可以选择3840*2160*60,将3840*2160作为输出分辨率,将60作为输出帧率。
发送端设备可以依据确定出的输出帧率,周期性地执行步骤201至步骤202。当然,发送端设备也可以在接收到指令时,执行步骤201至步骤202,这里只是示例性地说明,不对其进行具体地限定。
2.2)图像分量类型的确定
在本申请实施例中,每一路视频图像数据包括多个像素点的各分量数据。因此,本申请的图像分量数据是指像素点的分量数据。
比如,该视频图像数据的图像格式为RGB888格式,则该路视频图像数据包括各像素点的R分量数据、G分量数据和B分量数据。
比如,该视频图像数据的图像格式为YUV444或者YUV422格式,则该路视频图像数据包括各像素点的Y分量数据、U分量数据和V分量数据。
在本申请实施例中,至少两路视频图像数据的图像格式是相同的。换句话来说,至少两路的视频图像数据的图像格式相同,至少两路视频图像数据才能按照本申请提供的图像分量类型这种拼接方式进行拼接。换句话来说,至少两路视频图像数据的图像格式相同,是为了保证依据图像格式确定出的各路视频图像数据对应的图像分量类型相同,进而可以拼接成图像分量数据集合。
比如,假设有两路视频图像数据,第一路视频图像数据的图像格式为YUV444,第二路视频图像数据的图像格式为YUV422,由于由第一路视频图像数据的图像格式确定出的图像分量类型为Y类型和UV类型,而由第二路视频图像数据的图像格式确定出的图像分量类型为Y类型、U类型和V类型,由于两者确定出的图像分量类型不一致,所以这两路视频图像数据无法按照本申请提供的方式拼接。
再比如,假设有两路视频图像数据,第一路视频图像数据的图像格式为RGB888,第二路视频图像数据的图像格式为YUV422,由于由第一路视频图像数据的图像格式确定出的图像分量类型为R类型、G类型和B类型,而由第二路视频图像数据的图像格式确定出的图像分量类型为Y类型、UV类型,由于两者确定出的图像分量类型不一致,所以这两路视频图像数据无法按照本申请提供的方式拼接。
此外,发送端设备可以依据图像格式确定出图像分量类型。
比如图像格式是RGB888,则确定出的图像分量类型为R类型、G类型和B类型。
比如图像格式是YUV444,则确定出的图像分量类型为Y类型、U类型和V类型。
比如图像格式是YUV422,则确定出的图像分量类型为Y类型、UV类型。
2.3)将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合。
下面通过步骤A1至步骤A6对“将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合”进行详细地说明。
步骤A1:针对每一图像分量类型,依据已确定的输出分辨率A*B,构造与该图像分量类型对应的图像分量数据集合;所述图像分量数据集合包括A*B个填充位。
比如,假设至少两路视频图像数据的图像格式为RGB888,则该图像格式对应的图像分量类型为R类型,G类型和B类型。
发送端设备可以构造与R类型对应的R图像分量数据集合,构造与G类型对应的G图像分量数据集合,构造与B类型对应的B图像分量数据集合。
再比如,假设至少两路视频图像数据的图像格式为YUV444,则该图像格式对应的图像分量类型为Y类型,U类型和V类型。
发送端设备可以构造与Y类型对应的Y图像分量数据集合,构造与U类型对应的U图像分量数据集合,构造与V类型对应的V图像分量数据集合。
再比如,假设至少两路视频图像数据的图像格式为YUV422,则该图像格式对应的图像分量类型为Y类型,UV类型。
发送端设备可以构造与Y类型对应的Y图像分量数据集合,构造与UV类型对应的UV图像分量数据集合。
在每一图像分量类型构造与之对应的图像分量数据集合时,针对每一图像分量类型,发送端设备可以依据已确定的输出分辨率A*B,申请与该图像分量类型对应的图像分量数据集合,该图像分量数据集合包括A*B个填充位,即该图像分量数据集合具有B行,每行有A个填充位。
其中,该图像分量数据集合包括指定填充位和非指定填充位,比如非指定填充位为该图像分量数据集合中的第一行填充位,指定填充位为非第一行填充位。指定填充位用于填充与该分量类型对应的分量数据,非指定填充位为预留位,当拼接信息需要填充在该图像分量数据集合中时,该图像分量数据集合中的非指定填充位用于填充拼接信息,当拼接信息不需要填充在图像分量数据集合中时,该图像分量数据集合中的非指定填充位不填写拼接信息。
例如,假设至少两路视频图像数据的图像格式为YUV422,则该图像格式对应的图像分量类型为Y类型,UV类型。
发送端设备可以构造与Y类型对应的Y图像分量数据集合,构造与UV类型对应的UV图像分量数据集合。
Y图像分量数据集合具有A*B个填充位,其中Y图像分量数据集合中的第一行上的填充位为非指定填充位,除第一行外的其他行上的填充位为指定填充位。
UV图像分量数据集合具有A*B个填充位,其中UV图像分量数据集合中的第一行上的填充位为非指定填充位,除第一行外的其他行上的填充位为指定填充位。
再例如,假设至少两路视频图像数据的图像格式为YUV444,则该图像格式对应的图像分量类型为Y类型,U类型和V类型。
发送端设备可以构造与Y类型对应的Y图像分量数据集合,构造与U类型对应的U图像分量数据集合,构造与V类型对应的V图像分量数据集合。
Y图像分量数据集合具有A*B个填充位,其中Y图像分量数据集合中的第一行上的填充位为非指定填充位,除第一行外的其他行上的填充位为指定填充位。
U图像分量数据集合具有A*B个填充位,其中U图像分量数据集合中的第一行上的填充位为非指定填充位,除第一行外的其他行上的填充位为指定填充位。
V图像分量数据集合具有A*B个填充位,其中V图像分量数据集合中的第一行上的填充位为非指定填充位,除第一行外的其他行上的填充位为指定填充位。
步骤A2:发送端设备从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据。
发送端设备具有多个通道,每个通道用于储存一路视频图像数据。在获取多路视频图像数据时,发送端设备可以查询每一通道是否有待传输的视频图像数据,然后从具有待传输的视频图像数据的通道中,获取未进行填充操作的一路视频图像数据。
步骤A3:发送端设备将获取到的一路视频图像数据中对应该图像分量类型的图像分量数据依次填充在所述图像分量数据集合的指定填充位上。
例如,假设多路视频图像数据的图像格式为YUV422。
假设该图像分量类型为Y类型,则发送端设备可将获取到的一路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合的指定填充位上,即如图3中的b图所示。
假设,该图像分量类型为UV类型,则发送端设备可将获取到的一路视频图像数据中的各像素点的UV分量数据,按照UV的顺序依次填充在图像分量数据集合的指定填充位上,即如图4中的b图所示。
再例如,假设多路视频图像数据的图像格式为YUV444。
假设该图像分量类型为Y类型,则发送端设备可将获取到的一路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合的指定填充位上,即如图5中的b图所示。
假设该图像分量类型为U类型,则发送端设备可将获取到的一路视频图像数据中的各像素点的U分量数据依次填充在图像分量数据集合的指定填充位上,即如图6中的b图所示。
假设该图像分量类型为V类型,则发送端设备可将获取到的一路视频图像数据中的各像素点的V分量数据依次填充在图像分量数据集合的指定填充位上,即如图7中的b图所示。
步骤A4:发送端设备可检测该图像分量数据集合是否有未进行填充操作的指定填充位、以及检测待发送的多路视频图像数据中是否有未进行填充操作的任意路视频图像数据。
步骤A5:若所述图像分量数据集合有剩余的未进行填充操作的指定填充位、且所述待发送的多路视频图像数据中有未进行填充操作的任意路视频图像数据,则返回步骤A2,即返回所述从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据的步骤。
步骤A6:若确定所述图像分量数据集合没有剩余的未进行填充操作的指定填充位、或者待发送的多路视频图像数据中没有未进行填充操作的视频图像数据,则将当前图像分量数据集合作为该图像分量类型对应的图像分量数据集合。
下面通过具体的例子对步骤A1至步骤A6进行详细地说明。
例如,假设有n路待传输的视频图像数据,假设n路视频图像数据的图像格式为YUV422,因此发送端设备确定出的图像分量类型为Y分量类型和UV分量类型。
假设发送端设备依据发送端设备与接收端设备之间的链路带宽确定出的输出分辨率为3840×2160。
发送端设备可申请与Y分量类型对应的图像分量数据集合1,该图像分量数据集合1包括3840×2160个填充位。该图像分量数据集合1如图3中的a图所示,图3中的a图中的每一个格表示一个填充位。
其中,图像分量数据集合1中的第一行为非指定填充位,其他行为指定填充位。
发送端还可申请与UV分量类型对应的图像分量数据集合2,该图像分量数据集合2包括3840×2160个填充位。该图像分量数据集合2如图4中的a图所示,图4中的a图中的每一个格表示一个填充位。
其中,图像分量数据集合2中的第一行为非指定填充位,其他行为指定填充位。
然后,发送端设备可从n路待传输的视频图像数据,获取未进行填充操作的第一路待传输的视频图像数据。然后,发送端设备可从图像分量数据集合1的起始指定填充位开始,将该第一路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合1的指定填充位上,以及从图像分量数据集合2的起始指定填充位开始,将该第一路视频图像数据中各像素点的U分量和V分量按照UV的顺序依次填充在图像分量数据集合2的指定填充位上。
然后,发送端确定图像分量数据集合1和图像分量数据集合2都有剩余的指定填充位,并且n路待传输的视频图像数据中也有还未进行填充操作的视频图像数据(比如第2路至第n路的视频图像数据),则发送端设备从n路待传输的视频图像数据,获取未进行填充操作的第二路待传输的视频图像数据。然后,发送端设备可将该第二路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合1的剩余指定填充位上,以及将该第二路视频图像数据中各像素点的U分量和V分量按照UV的顺序依次填充在图像分量数据集合2的剩余指定填充位上。
依次类推,假设在填充完第n路待传输的视频图像数据的各分量类型的分量数据后,发送端设备检测到没有待传输的视频图像数据,则发送端设备将当前的图像分量数据集合1作为Y类型对应的图像分量数据集合(如图3中的b图所示),将图像分量数据集合2作为UV类型对应的图像分量数据集合(如图4中的b图所示)。
再例如,假设有n路待传输的视频图像数据,假设n路视频图像数据的图像格式为YUV444,因此发送端设备确定出的图像分量类型为Y分量类型、U分量类型和V分量类型。
假设发送端设备依据发送端设备与接收端设备之间的链路带宽确定出的输出分辨率为3840×2160。
发送端设备可申请与Y分量类型对应的图像分量数据集合3,该图像分量数据集合3包括3840×2160个填充位。该图像分量数据集合3如图5中的a图所示,图5中的a图中的每一个格表示一个填充位。
其中,图像分量数据集合3中的第一行为非指定填充位,其他行为指定填充位。
发送端还可构造与U分量类型对应的图像分量数据集合4,该图像分量数据集合4包括3840×2160个填充位。该图像分量数据集合4如图6中的a图所示,图6中的a图中的每一个格表示一个填充位。
其中,图像分量数据集合4中的第一行为非指定填充位,其他行为指定填充位。
发送端还可构造与V分量类型对应的图像分量数据集合5,该图像分量数据集合5包括3840×2160个填充位。该图像分量数据集合5如图7中的a图所示,图7中的a图中的每一个格表示一个填充位。
其中,图像分量数据集合5中的第一行为非指定填充位,其他行为指定填充位。
然后,发送端设备可从n路待传输的视频图像数据,获取未进行填充操作的第一路待传输的视频图像数据。然后,发送端设备可从图像分量数据集合3的起始指定填充位开始,将该第一路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合3的指定填充位上,以及从图像分量数据集合4的起始指定填充位开始,将该第一路视频图像数据中各像素点的U分量依次填充在图像分量数据集合4的指定填充位上,以及从图像分量数据集合5的起始指定填充位开始,将该第一路视频图像数据中各像素点的V分量依次填充在图像分量数据集合5的指定填充位上。
然后,发送端确定图像分量数据集合3、图像分量数据集合4和图像分量数据集5都有剩余的指定填充位,并且n路待传输的视频图像数据中也有还未进行填充操作的第2路至第n路视频图像数据,则发送端设备从n路待传输的视频图像数据,获取未进行填充操作的第二路待传输的视频图像数据。然后,发送端设备可从图像分量数据集合3的起始指定填充位开始,将该第二路视频图像数据中的各像素点的Y分量数据依次填充在图像分量数据集合3的指定填充位上,以及从图像分量数据集合4的起始指定填充位开始,将该第二路视频图像数据中各像素点的U分量依次填充在图像分量数据集合4的指定填充位上,以及从图像分量数据集合5的起始指定填充位开始,将该第二路视频图像数据中各像素点的V分量依次填充在图像分量数据集合5的指定填充位上。
依次类推,假设在填充完第n路待传输的视频图像数据的各分量类型的分量数据后,发送端设备检测到没有待传输的任意路视频图像数据,则发送端设备将当前的图像分量数据集合3作为Y类型对应的图像分量数据集合(如图5中的b图所示),将图像分量数据集合4作为U类型对应的图像分量数据集合(如图6中的b图所示),将图像分量数据集合5作为U类型对应的图像分量数据集合(如图7中的b图所示)。
此外,n路视频图像数据的图像格式为RGB888,这种图像格式的n路视频图像数据的拼接方式与YUV444相同,这里不再举例说明。
步骤102:发送端设备基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备。其中,所述指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
下面通过步骤1021至步骤1023对步骤102进行详细地说明。
步骤1021:发送端设备基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据。
发送端设备可以依次将不同图像分量类型对应的图像分量数据集合按照对应的格式要求进行排布,形成待传输的一路目标视频图像数据。
需要说明的是,对应的格式要求与视频图像数据的图像格式相关。
比如,对应的格式要求是将各类型的图像分量数据集合按照图像格式所指示的分量顺序首尾排布。
例如,假设一路视频图像数据的图像格式是RGB888格式,则对应的格式要求可以是将R分量数据集合、G分量数据集合、Y分量数据集合,按照R、G、B的顺序首尾排布。即发送端设备可在R图像分量数据集合下面排布G图像分量数据集合,再在G图像分量数据集合下面排布B图像分量数据集合,从而形成待传输的一路目标视频图像数据。
例如,假设至少一路视频图像数据的图像格式为YUV444格式,则对应的格式要求可以是将Y分量数据集合、U分量数据集合、V分量数据集合,按照Y、U、V的顺序首尾排布。即发送端设备可在Y图像分量数据集合下面排布U图像分量数据集合,再在U图像分量数据集合下面排布V图像分量数据集合,从而形成待传输的一路目标视频图像数据。
假设至少一路视频图像数据的图像格式为YUV422格式,则对应的格式要求可以是将Y分量数据集合、UV分量数据集合,按照Y、UV的顺序首尾排布。发送端设备可在Y图像分量数据集合下面排布UV图像分量数据集合,从而形成待传输的一路目标视频图像数据。
步骤1022:发送端设备确定指定拼接信息。
在本申请实施例中,由于至少两路视频图像数据中的每一路视频图像数据包含了一个视频流中的一帧视频图像。而一帧视频图像又是由多个像素点构成,每个像素点又由多个分量数据构成(比如一个像素点可以由R分量、G分量和B分量构成等)。
所以,而本申请拼接前的每一路视频图像数据中的各分量类型对应的图像分量数据包括了:该路视频图像数据所指示的一帧视频图像中的各像素点的分量数据。
假设,有两路待拼接的视频图像数据,分别为待拼接的一路视频图像数据1和待拼接的一路视频图像数据2。
待拼接的一路视频图像数据1所指示的一帧图像1有n个像素点,假设图像分量类型为R类型、G类型和B类型,则该一路视频图像数据中的所有R分量数据包括:第1个像素点至第n个像素点的R分量数据,该一路视频图像数据中的所有G分量数据包括:第1个像素点至第n个像素点的G分量数据,该一路视频图像数据中的所有B分量数据包括:第1个像素点至第n个像素点的B分量数据。
待拼接的一路视频图像数据2所指示的一帧图像2有m个像素点,假设图像分量类型为R类型、G类型和B类型,则该一路视频图像数据中的所有R分量数据包括:第1个像素点至第m个像素点的R分量数据,该一路视频图像数据中的所有G分量数据包括:第1个像素点至第m个像素点的G分量数据,该一路视频图像数据中的所有B分量数据包括:第1个像素点至第m个像素点的B分量数据。
然后,发送端设备将一路视频图像数据1中的所有R分量数据和一路视频图像数据2中的所有R分量数据进行拼接,形成R分量数据集合。
发送端设备将一路视频图像数据1中的所有G分量数据和一路视频图像数据2中的所有G分量数据进行拼接,形成G分量数据集合。
发送端设备将一路视频图像数据1中的所有B分量数据和一路视频图像数据2中的所有B分量数据进行拼接,形成B分量数据集合。
由于各分量数据集合中的同一位置的图像分量数据都是与一帧图像中的一个像素点对应的,比如第一路视频图像数据所指示的第一个像素点与R分量集合中的第一路视频图像数据的第一个像素点的R分量数据对应,与G分量集合中的第一路视频图像数据的第一个像素点的G分量数据对应、与B分量集合中的第一路视频图像数据的第一个像素点的B分量数据对应。所以同一个像素点对应的R分量数据、G分量数据和B分量数据在各自的分量数据集合中的位置是相同的,而拼接信息正是描述每一路待拼接的视频图像数据中的各个像素点的各分量数据在各自的图像分量集合中的位置,所以最终拼接而成的一路目标视频图像中的各个图像分量类型对应的图像分量集合所对应的拼接信息是相同。
即上述R分量数据集合对应的拼接信息、G分量数据集合对应的拼接信息和B分量数据集合对应的拼接信息是相同的。
具体地,每一图像分量类型对应的图像分量数据集合对应有一个拼接信息,而最终发送给接收端设备的一路目标视频图像数据中的各个图像分量类型对应的图像分量数据集合所对应的拼接信息是相同的。所以发送端设备可以将最终发送的一路目标视频图像数据所包含的任一各图像分量数据集合对应的拼接信息作为指定拼接信息,最终将指定拼接信息发送给接收端设备。
比如,假设是将两路视频图像数据进行拼接形成最终的一路目标视频图像数据,假设一路目标视频图像数据包括Y分量数据集合、UV分量数据集合,则Y分量数据集合对应了将两路视频图像数据中的Y分量数据进行拼接的拼接信息(比如两路视频图像数据中的Y分量数据在Y分量数据集合中的位置信息、拼接路数为2路),UV分量数据集合对应了将两路视频图像数据中的UV分量数据进行拼接的拼接信息(比如两路视频图像数据中的UV分量数据在UV分量数据集合中的位置信息、拼接路数为2路)。
其中,该一路目标视频图像数据种的Y分量数据集合对应的拼接信息和UV分量数据集合对应的拼接信息是相同的。所以最终向发送端发送的指定拼接信息可是指Y分量数据集合对应的拼接信息、或者UV分量数据集合对应的拼接信息。
该指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
例如,该指定拼接信息包括:所拼接的至少两路视频图像数据的路数(或者一路目标视频图像数据是由几路视频图像数据拼接而成的)、以及每一路视频图像数据中对应每一分量类型的图像分量数据在其所在的图像分量数据集合中的位置信息。
其中,每一路视频图像数据中对应每一分量类型的图像分量数据在其所在的图像分量数据集合中的位置信息,包括:每一路视频图像数据对应每一分量类型的图像分量数据在其所在图像分量数据集合中的起始行、起始位、以及该路视频图像数据的宽高等信息。
其中,该路视频图像数据的宽高可以计算出该路视频图像数据的像素点数量,进而可以该分量数据集合中与该路视频图像数据对应的图像分量数据的个数。
比如,该路视频图像数据的宽高为M*N,则分量数据集合对应Y分量类型,则该路视频图像数据的Y分量数据的个数为M*N个。
例如,如图3中的b图所示:该拼接信息可包括:所拼接的至少两路视频图像数据的路数(即最终发送的一路目标视频图像数据是由n路视频图像数据拼接的),以及第一路视频图像数据的Y分量数据在分量数据集合中的位置信息、第二路视频图像数据的Y分量数据在分量数据集合中的位置信息、……、以及第n路视频图像数据的Y分量数据在分量数据集合中的位置信息。
以“第一路视频图像数据的Y分量数据在分量数据集合中的位置信息”为例进行说明,其他路视频图像数据的Y分量数据在分量数据集合中的位置信息与之相同,这里不再描述。
第一路视频图像数据的Y分量数据在分量数据集合中的位置信息包括:第一路视频图像数据的Y分量数据在分量数据集合中起始行(即图3中b图的第二行)、第一路视频图像数据的Y分量数据在分量数据集合中起始位(即图3中b图的第二行中的第一位)、第一路视频图像的宽高(即第一路视频图像数据的宽和高乘积满足图3中的b图中的Y分量的个数(即像素点的),即7678个Y分量)
步骤1023:发送端设备将不同图像分量类型对应的图像分量数据集合作为待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备。
在实现时,发送端设备可以将不同图像分量类型对应的图像分量数据集合拼接成一路目标视频图像数据,然后将一路目标视频数据以及指定拼接信息传输给接收端设备。
在传输时,在一种可选的传输方式中,发送端设备将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备。
例如,一路目标视频图像数据是由Y图像分量集合、UV图像分量集合组成的,发送端设备可以将该指定拼接信息携带在Y图像分量集合的非指定填充位(比如如图3中b图所示的第一行)。当然,也可以将指定拼接信息携带在UV图像分量集合中的非指定填充位。然后将携带了指定拼接信息的一路目标视频图像数据发送给接收端设备。
需要说明的是,在本申请实施例中,由于将拼接信息携带在了任一图像分量数据集合中,而由各图像分量数据集组成的一路目标视频图像数据在传输过程中,传输链路会对一路目标视频图像数据的传输进行干扰,造成被携带的拼接信息不准确。
比如,假设,非指定填充位包括8个比特位,拼接信息是由24个比特位组成。若将拼接信息依次填充在3个非指定填充位上,则每个非指定填充位上填充拼接信息的8个比特位,即部分拼接信息。
假设一个非指定填充位上的填充的部分拼接信息“10111111”。在该部分拼接信息的传输过程中,受到一些因素的影响,会将该部分拼接信息的最低位加1,使得该部分拼接信息变为“11000000”,由此可见,由于最低位加1,造成了部分拼接信息的高位取值变化,造成部分拼接信息传输不准确。
为了减少一路目标视频图像数据传输过程中拼接信息传输不准确的问题,在本申请实施例中,假设每个填充位具有M个比特位,将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中的非指定填充位时,发送端设备可将指定拼接信息添加在任一图像分量对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1。
比如,假设每个填充位具有8个比特位,假设拼接信息具有24个比特位,拼接信息为101100111011001110110011。
假设高N位为高6位。
发送端设备可将拼接信息依次填充到4个非指定填充位的高6位比特位上,并将每个非指定填充位的低2位上的取值设置为指定值,以使得低2位的取值表示十进制的(22-1-1=1)。
例如,发送端设备可以将拼接信息分成4组,每组6个比特。发送端可将第一组的6比特位的取值(即101100)填充到第一个非指定填充位的高6位比特位上,将该第一个非指定填充位的低2位的取值设置为指定值(比如设置为01),以使得第2位的取值表示(22-1-1=1)。发送端可将第二组的6比特位的取值(即111011)填充到第二个非指定填充位的高6位比特位上,并将该第二个非指定填充位的低2位的取值设置为指定值(比如设置为01),以使得第2位的取值表示(22-1-1=1)。依次类推,直至填充到第4个非指定填充位。
这么填充的好处在于:
以第一个非指定填充位为例,在本例中,第一个非指定填充位的取值为“10110001”。在传输第一个非指定填充位上的部分拼接信息时,由于受到一些因素的影响,会将该第一个非指定填充位的最低位加1,使得该第一个非指定填充位的取值变为“10110110”,这也仅仅影响了第一个非指定填充位的最低两位的取值,而第一个非指定填充位高6位才是有效的拼接信息,所以不会影响第一个非指定填充位携带的部分拼接信息准确性,所以可以保证拼接信息在传输过程中的准确性。
在另一种可选的传输方式中,发送端设备可以将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备。
例如,在实际应用中,HDMI(High Definition Multimedia Interface,高清晰度多媒体接口)的视频传输包含三个阶段。
第一个阶段为控制阶段(即Control Period阶段),该阶段用于传输控制信息,并且用于指示接下来传输的是视频数据还是控制信息包。
第二个阶段为视频数据阶段(即Video Data Period阶段),该阶段用于传输视频数据。
第三个阶段为数据岛阶段(即Data Island Period),用于传输控制信息包,控制信息包可以携带视频数据的相关信息。
当控制阶段指示接下来用于传输视频数据,则进入视频数据阶段,当控制阶段指示接下来传输控制信息包,则进行数据岛阶段。
因此,在本申请实施例中,发送端设备还可将指定拼接信息携带在该一路目标视频图像数据的控制信息包中,并通过视频数据阶段该一路目标视频图像数据发送给接收端、以及通过数据岛阶段将控制信息包通过链路发送给接收端设备。
可选的,发送端设备可以将指定拼接信息携带在控制信息包载荷部的预留字段中。当然,在实际应用中,发送端设备还可将该指定拼接信息携带在控制信息包的其他字段,这里只是示例性地说明,不对其进行具体地限定。
此外,在不同场景下,发送端设备可以选择上述不同的传输方式。
例如,发送端设备可检测发送端设备与接收端设备的链路的接口所支持传输的视频协议是否支持控制包信息传输。比如发送端设备和接收设备之间的链路的接口为HDMI接口,则该HDMI接口所支持的视频协议支持控制信息包传输。
比如,发送端设备和接收设备之间的链路的接口为DVI(Digital VisualInterface,数字视频接口)接口,则该DVI接口所支持的视频协议不支持控制信息包传输。
若该视频协议支持控制包信息传输,发送端设备可采用上述第二种传输方式,即发送端设备可以将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备。
若该视频协议不支持控制包信息传输,发送端设备可采用上述第一种传输方式,即发送端设备将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备。
当然,在实际应用中,即使多路视频图像数据的视频协议的视频协议支持控制包信息传输,发送端设备也可以采用上述第一种传输方式传输。这里只是对场景进行实例性地说明,不对其进行具体地限定。
在本申请实施例中,接收端设备在接收到发送端设备发送的一路目标视频图像数据后,可以获取该一路目标视频图像数据携带的每一图像分量类型对应的图像分量数据集合,并从携带有指定拼接信息的图像分量数据集合中获取指定拼接信息。
针对每一图像分量数据集合,接收端设备可基于指定拼接信息,从该图像分量数据集合中获取各路视频图像数据中对应该图像分量类型的图像分量数据。
然后基于获取到的各路各图像分量类型的图像分量数据,恢复出各路视频图像数据。
例如,假设一路目标视频图像数据是由Y图像分量数据集合和UV图像分量数据集合组成。假设,该一路目标视频图像数据是由两路视频图像数据拼接成的。
假设指定拼接信息携带在Y图像分量数据集合中。
接收端设备可以从Y图像分量数据集合中获取拼接信息。
然后,接收端设备可以基于指定拼接信息,从Y图像分量数据集合中获取第一路视频图像数据中的Y分量数据,以及第二路视频图像数据中的Y分量数据。
以及,接收端设备可以基于指定拼接信息,从UV图像分量数据集合中获取第一路视频图像数据中的UV分量数据,以及第二路视频图像数据中的UV分量数据。
然后,接收端设备可以基于第一路视频图像数据中的Y分量数据、第一路视频图像数据中的UV分量数据,恢复出第一路视频图像数据。
接收端设备可以基于第二路视频图像数据中的Y分量数据、第二路视频图像数据中的UV分量数据,恢复出第二路视频图像数据。
由上述描述可知,一方面,发送端设备将多路视频图像数据拼接成与链路带宽适配的一路视频图像数据,通过该链路将一路视频图像数据发送给接收端设备,所以不会造成链路带宽的浪费。
另一方面,发送端设备将至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,而不是进行视频图像的拼接所以本申请不特别限制每路视频图像数据所指示的视频图像的分辨率。换句话来说,本申请在不限制各路视频图像数据的分辨率的情况下,可以实现将多路视频图像数据拼接成一路视频图像数据。
第三方面,在将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中来发送拼接信息时,假设填充位具有M个比特位,发送端设备可将将所述指定拼接信息添加在任一图像分量对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1。这样可以是使得拼接信息在传输过程中,即使非指定填充位低M-N位取值因为传输的一些干扰被修改,也不会影响携带有部分拼接信息的高M位取值的变化,进而不会影响拼接信息传输的准确性。
参见图8,图8是本申请一示例性实施例示出的一种图像传输方法的流程图,该方法可应用于发送端设备,可包括如下所示步骤。
步骤801:在基于接收端的EDID信息确定接收端支持图像分量数据拼接的解析时,设置与接收端设备和发送端设备的链路适配的视频图像的输出分辨率A*B和帧率C。
具体可参见上述步骤201,这里不再赘述。
步骤802:依据输出分辨率A*B,构造与各图像分量类型对应的图像分量数据集合,每一图像分量数据集合包括A*B个填充位。
步骤803:确定当前时刻到达依据帧率C确定出的发送时刻。
发送端设备会依据确定出的帧率C发送出中断信号。当发送端设备检查到该中断信号时,则表示当前时刻到达了依据帧率C确定出的发送时刻。
发送端设备在确定当前时刻到达依据帧率C确定出的发送时刻时,执行步骤804至步骤812。
发送端设备在确定当前时刻未到达依据帧率C确定出的发送时刻时,等待到达发送时刻。
步骤804:从待传输的n路视频图像数据中,获取未进行填充操作的一路视频图像数据;
步骤805:针对每一图像分量类型,将该获取的一路视频图像数据中对应该分量类型的分量数据填充到该分量类型对应的图像分量数据集合的指定填充位上;
步骤806:在当前记录的拼接信息中,增加获取的该路视频图像数据对应该图像分量类型的图像分量数据在该图像分量类型对应图像分量数据集合中的位置信息,以及修改所拼接的路数;
步骤807:检测图像分量数据集合是否有未进行填充操作的指定填充位;
若是,则返回步骤804;
若否,则执行步骤808。
步骤808:检测待传输的n路视频图像数据中是否有未进行填充操作的视频图像数据;
若是,则返回步骤804;
若否,则执行步骤809。
步骤809:将当前各图像分量类型对应的图像分量数据集合作为该图像分量类型对应的图像分量数据集合,以及将当前记录的拼接信息作为指定拼接信息,并基于各图像分量类型对应的图像分量数据,构造一路目标视频图像数据;
步骤810:检测n路视频图像数据的视频协议是否支持控制信息传输;
若是,则执行步骤812;
若否,则执行步骤811。
步骤811:将指定拼接信息添加在一路目标视频数据中的任一图像分量数据集合中的非指定填充位上,并将一路目标视频数据发送给接收端;
步骤812:将指定拼接信息添加在一路目标视频数据的控制信息包中,将一路目标视频数据和控制信息包发送给接收端设备。
参见图9,图9是本申请一示例性实施例示出的另一种图像传输方法的流程图,该方法可应用在接收端设备上,可包括如下所示步骤:
步骤901:接收端设备从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的。
在实现时,接收端设备可接收发送端设备发送的一路目标视频图像数据,然后从该一路目标视频图像数据中获取各图像分量类型对应的图像分量数据集合。
在获取时,在一种可选的方式中,发送端设备除了向接收端设备发送一路目标视频图像数据,还向接收端设备发送与该一路目标视频图像数据的控制信息,比如该控制信息包括:一路目标视频图像数据的视频格式(比如是RGB888、YUV444、YUV422等)、以及输出分辨率,使得接收端设备可以基于视频格式以及输出分辨率,从一路目标视频图像数据中获取到各图像分量数据集合。
例如,假设视频格式是RGB888,由于接收端设备获知了视频格式是RGB888,所以接收端设备可确定需要获取R图像分量数据集合、G图像分量数据集合以及B图像分量数据集合。
由于接收端设备获知了输出分辨率,所以接收端设备可确定每个图像分量数据集合的尺寸。
接收端设备基于图像分量数据集合对应的图像分量类型、以及图像分量数据集合的尺寸,可以从一路目标视频图像数据中获取到各图像分量类型对应的图像分量数据集合。
当然,在实际应用中,发送端设备和接收端设备事先约定好一路目标视频图像数据的视频格式和输出分辨率。这时,接收端设备可直接利用约定好的视频格式和输出分辨率,从一路目标视频图像数据中获取到各图像分量类型对应的图像分量数据集合。这里只是示例性地说明,不对其进行具体地限定。
步骤902:接收端设备确定与所述一路目标视频图像数据对应的指定拼接信息。
在第一种可选的实现方式中,接收端设备可从任意图像分量数据集合中获取所述指定拼接信息。
在实现时,针对每一图像分量数据集合,接收端设备可查看该图像分量数据集合是否携带指定拼接信息(比如可查看该图像分量数据集合中的位于第一行的非指定填充位是否携带指定拼接信息)。若该图像分量数据集合携带指定拼接信息,则从该图像分量数据集合中获取该指定拼接信息。
在第二种可选的实现方式中,接收端设备可从一路目标视频图像数据对应的控制信息包中获取所述指定拼接信息。
在实现时,接收端设备可从一路目标视频图像数据对应的控制信息包的保留字段中获取该指定拼接信息。
步骤903:针对每一图像分量类型对应的图像分量数据集合,接收端设备基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据。
例如,假设一路目标视频图像数据是由Y图像分量数据集合和UV图像分量数据集合组成。假设,该一路目标视频图像数据是由两路视频图像数据拼接成的。
接收端设备可以基于指定拼接信息,从Y图像分量数据集合中获取第一路视频图像数据中的Y分量数据,以及第二路视频图像数据中的Y分量数据。
接收端设备可以基于指定拼接信息,从UV图像分量数据集合中获取第一路视频图像数据中的UV分量数据,以及第二路视频图像数据中的UV分量数据。
步骤904:针对每一路视频图像数据,接收端设备基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
仍以步骤903中的例子为例,假设一路目标视频图像数据是由Y图像分量数据集合和UV图像分量数据集合组成。假设,该一路目标视频图像数据是由两路视频图像数据拼接成的。
接收端设备可以基于指定拼接信息,从Y图像分量数据集合中获取第一路视频图像数据中的Y分量数据,以及第二路视频图像数据中的Y分量数据。
接收端设备可以基于指定拼接信息,从UV图像分量数据集合中获取第一路视频图像数据中的UV分量数据,以及第二路视频图像数据中的UV分量数据。
接收端设备可以基于第一路视频图像数据中的Y分量数据、第一路视频图像数据中的UV分量数据,恢复出第一路视频图像数据。
接收端设备可以基于第二路视频图像数据中的Y分量数据、第二路视频图像数据中的UV分量数据,恢复出第二路视频图像数据。
由上述描述可知,发送端设备将至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,而不是进行视频图像边缘邻接拼接,所以本申请不特别限制每路视频图像数据所指示的视频图像的分辨率。换句话来说,本申请在不限制各路视频图像数据的分辨率的情况下,可以实现将多路视频图像数据拼接成一路视频图像数据。
此外,发送端设备还将拼接信息发送给接收端设备,以使得接收端设备可以基于拼接信息从一路目标视频图像数据中恢复出拼接前的至少两路视频图像数据。
参见图10,图10是本申请一示例性实施例示出的一种发送端设备的硬件结构图。
该发送端设备包括:通信接口1001、处理器1002、机器可读存储介质1003和总线1004;其中,通信接口1001、处理器1002和机器可读存储介质1003通过总线1004完成相互间的通信。处理器1002通过读取并执行机器可读存储介质1003中与图像传输控制逻辑对应的机器可执行指令,可执行上文描述的图像传输方法。
本文中提到的机器可读存储介质1003可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质1003可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
参见图11,图11是本申请一示例性实施例示出的一种图像传输装置的框图,该图像传输装置可应用在发送端设备上,可包括如下所示单元。
拼接单元1101,用于将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;
发送单元1102,用于基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备;
其中,所述指定拼接信息是指得到任一图像分量类型对应的图像分量数据集合的拼接信息,用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
可选的,所述指定拼接信息包括:至少两路视频图像数据的路数、以及每一路视频图像数据中对应每一分量类型的图像分量数据在其所在的图像分量数据集合中的位置信息;
可选的,所述发送单元1102,在将所述一路目标视频数据以及指定拼接信息传输给接收端设备时,用于将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备;和/或,将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备;
可选的,所述装置还包括:检查单元1103,用于检查已获得的所述接收端设备的EDID信息是否指示所述接收端设备支持图像分量数据拼接的解析;当所述接收端设备支持图像分量数据拼接的解析时执行所述方法;
可选的,所述拼接单元1101,在将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合时,用于针对每一图像分量类型,依据已确定的输出分辨率A*B,构造与该图像分量类型对应的图像分量数据集合;所述图像分量数据集合包括A*B个填充位;从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据;将获取到的一路视频图像数据中对应该图像分量类型的图像分量数据依次填充在所述图像分量数据集合的指定填充位上;在确定所述图像分量数据集合有剩余的未进行填充操作的指定填充位、且所述待发送的多路视频图像数据中有未进行填充操作的任意路视频图像数据时,返回所述从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据的步骤;在确定所述图像分量数据集合没有剩余的未进行填充操作的指定填充位、或者待发送的多路视频图像数据中没有未进行填充操作的任意路视频图像数据时,将当前记录的图像分量数据集合作为与该图像分量类型对应的图像分量数据集合;
可选的,所述装置所执行的操作是依据已确定出的输出帧率周期性执行的;所述输出分辨率与所述输出帧率是依据所述发送端设备和接收端设备之间的用于传输所述一路目标视频图像数据的链路的带宽确定的;所述输出分辨率与所述输出帧率之积大于所述至少两路视频图像数据中的每一路视频图像数据的原始分辨率和原始帧率的乘积之和;
可选的,所述发送单元1102,在将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上;
可选的,每个填充位具有M个比特位;
所述发送单元1102,在将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1;
可选的,图像分量数据集合中的非指定填充位位于该图像分量数据集合的第一行,图像分量数据集合中的指定填充位位于该图像分量数据集合的除第一行外的其他行;
可选的,所述EDID信息包括扩展字段;所述扩展字段包括:拼接类型;或者,所述扩展字段包括:拼接类型和最大拼接路数;所述拼接类型用于指示所述接收端设备是否支持图像分量数据拼接的解析;所述最大拼接路数决定所述至少两路视频图像数据的路数。
参见图12,图12是本申请一示例性实施例示出的一种接收端设备的硬件结构图。
该发送端设备包括:通信接口1201、处理器1202、机器可读存储介质1203和总线1204;其中,通信接口1201、处理器1202和机器可读存储介质1203通过总线1204完成相互间的通信。处理器1202通过读取并执行机器可读存储介质1203中与图像传输控制逻辑对应的机器可执行指令,可执行上文描述的图像传输方法。
本文中提到的机器可读存储介质1203可以是任何电子、磁性、光学或其它物理存储装置,可以包含或存储信息,如可执行指令、数据,等等。例如,机器可读存储介质可以是:易失存储器、非易失性存储器或者类似的存储介质。具体地,机器可读存储介质1203可以是RAM(Radom Access Memory,随机存取存储器)、闪存、存储驱动器(如硬盘驱动器)、固态硬盘、任何类型的存储盘(如光盘、DVD等),或者类似的存储介质,或者它们的组合。
参见图13,图13是本申请一示例性实施例示出的另一种图像传输装置的框图,该装置可应用在接收端设备上,可包括如下所示单元。
图像分量数据集合确定单元1301,用于从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;
拼接信息确定单元1302,用于确定与所述一路目标视频图像数据对应的指定拼接信息;
获取单元1303,用于针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;
恢复单元1304,用于针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
可选的,所述拼接信息确定单元1302,在确定与所述一路目标视频图像数据对应的指定拼接信息时,用于从任意图像分量数据集合中获取所述指定拼接信息;和/或,从所述发送端设备发送的与所述一路目标视频图像数据对应的控制信息包中获取所述指定拼接信息。
此外,本申请还提供一种计算机可读存储介质,该计算机可读存储介质可应用在接收端设备上,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述图像传输方法。
此外,本申请还提供一种计算机可读存储介质,该计算机可读存储介质可应用在发送端设备上,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述图像传输方法。
此外,本申请还提供一种计算机程序,该计算机程序可应用在发送端设备上,计算机程序存储于计算机可读存储介质,并且当处理器执行计算机程序时,促使处理器实现上述图像传输方法。
此外,本申请还提供一种计算机程序,该计算机程序可应用在接收端设备上,计算机程序存储于计算机可读存储介质,并且当处理器执行计算机程序时,促使处理器实现上述图像传输方法。
此外,本申请还提供一种图像传输系统,所述图像传输系统包括:发送端设备和接收端设备;
所述发送端设备,用于执行图2所示的图像传输方法;
所述接收端设备,用于执行图9所示的图像传输方法。
在实现时,发送端设备,用于将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频数据以及指定拼接信息传输给接收端设备;
接收端设备,用于从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;确定与所述一路目标视频图像数据对应的指定拼接信息;针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
可选的,所述指定拼接信息包括:至少两路视频图像数据的路数、以及每一路视频图像数据中对应每一分量类型的图像分量数据在该图像分量数据所在的图像分量数据集合中的位置信息。
可选的,所述发送端设备,在将所述一路目标视频数据以及指定拼接信息传输给接收端设备时,用于将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备;和/或,将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备;
所述接收端设备,在确定与所述一路目标视频图像数据对应的指定拼接信息时,用于从任意图像分量数据集合中获取所述指定拼接信息;和/或,从所述发送端设备发送的与所述一路目标视频图像数据对应的控制信息包中获取所述指定拼接信息。
可选的,所述发送端设备,还用于确定已获得的所述接收端设备的EDID信息是否指示所述接收端设备支持图像分量数据拼接的解析;当所述接收端设备支持图像分量数据拼接的解析时执行所述方法。
可选的,所述发送端设备,在将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合时,用于针对每一图像分量类型,依据已确定的输出分辨率A*B,构造与该图像分量类型对应的图像分量数据集合;所述图像分量数据集合包括A*B个填充位;从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据;将获取到的一路视频图像数据中对应该图像分量类型的图像分量数据依次填充在所述图像分量数据集合的指定填充位上;在确定所述图像分量数据集合有剩余的未进行填充操作的指定填充位、且所述待发送的多路视频图像数据中有未进行填充操作的任意路视频图像数据时,返回所述从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据的步骤;在确定所述图像分量数据集合没有剩余的未进行填充操作的指定填充位、或者待发送的多路视频图像数据中没有未进行填充操作的任意路视频图像数据时,将当前记录的图像分量数据集合作为与该图像分量类型对应的图像分量数据集合。
可选的,所述发送端设备,依据已确定出的输出帧率周期性执行的上述图像传输方法;
所述输出分辨率与所述输出帧率是依据所述发送端设备和接收端设备之间的用于传输所述一路目标视频图像数据的链路的带宽确定的;
所述输出分辨率与所述输出帧率之积大于所述至少两路视频图像数据中的每一路视频图像数据的原始分辨率和原始帧率的乘积之和。
可选的,所述发送端设备,在将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上。
可选的,每个填充位具有M个比特位;所述发送端设备,在将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1。
可选的,图像分量数据集合中的非指定填充位位于该图像分量数据集合的第一行,图像分量数据集合中的指定填充位位于该图像分量数据集合的除第一行外的其他行。
可选的,所述EDID信息包括扩展字段;
所述扩展字段包括:拼接类型;或者,所述扩展字段包括:拼接类型和最大拼接路数;
所述拼接类型用于指示所述接收端设备是否支持图像分量数据拼接的解析;
所述最大拼接路数用于指示所述发送端设备所支持拼接的视频图像数据的最大路数。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本申请方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
以上所述仅为本申请的较佳实施例而已,并不用以限制本申请,凡在本申请的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本申请保护的范围之内。
Claims (19)
1.一种图像传输方法,其特征在于,所述方法应用于发送端设备,包括:
将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;
基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频图像数据以及指定拼接信息传输给接收端设备;
其中,所述指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
2.根据权利要求1所述的方法,其特征在于,所述指定拼接信息包括:至少两路视频图像数据的路数、以及每一路视频图像数据中对应每一分量类型的图像分量数据在该图像分量数据所在的图像分量数据集合中的位置信息。
3.根据权利要求1所述的方法,其特征在于,所述将所述一路目标视频图像数据以及指定拼接信息传输给接收端设备,包括:
将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备;
和/或,
将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备。
4.根据权利要求1所述的方法,其特征在于,所述方法之前还包括:
确定已获得的所述接收端设备的EDID信息是否指示所述接收端设备支持图像分量数据拼接的解析;
当所述接收端设备支持图像分量数据拼接的解析时执行所述方法。
5.根据权利要求3所述的方法,其特征在于,将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合,包括:
针对每一图像分量类型,依据已确定的输出分辨率A*B,构造与该图像分量类型对应的图像分量数据集合;所述图像分量数据集合包括A*B个填充位;
从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据;
将获取到的一路视频图像数据中对应该图像分量类型的图像分量数据依次填充在所述图像分量数据集合的指定填充位上;
在确定所述图像分量数据集合有剩余的未进行填充操作的指定填充位、且所述待发送的多路视频图像数据中有未进行填充操作的任意路视频图像数据时,返回所述从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据的步骤;
在确定所述图像分量数据集合没有剩余的未进行填充操作的指定填充位、或者待发送的多路视频图像数据中没有未进行填充操作的任意路视频图像数据时,将当前记录的图像分量数据集合作为与该图像分量类型对应的图像分量数据集合。
6.根据权利要求5所述的方法,其特征在于,所述方法是依据已确定出的输出帧率周期性执行的;
所述输出分辨率与所述输出帧率是依据所述发送端设备和接收端设备之间的用于传输所述一路目标视频图像数据的链路的带宽确定的;
所述输出分辨率与所述输出帧率之积大于所述至少两路视频图像数据中的每一路视频图像数据的原始分辨率和原始帧率的乘积之和。
7.根据权利要求5所述的方法,其特征在于,所述将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,包括:
将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上。
8.根据权利要求7所述的方法,其特征在于,每个填充位具有M个比特位;
所述将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上,包括:
将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1。
9.根据权利要求7所述的方法,其特征在于,图像分量数据集合中的非指定填充位位于该图像分量数据集合的第一行,图像分量数据集合中的指定填充位位于该图像分量数据集合的除第一行外的其他行。
10.根据权利要求4所述的方法,其特征在于,所述EDID信息包括扩展字段;
所述扩展字段包括:拼接类型;或者,所述扩展字段包括:拼接类型和最大拼接路数;
所述拼接类型用于指示所述接收端设备是否支持图像分量数据拼接的解析;
所述最大拼接路数用于指示所述发送端设备所支持拼接的视频图像数据的最大路数。
11.一种图像传输方法,其特征在于,所述方法应用于接收端设备,包括:
从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;
确定与所述一路目标视频图像数据对应的指定拼接信息;
针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;
针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
12.根据权利要求11所述的方法,其特征在于,所述确定与所述一路目标视频图像数据对应的指定拼接信息,包括:
从任意图像分量数据集合中获取所述指定拼接信息;
和/或,
从所述发送端设备发送的与所述一路目标视频图像数据对应的控制信息包中获取所述指定拼接信息。
13.一种图像传输装置,其特征在于,所述装置应用于发送端设备,包括:
拼接单元,用于将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合;其中,所述待传输的至少两路视频图像数据的图像格式相同;所述图像分量类型与所述图像格式对应;
发送单元,用于基于不同图像分量类型对应的图像分量数据集合,构造待传输的一路目标视频图像数据,并将所述一路目标视频图像数据以及指定拼接信息传输给接收端设备;
其中,所述指定拼接信息用于指示所述接收端设备依据所述指定拼接信息从所述不同图像分量类型对应的图像分量数据集合中恢复出所述至少两路视频图像数据。
14.根据权利要求13所述的装置,其特征在于,所述指定拼接信息包括:至少两路视频图像数据的路数、以及每一路视频图像数据中对应每一分量类型的图像分量数据在该图像分量数据所在的图像分量数据集合中的位置信息;
所述发送单元,在将所述一路目标视频图像数据以及指定拼接信息传输给接收端设备时,用于将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合中,并将所述一路目标视频图像数据发送给接收端设备;和/或,将所述指定拼接信息携带在所述一路目标视频图像数据的控制信息包中,将所述一路目标视频图像数据和所述控制信息包发送给所述接收端设备;
所述装置还包括:检查单元,用于确定已获得的所述接收端设备的EDID信息是否指示所述接收端设备支持图像分量数据拼接的解析;当所述接收端设备支持图像分量数据拼接的解析时触发所述拼接单元;
所述拼接单元,在将待传输的至少两路视频图像数据中对应同一图像分量类型的图像分量数据进行拼接,得到该图像分量类型对应的图像分量数据集合时,用于针对每一图像分量类型,依据已确定的输出分辨率A*B,构造与该图像分量类型对应的图像分量数据集合;所述图像分量数据集合包括A*B个填充位;从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据;将获取到的一路视频图像数据中对应该图像分量类型的图像分量数据依次填充在所述图像分量数据集合的指定填充位上;在确定所述图像分量数据集合有剩余的未进行填充操作的指定填充位、且所述待发送的多路视频图像数据中有未进行填充操作的任意路视频图像数据时,返回所述从待发送的多路视频图像数据中,获取未进行填充操作的一路视频图像数据的步骤;在确定所述图像分量数据集合没有剩余的未进行填充操作的指定填充位、或者待发送的多路视频图像数据中没有未进行填充操作的任意路视频图像数据时,将当前记录的图像分量数据集合作为与该图像分量类型对应的图像分量数据集合;
所述装置所执行的操作是依据已确定出的输出帧率周期性执行的;所述输出分辨率与所述输出帧率是依据所述发送端设备和接收端设备之间的用于传输所述一路目标视频图像数据的链路的带宽确定的;所述输出分辨率与所述输出帧率之积大于所述至少两路视频图像数据中的每一路视频图像数据的原始分辨率和原始帧率的乘积之和;
所述发送单元,在将指定拼接信息携带在所述一路目标视频图像数据中的任一图像分量数据集合时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上;
每个填充位具有M个比特位;
所述发送单元,在将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位上时,用于将所述指定拼接信息填充在任一图像分量类型对应的图像分量数据集合的非指定填充位的高N位比特位上,并设置填充了拼接信息的非指定填充位的低M-N位比特位上的取值为指定值,以使得低M-N位比特位的取值表示2M-N-1-1;
图像分量数据集合中的非指定填充位位于该图像分量数据集合的第一行,图像分量数据集合中的指定填充位位于该图像分量数据集合的除第一行外的其他行;
所述EDID信息包括扩展字段;所述扩展字段包括:拼接类型;或者,所述扩展字段包括:拼接类型和最大拼接路数;所述拼接类型用于指示所述接收端设备是否支持图像分量数据拼接的解析;所述最大拼接路数用于指示所述发送端设备所支持拼接的视频图像数据的最大路数。
15.一种图像传输装置,其特征在于,所述装置应用于接收端设备,包括:
图像分量数据集合确定单元,用于从发送端设备发送的一路目标视频图像数据,确定与各图像分量类型对应的图像分量数据集合;其中,图像分量类型对应的图像分量数据集合是由至少两路视频图像数据中对应该图像分量类型的图像分量数据拼接而成的;
拼接信息确定单元,用于确定与所述一路目标视频图像数据对应的指定拼接信息;
获取单元,用于针对每一图像分量类型对应的图像分量数据集合,基于所述指定拼接信息,从该图像分量数据集合中,获取至少两路视频图像数据中对应该图像分量类型的图像分量数据;
恢复单元,用于针对每一路视频图像数据,基于从各图像分量数据集合中获取的与该路视频图像数据对应的各类型图像分量数据,恢复该路视频图像数据。
16.根据权利要求15所述的装置,其特征在于,所述拼接信息确定单元,在确定与所述一路目标视频图像数据对应的指定拼接信息时,用于从任意图像分量数据集合中获取所述指定拼接信息;和/或,从所述发送端设备发送的与所述一路目标视频图像数据对应的控制信息包中获取所述指定拼接信息。
17.一种发送端设备,其特征在于,所述发送端设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现权利要求1-10任一所述方法的步骤。
18.一种接收端设备,其特征在于,所述接收端设备包括可读存储介质和处理器;
其中,所述可读存储介质,用于存储机器可执行指令;
所述处理器,用于读取所述可读存储介质上的所述机器可执行指令,并执行所述指令以实现权利要求11-12任一所述方法的步骤。
19.一种图像传输系统,其特征在于,所述图像传输系统包括:发送端设备和接收端设备;
所述发送端设备,用于执行权利要求1-10任一所述方法的步骤;
所述接收端设备,用于执行权利要求11-12任一所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110763649.9A CN113573098B (zh) | 2021-07-06 | 2021-07-06 | 一种图像传输方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110763649.9A CN113573098B (zh) | 2021-07-06 | 2021-07-06 | 一种图像传输方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113573098A CN113573098A (zh) | 2021-10-29 |
CN113573098B true CN113573098B (zh) | 2022-11-01 |
Family
ID=78163836
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110763649.9A Active CN113573098B (zh) | 2021-07-06 | 2021-07-06 | 一种图像传输方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113573098B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117156189A (zh) * | 2023-02-27 | 2023-12-01 | 荣耀终端有限公司 | 投屏显示方法及电子设备 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101218831B (zh) * | 2005-09-20 | 2010-07-21 | 三菱电机株式会社 | 图像解码方法以及图像解码装置 |
WO2007107948A1 (en) * | 2006-03-21 | 2007-09-27 | Koninklijke Philips Electronics N.V. | Video transmission over a data link with limited capacity |
CN104349106B (zh) * | 2014-10-31 | 2018-11-02 | 广东威创视讯科技股份有限公司 | 处理、获取多路视频信号的方法及其系统 |
CN109429037B (zh) * | 2017-09-01 | 2021-06-29 | 杭州海康威视数字技术股份有限公司 | 一种图像处理方法、装置、设备及系统 |
CN109618110A (zh) * | 2018-12-24 | 2019-04-12 | 大陆汽车车身电子系统(芜湖)有限公司 | 多路视频传输系统 |
-
2021
- 2021-07-06 CN CN202110763649.9A patent/CN113573098B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN113573098A (zh) | 2021-10-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3053335B1 (en) | Transmitting display management metadata over hdmi | |
JP5736389B2 (ja) | 軽減チャンネルフォーマットでの多チャンネル信号の送信及び検出 | |
US20060013297A1 (en) | Moving picture decoding method, moving picture decoding program, moving picture decoding apparatus, moving picture encoding method, moving picture encoding program, and moving picture encoding apparatus | |
KR101677223B1 (ko) | 픽셀 반복 대역폭을 이용하여 비디오 및 오디오 스트림들 결합 | |
CN113573098B (zh) | 一种图像传输方法、装置及电子设备 | |
CN113498596B (zh) | 一种基于PCIe的数据传输方法及装置 | |
JP2006311508A (ja) | データ伝送システムとその送信側装置及び受信側装置 | |
CN104883623A (zh) | 一种头戴显示器视频控制方法和电路 | |
CN109889913B (zh) | 一种网络环境中的数据丢包的分析方法 | |
CN117597918A (zh) | 信号传输方法、信号发送端、信号接收端及激光投影设备 | |
JP6176168B2 (ja) | 伝送装置および伝送方法、受信装置および受信方法、伝送システム、並びにプログラム | |
CN101175222B (zh) | 色再现校正电路和校正方法 | |
CN113498597A (zh) | 一种基于PCIe的数据传输方法及装置 | |
CN113196720B (zh) | 数据处理方法及传输设备、数据处理系统 | |
US7233592B1 (en) | Packet transfer control circuit | |
CN111373736A (zh) | 接口时序转化装置、图像数据处理方法、传输方法及系统、存储介质 | |
US8681879B2 (en) | Method and apparatus for displaying video data | |
JP6398241B2 (ja) | パケット生成装置及びプログラム | |
CN115225775B (zh) | 多通道的延迟修正方法、装置、计算机设备 | |
CN116112456B (zh) | 一种基于bap协议的数据缓存方法、装置、设备及介质 | |
US20200236200A1 (en) | Multimedia communication bridge | |
JP6813637B1 (ja) | 伝送装置および伝送方法 | |
CN113454935B (zh) | 一种线路编码方法及装置 | |
WO2016152550A1 (ja) | 伝送装置および伝送方法、受信装置および受信方法、伝送システム、並びにプログラム | |
US20150189108A1 (en) | Transmission circuit and camera system |
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 |