Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
METHOD AND APPARATUS FOR PROCESSING VIDEO STREAM
Document Type and Number:
WIPO Patent Application WO/2014/059788
Kind Code:
A1
Abstract:
Embodiments of the present invention provide a method and an apparatus for processing a video stream. The method comprises: acquiring a request message from a terminal, the request message carrying address information of multiple sub video screens; acquiring, according to the address information, multiple substreams that correspond to the multiple sub video screens in a one-to-one manner; merging the multiple substreams into a single stream, and generating an indication message used to indicate a picture parameter of the single stream; and sending the single stream and the indication message to the terminal, so that the terminal decodes the single stream according to the indication message and displays the multiple sub video screens. In the embodiments of the present invention, multiple substreams are merged into a single stream, and a terminal can displaying multiple sub video screens by decoding the single stream, so that switching between decoding of the multiple substreams is not required, thereby improving the decoding performance of the terminal.

Inventors:
WANG DONG (CN)
HU CHANGQI (CN)
DI PEIYUN (CN)
YAO JUN (CN)
LIU XIN (CN)
Application Number:
PCT/CN2013/075650
Publication Date:
April 24, 2014
Filing Date:
May 15, 2013
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
HUAWEI TECH CO LTD (CN)
International Classes:
H04N7/08; H04N5/45
Foreign References:
CN101442650A2009-05-27
CN101742155A2010-06-16
CN1581949A2005-02-16
Other References:
None
Attorney, Agent or Firm:
LONGSUN LEAD IP LTD. (CN)
北京龙双利达知识产权代理有限公司 (CN)
Download PDF:
Claims:
权利要求

1. 一种处理视频码流的方法, 其特征在于, 包括:

从终端获取请求消息, 所述请求消息携带多个子视频画面的地址信息; 居所述地址信息, 获取与所述多个子视频画面——对应的多个子码 流 ^

将所述多个子码流合成为单码流, 并生成用于指示所述单码流的图像参 数的指示消息;

向所述终端发送所述单码流和所述指示消息, 以便所述终端根据所述指 示消息解码所述单码流并显示所述多个子视频画面。

2. 根据权利要求 1所述的方法, 其特征在于, 所述将所述多个子码流 合成为单码流, 并生成用于指示所述单码流的图像参数的指示消息, 包括: 按照所述多个子视频画面的从上至下的排列方式,将所述多个子码流进 行排列并合成为所述单码流;

生成所述指示消息, 所述指示消息包括第一信息和每个子码流的分片数 据信息, 其中所述第一信息指示所述单码流的图像尺寸参数, 所述每个子码 流的分片数据信息指示所述每个子码流在所述单码流中的起始位置。

3. 根据权利要求 1所述的方法, 其特征在于, 所述请求消息还携带布 局信息, 所述布局信息指示所述多个子视频画面的布局方式;

所述将所述多个子码流合成为单码流包括:

按照所述布局方式,将所述多个子码流进行排列,并合成为所述单码流。

4. 根据权利要求 3所述的方法, 其特征在于, 所述生成用于指示所述 单码流的图像参数的指示消息, 包括:

生成所述指示消息, 所述指示消息包括第一信息、 第二信息和每个子码 流的分片数据信息,

其中所述第一信息指示所述单码流的图像尺寸参数,所述第二信息指示 所述每个子码流的片组参数, 所述每个子码流的分片数据信息指示所述每个 子码流在所述单码流中的起始位置。

5. 根据权利要求 3所述的方法, 其特征在于, 所述生成用于指示所述 单码流的图像参数的指示消息, 包括:

生成所述指示消息, 所述指示消息包括第三信息,

其中所述第三信息指示所述单码流的图像尺寸参数、 所述子码流的数 目、每个子码流在所述单码流中的位置参数以及所述每个子码流中的分片数 。

6. 根据权利要求 5所述的方法, 其特征在于, 所述指示消息还包括所 述每个子码流的图像信息和所述每个子码流的片组信息, 所述每个子码流的 图像信息指示所述每个子码流的图像尺寸参数, 所述每个子码流的片组信息 指示所述每个子码流的片组参数。

7. 根据权利要求 3所述的方法, 其特征在于, 所述生成用于指示所述 单码流的图像参数的指示消息, 包括:

生成所述指示消息, 所述指示消息包括第一信息和附加信息,

其中所述第一信息指示所述单码流的图像尺寸参数,所述附加信息指示 所述子码流的数目、每个子码流在所述单码流中的位置参数以及所述每个子 码流中的分片数目。

8. 根据权利要求 1所述的方法, 其特征在于, 所述请求消息还携带布 局信息, 所述布局信息指示所述多个子视频画面的布局方式为 N宫格方式, 其中 N为大于或等于 2的正整数;

所述将所述多个子码流合成为单码流包括:

将每个子码流复制 N个备份,并按照所述 N宫格方式对每个子码流的 N 个备份进行排列;

根据所述布局方式中每个子码流对应的子视频画面的位置,从所述每个 子码流的 N 个备份中选取相应位置处的备份, 并将选取的备份合成为单码 流。

9. 根据权利要求 2至 7中任一项所述的方法, 其特征在于, 每个子码 流被编码过程中,运动矢量指向的参考图像被设置为不跨出所述每个子码流 对应的图像边界。

10. 一种处理视频码流的装置, 其特征在于, 包括:

第一获取单元, 用于从终端获取请求消息, 所述请求消息携带多个子视 频画面的地址信息;

第二获取单元, 用于根据所述地址信息, 获取与所述多个子视频画面一 一对应的多个子码流;

生成单元, 用于将所述多个子码流合成为单码流, 并生成用于指示所述 单码流的图像参数的指示消息; 发送单元, 用于向所述终端发送所述单码流和所述指示消息, 以便所述 终端根据所述指示消息解码所述单码流并显示所述多个子视频画面。

11. 根据权利要求 10所述的装置, 其特征在于, 所述生成单元具体用 于按照所述多个子视频画面的从上至下的排列方式,将所述多个子码流进行 排列并合成为所述单码流; 生成所述指示消息, 所述指示消息包括第一信息 和每个子码流的分片数据信息, 其中所述第一信息指示所述单码流的图像尺 寸参数,所述每个子码流的分片数据信息指示所述每个子码流在所述单码流 中的起始位置。

12. 根据权利要求 10所述的装置, 其特征在于, 所述请求消息还携带 布局信息, 所述布局信息指示所述多个子视频画面的布局方式;

所述生成单元具体用于按照所述布局方式, 将所述多个子码流进行排 歹 ij , 并合成为所述单码流。

13. 根据权利要求 12所述的装置, 其特征在于, 所述生成单元具体用 于生成所述指示消息, 所述指示消息包括第一信息、 第二信息和每个子码流 的分片数据信息, 其中所述第一信息指示所述单码流的图像尺寸参数, 所述 第二信息指示所述每个子码流的片组参数, 所述每个子码流的分片数据信息 指示所述每个子码流在所述单码流中的起始位置。

14. 根据权利要求 12所述的装置, 其特征在于, 所述生成单元具体用 于生成所述指示消息, 所述指示消息包括第三信息, 其中所述第三信息指示 所述单码流的图像尺寸参数、 所述子码流的数目、 每个子码流在所述单码流 中的位置参数以及所述每个子码流中的分片数目。

15. 根据权利要求 14所述的装置, 其特征在于, 所述指示消息还包括 所述每个子码流的图像信息和所述每个子码流的片组信息, 所述每个子码流 的图像信息指示所述每个子码流的图像尺寸参数, 所述每个子码流的片组信 息指示所述每个子码流的片组参数。

16. 根据权利要求 12所述的装置, 其特征在于, 所述生成单元具体用 于生成所述指示消息, 所述指示消息包括第一信息和附加信息, 其中所述第 一信息指示所述单码流的图像尺寸参数, 所述附加信息指示所述子码流的数 目、每个子码流在所述单码流中的位置参数以及所述每个子码流中的分片数 目。

17. 根据权利要求 10所述的装置, 其特征在于, 所述请求消息还携带 布局信息, 所述布局信息指示所述多个子视频画面的布局方式为 N 宫格方 式, 其中 N为大于或等于 2的正整数;

所述生成单元具体用于将每个子码流复制 N个备份, 并按照所述 N宫 格方式对每个子码流的 N个备份进行排列;根据所述布局方式中每个子码流 对应的子视频画面的位置,从所述每个子码流的 N个备份中选取相应位置处 的备份, 并将选取的备份合成为单码流。

18. 根据权利要求 11至 16中任一项所述的装置, 其特征在于, 所述第 二获取单元获取的每个子码流被编码过程中,运动矢量指向的参考图像被设 置为不跨出所述每个子码流对应的图像边界。

Description:
处理视频码流的方法及装置 本申请要求于 2012 年 10 月 17 日提交中国专利局、 申请号为 201210394231.6、 发明名称为 "处理视频码流的方法及装置" 的中国专利申 请的优先权, 其全部内容通过引用结合在本申请中。 技术领域

本发明涉及信息技术领域, 并且具体地, 涉及处理视频码流的方法及装 置。 背景技术

随着视频编解码技术和网络技术的发展, 流媒体技术得到了广泛应用。 例如, 用户可以通过点播等方式, 预览某种类型的电影或其它视频片段, 这 样需要在终端上同时显示多个缩小版的视频片 段。一个比较直接的解决方式 是终端从服务器获取这些视频片段对应的多个 码流,对这些码流进行解码并 在相应位置上播放。

目前, 手持或非个人电脑(Personal Computer, PC )形态的终端所使用 的处理器一般采用硬件解码, 即在处理器中嵌入硬件解码内核。 不过, 并不 是所有处理器都支持多码流解码。 在支持多码流解码的芯片中, 大都采用分 时的方法处理该问题, 即在解码内核中采用时分的方式同时解码多个 码流, 比如 PowerVR的图形核心系列。 不过, 采用这种时分方式需要各个码流之 间解码过程的切换, 因此导致了解码性能的损失, 同时增加了额外的控制逻 辑。 发明内容

本发明实施例提供处理视频码流的方法及装置 , 能够提高终端的解码性 h

匕。

一方面,提供了一种处理视频码流的方法, 包括:从终端获取请求消息, 该请求消息携带多个子视频画面的地址信息; 根据该地址信息, 获取与多个 子视频画面——对应的多个子码流; 将多个子码流合成为单码流, 并生成用 于指示该单码流的图像参数的指示消息; 向该终端发送该单码流和该指示消 息, 以便该终端根据该指示消息解码该单码流并显 示多个子视频画面。 另一方面, 提供了一种处理视频码流的装置, 包括: 第一获取单元, 用 于从终端获取请求消息, 该请求消息携带多个子视频画面的地址信息; 第二 获取单元, 用于根据该地址信息, 获取与多个子视频画面——对应的多个子 码流; 生成单元, 用于将多个子码流合成为单码流, 并生成用于指示该单码 流的图像参数的指示消息; 发送单元, 用于向该终端发送该单码流和该指示 消息, 以便该终端根据该指示消息解码该单码流并显 示多个子视频画面。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能。 附图说明

为了更清楚地说明本发明实施例的技术方案, 下面将对本发明实施例中 所需要使用的附图作筒单地介绍, 显而易见地, 下面所描述的附图仅仅是本 发明的一些实施例, 对于本领域普通技术人员来讲, 在不付出创造性劳动的 前提下, 还可以根据这些附图获得其他的附图。

图 1是可应用本发明实施例的网络场景的一个例 的示意图。

图 2是根据本发明实施例的处理视频码流的方法 示意性流程图。 图 3是根据本发明一个实施例的处理视频码流的 法的过程的示意性流 程图。

图 4是采用图 3的实施例进行合成与解码单码流的过程的一 例子的示 意图。

图 5是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。

图 6是采用图 5的实施例合成单码流的过程的一个例子的示 图。 图 7是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。

图 8是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。

图 9是采用图 8的实施例合成单码流的过程的一个例子的示 图。 图 10是根据本发明另一实施例的合成单码流的过 的示意图。 图 11是根据本发明实施例的处理视频码流的装置 示意框图。

图 12是根据本发明实施例的处理视频码流的装置 示意框图。 具体实施方式

下面将结合本发明实施例中的附图,对本发明 实施例中的技术方案进行 清楚、 完整地描述, 显然, 所描述的实施例是本发明的一部分实施例, 而不 是全部实施例。 基于本发明中的实施例, 本领域普通技术人员在没有做出创 造性劳动的前提下所获得的所有其他实施例, 都应属于本发明保护的范围。

图 1是可应用本发明实施例的网络场景的一个例 的示意图。 应注意, 图 1的例子只是为了帮助本领域技术人员更好地 解本发明实施例, 而非限 制本发明实施例的范围。

在图 1中, 服务器 110可以是流媒体技术中的服务器, 比如流媒体服务 器。 终端 120可以是能够播放流媒体的终端, 例如可以是移动电话、 便携式 计算机、 个人数字助理或便携式多媒体机等。

在流媒体技术中, 服务器 110中可以存储有多个媒体文件, 比如电影或 服务器 110 可以在收到请求后将需要访问的媒体文件通过 网络下发给终端 120, 由终端 120进行播放。

在终端 120处由于预览、 点播等原因, 存在在终端 120上同时解码显示 多个小画面的需求。 例如, 用户在点播环境中希望预览某种类型的电影或 其 它视频片段, 在终端上会同时显示多个缩小版的视频片段, 而不是单一的视 频片段。 这些小画面的组合可以是动态且多样化的。 例如, 在图 1所示的终 端 120上, 由于点播等需求, 可以同时显示 9个小画面。 应注意, 此处的数 字只是举例说明, 而非限制本发明实施例的范围。

为了使终端 120能够显示多个小画面, 需要对视频码流进行处理。 下面 将详细描述本发明实施例的处理视频码流的方 法。

图 2是根据本发明实施例的处理视频码流的方法 示意性流程图。 图 2 的方法由处理视频码流的装置执行。

210, 从终端获取请求消息, 该请求消息携带多个子视频画面的地址信 息。

本发明实施例中,多个子视频画面可以是用户 通过终端点播的视频或者 用户通过终端定制的视频等。 多个子视频画面的地址信息可以包括统一资源 定位符 (uniform resource locator, url ), 也可以包括其它的地址内容, 本发 明实施例对此不作限定。

220, 根据该地址信息, 获取与多个子视频画面——对应的多个子码流 。

230, 将多个子码流合成为单码流, 并生成用于指示该单码流的图像参 数的指示消息。

240, 向终端发送该单码流和该指示消息, 以便终端根据该指示消息解 码该单码流并显示多个子视频画面。

本发明实施例中,处理视频码流的装置可以将 多个子码流直接合成为单 码流, 而无需先对多个子码流进行解码, 再将解码得到的多个子视频进行重 新压缩编码为单码流, 因此能够提高处理效率。 此外, 终端通过解码单码流 就能够显示多个子视频画面, 这样终端只要支持正常的视频解码即可, 无需 同时解码多个子码流并进行解码切换, 从而能够提高终端的解码性能, 并能 够提高业务实现的便利性。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

可选地, 作为一个实施例, 在步骤 230中, 处理视频码流的装置可以按 照多个子视频画面的从上至下的排列方式,将 多个子码流进行排列并合成为 单码流, 并生成指示消息, 该指示消息包括第一信息和每个子码流的分片 ( slice )数据信息, 其中第一信息可以指示单码流的图像尺寸参数 , 每个子 码流的分片数据信息指示每个子码流在单码流 中的起始位置。

具体地, 每个子码流的帧结构可以是相同的, 即每个子码流的每帧图像 的图像类型可以是相同的, 则每个子码流中每帧图像的宽度可以是相同的 。 处理视频码流的装置可以按照从上至下的方式 将多个子码流的每帧图像进 行排列, 合成为单码流的每帧图像。 第一信息所指示的单码流的图像尺寸参 数可以包括单码流中每帧图像的高度和宽度, 单码流中每帧图像的高度可以 是多个子码流的图像的高度之和。 由于按照从上至下的方式合成单码流, 因 此单码流中每帧图像的宽度可以是每个子码流 的图像的宽度。

本发明实施例中, 由于处理视频码流的装置是按照从上至下的方 式将多 个子码流合成单码流, 因此, 终端可以在解码单码流后, 可以按照终端所需 要的多个子视频画面的布局方式将对应的多个 子码流进行排列,从而按照需 要的布局方式显示多个子视频画面。

可选地, 作为另一实施例, 在步骤 210中, 该请求消息还可以携带布局 信息, 该布局信息可以指示多个子视频画面的布局方 式。 在步骤 230中, 处 理视频码流的装置可以按照该布局方式, 将多个子码流进行排列, 并合成为 单码流。

本发明实施例中,处理视频码流的装置按照终 端请求的布局方式将多个 子码流进行排列, 并合成为单码流, 因此终端在解码单码流后, 无需再对多 个子码流进行重新排列, 可以直接按照布局方式显示多个子视频画面, 能够 提高业务实现的便利性。

可选地, 作为另一实施例, 在步骤 230中, 处理视频码流的装置可以按 照该布局方式, 将多个子码流进行排列, 并合成为单码流。 那么处理视频码 流的装置可以生成指示消息, 该指示消息包括第一信息、 第二信息和每个子 码流的分片数据信息, 其中第一信息可以指示单码流的图像尺寸参数 , 第二 信息可以指示每个子码流的片组(slice group )参数, 每个子码流的分片数 据信息可以指示每个子码流在单码流中的起始 位置。

具体地, 每个子码流的帧结构可以是相同的, 即每个子码流的每帧图像 的图像类型可以是相同的。 第一信息所指示的单码流的图像尺寸参数可以 包 括单码流中每帧图像的高度和宽度。第二信息 所指示的每个子码流的片组参 数可以包括每个子码流的片组类型、每个子码 流的片组数目以及每个子码流 中每个分片的位置参数等。

可选地, 作为另一实施例, 在步骤 230中, 处理视频码流的装置可以按 照该布局方式, 将多个子码流进行排列, 并合成为单码流。 那么处理视频码 流的装置可以生成指示消息, 指示消息包括第三信息, 其中第三信息可以指 示单码流的图像尺寸参数、 子码流的数目、 每个子码流在单码流中的位置参 数以及每个子码流中的分片数目。

具体地, 每个子码流的帧结构可以是相同的。 处理视频码流的装置可以 通过第三信息指示单码流的相关参数。 其中, 单码流的图像尺寸参数可以包 括单码流中每帧图像的高度和宽度。

此外, 第三信息可以位于单码流的第一个分片之前, 终端收到第三信息 后, 可以按照第三信息所指示的参数解码单码流。 如果终端没有收到第三信 息, 那么可以按照现有技术解码接收到的子码流。

可选地, 作为另一实施例, 在步骤 230中, 除了指示消息包括的第三信 息之外 ,指示消息还可以包括每个子码流的图像信息 每个子码流的片组信 息, 每个子码流的图像信息可以指示每个子码流的 图像尺寸参数, 每个子码 流的片组信息指示每个子码流的片组参数。

具体地, 指示消息可以通过第三信息指示单码流的相关 参数, 还可以包 括每个子码流的具体参数。 这样, 在每个子码流的帧结构不相同的情况下, 终端可以根据第三信息解码单码流, 并根据每个子码流的图像信息和片组信 息解码每个子码流。每个子码流的图像信息和 片组信息可以位于每个子码流 的第一个分片之前。 因此本发明实施例能够适用于多个子码流的帧 结构不相 同的情况。

可选地, 作为另一实施例, 在步骤 230中, 处理视频码流的装置可以按 照该布局方式, 将多个子码流进行排列, 并合成为单码流。 那么处理视频码 流的装置可以生成指示消息, 指示消息可以包括第一信息和附加信息, 其中 第一信息可以指示单码流的图像尺寸参数, 附加信息可以指示子码流的数 目、 每个子码流在单码流中的位置参数以及每个子 码流中的分片数目。

可选地, 作为另一实施例, 在上述多个子码流合成单码流的方式下, 每 个子码流被编码过程中,运动矢量指向的参考 图像可以被设置为不跨出每个 子码流对应的图像边界。 由于多个子码流合成单码流后, 每个子码流的图像 的边界可能不再是边界, 为了避免对合成的单码流解码错误, 需要将运动矢 量指向的参考图像设置为不跨出每个子码流对 应的图像边界。

可选地, 作为另一实施例, 在步骤 210中, 请求消息还可以携带布局信 息, 布局信息可以指示多个子视频画面的布局方式 为 Ν宫格方式, 其中 Ν 为大于或等于 2的正整数。 在步骤 230中, 将每个子码流复制 Ν个备份, 并 按照 Ν宫格方式对每个子码流的 Ν个备份进行排列; 根据布局方式中每个 子码流对应的子视频画面的位置,从每个子码 流的 Ν个备份中选取相应位置 处的备份, 并将选取的备份合成为单码流。

具体地,处理视频码流的装置可以将每个子码 流复制 Ν个备份,按照 Ν 宫格方式将每个子码流的 Ν个备份进行排列并存储, 这样每个子码流在 Ν 宫格不同位置的情况下均有备份。这样在终端 请求的布局方式为 Ν宫格方式 时,根据终端请求的 Ν宫格方式中每个子码流对应的子视频画面的 置,从 每个子码流的 Ν个备份中选取相应位置的备份, 将这些备份合成为单码流。 因此, 本发明实施例能够提高业务实现的便利性。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

下面将结合具体例子详细描述本发明实施例。 应注意, 这些例子是为了 帮助本领域技术人员更好地理解本发明实施例 , 而非限制本发明实施例的范 围。

图 3是根据本发明一个实施例的处理视频码流的 法的过程的示意性流 程图。 在图 3中, 以采用 H.264 (或 MPEG4 AVC PART 10 )标准进行编解 码为例进行说明。

301 , 处理视频码流的装置从终端获取请求消息, 请求消息携带多个子 视频画面的地址信息。

302, 处理视频码流的装置可以根据步骤 301 中的地址信息, 获取对应 的多个子码流。

例如, 地址信息可以包括 url。 处理视频码流的装置可以根据多个子视 频画面的 url, 从服务器获取多个子码流。

此处假设多个子码流的帧结构相同,也就是各 个子码流的每帧图像的图 像类型相同。

此外, 由于子码流合成单码流后, 每个子码流的图像边界可能不再是边 界, 因此每个子码流被编码过程中, 可以将运动矢量指向的参考图像设置为 不跨出每个子码流对应的图像边界。

303 , 处理视频码流的装置按照从上至下的方式, 将多个子码流进行排 歹 ij , 合成为单码流, 并生成指示消息, 该指示消息可以包括第一信息和每个 子码流的分片数据信息, 其中第一信息指示单码流的图像尺寸参数, 每个子 码流的分片数据信息指示每个子码流在单码流 中的起始位置。

具体地, 处理视频码流的装置可以将各个子码流的每帧 图像按照从上至 下的方式进行排列, 合成为单码流的每帧图像。 这样, 多个子码流的分片排 列方式仍然可以是光栅扫描(Raster Scan )方式, 不需要使用任意分片顺序 ( Arbitrary Slice Order )模式, 从而可以在非基线类( Baseline Profile )时合 成单码流。

根据 H.264标准中的参数定义, 第一信息可以是序列参数集(sequence parameter set, sps )信息, sps信息可以用于指示单码流的图像尺寸参数, sps 信息的生成过程可以如下:

(1) 由于每个子码流的 sps信息都是相同的, 处理视频码流的装置可以 选取任意一个子码流的 sps信息。

(2) 处理视频码流的装置可以解析出 sps 信息中 的参数 pic_height_in_map_units_minus 1 , 将该参数的值设置为单码流的图像的高度 值减 1 , 其中高度值的单位为映射单元(map unit )。根据子码流的不同定义, 一个映射单元可以包括一个宏块(Macroblock, MB )或两个宏块, 本发明 实施例对此不作限定。 由于多个子码流是按照从上至下的方式合成单 码流 的, 单码流的图像的宽度值为每个子码流的图像的 宽度值, 因此 sps信息中 的 参 数 pic_width_in_mbs_minus 1 可 以 保 持 不 变 , 参 数 pic_width_in_mbs_minus 1表示单码流的图像的宽度值减 1 , 其中宽度值的单 位为宏块。

(3) sps信息中的其它参数值可以保持不变, 其它参数的具体定义可参照 H.264标准。 处理视频码流的装置可以将 sps信息中其它参数对应的字节进 行对齐处理。

根据 H.263标准中的定义,每个子码流的分片数据信 中的分片头( slice header )数据可以指示每个子码流在单码流中的起始 置。 具体地, 处理视 频码流的装置将每个子码流的分片头数据中的 参数 first_mb_in_slice进行相 应的设置, 参数 first_mb_in_slice表示每个子码流的图像的第一个 块在单 码流的图像的位置, 也就是每个子码流在单码流中的起始位置。

此外, 每个子码流的分片数据信息中还可以包括帧编 号参数 frame_num 和即时解码刷新 ( Instantaneous Decoding Refresh , IDR ) 图像标识参数 idr_pic_id„ 将每个子码流的 frame_num和 idr_pic_id进行相应的设置。

304, 处理视频码流的装置向终端发送步骤 303中的单码流和指示消息。

305 , 终端根据指示消息解码单码流, 获得多个子码流, 将多个子码流 按照所需要的布局方式进行排列, 显示相应的多个子视频画面。

图 4是采用图 3的实施例进行合成与解码单码流的过程的一 例子的示 意图。 在图 4中, 假设子视频画面的数目为 9, 布局方式为 9宫格方式。 终 端在解码单码流后, 按照 9宫格方式排列 9个子码流进行显示。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

图 5是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。 在图 5中, 以采用 H.264 (或 MPEG4 AVC PART 10 )标准进行编解 码为例进行说明。

501 , 处理视频码流的装置从终端获取请求消息, 请求消息携带多个子 视频画面的地址信息和多个子视频画面的布局 信息, 该布局信息指示多个子 视频画面的布局方式。

502, 处理视频码流的装置根据步骤 501 中的地址信息, 获取对应的多 个子码流。

例如, 地址信息可以包括 url。 处理视频码流的装置可以根据多个子视 频画面的 url, 从服务器获取多个子码流。

此处假设多个子码流的帧结构相同,也就是各 个子码流的每帧图像的图 像类型相同。

此外, 由于子码流合成单码流后, 每个子码流的图像边界可能不再是边 界, 因此每个子码流被编码过程中, 可以将运动矢量指向的参考图像设置为 不跨出每个子码流对应的图像边界。

503 , 处理视频码流的装置根据步骤 501 中的布局方式, 将多个子码流 进行排列并合成为单码流,并生成指示消息, 该指示消息可以包括第一信息、 第二信息和每个子码流的分片数据信息, 其中第一信息指示单码流的图像尺 寸参数, 第二信息指示每个子码流的片组参数, 每个子码流的分片数据信息 指示每个子码流在单码流中的起始位置。

具体地, 处理视频码流的装置可以按照步骤 501中的布局方式, 将多个 子码流的每帧图像进行排列并合成为单码流的 每帧图像。 根据 H.264标准, 此时合成单码流需要使用任意分片顺序模式, 因此每个子码流可采用基线类 编码。

根据 H.264标准以及每个子码流中每帧图像包含的分 数目, 合成单码 流的情况可以分为以下两种:

(1)当每个子码流的每帧图像只包含一个分片 时, 可以使用 slice_group_map_type=2 的方式合成单码流, 即单码流的每帧图像由多个矩 形分片组成, 每个分片就是一个子码流。

(2)当每个子码流的每帧图像包含一个或多个分 片时, 可以使用 slice_group_map_type=6 的方式合成单码流, 即具体地标明每个映射单元属 于哪个分片。 单码流的每帧图像由多个矩形区域组成, 每个区域就是一个子 码流, 而每个区域内又包含一个或多个分片, 即对应的子码流的多个分片。

为了方便描述, 以下将以每个子码流的每帧图像包含一个分片 为例进行 说明, 但本发明实施例并不限于此, 对于每个子码流的每帧图像包含多个分 片的情况, 处理过程是类似的, 为了避免重复, 此处不再赘述。

根据 H.264标准的参数定义,第一信息可以是 sps信息。 sps信息可以指 示单码流的图像尺寸参数, sps信息的生成过程可以如下:

由于每个子码流的 sps信息都是相同的, 处理视频码流的装置可以选取 任意一个子码流的 sps 信息 , 解析 出 sps 信息 中 的 参数 pic_height_in_map_units_minus 1 和 pic_width_in_mbs_minus 1 , 将参数 pic_height_in_map_units_minus 1的值设置为单码流的图像的高度值减 1 , 其 中高度值的单位为映射单元。 将参数 pic_width_in_mbs_minus 1设置为单码 流的图像的宽度值减 1 ,其中宽度值的单位为宏块。 sps信息中的其它参数值 可以保持不变, 其它参数的具体定义可参照 H.264标准。 然后处理视频码流 的装置可以将 sps 信息中参数 pic_height_in_map_units_minus 1 和 pic_width_in_mbs_minus 1之后的字节进行对齐处理。

根据 H.264 标准的参数定义, 第二信息可以是图像参数集 (picture parameter set, pps )信息, pps信息可以指示每个子码流的片组参数, pps信 息的生成过程可以如下:

(1) 由于每个子码流的 pps信息是相同的, 处理视频码流的装置可以选 取任意一个子码流的 pps信息。

(2) 处理视频码流的装置可以设置 pps 信息中的片组类型参数 slice_group_map_type=2。

(3) 处 理 视 频 码 流 的 装 置 可 以 设 置 片 组 数 目 参数 num_slice_groups_minus 1为 9个子码流的总分片数减 1。

(4) 处理视频码流的装置可以为每个子码流的每个 分片设置左上位置的 值 top_left[]和右下位置的值 bottom_right[]。

(5) pps 信息中的其它参数可以保持不变, 其它参数的定义可以参照

H.264标准。处理视频码流的装置可以将其它 数的部分进行字节对齐处理。

根据 H.263标准中的定义, 每个子码流的分片数据信息中的分片头数据 可以指示每个子码流在单码流中的起始位置。 具体地, 处理视频码流的装置 将每个子码流的分片头数据中的参数 first_mb_in_slice进行相应的设置, 参 数 first_mb_in_slice表示每个子码流的图像的第一个 块在单码流的图像的 位置, 也就是每个子码流在单码流中的起始位置。

此外, 每个子码流的分片数据信息中还可以包括帧编 号参数 frame_num 和即时解码刷新 ( Instantaneous Decoding Refresh , IDR ) 图像标识参数 idr_pic_id„ 将每个子码流的 frame_num和 idr_pic_id进行相应的设置。

504, 处理视频码流的装置向终端发送步骤 503中的单码流和指示消息。

505 , 终端根据指示消息解码单码流, 获得多个子码流, 按照步骤 501 中的布局方式显示相应的多个子视频画面。

图 6是采用图 5的实施例合成单码流的过程的一个例子的示 图。在图 6中, 假设子视频画面的数目为 9, 布局方式为 9宫格方式。

本发明实施例中,通过按照终端请求的布局方 式将多个子码流合成为单 码流, 使得终端通过解码该单码流就能够显示多个子 视频画面, 从而无需多 个子码流之间的解码切换, 因此能够提高终端的解码性能和业务实现的便 利 性。

图 7是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。 在图 7中, 可以不采用 H.264标准进行编解码, 可以是采用其它新标 准进行编解码, 可以基于自定制的编解码器实现。

701 , 处理视频码流的装置从终端获取请求消息, 请求消息携带多个子 视频画面的地址信息和多个子视频画面的布局 信息, 该布局信息指示多个子 视频画面的布局方式。

702, 处理视频码流的装置根据步骤 701 中的地址信息, 获取对应的多 个子码流。

例如, 地址信息可以包括 url。 处理视频码流的装置可以根据多个子视 频画面的 url, 从服务器获取多个子码流。 此处假设服务器是以相同的帧结 构编码每个子码流。

此外, 由于子码流合成单码流后, 每个子码流的图像边界可能不再是边 界, 因此每个子码流被编码过程中, 可以将运动矢量指向的参考图像设置为 不跨出每个子码流对应的图像边界。

703 , 处理视频码流的装置根据步骤 701 中的布局方式, 将多个子码流 进行排列并合成为单码流, 并生成指示消息, 该指示消息包括第三信息, 其 中第三信息指示单码流的图像尺寸参数、 子码流的数目、 每个子码流在单码 流中的位置参数以及每个子码流中的分片数目 。

此处沿用 H.264标准中的定义, 假设每个子码流的 sps信息、 pps信息 和分片头数据的结构相同, 因此在合成单码流后, 可以保留一套 sps信息、 pps信息和分片头数据。 由于本发明实施例中, 通过第三信息指示单码流的 图像参数, 因此可以不对这些信息进行重新设置。

下面给出第三信息的数据结构的一个例子。该 例子只是为了帮助本领域 技术人员理解本发明实施例, 而非限制本发明实施例的范围。 本领域技术人 员根据所给出的伪代码的例子,显然可以进行 各种等价的修改或变化,例如, 第三信息的数据结构还可以采用其它新型视频 编解码标准中定义的类似结 构, 这样的修改或变化也落入本发明实施例的范围 内。

modify_sub_picture() {

new_pic_height_in_map_units_minu s 1

new_pic_width_in_mbs_minus 1

num_sub_picture_minus 1

for(i=0; i<= num_sub_picture_minus 1; i++){

top_left[i]

bottom—right [i]

num_slice_in_sub_picture_minus 1

} 可见, 上述例子中, 定义了所有子码流的分片的位置。 同时, 全部分片 的数目可以表示为:

(num_sub_picture_minus 1+1) x (num_slice_in_sub_picture_minus 1 + 1 )。 第三信息可以位于单码流的第一个分片之前。 这样可以通过第三信息向 终端通知根据第三信息解码单码流。

704, 处理视频码流的装置向终端发送步骤 703 中的单码流以及指示消 息中包括第三信息。

705 , 终端根据第三信息解码单码流, 获得多个子码流, 按照步骤 701 中的布局方式显示相应的多个子视频画面。

具体地, 如果终端收到第三信息, 则根据第三信息解码单码流。 例如, 在每个子码流包含一个分片时, 终端可以解码每个分片, 每个分片对应的区 域可以由 top_left[]和 bottom_right[]定义, 并且此区域独立于其它区域,如果 发生运动矢量跨出此区域, 则终端可以采取现有技术中落到图像区域外的 方 式进行处理, 也就是可以进行填充(padding )处理。

如果每个子码流包含多个分片时, 则终端可以将这些分片限制在该子码 流对应的区域内进行光栅扫描, 光栅扫描的区域可以由 top_left[]和 bottom_right[]定义。

此外, 如果终端没有收到第三信息, 则可以按照现有技术中解码每个子 码流。

本发明实施例中,通过按照终端请求的布局方 式将多个子码流合成为单 码流, 使得终端通过解码该单码流就能够显示多个子 视频画面, 从而无需多 个子码流之间的解码切换, 因此能够提高终端的解码性能和业务实现的便 利 性。

此外, 本发明实施例中, 通过第三信息指示单码流的图像参数, 而无需 修改各个子码流的数据包, 能够提高业务实现的便利性。

在图 7的例子中, 各个子码流的帧结构是相同的, 因此只需保留一个子 码流的 sps信息和 pps信息。

可选地, 在各个子码流的帧结构不同的情况下, 除了指示消息包括的第 三信息之外,指示消息还可以包括每个子码流 的图像信息和每个子码流的片 组信息, 每个子码流的图像信息指示每个子码流的图像 尺寸参数, 每个子码 流的片组信息指示所述每个子码流的片组参数 。

具体地, 沿用 H.264标准的定义, 每个子码流的图像信息可以是每个子 码流的 sps信息, 每个子码流的片组信息可以是每个子码流的 pps信息。 这 样可以在指示消息中包括每个子码流的 sps信息和每个字母的 pps信息。 每 个子码流的 sps信息和 pps信息可以位于每个子码流的第一个分片之前 。 这 样, 在每个子码流的帧结构不同的情况下, 终端也能够根据第三信息以及每 个子码流的 sps信息和 pps信息, 解码单码流和每个子码流。

图 8是根据本发明另一实施例的处理视频码流的 法的过程的示意性流 程图。 在图 8中, 假设每个子码流的帧结构相同。

801 , 处理视频码流的装置从终端获取请求消息, 请求消息携带多个子 视频画面的地址信息和多个子视频画面的布局 信息, 该布局信息指示多个子 视频画面的布局方式。

802, 处理视频码流的装置根据步骤 801 中的地址信息, 获取对应的多 个子码流。

例如, 地址信息可以包括 url。 处理视频码流的装置可以根据多个子视 频画面的 url, 从服务器获取多个子码流。

此外, 由于子码流合成单码流后, 每个子码流的图像边界可能不再是边 界, 因此每个子码流被编码过程中, 可以将运动矢量指向的参考图像设置为 不跨出每个子码流对应的图像边界。

803 , 处理视频码流的装置根据步骤 801 中的布局方式, 将多个子码流 进行排列并合成为单码流, 并生成指示消息, 该指示消息包括第一信息和附 加信息, 其中第一信息指示单码流的图像尺寸参数, 附加信息指示子码流的 数目、 每个子码流在单码流中的位置参数以及每个子 码流中的分片数目。

具体地, 沿用 H.264标准的定义, 第一信息可以是 sps信息。 sps信息的 生成过程如下:

假设每个子码流的 sps信息和 pps信息的结构相同, 处理视频码流的装 置可以选取任意一个子码流的 sps 信息, 解析出 sps 信息中的参数 pic_height_in_map_units_minus 1 和 pic_width_in_mbs_minus 1 , 将参数 pic_height_in_map_units_minus 1的值设置为单码流的图像的高度值, 将参数 pic_width_in_mbs_minus 1设置为单码流的图像的宽度值。

此外, 附加信息可以附加于 sps信息, 即可以是在 sps信息中增加的语 法元素。 下面给出附加信息的数据结构的一个例子。 该例子只是为了帮助本 领域技术人员理解本发明实施例, 而非限制本发明实施例的范围。 本领域技 术人员根据所给出的伪代码的例子, 显然可以进行各种等价的修改或变化, 例如, 附加信息的数据结构还可以采用其它新型视频 编解码标准中定义的类 似结构, 这样的修改或变化也落入本发明实施例的范围 内。

sub_picture_merge

if (sub_picture_merge== 1 ) {

num_sub_picture_minus 1

for(i=0; i<= num_sub_picture_minus 1; i++){

top_left[i]

bottom—right [i]

num_slice_in_sub_picture_minus 1

在多个子码流合成为单码流之前, sub_picture_merge的值为 0。 在合成 单码流后, 可以将 sub_picture_merge的值设置为 1。 在上述的例子中, 定义 了所有子码流的分片的位置。 同时, 全部分片的数目可以表示为:

(num_sub_picture_minus 1+1) x (num_slice_in_sub_picture_minusl + 1 )。 804, 处理视频码流的装置向终端发送步骤 803 中的单码流以及指示消 息中包括的第一信息和附加信息。

805 , 终端根据第一信息和附加信息解码单码流, 获得多个子码流, 按 照步骤 801中的布局方式显示相应的多个子视频画面。

具体地, 如果终端确定 sub_picture_merge的值为 1 , 则可以根据第一信 息和附加信息解码单码流。 例如, 在每个子码流包含一个分片时, 终端可以 解码每个分片, 每个分片对应的区域可以由 top_left[]和 bottom_right[]定义, 并且此区域独立于其它区域, 如果发生运动矢量跨出此区域, 则终端可以采 取现有技术中落到图像区域外的方式进行处理 , 也就是可以进行填充处理。

如果每个子码流包含多个分片时, 则终端可以将这些分片限制在该子码 流对应的区域内进行光栅扫描, 光栅扫描的区域可以由 top_left[]和 bottom_right[]定义。

此外, 如果终端确定 sub_picture_merge的值为 0, 则可以按照现有技术 中解码每个子码流。

本发明实施例中,通过按照终端请求的布局方 式将多个子码流合成为单 码流, 使得终端通过解码该单码流就能够显示多个子 视频画面, 从而无需多 个子码流之间的解码切换, 因此能够提高终端的解码性能和业务实现的便 利 性。

图 9是采用图 8的实施例合成单码流的过程的一个例子的示 图。

在图 9中, H殳终端请求 4个子视频画面。 每个子视频画面对应的子码 流对应的图像尺寸均为 320x320, 即长宽均为 20MB。 每个子码流的每帧图 像包含 2个分片。

殳设终端请求的子视频画面的布局方式为 N宫格方式,则处理视频码流 的装置按照 N宫格方式,将 4个子码流合成为单码流, 则单码流的每帧图像 尺寸为 640x640, 即长宽均为 40MB。

根据图 8的实施例, 指示消息包括第一信息和附加信息。 沿用 H.264的 定义, 第一信息可以为 sps信息, 附加信息可以附加于 sps信息。

在图 9中, 假设附加信息中的参数可以定义如下:

sub_picture_merge= 1

num_sub_picture_minus 1=3 top_left[0]=0 II第 1个子码流

bottom_right[0]=779 num_slice_in_sub_picture_minus 1=1

top_left[l]=20 II第 2个子码流

bottom_right[l]=799

num_slice_in_sub_picture_minus 1 =2

top_left[2]=800 II第 3个子码流

bottom_right[2]=1579

num_slice_in_sub_picture_minus 1 =2

top_left[3]=820 II第 4个子码流

bottom_right[3]=1599

num_slice_in_sub_picture_minus 1 =2

为了帮助本领域技术人员更好地理解本发明实 施例, 下面以终端解码单 码流中的第 2个子码流为例进行详细说明。 应注意, 其它子码流的解码过程 类似, 为了避免重复, 此处不再赘述。

根据附加信息, 第二个子码流对应的区域为 20MB到 799MB的矩形区 域。 在解码第二个子码流的分片 2.1 时, 假设该分片的第一个宏块的位置 first_mb_in_slice=0, 则从该矩形区域的起始位置处进行光栅扫描, 解码出分 片 2.1。在解码第二个子码流的分片 2.2时,假设该分片的第一个宏块的位置 first_mb_in_slice=150MB , 则从该区域的第 150个 MB进行光栅扫描, 解码 处分片 2.2。

如果在解码第二个子码流时, 发生运动矢量跨出对应的区域的情况, 则 对该区域进行填充操作, 该操作类似于现有标准中规定的对图像边界进 行填 充的操作, 而不是使用相邻区域的图像数据。

本发明实施例中,通过按照终端请求的布局方 式将多个子码流合成为单 码流, 使得终端通过解码该单码流就能够显示多个子 视频画面, 从而无需多 个子码流之间的解码切换, 因此能够提高终端的解码性能和业务实现的便 利 性。

图 10是根据本发明另一实施例的合成单码流的过 的示意图。

终端发送的请求消息还可以携带布局信息, 布局信息可以指示多个子视 频画面的布局方式为 N宫格方式, 其中 N为大于或等于 2的正整数。 处理 视频码流的装置可以将每个子码流复制 N个备份, 并按照 N宫格方式对每 个子码流的 N个备份进行排列,根据布局方式中每个子码 对应的子视频画 面的位置,从每个子码流的 N个备份中选取相应位置处的备份, 并将选取的 备份合成为单码流。

在图 10中, 假设子视频画面的数目为 9, 布局方式可以为 9宫格方式。 那么处理视频码流的装置可以将每个子码流都 复制 9个备份,将 9个备份按 照 9宫格方式进行排列, 并以任意分片顺序进行编码。 按照终端请求的 9宫 格方式中每个子码流对应的子视频画面的位置 ,从每个子码流的 9个备份中 选取相应位置的备份, 将这些备份合成为单码流。

本发明实施例中,通过按照终端请求的布局方 式将多个子码流合成为单 码流, 使得终端通过解码该单码流就能够显示多个子 视频画面, 从而无需多 个子码流的解码切换, 因此能够提高终端的解码性能和业务实现的便 利性。

图 11是根据本发明实施例的处理视频码流的装置 示意框图。 图 11的 装置 1100可以位于服务器(例如图 1中的服务器 110 ), 即可以与服务器集 成在一起, 也可以位于终端(例如图 1中的终端 120 ), 即可以与终端集成在 一起, 本发明实施例对此不作限定。 装置 1100包括第一获取单元 1110、 第 二获取单元 1120、 生成单元 1130和发送单元 1140。

第一获取单元 1110从终端获取请求消息, 请求消息携带多个子视频画 面的地址信息。 第二获取单元 1120根据地址信息, 获取与多个子视频画面 ——对应的多个子码流。 生成单元 1130将多个子码流合成为单码流, 并生 成用于指示单码流的图像参数的指示消息。 发送单元 1140向终端发送单码 流和指示消息, 以便终端根据指示消息解码单码流并显示多个 子视频画面。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

装置 1100的其它功能和操作可参照上面图 2至图 10的方法实施例中涉 及处理视频码流的装置的过程, 为了避免重复, 此处不再赘述。

可选地, 作为一个实施例, 生成单元 1130可按照多个子视频画面的从 上至下的排列方式, 将多个子码流进行排列并合成为单码流, 并生成指示消 息, 指示消息可包括第一信息和每个子码流的分片 数据信息, 其中第一信息 指示单码流的图像尺寸参数,每个子码流的分 片数据信息指示每个子码流在 单码流中的起始位置。

可选地, 作为另一实施例, 请求消息还可携带布局信息, 该布局信息指 示多个子视频画面的布局方式。 生成单元 1130可按照布局方式, 将多个子 码流进行排列, 并合成为单码流。 可选地, 作为另一实施例, 生成单元 1130可生成指示消息, 指示消息 可包括第一信息、 第二信息和每个子码流的分片数据信息, 其中第一信息指 示单码流的图像尺寸参数, 第二信息指示每个子码流的片组参数, 每个子码 流的分片数据信息指示每个子码流在单码流中 的起始位置。

可选地, 作为另一实施例, 生成单元 1130可生成指示消息, 指示消息 可包括第三信息,其中第三信息指示单码流的 图像尺寸参数、子码流的数目、 每个子码流在单码流中的位置参数以及每个子 码流中的分片数目。

可选地, 作为另一实施例, 指示消息还可包括每个子码流的图像信息和 每个子码流的片组信息,每个子码流的图像信 息指示每个子码流的图像尺寸 参数, 每个子码流的片组信息指示每个子码流的片组 参数。

可选地, 作为另一实施例, 生成单元 1130可生成指示消息, 指示消息 可包括第一信息和附加信息, 其中第一信息指示单码流的图像尺寸参数, 附 加信息指示子码流的数目、每个子码流在单码 流中的位置参数以及每个子码 流中的分片数目。

可选地, 作为另一实施例, 请求消息还可携带布局信息, 布局信息指示 多个子视频画面的布局方式为 N宫格方式, 其中 N为大于或等于 2的正整 数。 生成单元 1130可将每个子码流复制 N个备份, 并按照 N宫格方式对每 个子码流的 N个备份进行排列,根据布局方式中每个子码 对应的子视频画 面的位置,从每个子码流的 N个备份中选取相应位置处的备份, 并将选取的 备份合成为单码流。

可选地, 作为另一实施例, 第二获取单元 1120获取的每个子码流被编 码过程中,运动矢量指向的参考图像可以被设 置为不跨出每个子码流对应的 图像边界。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

图 12 是根据本发明实施例的处理视频码流的装置的 示意框图。 装置 1200可以位于服务器(例如图 1 中的服务器 110 ), 即可以与服务器集成在 一起,也可以位于终端(例如图 1中的终端 120 ),即可以与终端集成在一起, 本发明实施例对此不作限定。 装置 1200包括接收器 1210、 处理器 1220、 发 送器 1230和存储器 1240。 接收器 1210、 处理器 1220、 发送器 1230和存储 器 1240通过总线 1250相连接, 并可以通过总线 1250相互访问。 总线 1250 可以包括数据总线, 还可以包括电源总线、 控制总线和状态信号总线等。 接收器 1210从终端获取请求消息, 请求消息携带多个子视频画面的地 址信息。 处理器 1220根据地址信息, 获取与多个子视频画面——对应的多 个子码流。 处理器 1220将多个子码流合成为单码流, 并生成用于指示单码 流的图像参数的指示消息。 发送器 1230向终端发送单码流和指示消息, 以 便终端根据指示消息解码单码流并显示多个子 视频画面。

存储器 1240可以包括只读存储器和随机存取存储器, 可以存储指令, 或者存储上述接收器 1210、处理器 1220或者发送器 1230的处理结果或数据。

本发明实施例中, 通过将多个子码流合成为单码流, 使得终端通过解码 该单码流就能够显示多个子视频画面, 从而无需多个子码流之间的解码切 换, 因此能够提高终端的解码性能和业务实现的便 利性。

装置 1200的其它功能和操作可参照上面图 1至图 9的方法实施例中涉 及处理视频码流的装置的过程, 为了避免重复, 此处不再赘述。

可选地, 作为一个实施例, 处理器 1220可按照多个子视频画面的从上 至下的排列方式,将多个子码流进行排列并合 成为单码流,并生成指示消息, 指示消息可包括第一信息和每个子码流的分片 数据信息, 其中第一信息指示 单码流的图像尺寸参数,每个子码流的分片数 据信息指示每个子码流在单码 流中的起始位置。

可选地, 作为另一实施例, 请求消息还可携带布局信息, 该布局信息指 示多个子视频画面的布局方式。 处理器 1220可按照布局方式, 将多个子码 流进行排列, 并合成为单码流。

可选地, 作为另一实施例, 处理器 1220可生成指示消息, 指示消息可 包括第一信息、 第二信息和每个子码流的分片数据信息, 其中第一信息指示 单码流的图像尺寸参数, 第二信息指示每个子码流的片组参数, 每个子码流 的分片数据信息指示每个子码流在单码流中的 起始位置。

可选地, 作为另一实施例, 处理器 1220可生成指示消息, 指示消息可 包括第三信息, 其中第三信息指示单码流的图像尺寸参数、 子码流的数目、 每个子码流在单码流中的位置参数以及每个子 码流中的分片数目。

可选地, 作为另一实施例, 指示消息还可包括每个子码流的图像信息和 每个子码流的片组信息,每个子码流的图像信 息指示每个子码流的图像尺寸 参数, 每个子码流的片组信息指示每个子码流的片组 参数。

可选地, 作为另一实施例, 处理器 1220可生成指示消息, 指示消息可 包括第一信息和附加信息, 其中第一信息指示单码流的图像尺寸参数, 附加 信息指示子码流的数目、每个子码流在单码流 中的位置参数以及每个子码流 中的分片数目。

可选地, 作为另一实施例, 请求消息还可携带布局信息, 布局信息指示 多个子视频画面的布局方式为 N宫格方式, 其中 N为大于或等于 2的正整 数。 处理器 1220可将每个子码流复制 N个备份, 并按照 N宫格方式对每个 子码流的 N个备份进行排列,根据布局方式中每个子码 对应的子视频画面 的位置,从每个子码流的 N个备份中选取相应位置处的备份, 并将选取的备 份合成为单码流。

可选地, 作为另一实施例, 处理器 1220获取的每个子码流被编码过程 中,运动矢量指向的参考图像可以被设置为不 跨出每个子码流对应的图像边 界。

本领域普通技术人员可以意识到, 结合本文中所公开的实施例描述的各 示例的单元及算法步骤, 能够以电子硬件、 或者计算机软件和电子硬件的结 合来实现。 这些功能究竟以硬件还是软件方式来执行, 取决于技术方案的特 定应用和设计约束条件。 专业技术人员可以对每个特定的应用来使用不 同方 法来实现所描述的功能, 但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到, 为描述的方便和筒洁, 上述描 述的系统、 装置和单元的具体工作过程, 可以参考前述方法实施例中的对应 过程, 在此不再赘述。

在本申请所提供的几个实施例中, 应该理解到, 所揭露的系统、 装置和 方法, 可以通过其它的方式实现。 例如, 以上所描述的装置实施例仅仅是示 意性的, 例如, 所述单元的划分, 仅仅为一种逻辑功能划分, 实际实现时可 以有另外的划分方式, 例如多个单元或组件可以结合或者可以集成到 另一个 系统, 或一些特征可以忽略, 或不执行。 另一点, 所显示或讨论的相互之间 的耦合或直接耦合或通信连接可以是通过一些 接口, 装置或单元的间接耦合 或通信连接, 可以是电性, 机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可 以不是物理上分开的,作 为单元显示的部件可以是或者也可以不是物理 单元, 即可以位于一个地方, 或者也可以分布到多个网络单元上。可以根据 实际的需要选择其中的部分或 者全部单元来实现本实施例方案的目的。

另外, 在本发明各个实施例中的各功能单元可以集成 在一个处理单元 中, 也可以是各个单元单独物理存在, 也可以两个或两个以上单元集成在一 个单元中。

所述功能如果以软件功能单元的形式实现并作 为独立的产品销售或使 用时, 可以存储在一个计算机可读取存储介质中。 基于这样的理解, 本发明 的技术方案本质上或者说对现有技术做出贡献 的部分或者该技术方案的部 分可以以软件产品的形式体现出来,该计算机 软件产品存储在一个存储介质 中, 包括若干指令用以使得一台计算机设备(可以 是个人计算机, 服务器, 或者网络设备等)执行本发明各个实施例所述 方法的全部或部分步骤。 而前 述的存储介质包括: U盘、移动硬盘、只读存储器( ROM, Read-Only Memory )、 随机存取存储器(RAM, Random Access Memory ), 磁碟或者光盘等各种可 以存储程序代码的介质。

以上所述, 仅为本发明的具体实施方式, 但本发明的保护范围并不局限 于此, 任何熟悉本技术领域的技术人员在本发明揭露 的技术范围内, 可轻易 想到变化或替换, 都应涵盖在本发明的保护范围之内。 因此, 本发明的保护 范围应以所述权利要求的保护范围为准。