CN113905255B - 媒体数据的编辑方法、媒体数据的封装方法及相关设备 - Google Patents

媒体数据的编辑方法、媒体数据的封装方法及相关设备 Download PDF

Info

Publication number
CN113905255B
CN113905255B CN202111147156.9A CN202111147156A CN113905255B CN 113905255 B CN113905255 B CN 113905255B CN 202111147156 A CN202111147156 A CN 202111147156A CN 113905255 B CN113905255 B CN 113905255B
Authority
CN
China
Prior art keywords
media
content
sample
editing
track
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
Application number
CN202111147156.9A
Other languages
English (en)
Other versions
CN113905255A (zh
Inventor
胡颖
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202111147156.9A priority Critical patent/CN113905255B/zh
Publication of CN113905255A publication Critical patent/CN113905255A/zh
Application granted granted Critical
Publication of CN113905255B publication Critical patent/CN113905255B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Television Signal Processing For Recording (AREA)

Abstract

本申请实施例公开了一种媒体数据的编辑方法、媒体数据的封装方法及相关设备,其中媒体数据的编辑方法包括:获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑。本申请实施例可以有效提升媒体数据的编辑效率。

Description

媒体数据的编辑方法、媒体数据的封装方法及相关设备
技术领域
本申请涉及图像处理技术领域,尤其涉及一种媒体数据的编辑方法、媒体数据的封装方法及相关设备。
背景技术
随着图像处理技术的发展,越来越多的媒体数据支持内容再编辑;所谓的内容再编辑是指:对媒体数据中的全部或部分源内容进行编辑替换的处理。目前,在对这些支持内容再编辑的媒体数据进行内容编辑时,往往需要利用一些数据识别技术(如图像识别技术)对媒体数据进行数据识别处理,以找到媒体数据中可以被替换的源内容,从而采用相应的媒体内容对这些源内容进行二次编辑。由此可见,现有的媒体编辑方式较为低效;基于此,如何提升媒体数据的编辑效率成为了研究热点。
发明内容
本申请实施例提供了一种媒体数据的编辑方法、媒体数据的封装方法及相关设备,可以有效提升媒体数据的编辑效率。
一方面,本申请实施例提供了一种媒体数据的编辑方法,所述方法包括:
获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑。
另一方面,本申请实施例提供了一种媒体数据的编辑装置,所述装置包括:
获取单元,用于获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
编辑单元,用于根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑。
另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑。
另一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述所提及的媒体数据的编辑方法。
另一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时,实现上述所提及的媒体数据的编辑方法。
本申请实施例可通过获取支持内容再编辑的媒体数据的封装文件,使得可基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,进而实现对这些可被再次编辑的媒体帧进行内容编辑,这样可有效提升媒体数据的编辑效率。并且,由于在整个编辑过程中,无需对媒体数据执行进行数据识别等复杂操作;因此,这样的编辑方式不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
另一方面,本申请实施例提供了一种媒体数据的封装方法,所述方法包括:
获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧。
另一方面,本申请实施例提供了一种媒体数据的封装装置,所述装置包括:
获取单元,用于获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
封装单元,用于在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧。
另一方面,本申请实施例提供了一种计算机设备,所述计算机设备包括输入接口和输出接口,所述计算机设备还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如下步骤:
获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧。
另一方面,本申请实施例提供了一种计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行上述所提及的媒体数据的封装方法。
另一方面,本申请实施例提供了一种计算机程序产品,所述计算机程序产品包括计算机程序,所述计算机程序被处理器执行时,实现上述所提及的媒体数据的封装方法。
本申请实施例在获取到支持内容再编辑的媒体数据后,可识别媒体数据中可被再次编辑的媒体帧,从而在媒体数据的封装过程中,对识别出的各个媒体帧进行标识以得到媒体数据的封装文件。这样的封装方式可使得封装文件中包括内容再编辑指示信息,从而实现通过该内容再编辑指示信息直观指示媒体数据中可被再次编辑的媒体帧,进而使得任意设备在对该媒体数据进行内容再编辑时,可以基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,并对这些媒体帧进行内容编辑,可有效提升媒体数据的编辑效率。并且,通过在封装文件中添加内容再编辑指示信息,使得任意设备在对媒体数据进行内容再编辑时,无需对媒体数据执行进行数据识别等复杂操作,这样不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
附图说明
为了更清楚地说明本申请实施例技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1a是本申请实施例提供的一种针对视频的处理过程的示意图;
图1b是本申请实施例提供的一种针对LCU进行划分的示意图;
图1c是本申请实施例提供的一种视频编码器的工作流程的示意图;
图1d是本申请实施例提供的一种文件封装方案的流程示意图;
图1e是本申请实施例提供的另一种文件封装方案的流程示意图;
图1f是本申请实施例提供的另一种文件封装方案的流程示意图;
图1g是本申请实施例提供的另一种文件封装方案的流程示意图;
图1h是本申请实施例提供的一种可编辑图像区域和视频帧之间的位置关系示意图;
图2是本申请实施例提供的一种媒体数据的封装方法的流程示意图;
图3是本申请实施例提供的一种媒体数据的编辑方法的流程示意图;
图4是本申请实施例提供的一种对媒体数据进行内容编辑的示意图;
图5是本申请实施例提供的一种媒体数据的封装装置的结构示意图;
图6是本申请实施例提供的一种媒体数据的编辑装置的结构示意图;
图7是本申请实施例提供的一种计算机设备的结构示意图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。
在本申请实施例中,媒体数据可以是由一种媒体类型的媒体帧所构成的数据,也可以是由多种媒体类型的媒体帧所构成的数据,对此不作限定。此处所提及的媒体类型可以包括但不限于:视频媒体类型、音频文本类型、文本媒体类型,等等;相应的,视频媒体类型下的媒体帧可称为视频帧,音频媒体类型下的媒体帧可称为音频帧,文本媒体类型下的媒体帧可称为文本帧。其中,视频帧可以理解成是一个播放时刻的图像帧,音频帧可以理解成是用于描述一个播放时刻的各个声音的数据,文本帧可以理解成是包含一个播放时刻所涉及的所有文本的集合。具体的,文本帧中的文本可以是字幕、弹幕等;当文本帧中的文本为字幕时,文本帧又可称为字幕帧,当文本帧中的文本为弹幕时,文本帧又可称为弹幕帧,等等。
基于上述描述,根据媒体数据所包含的媒体帧的类型,媒体数据又可称为视频、音频和文本。其中,视频是指至少包括多个视频帧的媒体数据;进一步的,视频还可包括多个音频帧、或多个文本帧、或者多个音频帧和多个文本帧,等等。音频是指至少包括多个音频帧且不包含视频帧的媒体数据,其进一步可包括多个文本帧。文本则是指只包括多个文本帧的媒体数据。进一步的,支持内容再编辑的视频可以称为内容再编辑视频,支持内容再编辑的音频可称为内容再编辑音频,支持内容再编辑的文本可称为内容再编辑文本。
在具体实现中,媒体数据的处理过程可主要包括:媒体数据采集,媒体数据编码,媒体数据的文件封装,媒体数据文件(即媒体数据的封装文件)传输,媒体数据文件解封装,媒体数据文件解码和最终的媒体数据呈现。基于此,当媒体数据为视频时,其处理过程可以如图1a所示,具体可包括:视频采集,视频编码,视频文件封装,视频文件(即视频的封装文件)传输,视频文件解封装,视频解码和最终的视频呈现。其中:
(1)视频采集用于将模拟的视频信号转换为数字视频,并按数字视频文件的格式进行保存;也就是说,视频采集可将视频信号转换为二进制数字信息。由于由视频信号转换为的二进制数字信息是一种二进制数据流,因此该二进制数字信息也可称为该视频信号的码流或者位流(Bitstream)。需要说明的是,本申请实施例中提及视频媒体内容的生成,可以包括摄像机采集生成的真实场景,以及计算机生成的屏幕内容场景;基于此,从视频信号的获取方式看,视频信号可以分为摄像机拍摄到的以及计算机生成的两种方式。
(2)视频编码则是指通过压缩技术,将原始视频格式的文件转换为另一种视频格式文件的处理过程。也就是说,视频编码可通过标准化的压缩算法实现,例如可通过VVC(versatile video coding,国际视频编码标准VVC/H.266)、HEVC(High Efficiency VideoCoding,国际视频编码标准HEVC/H.265)等算法实现,或通过一些针对内容设计的特定压缩算法实现。应理解的是:由前述可知,视频信号的获取方式可以有多种,由于统计特性的不同,其对应的压缩编码方式也可能有所区别。现代主流视频编码技术,如国际视频编码标准HEVC,VVC,以及中国国家视频编码标准AVS(Audio Video Coding Standard,中国国家视频编码标准AVS),或AVS3(由AVS标准组推出的第三代视频编码标准)等;均采用了混合编码框架,通过将输入的原始视频信号中的图像分成一系列的CU(Coding Unit,编码单元),结合预测、变换和熵编码等视频编码方法,实现视频数据的压缩。具体的,这些主流的视频编码标准对输入的原始视频信号中的图像,进行了如下一系列的操作和处理:
①块划分结构(block partition structure):将输入图像(如视频数据中的一个视频帧)根据一个处理单元的大小,划分成若干个不重叠的处理单元,每个处理单元将进行类似的压缩操作。这个处理单元被称作CTU(Coding Tree Unit,编码树单元),或者LCU(Largest Coding Unit,最大编码单元)。其中,编码树单元一般由最大编码单元开始往下划分,CTU或者LCU再往下,可以继续进行更加精细的划分,得到一个或多个基本编码的单元,称之为CU。以处理单元为LCU为例,根据每个LCU的特点将相应的LCU进一步划分得到若干个CU的示意图可参见图1b所示;应理解的是,图1b只是示例性表示LCU的划分方式,并不对其进行限定;如图1b表示的是将LCU平均地划分为多个CU,但实际也可将LCU非平均地划分为多个CU。每个CU是一个编码环节中最基本的元素,且每个CU可独立采用一种预测编码模式进行编解码,以下描述的是对每个CU可能采用的各种编码方式。
②预测编码(Predictive Coding):目前的视频编码技术包括了帧内预测模式、帧间预测模式以及帧内块复制预测模式等多种预测编码模式,编码端需要为当前CU决定在众多可能的预测编码模式中,选择最适合的一种预测编码模式并告知解码端。然后,编码端可采用选择的预测编码模式对当前CU进行预测编码;当前CU经过选定的已重建视频信号的预测后,得到残差视频信号。其中,帧内预测模式和帧间预测模式的原理如下:
a.帧内预测(Intra(picture)Prediction)模式:预测的信号来自于同一图像内已经编码重建过的区域。
b.帧间预测(Inter(picture)Prediction)模式:预测的信号来自已经编码过的,不同于当前图像的其他图像(称之为参考图像)。
c.帧内块复制(Intra Block Copy,IBC)模式:又可称为块复制帧内预测模式,是HEVC屏幕内容编码(Screen Cotent Coding,SCC)扩展中采纳的一种帧内编码工具,它显著地提升了屏幕内容的编码效率。在AVS3和VVC中,也采纳了IBC技术以提升屏幕内容编码的性能。IBC主要利用屏幕内容视频在空间的相关性,使用当前图像上已编码区域中的像素预测当前CU中的像素的预测值,能够有效节省编码像素所需的比特。在IBC中当前CU与其参考块之间的位移,可称为块矢量(BlockVector,BV);H.266/VVC采用了类似于帧间预测的BV预测技术进一步节省编码BV所需的比特。
③变换编码及量化(Transform&Quantization):残差视频信号经过DFT(DiscreteFourier Transform,离散傅里叶变换),DCT(离散余弦变换,是DFT的一个子集)等变换操作,将残差视频信号转换到变换域中,称之为变换系数。在变换域中的残差视频信号,进一步地进行有损的量化操作,丢失掉一定的信息,使得量化后的信号有利于压缩表达。由于在一些视频编码标准中,可能有多于一种变换方式可以选择,因此编码端也需要为当前CU选择其中的一种变换方式,并告知解码端。其中,量化的精细程度通常由量化参数(Quantization Parameter,QP)来决定;当QP取值较大大时,表示更大取值范围的系数将被量化为同一个输出,因此通常会带来更大的失真及较低的码率;相反,当QP取值较小时,表示较小取值范围的系数将被量化为同一个输出,因此通常会带来较小的失真,同时对应较高的码率。
④熵编码(Entropy Coding)或统计编码:量化后的变换域信号,将根据各个值出现的频率,进行统计压缩编码,最后输出二值化(0或者1)的压缩码流。同时,编码产生的其他信息;例如选择的模式,运动矢量等,也需要进行熵编码以降低码率。其中,统计编码是一种无损编码方式,可以有效的降低表达同样的信号所需要的码率。常见的统计编码方式有变长编码(VLC,Variable Length Coding)或者基于上下文的二值化算术编码(CABAC,Content Adaptive Binary Arithmetic Coding)。
⑤环路滤波(Loop Filtering):已经编码过的图像,经过反量化,反变换及预测补偿的操作(上述②~④的反向操作),可获得重建的解码图像(后续简称为重建图像)。重建图像与原始图像相比,由于存在量化的影响,部分信息与原始图像有所不同,会产生失真(Distortion)。因此可采用滤波器对重建图像进行滤波操作,例如去块效应滤波(deblocking),SAO(Sample Adaptive Offset,样点自适应补偿)或者ALF(Adaptive LoopFilter,自适应环路滤波)等滤波器,可以有效的降低量化所产生的失真程度。由于这些经过滤波后的重建图像,将作为后续编码图像的参考,用于对将来的信号进行预测,所以上述的滤波操作也被称为环路滤波,及在编码环路内的滤波操作。
基于上述步骤①-步骤⑤的相关描述,图1c示例性地展示了一个视频编码器的基本工作流程图。其中,图1c以第k个CU(标记为Sk[x,y])为例进行举例说明,k为大于等于1且小于等于输入的当前图像中的CU的数量的正整数,Sk[x,y]表示第k个CU中坐标为[x,y]的像素点,x表示像素点的横坐标,y表示像素点的中坐标,Sk[x,y]经过运动补偿或者帧内预测等中的一种较优处理后获得预测信号
Figure BDA0003284606630000081
Sk[x,y]与
Figure BDA0003284606630000082
相减得到残差信号Uk[x,y],然后对该残差信号Uk[x,y]进行变换和量化,量化输出的数据由两个不同的去处:一是送个熵编码器进行熵编码,编码后的码流输出到一个缓冲器(buffer)中保存,等待传出去;另一个应用是进行反量化和反变换后,得到信号U’k[x,y]。将信号U’k[x,y]与
Figure BDA0003284606630000083
相加得到新的预测信号S*k[x,y],并将S*k[x,y]送到当前图像的缓冲器中保存。S*k[x,y]经过帧内—图像预测获得f(S*k[x,y]),S*k[x,y]经过环路滤波后获得S’k[x,y],并将S’k[x,y]送至解码图像缓冲器中保存,以用于生成重建视频。S’k[x,y]经过运动—补偿预测后获得S’r[x+mx,y+my],S’r[x+mx,y+my]表示参考块,mx和my分别表示运动矢量(MotionVector,MV)的水平和竖直分量。
(3)视频文件封装是指按照封装格式(或容器,或文件容器),将已经编码压缩好的各个媒体码流,按照一定的格式存放在一个文件中;此处的媒体包括可以包括但不限于:对视频帧进行编码压缩得到的视频码流、对音频帧进行编码压缩得到的音频码流,以及对文本帧进行编码压缩得到的文本码流,等等。常见的封装格式包括AVI格式(Audio VideoInterleaved,音频视频交错格式)或者ISOBMFF(ISO Based Media File Format,基于ISO(International Standard Organization,国际标准化组织)标准的媒体文件格式)。其中,ISOBMFF是媒体文件的封装标准,最典型的ISOBMFF文件即MP4(Moving Picture ExpertsGroup 4,动态图像专家组4)文件。通过对编码后的媒体码流进行文件封装,可以使得媒体码流以一种更容易被解析的结构存储在设备中;在视频文件封装环节增添的信息,通常有助于提升视频文件在设备或中间传输节点的存储、关联、传输效率以及视频文件在视频消费终端的解码效率。
在具体实现中,可以将媒体样本(sample)为文件封装过程中的封装单位,将压缩编码得到的媒体码流封装至一个或多个媒体轨道中,从而得到视频的封装文件(称为视频文件)。其中,媒体轨道(可简称为轨道)是指一系列有时间属性的媒体码流按照封装格式(如ISOBMFF)的规范进行封装得到的;一种媒体轨道对应一种媒体类型,与视频媒体类型对应的媒体轨道可称为视频轨道,与音频媒体类型对应的媒体轨道可称为音频轨道,与文本媒体类型对应的媒体轨道可称为文本轨道。基于此,一种类型的媒体码流可被封装至一个媒体轨道中;例如,视频码流被封装至视频轨道、音频码流被封装至音频轨道、文本码流被封装至文本轨道。任一媒体类型的媒体码流可包括该媒体类型下的多个媒体帧,本申请实施例在媒体数据的封装过程中,是将一个媒体帧作为一个媒体样本进行封装的。那么,通过封装所得到的视频文件便可包括一个或多个媒体轨道,每个媒体轨道中均包括一个或多个媒体样本。其中,视频轨道中的媒体样本可称为视频样本,其在本质上可以理解成是一个视频帧;音频轨道中的媒体样本可称为音频样本,其在本质上可以理解成是一个音频帧;文本轨道中的媒体样本可称为文本样本,其在本质上可以理解成是一个文本帧。
(4)视频文件(即视频的封装文件)传输则是指:在媒体处理设备通过上述步骤得到视频文件后,将该视频文件传输给媒体消费设备。其中,视频文件可通过传输协议发送到媒体消费设备,该传输协议例如可以是DASH(dynamic adaptive streaming over HTTP,基于HTTP的动态自适应流是一种自适应比特率流技术),采用DASH进行传输可以使高质量流媒体可以通过传统的HTTP网络服务器以互联网传递。在DASH中,用MPD(mediapresentation description,DASH中的媒体演示描述信令)描述媒体片段信息;且DASH中,一个或多个媒体成分的组合,比如某种分辨率的视频文件可以看做一个Representation(代表),而包含的多个Representation可看做是一个Adaptation Set(一个视频流的集合),一个DASH可包含一个或多个Adaptation Set。
(5)视频文件解封装是指:媒体消费设备在接收到视频文件后,对视频文件进行解封装处理。可以理解,媒体消费设备的解封装过程与上述所提及的媒体处理设备所执行的封装过程是相逆的;媒体消费设备可按照封装时的文件格式要求对视频文件进行解封装,得到相应的媒体码流,如音频码流、视频码流、文本码流等。
(6)视频解码是指:对媒体码流进行解码处理以还原出视频。应理解的是,媒体消费设备的解码过程与上述所提及的媒体处理设备所执行的编码过程是相逆的。根据上述编码过程可以看出,在解码端(即媒体消费设备),对于每个CU,解码器获得压缩码流(即媒体码流)后,可先进行熵解码,获得各种模式信息及量化后的变换系数。其次,可将各个系数经过反量化及反变换,得到残差信号;以及,根据已知的编码模式信息,获得该CU对应的预测信号。然后,可对两者(即残差信号和预测信号)相加,得到重建信号;最后,解码图像的重建值,需要经过环路滤波的操作,产生最终的输出信号。
基于上述描述,本申请实施例针对可进行内容再编辑的媒体数据,对应给出了一种可标识媒体数据中的允许被再次编辑的媒体帧(如视频帧、音频帧、文本帧等)的文件封装方案,以提升该类媒体数据在进行再次编辑时的效率。该文件封装方案可应用在媒体数据存储、封装、解封装等各个过程中,对此不作限定。以支持内容再编辑的媒体数据为内容再编辑视频为例,参见图1d所示,该文件封装方案的大致原理如下:
1、媒体处理设备针对初始版本的内容再编辑视频,可以识别其中可被再次编辑的媒体帧,如可被再次编辑的视频帧、音频帧以及文本帧。
2、媒体处理设备在对内容再编辑视频进行编码、封装时,可以根据识别出的媒体帧的信息,在文件封装过程中标识出可被再次编辑的媒体帧,即标识出可被再次编辑的视频帧、音频帧以及文本帧,从而得到内容再编辑视频的封装文件。其中,封装文件中可包括内容再编辑指示信息,且该内容再编辑指示信息可用于指示内容再编辑视频中可被再次编辑的媒体帧。
3、媒体处理设备将内容再编辑视频的封装文件,发送给用户侧的媒体消费设备。
4、媒体消费设备通过对封装文件进行解封装、解码处理,以消费内容再编辑视频;若欲对内容再编辑视频进行内容编辑,则可向媒体处理设备发送对内容再编辑视频进行内容编辑的再编辑请求,该再编辑请求中可携带用户提供的用于对内容再编辑视频进行内容编辑的媒体内容。
5、媒体处理设备根据再编辑请求,结合文件封装中携带的内容再编辑指示信息对内容再编辑视频进行内容编辑;具体的,可结合文件封装中携带的内容再编辑指示信息,直接选取对应的媒体帧,并将选取的媒体帧中的相应内容替换为媒体消费设备提供的媒体内容。
其中,上述所提及的媒体处理设备是指具有编码能力和封装能力的任一设备,其具体可以是服务器或性能较好的终端。上述所提及的媒体消费设备是指具有解码能力且视频播放能力的任一终端。进一步的,此处所提及的服务器可以是是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(ContentDelivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,等等。此处所提及的终端可以是智能手机、平板电脑、笔记本电脑、台式计算机,等等,对此不作限定。
需要说明的是,图1d只是示例性地表征了本申请实施例所提出的文件封装的大致原理,并不对此媒体处理设备和媒体消费设备之间的交互过程进行限定,该媒体处理设备和媒体消费设备之间的交互过程可根据实际情况进行变化。例如,在其他实施例中,若媒体消费设备自己具有内容再编辑的能力,则媒体消费设备在欲对内容再编辑视频进行内容编辑时,也可不向媒体处理设备发送再编辑请求,而是由媒体消费设备自己结合文件封装中携带的内容再编辑指示信息对内容再编辑视频进行内容编辑,如图1e所示。又如,在其他实施例中,媒体消费设备在欲对内容再编辑视频进行内容编辑时,也可不向媒体处理设备发送再编辑请求,而是将再编辑请求发送给具有媒体编辑能力的其他设备,由其他设备根据再编辑请求,结合文件封装中携带的内容再编辑指示信息对内容再编辑视频进行内容编辑,如图1f所示。又如,在其他实施例中,若媒体消费设备在发送再编辑请求时,需要根据用户提供的媒体内容对内容再编辑视频进行再次封装,以在再次封装的封装文件中将媒体内容和相应的媒体轨道进行关联,但媒体消费设备没有封装能力的话,则媒体消费设备可以将媒体内容和内容再编辑视频的封装文件发送给具有封装能力的第三方设备,由第三方设备根据媒体内容和封装文件对内容再编辑视频进行再次封装,从而向媒体处理设备发送携带再次封装的封装文件的再编辑请求,如图1g所示,等等。
进一步的,本申请实施例通过在系统层添加若干描述性字段,以支持上述文件封装方案的各个步骤。下文中,以扩展现有ISOBMFF数据盒的形式举例,定义了相关的数据盒结构,具体如下:
1、定义内容再编辑元数据轨道(可简称为元数据轨道),该内容再编辑元数据轨道可用于描述封装文件中的多个媒体轨道中可被再次编辑的媒体样本;也就是说,当媒体数据被封装至视频轨道、音频轨道和文件轨道时,该内容再编辑元数据轨道可用于描述视频轨道、音频轨道和文本轨道中允许被再次编辑的媒体样本。由于媒体轨道中的媒体样本在本质上就是媒体帧,因此可见,内容再编辑元数据轨道通过描述多个媒体轨道中可被再次编辑的媒体样本,可实现对媒体数据中的可被再次编辑的媒体帧的标识。需要说明的是,该内容再编辑元数据轨道可用于描述封装文件中的单个媒体轨道,也可用于同时描述封装文件中的多个不同类型的媒体轨道;具体的,该内容再编辑元数据轨道的定义如下:
Figure BDA0003284606630000121
Figure BDA0003284606630000131
基于上述内容再编辑元数据轨道的定义可知,内容再编辑元数据轨道可包括样本入口(MetaDataSampleEntry)和P个元数据样本(ContentReEditMetaSample),P的取值等于媒体数据包括的播放时刻的数量。其中,样本入口的类型为'cree'(一种入口类型);由于aligned(8)表示按8比特(bit)对齐,因此可知,样本入口可以是按照8bit对齐的方式,通过内容再编辑元数据样本入口(ContentReEditMetaSampleEntry)扩展(extends)得到的。一个元数据样本对应媒体数据的一个播放时刻,P个元数据样本中的第p个元数据样本可用于描述:内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P]。
具体的,该内容再编辑元数据轨道可包括但不限于如下描述性字段:
①轨道描述字段(multi_media_type),用于指示内容再编辑元数据轨道是否描述多个不同类型的媒体轨道。当轨道描述字段的取值为第一数值(如数值0)时,该轨道描述字段用于指示内容再编辑元数据轨道描述单个媒体轨道;当轨道描述字段的取值为第二数值时,该轨道描述字段用于指示内容再编辑元数据轨道描述多个不同类型的媒体轨道。进一步的,该轨道描述字段可位于样本入口中;并且,该轨道描述字段的取值为1bit(unsignedint(1)multi_media_type),因此,针对该轨道描述字段还可保留7个bit(bit(7)reserved)。
②媒体类型字段(media_type),用于指示内容再编辑元数据轨道描述的媒体轨道的类型,或者当前可编辑媒体样本(或称为当前可编辑内容)的媒体类型;其中,任一媒体轨道的类型与该任一媒体轨道中的媒体样本的媒体类型相同。进一步的,该媒体类型字段可以存在于样本入口中,也可存在于单个元数据样本中。由上述定义可知:当内容再编辑元数据轨道描述单个媒体轨道时,可将该媒体类型字段设置在样本入口中;当内容再编辑元数据轨道描述多个不同类型的媒体轨道时,则需在num_editable_content的取值不等于无效值(如大于0)的元数据样本中,指示每处可编辑媒体样本的媒体类型,即此情况下的媒体类型字段存在于单个元数据样本中。应理解的是,当该媒体类型字段存在于样本入口时,该媒体类型字段的取值可对应内容再编辑元数据轨道中的所有媒体样本,即该媒体类型字段可用于指示内容再编辑元数据轨道所描述的单个媒体轨道中的所有媒体样本的媒体类型。
其中,当媒体类型字段的取值为第三取值(如数值0)时,该媒体类型字段用于指示视频媒体类型;当媒体类型字段的取值等于第四数值(如数值1)时,该媒体类型字段用于指示音频媒体类型;当媒体类型字段的取值等于第五数值(数值2)时,该媒体类型字段用于指示文本媒体类型。以第三数值为数值0,第四数值为数值1,第五数值为数值2为例,该媒体类型字段的取值含义可参见下述表1所示:
表1
media_type的取值 含义
0 视频媒体类型
1 音频媒体类型
2 文本/字幕媒体类型
其他 保留
③内容再编辑数量字段(num_editable_content),用于指示当前元数据样本对应的所有媒体样本中可编辑媒体样本(即可编辑媒体内容)的数量,或指示当前元数据样本对应的所有媒体样本中不存在可编辑媒体样本。其中,由前述描述可知,内容再编辑元数据轨道可包括P个元数据样本,每个元数据样本中均包括内容再编辑数量字段,每个元数据样本中的内容再编辑数量字段的取值可相同或不同;基于此,此处所提及的当前元数据样本是指当前所处理的内容再编辑数量字段所属的元数据样本。例如,当前正在处理(读取或写入)第p个元数据样本中的内容再编辑数量字段,则当前元数据样本便为第p个元数据样本。
④区域数量字段(num_regions),用于指示视频帧中存在的可编辑图像区域的数量,或一个视频帧均为可编辑的区域(即一个视频帧为一个可编辑图像区域)。当区域数量字段的取值为默认数值(如数值0)时,区域数量字段用于指示一个视频帧均为可编辑的图像区域;当区域数量字段的取值不为默认数值时,区域数量字段用于指示一个视频帧中存在的可编辑图像区域的数量。基于上述定义可知,针对任一元数据样本而言,其所对应的第i个可编辑媒体样本为视频帧时(如mediatype的取值等于0时)时,该任一元数据样本便可包括该区域数量字段。
⑤区域横坐标字段(region_vertex_x)和区域纵坐标字段(region_vertex_y),分别用于指示可编辑图像区域在视频帧中的横坐标和纵坐标,横坐标和纵坐标便可构成可编辑图像区域在视频帧中的位置坐标。由于可编辑图像区域通常可具有多个顶点,例如图1h所示的左上顶点、左下顶点、右上顶点和右下顶点等;因此,可编辑图像区域在视频帧中的位置坐标可以基于可编辑图像区域的任一顶点来确定。以任一顶点为左下顶点为例,区域横坐标字段的取值可用于指示可编辑图像区域的左下顶点在视频帧中的横坐标,区域纵坐标字段的取值可用于指示可编辑图像区域的左下顶点在视频帧中的纵坐标。其中,以像素为单位,视频帧的左下顶点坐标可以为(0,0),如图1h所示。
⑥区域宽度字段(region_width)和区域高度字段(region_height),分别用于指示可编辑图像区域的宽度和高度,宽度和高度便可构成可编辑图像区域的区域尺寸。其中,可编辑图像区域的宽度和高度均可以像素为单位进行衡量;例如,可编辑图像区域在纵向上,每列包含100个像素,则可编辑图像区域的高度可为100,可编辑图像区域在横向上,每行包括90个像素,则可编辑图像区域的宽度可为90。
⑦文本数量字段(num_strings),用于文本帧中存在的可编辑文本的数量。基于上述定义可知,针对任一元数据样本而言,其所对应的第i个可编辑媒体样本为文本帧时(如mediatype的取值等于2时),该任一元数据样本便可包括该文本数量字段。
⑧文本指示信息字段(original_text),文本指示信息字段的值可称为文本指示信息;该文本指示信息是以空字符结尾的字符串,其可用于指示可再次编辑的文本内容。
2、定义相应的媒体样本组,即可通过样本组的形式直接在相应的媒体轨道中标识可被再次编辑的媒体样本。其中,视频轨道中的媒体样本组可称为内容再编辑视频样本组(ContentReEditVisualSampleGroup),内容再编辑视频样本组所标识的各个媒体样本均为可再次编辑的视频帧;音频轨道中的媒体样本组可称为内容再编辑音频样本组(ContentReEditAudioSampleGroup),该内容再编辑音频样本组所标识的各个媒体样本均为可再次编辑的音频帧;文本轨道中的媒体样本组可称为内容再编辑文本样本组(ContentReEditSubtitleSampleGroup),内容再编辑文本样本组所标识的各个媒体样本均为可再次编辑的文本帧。
进一步的,除了在媒体轨道中定义媒体样本组以外,还可在媒体轨道中通过媒体样本组扩展相应的样本组入口,以通过该相应的样本组入口描述媒体样本组所标识的各个媒体样本的可编辑情况。在本申请实施例,通过内容再编辑视频样本组扩展的样本组入口可称为视频样本组入口(VisualSampleGroupEntry),且视频样本组入口的类型为'crvg'(一种入口类型);通过内容再编辑音频样本组扩展的样本组入口可称为音频样本组入口(AudioSampleGroupEntry),且音频样本组入口的类型为'crag'(一种入口类型);通过内容再编辑文本样本组扩展的样本组入口可称为文本样本组入口(SubtitleSampleGroupEntry),且文本样本组入口的类型为'crtg'(一种入口类型)。
具体的,各个样本组入口的定义可以如下:
①视频样本组入口的定义:
Figure BDA0003284606630000161
Figure BDA0003284606630000171
②音频样本组入口的定义:
class ContentReEditAudioSampleGroup extends AudioSampleGroupEntry('crag')
{
}
③文本样本组入口的定义:
Figure BDA0003284606630000172
基于上述可知,媒体处理设备在对媒体数据(如内容再编辑视频)进行编码、封装时,可以通过内容再编辑元数据轨道或者媒体样本组,实现在文件封装过程中对媒体数据中的可被再次编辑的媒体帧进行标识,从而得到封装文件。当通过内容再编辑元数据轨道进行标识时,封装文件中的内容再编辑指示信息可以包括该内容再编辑元数据轨道;当通过媒体样本组进行标识时,封装文件中的内容再编辑指示信息可以包括一个或多个媒体样本组。为便于进一步理解本申请实施例所提出的文件封装方案的实施原理,下面以媒体数据为内容再编辑视频,且通过内容再编辑元数据轨道进行标识为例,给出该文件封装方案的一个具体的实施例:
1、媒体处理设备针对初始版本的内容再编辑视频,可以识别其中可被再次编辑的媒体帧;例如识别出内容再编辑视频中的一个或多个视频帧,以及一个或多个音频帧可被再次编辑。
2、媒体处理设备在对内容再编辑视频进行编码、封装时,可以根据识别出的媒体帧的信息,在文件封装过程中标识出可进行再次编辑的视频帧和音频帧,以得到封装文件。由于此情况下,内容再编辑元数据轨道同时描述相应的视频轨道和音频轨道;因此,此时的内容再编辑元数据轨道中的multi_media_type=1。若视频轨道中的某个媒体样本(即某个视频帧)为可再次编辑的媒体样本,且同一播放时刻位于音频轨道中的媒体样本(即音频帧)也存在可再次编辑的内容,则在该播放时刻的两个媒体样本(即视频帧和音频帧)所对应的元数据样本中,num_editable_content=2,{media_type=0;num_regions=0}{media_type=1}。
3、媒体处理设备将内容再编辑视频的封装文件,发送给用户侧的媒体消费设备。
4、媒体消费设备消费内容再编辑视频;若欲对内容再编辑视频进行内容编辑,则可向媒体处理设备发送对内容再编辑视频进行内容编辑的再编辑请求。
5、媒体处理设备根据媒体消费设备的再编辑请求,结合内容再编辑元数据轨道中携带的信息,直接选取对应的视频帧和音频帧,将相应内容替换为媒体消费设备提供的内容。
基于上述流程可见,本申请实施例通过内容再编辑元数据轨道对媒体数据中的可被再次编辑的媒体帧进行标识,可使得在后续需对该媒体数据进行内容编辑时,可以直接基于内容再编辑元数据轨道快速定位出可被再次编辑的媒体帧,从而实现媒体编辑,可有效提升编辑效率。
基于上述文件封装方案的相关描述,本申请实施例提出一种媒体数据的封装方法,该媒体数据的封装方法可以由媒体处理设备执行。其中,当媒体数据为内容再编辑视频时,该媒体处理设备可以是上述所提及的视频处理设备,当媒体数据为内容再编辑音频时,该媒体处理设备可以是具有音频编码和封装能力的音频处理设备,等等。请参见图2,该媒体数据的封装方法可包括以下步骤S201-S204:
S201,获取支持内容再编辑的媒体数据,并识别媒体数据中可被再次编辑的媒体帧。
其中,支持内容再编辑的媒体数据可以是内容再编辑视频、内容再编辑音频、内容再编辑文本,对此不作限定。在一种具体实现中,媒体数据可包括一种媒体类型的媒体帧;如该媒体数据可以包括视频媒体类型的多个视频帧,或者包含音频媒体类型的多个音频帧,或者包含文本媒体类型的多个文本帧,等等。另一种具体实现中,媒体数据可以包括多种类型的媒体帧;如包含视频媒体类型的多个视频帧以及音频媒体类型的多个音频帧,或者包含视频媒体类型的多个视频帧以及文本媒体类型的多个文本帧,或者包含音频媒体类型的多个音频帧以及文本媒体类型的多个文本帧,或者包含视频媒体类型的多个视频帧、音频媒体类型的多个音频帧以及文本媒体类型的多个文本帧,等等。为便于阐述,后续均以媒体数据包含多种媒体类型的媒体帧为例进行说明。
媒体处理设备在获取到媒体数据后,可利用一系列的数据识别技术对媒体数据进行识别,从而识别出媒体数据中可被再次编辑的媒体帧。例如,当媒体数据包含视频帧时,则可利用图像识别技术对媒体数据进行识别;当媒体数据包含音频帧时,则可利用音频识别技术对音频数据进行识别;当媒体数据包含文本帧时,则可利用文本识别技术对文本数据进行识别。通过对媒体数据进行识别,所识别出的可被再次编辑的媒体帧可以包括视频帧、音频帧和文本帧种的一种或多种,对此不作限定。
S202,在媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到媒体数据的封装文件。
其中,本申请实施例是以一种类型的媒体帧被封装至一个媒体轨道的原则,对媒体数据种的各种类型的媒体帧进行封装的。也就是说,当媒体数据包括多种媒体类型的媒体帧时,封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中。例如,当媒体数据包含视频帧、音频帧以及文本帧时,封装文件便可包括如下媒体轨道:与视频媒体类型对应的视频轨道、与音频媒体类型对应的音频轨道、与文本媒体类型对应的媒体轨道;并且,一个视频帧被作为一个媒体样本封装至视频轨道中,一个音频帧被作为一个媒体样本封装至音频轨道中,一个文本帧被作为一个媒体样本封装至文本轨道中。
在媒体数据的封装过程中,通过对识别出的各个媒体帧进行标识,可以使得媒体数据的封装文件可包括内容再编辑指示信息,该内容再编辑指示信息用于指示媒体数据中可被再次编辑的媒体帧。基于上述可知,媒体处理设备在对媒体数据进行封装的过程中,可以选择内容再编辑元数据轨道进行媒体帧标识;此情况下,封装文件中的内容再编辑指示信息可包括内容再编辑元数据轨道。或者,媒体处理设备也可选择通过媒体样本组进行媒体帧标识对可被再次边从而得到封装文件;此情况下,封装文件中的内容再编辑指示信息可包括一个或多个媒体样本组。基于此,在步骤S202的具体实施过程中所涉及的部分步骤可参见下述描述:
(一)内容再编辑信息包括内容再编辑元数据轨道:
其中,内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本。在此情况下,步骤S202的具体实现方式可至少包括如下步骤:在媒体数据的封装过程中,根据识别出的各个媒体帧在多个媒体轨道中确定可编辑媒体样本;以及,根据确定出的可编辑媒体样本生成内容再编辑元数据轨道。应理解的是,由于媒体帧在媒体轨道中被称作媒体样本,所以此处所提及的可编辑媒体样本本质上可理解成是位于媒体轨道中的识别出的媒体帧。其中,根据确定出的可编辑媒体样本生成内容再编辑元数据轨道这一步骤的具体实施方式可参见下述描述:
由前述可知:内容再编辑元数据轨道包括样本入口,且样本入口包括轨道描述字段。基于此,媒体处理设备在根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,可执行如下步骤:若确定出的各个媒体样本处于同一个媒体轨道,则确定内容再编辑元数据轨道用于描述单个媒体轨道,并将轨道描述字段的取值设置为第一数值;若确定出的各个媒体样本处于多个不同类型的媒体轨道,则确定内容再编辑元数据轨道用于描述多个不同类型的媒体轨道,并将轨道描述字段的取值设置为第二数值。
例如,若确定出的各个媒体样本均是视频帧,即确定出的各个媒体样本均处于视频轨道,则可确定内容再编辑元数据轨道用于描述单个媒体轨道,此时可将轨道描述字段的取值设置为第一数据(如数值0);又如,若确定出的各个媒体样本包括视频帧和音频帧,即确定出的部分媒体样本处于视频轨道,另一部分处于音频轨道,则可确定内容再编辑元数据轨道用于描述多个不同类型的媒体轨道,此时可将轨道描述字段的取值设置为第二数据(如数值1)。
进一步的,内容再编辑元数据轨道包括P个元数据样本,一个元数据样本对应所述媒体数据的一个播放时刻;第p个元数据样本用于描述:内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P]。基于此,媒体处理设备在根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可执行如下步骤:若第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则根据至少一个可编辑媒体样本的数量,确定第p个元数据样本中的内容再编辑数量字段的取值;若第p个元数据样本对应的所有媒体样本中不存在可编辑媒体样本,则将第p个元数据样本中的内容再编辑数量字段的取值设置为无效数值。
例如,设第p个元数据样本对应的所有媒体样本包括:位于视频轨道中的媒体样本A、位于音频轨道中的媒体样本B,以及位于文本轨道中的媒体样本C。若确定出的可编辑媒体样本包括媒体样本A、媒体样本B和媒体样本D,则由于第p个元数据样本对应的所有媒体样本存在可编辑媒体样本,且可编辑媒体样本总共有2个,即媒体样本A和媒体样本B,因此可将第p个元数据样本中的内容再编辑数量字段的取值设置为2。若确定出的可编辑媒体样本包括媒体样本D和媒体样本R,则由于第p个元数据样本对应的所有媒体样本不存在可编辑媒体样本,因此可将第p个元数据样本中的内容再编辑数量字段的取值设置为无效数值(如数值0)。
进一步的,媒体处理设备在根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可在内容再编辑元数据轨道中添加一个或多个媒体类型字段。具体的,当内容再编辑元数据轨道描述单个媒体轨道时,媒体处理设备可在内容再编辑元数据轨道中的样本入口中,添加媒体类型字段;并根据内容再编辑元数据轨道所描述的媒体轨道的类型,设置媒体类型字段的取值,此情况下的媒体类型字段用于指示内容再编辑元数据轨道所描述的媒体轨道的类型。当内容再编辑元数据轨道描述多个不同类型的媒体轨道时,媒体处理设备可判断第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本。若第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则将第p个元数据样本对应的所有媒体样本中的各个可编辑媒体样本的媒体类型字段,添加至第p个元数据样本中;并根据第p个元数据样本中的各个媒体类型字段对应的可编辑媒体样本的媒体类型,设置各个媒体类型字段的取值,此情况下的媒体类型字段用于指示可编辑媒体样本的媒体类型。
例如,假设内容再编辑元数据轨道用于描述单个媒体轨道。那么:若内容再编辑元数据轨道所描述的媒体轨道的类型为视频媒体类型,则可设置媒体类型字段的取值等于第三数值(如数值0);若内容再编辑元数据轨道所描述的媒体轨道的类型为音频媒体类型,则可设置媒体类型字段的取值等于第四数值(如数值1);若内容再编辑元数据轨道所描述的媒体轨道的类型为文本媒体类型,则可设置媒体类型字段的取值等于第五数值(如数值2)。应理解的是,当内容再编辑元数据轨道用于描述多个不同类型的媒体轨道时,根据可编辑媒体样本的媒体类型设置相应媒体类型字段的取值的方式可参见此例子,对此不再赘述。
进一步的,当第p个元数据样本中的内容再编辑数量字段的取值不等于无效数值时,即当第p个元数据样本对应的所有媒体样本中包括至少一个可编辑媒体样本时,媒体处理设备在根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可执行如下步骤:
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第三数值,即第i个可编辑媒体样本为视频帧时,媒体处理设备还可在第p个元数据样本中添加第i个可编辑媒体样本的区域数量字段,并设置第i个可编辑媒体样本的区域数量字段的取值。具体的,若第i个可编辑媒体样本(即视频帧)均为可编辑的图像区域,则可将该区域数量字段的取值设置为默认数值(如数值0);若第i个可编辑媒体样本存在部分区域不能被编辑,且第i个可编辑媒体样本存在一个或多个可编辑图像区域,则可根据第i个可编辑媒体样本存在的可编辑图像区域的数量,设置区域数量字段的取值。如第i个可编辑媒体样本存在2个可编辑图像区域,则可设置区域数量字段的取值为2。
在此情况下,当第i个可编辑媒体样本的区域数量字段的取值不等于默认数值时,即第i个可编辑媒体样本存在一个或多个可编辑图像区域时,媒体处理设备还可将第i个可编辑媒体样本中的各个可编辑图像区域的区域信息,添加至第p个元数据样本中。其中,任一可编辑图像区域的区域信息包括以下至少一项:所述任一可编辑图像区域在所述第i个可编辑媒体样本中的位置坐标,以及所述任一可编辑图像区域的区域尺寸。
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第四数值,即第i个可编辑媒体样本为音频帧时,由于音频帧通常是整帧编辑替换的,因此可不在第p个元数据样本中添加关于音频帧的描述信息。当然,可理解的是:当音频帧支持部分数据替换时,与视频帧和文本帧的处理方式类似,也可在第p个元数据样本中添加第i个可编辑媒体样本的音频数量字段以及音频指示信息等信息。
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第五数值,即第i个可编辑媒体样本为文本帧时,媒体处理设备还可在第p个元数据样本中添加第i个可编辑媒体样本的文本数量字段;并根据第i个可编辑媒体样本中存在的可编辑文本的数量,确定第i个可编辑媒体样本的文本数量字段的取值。在此情况下,媒体处理设备还可在第p个元数据样本中,添加第i个可编辑媒体样本中的各个可编辑文本的文本指示信息。其中,任一可编辑文本的文本指示信息用于指示:任一可编辑文本中可再次编辑的文本内容。
(二)内容再编辑信息包括一个或多个媒体样本组:
其中,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识任一媒体轨道中可被再次编辑的媒体样本。在此情况下,步骤S202的具体实现方式可至少包括如下步骤:在媒体数据的封装过程中,根据识别出的各个媒体帧在多个媒体轨道中确定可编辑媒体样本;其次,可根据可编辑媒体样本的媒体类型,将各个可编辑媒体样本划分成一个或多个媒体样本组;然后,可将各个媒体样本组分别添加至相应的媒体轨道中。
进一步的,若一个或多个媒体样本组中包括内容再编辑视频样本组,则媒体处理设备还可在视频轨道中添加视频样本组入口。其中,视频样本组入口包括:内容再编辑视频样本组所标识的各个媒体样本的区域数量字段,以及内容再编辑视频样本组所标识的各个媒体样本中的可编辑图像区域的区域信息。若一个或多个媒体样本组中包括内容再编辑音频样本组,则媒体处理设备还可在音频轨道中添加音频样本组入口。若一个或多个媒体样本组中包括内容再编辑文本样本组,则媒体处理设备还可在文本轨道中添加文本样本组入口。其中,文本样本组入口包括:内容再编辑文本样本组所标识的各个媒体样本的文本数量字段,以及内容再编辑文本样本组所标识的各个媒体样本的文本指示信息。
本申请实施例在获取到支持内容再编辑的媒体数据后,可识别媒体数据中可被再次编辑的媒体帧,从而在媒体数据的封装过程中,对识别出的各个媒体帧进行标识以得到媒体数据的封装文件。这样的封装方式可使得封装文件中包括内容再编辑指示信息,从而实现通过该内容再编辑指示信息直观指示媒体数据中可被再次编辑的媒体帧,进而使得任意设备在对该媒体数据进行内容再编辑时,可以基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,并对这些媒体帧进行内容编辑,可有效提升媒体数据的编辑效率。并且,通过在封装文件中添加内容再编辑指示信息,使得任意设备在对媒体数据进行内容再编辑时,无需对媒体数据执行进行数据识别等复杂操作,这样不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
基于上述所提及的媒体数据的封装方法,本申请实施例提供了一种媒体数据的编辑方法。该媒体数据的编辑方法可以由一个媒体编辑设备执行,该计算机设备可以是上述所提及的媒体处理设备,也可以是上述所提及的媒体消费设备,还可以是上述所提及的具有媒体编辑能力的其他设备,对此不作限定。请参见图3,该媒体数据的编辑方法可包括以下步骤S301-S302:
S301,获取支持内容再编辑的媒体数据的封装文件。
其中,封装文件包括内容再编辑指示信息,内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧。由前述可知,媒体数据可包括多种媒体类型的媒体帧;相应的,封装文件可包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应媒体类型对应的媒体轨道中。具体的,若在媒体数据的封装过程中,是通过内容再编辑元数据轨道进行媒体帧标识的,则本申请实施例所提及的内容再编辑指示信息可以包括内容再编辑元数据轨道;若在媒体数据的封装过程中,是通过媒体样本组进行媒体帧标识的,则本申请实施例所提及的内容再编辑指示信息可包括一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中;其中,任一媒体轨道中的媒体样本组用于标识任一媒体轨道中可被再次编辑的媒体样本。
S302,根据内容再编辑指示信息,对媒体数据中可被再次编辑的媒体帧进行内容编辑。
在具体实现中,媒体编辑设备可对封装文件进行解封装以得到媒体数据,并获取用于对媒体数据进行内容编辑的媒体内容;以及,根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧。然后,采用媒体内容对筛选出的媒体帧进行内容编辑,从而得到编辑后的媒体数据。例如,参见图4所示:设媒体数据包括多个视频帧,媒体内容为图像帧41;若根据内容再编辑指示信息确定媒体数据中的视频帧42为可被再次编辑的媒体帧,则媒体编辑设备可采用图像帧41替换视频帧42,以得到编辑后的媒体数据。
其中,根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧这一步骤的具体实施方式可参见下述描述:
(一)内容再编辑指示信息包括内容再编辑元数据轨道:
参见前述描述可知,内容再编辑元数据轨道可包括样本入口,且样本入口包括轨道描述字段;当轨道描述字段的取值为第一数值时,轨道描述字段用于指示内容再编辑元数据轨道描述单个媒体轨道;当轨道描述字段的取值为第二数值时,轨道描述字段用于指示内容再编辑元数据轨道描述多个不同类型的媒体轨道。除了包括样本入口之后,内容再编辑元数据轨道还可包括P个元数据样本,一个元数据样本对应媒体数据的一个播放时刻,P的取值等于媒体数据包括的播放时刻的数量;且第p个元数据样本用于描述:内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P]。具体的,第p个元数据样本包括内容再编辑数量字段;当内容可编辑数量字段的取值等于无效数值时,内容可编辑字段用于指示第p个元数据样本对应的所有媒体样本中不存在可编辑媒体样本;当内容可编辑数量字段的取值不等于无效数值时,内容可编辑字段用于指示第p个元数据样本对应的所有媒体样本中的可编辑媒体样本的数量。
进一步的,当轨道描述字段的取值为第一数值时,样本入口还包括媒体类型字段,此情况下的该媒体类型字段用于指示内容再编辑元数据轨道所描述的媒体轨道的类型。当轨道描述字段的取值为第二数值,且内容可编辑数量字段的取值不等于无效数值时,第p个元数据样本中还包括:第p个元数据样本对应的所有媒体样本中的各个可编辑媒体样本的媒体类型字段,此情况下的媒体类型字段用于指示可编辑媒体样本的媒体类型。具体的,当媒体类型字段的取值等于第三数值时,媒体类型字段用于指示视频媒体类型;当媒体类型字段的取值等于第四数值时,媒体类型字段用于指示音频媒体类型;当媒体类型字段的取值等于第五数值时,媒体类型字段用于指示文本媒体类型。更进一步的:
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第三数值时,第i个可编辑媒体样本为视频帧;i的取值小于或等于内容可编辑数量字段的取值,且i为正整数。此情况下,第p个元数据样本中还包括:第i个可编辑媒体样本的区域数量字段;其中:当区域数量字段的取值为默认数值时,区域数量字段用于指示视频帧为一个视频帧均为可编辑的图像区域;当区域数量字段的取值不为默认数值时,区域数量字段用于指示一个视频帧中存在的可编辑图像区域的数量。进一步的,当区域数量字段的取值不为默认数值时,第p个元数据样本中还包括:第i个可编辑媒体样本中的各个可编辑图像区域的区域信息;其中,任一可编辑图像区域的区域信息包括以下至少一项:任一可编辑图像区域在所述第i个可编辑媒体样本中的位置坐标,以及任一可编辑图像区域的区域尺寸。
当第p个元数据样本中的第i个可编辑媒体样本的媒体类型字段为第五数值时,第i个可编辑媒体样本为文本帧。此情况下,第p个元数据样本中还包括:第i个可编辑媒体样本的文本数量字段;其中,文本数量字段用于指示文本帧中存在的可编辑文本的数量。另外,第p个元数据样本中还包括:第i个可编辑媒体样本中的各个可编辑文本的文本指示信息;其中,任一可编辑文本的文本指示信息用于指示:任一可编辑文本中可再次编辑的文本内容。
基于上述内容再编辑元数据轨道的相关描述,媒体编辑设备在根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧时,可以先从内容再编辑元数据轨道的样本入口中读取轨道描述字段的取值。
(1)若轨道描述字段的取值为第一数值,则媒体编辑设备可从样本入口中读取媒体类型字段的取值,并根据该媒体类型字段的取值确定内容再编辑元数据轨道所描述的媒体轨道的类型,从而根据该媒体轨道的类型确定该媒体轨道中可被再次编辑的媒体样本的媒体类型。应理解的是,若轨道描述字段的取值为第一数值,则可确定内容再编辑元数据轨道描述的是单个媒体轨道,那么可进一步确定内容再编辑元数据轨道中的一个元数据样本对应一个播放时刻的一个媒体样本。
在此情况下,媒体编辑设备可遍历内容再编辑元数据轨道中的各个元数据样本,由于每个元数据样本中均包括内容再编辑数量字段,因此针对当前遍历的当前元数据样本,可从当前元数据样本中读取内容再编辑数量字段的取值。若内容再编辑数量字段的取值等于无效数值,则可表明当前元数据样本对应的媒体样本中不存在可编辑媒体样本,此时可继续遍历其他的元数据样本。若内容再编辑数量字段的取值不等于无效数值,则表明当前元数据样本对应的媒体样本为可编辑媒体样本,此时可将该可编辑媒体样本(即当前元数据样本对应的媒体样本)作为媒体数据中的可被再次编辑的媒体帧。
进一步的,若媒体类型字段的取值为第三数值,则表明当前元数据样本对应的媒体样本为视频帧;由于此情况下的当前元数据样本中还包括区域数量字段,因此媒体编辑设备还可从当前元数据样本中读取区域数量字段的取值。若区域数量字段的取值为默认数值,则可确定当前元数据样本对应的视频帧整体是一个可编辑的图像区域;若区域数量字段的取值不是默认数值,则还可根据当前元数据样本中的各个可编辑图像区域的区域信息,在当前元数据样本对应的视频帧中确定一个或多个可编辑图像区域,从而使得在对该视频帧进行内容编辑时,可以针对性地对这些确定出的可编辑图像区域进行内容编辑。
进一步的,若媒体类型字段的取值为第五数值,则表明当前元数据样本对应的媒体样本为文本帧;由于此情况下的当前元数据样本中还包括文本数量字段,因此媒体编辑设备还可根据文本数量字段的取值确定当前元数据样本对应的文本帧中的可编辑文本的数量。进一步的,媒体编辑设备还可从当前元数据样本中读取各个可编辑文本的文本指示信息,从而根据读取出的各个文本指示信息在当前元数据样本对应的文本帧中的相应可编辑文本中确定可再次编辑的文本内容,从而使得在对该文本帧进行内容编辑时,可以针对性地对这些确定出的可编辑文本进行内容编辑。
(2)若轨道描述字段的取值为第二数值,则可确定内容再编辑元数据轨道描述的是多个不同类型的媒体轨道,那么可进一步确定内容再编辑元数据轨道中的一个元数据样本对应一个播放时刻的多个媒体样本。在此情况下,媒体编辑设备可遍历内容再编辑元数据轨道中的各个元数据样本,针对当前遍历的当前元数据样本,可从当前元数据样本中读取内容再编辑数量字段的取值。若内容再编辑数量字段的取值等于无效数值,则可表明当前元数据样本对应的所有媒体样本中不存在可编辑媒体样本,此时可继续遍历其他的元数据样本。若内容再编辑数量字段的取值不等于无效数值,则表明当前元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,此时可将当前元数据样本对应的所有媒体样本中存在的各个可编辑媒体样本,作为媒体数据中的可被再次编辑的媒体帧。
进一步的,当内容再编辑数量字段的取值不等于无效数值时,还可遍历当前元数据样本对应的各个可编辑媒体样本。针对当前遍历的当前可编辑媒体样本,可从当前元数据样本中读取该当前可编辑媒体样本的媒体类型字段的取值。若媒体类型字段的取值为第三数值,则表明当前可编辑媒体样本为视频帧;此时可进一步从当前元数据样本中读取当前可编辑媒体样本的区域数量字段的取值。若区域数量字段的取值为默认数值,则可确定当前可编辑媒体样本整体是一个可编辑的图像区域;若区域数量字段的取值不是默认数值,则还可根据当前元数据样本中的各个可编辑图像区域的区域信息,在当前可编辑媒体样本中确定一个或多个可编辑图像区域,从而使得在对当前可编辑媒体样本进行内容编辑时,可以针对性地对这些确定出的可编辑图像区域进行内容编辑。若媒体类型字段的取值为第五数值,则表明当前可编辑媒体样本为文本帧;此时还可根据文本数量字段的取值确定当前可编辑媒体样本中的可编辑文本的数量,并可从当前元数据样本中读取各个可编辑文本的文本指示信息,从而根据读取出的各个文本指示信息在当前可编辑媒体样本中的相应可编辑文本中确定可再次编辑的文本内容,从而使得在对该当前可编辑媒体样本进行内容编辑时,可以针对性地对这些确定出的可编辑文本进行内容编辑。
需要说明的是,上述只是示例性地阐述了在内容再编辑指示信息包括内容再编辑元数据轨道的情况下,如何在媒体数据中筛选出可被再次编辑的媒体帧的具体流程,但并不对此进行限定。例如,在其他实施例中,在根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧时,也可先不执行从内容再编辑元数据轨道的样本入口中读取轨道描述字段的取值的步骤,而是直接遍历内容再编辑元数据轨道中的各个元数据样本,从当前元数据样本中读取内容再编辑数量字段的取值。若内容再编辑数量字段的取值等于无效数值,则可确定当前元数据样本对应的所有媒体样本中不存在可编辑媒体样本,继续遍历其他的元数据样本。若内容再编辑数量字段的取值不等于无效数值,则确定当前元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,并可将当前元数据样本对应的所有媒体样本中存在的各个可编辑媒体样本,均作为媒体数据中的可被再次编辑的媒体帧。
(二)内容再编辑指示信息包括一个或多个媒体样本组:
由前述可知,任一媒体轨道中的媒体样本组用于标识任一媒体轨道中可被再次编辑的媒体样本。因此,媒体编辑设备在根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧时,可以遍历内容再编辑指示信息中的各个媒体样本组;针对当前遍历的当前媒体样本组,可将当前媒体样本组在相应的媒体轨道中所标识的各个媒体样本,均作为媒体数据中可被再次编辑的媒体帧。
进一步的,当多个媒体轨道包括视频轨道,一个或多个媒体样本组中包括:位于视频轨道中的内容再编辑视频样本组时,内容再编辑视频样本组所标识的各个媒体样本均为可被再次编辑的视频帧。在此情况下,由于视频轨道还包括视频样本组入口,且该视频样本组入口包括:内容再编辑视频样本组所标识的各个媒体样本的区域数量字段。并且,当内容再编辑视频样本组所标识的任一媒体样本的区域数量字段的取值不为默认数值时,视频样本组入口还可包括:内容再编辑视频样本组所标识的任一媒体样本中的可编辑图像区域的区域信息。因此,媒体编辑设备还可遍历内容编辑视频样本组所标识的各个视频帧;针对当前遍历的当前视频帧,可从视频样本组入口中读取该当前视频帧的区域数量字段的取值。若区域数量字段的取值为默认数值,则可确定当前视频帧整体是一个可编辑的图像区域。若区域数量字段的取值不是默认数值,则还可从视频样本组入口中读取当前视频帧中的各个可编辑图像区域的区域信息,从而根据读取到的区域信息在当前视频帧中确定一个或多个可编辑图像区域,从而使得在对当前视频帧进行内容编辑时,可以针对性地对该当前视频帧进行内容编辑。
进一步的,当多个媒体轨道包括文本轨道,且一个或多个媒体样本组中包括:位于文本轨道中的内容再编辑文本样本组时,内容再编辑文本样本组所标识的各个媒体样本均为可被再次编辑的文本帧。在此情况下,文本轨道还包括文本样本组入口;且文本样本组入口包括:内容再编辑文本样本组所标识的各个媒体样本的文本数量字段,以及内容再编辑文本样本组所标识的各个媒体样本的文本指示信息。因此,媒体编辑设备还可遍历内容编辑文本样本组所标识的各个文本帧,针对当前遍历的当前文本帧,可从文本样本组中读取当前文本帧的文本数量字段的取值,从而确定当前文本帧所包含的可编辑文本的数量;进一步的,可依次遍历当前文本帧中的各个可编辑文本,并从文本样本组入口中读取当前遍历的当前可编辑文本的文本指示信息,从而根据当前可编辑文本的文本指示信息在当前可编辑文本中确定可再次编辑的文本内容,从而使得在对该当前可编辑文本进行内容编辑时,可以针对性地对确定出的可编辑文本进行内容编辑。
基于上述步骤S301-S302的相关描述,需要说明的是:若本申请实施例所提及的媒体编辑设备为媒体消费设备,则步骤S301所提及的封装文件是指由图2所示的方法实施例中的媒体处理设备生成的,且步骤S302所提及的媒体内容可以是由该媒体消费设备直接从用户处获取到的。若本申请实施例所提及的媒体编辑设备为图2所示的方法实施例中的媒体处理设备,则步骤S301所提及的封装文件是由媒体处理设备在生成原始的封装文件后,将原始的封装文件下发给媒体消费设备,从而由媒体消费设备(或借助第三方设备)根据媒体内容在原始的封装文件中增加内容再编辑实体组后所得到的封装文件,媒体内容是由媒体消费设备提供的。也就是说,此情况下,步骤S301所提及的封装文件还可包括内容再编辑实体组(ContentReEditAssociationBox),该内容再编辑实体组用于将可被再次编辑的媒体轨道与媒体内容进行关联,媒体内容是指用于替换所述媒体数据中的源内容的内容。具体的,该内容再编辑实体组的定义如下:
Figure BDA0003284606630000301
基于上述内容再编辑实体组的定义可知,该内容再编辑实体组可包括:映射至内容再编辑实体组的M个实体的实体标识(entity_id),M为正整数;其中,M个实体至少包括:媒体内容和多个媒体轨道中需被替换的源内容。具体的,第m个实体的实体标识为:多个媒体轨道中的其中一个媒体轨道(track)的轨道标识,或者与多个媒体轨道中的其中一个媒体轨道相关联的项目(item)的项目标识。另外,内容再编辑实体组中可包括实体数量字段(num_entities_in_group);该实体数量字段用于指示内容再编辑实体组中的实体标识的数量。进一步的,内容再编辑实体组还包括M个实体标识中的每个实体标识的内容标志字段(source_content_flag);其中,当内容标志字段的取值为第六数值(如数值1)时,内容标志字段用于指示相应的实体为被再次编辑的源内容;当内容标志字段的取值为第七数值(如数值0)时,内容标志字段用于指示相应的实体为用于替换源内容的媒体内容。
基于上述内容再编辑实体组的相关描述,当封装文件中包括该内容再编辑实体组时,媒体编辑设备可先根据该内容再编辑实体组中的信息,确定出与媒体内容关联的媒体轨道,再根据内容再编辑指示信息在与媒体内容相关联的媒体轨道中查找可编辑媒体样本,从而确定出媒体数据中可被再次编辑的媒体帧,这样可有效提升媒体数据的编辑效率。并且,通过内容再编辑实体组中的信息还可直观地区分源内容和媒体内容,可以有效提升媒体编辑的准确性。
本申请实施例可通过获取支持内容再编辑的媒体数据的封装文件,使得可基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,进而实现对这些可被再次编辑的媒体帧进行内容编辑,这样可有效提升媒体数据的编辑效率。并且,由于在整个编辑过程中,无需对媒体数据执行进行数据识别等复杂操作;因此,这样的编辑方式不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
基于上述图2所示的媒体数据的封装方法的相关描述,本申请实施例还公开了一种媒体数据的封装装置,所述媒体数据的封装装置可以是运行于上述所提及的媒体处理设备的一个计算机程序(包括程序代码)。所述媒体数据的封装装置可以执行图2所示的方法,请参见图5,所述媒体数据的封装装置可以运行如下单元:
获取单元501,用于获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
封装单元502,用于在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧。
在一种实施方式中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中;所述内容再编辑指示信息包括:内容再编辑元数据轨道,所述内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本;
相应的,封装单元502在用于在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件时,可具体用于:
在所述媒体数据的封装过程中,根据识别出的各个媒体帧在所述多个媒体轨道中确定可编辑媒体样本;
根据确定出的可编辑媒体样本生成内容再编辑元数据轨道。
另一种实施方式中,所述内容再编辑元数据轨道包括样本入口,所述样本入口包括轨道描述字段;相应的,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,可具体用于:
若确定出的各个媒体样本处于同一个媒体轨道,则确定所述内容再编辑元数据轨道用于描述单个媒体轨道,并将所述轨道描述字段的取值设置为第一数值;
若确定出的各个媒体样本处于多个不同类型的媒体轨道,则确定所述内容再编辑元数据轨道用于描述多个不同类型的媒体轨道,并将所述轨道描述字段的取值设置为第二数值。
另一种实施方式中,当所述内容再编辑元数据轨道描述单个媒体轨道时,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
在所述内容再编辑元数据轨道中的样本入口中,添加媒体类型字段;
根据所述内容再编辑元数据轨道所描述的媒体轨道的类型,设置所述媒体类型字段的取值。
另一种实施方式中,所述内容再编辑元数据轨道包括P个元数据样本,一个元数据样本对应所述媒体数据的一个播放时刻;第p个元数据样本用于描述:所述内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P];
相应的,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
若所述第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则根据所述至少一个可编辑媒体样本的数量,确定所述第p个元数据样本中的内容再编辑数量字段的取值;
若所述第p个元数据样本对应的所有媒体样本中不存在可编辑媒体样本,则将所述第p个元数据样本中的内容再编辑数量字段的取值设置为无效数值。
另一种实施方式中,所述内容再编辑元数据轨道描述多个不同类型的媒体轨道时,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
若所述第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则将所述第p个元数据样本对应的所有媒体样本中的各个可编辑媒体样本的媒体类型字段,添加至所述第p个元数据样本中,媒体类型字段用于指示可编辑媒体样本的媒体类型;
根据所述第p个元数据样本中的各个媒体类型字段对应的可编辑媒体样本的媒体类型,设置所述各个媒体类型字段的取值。
另一种实施方式中,当第p个元数据样本中的内容再编辑数量字段的取值不等于无效数值时,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第三数值时,在第p个元数据样本中添加第i个可编辑媒体样本的区域数量字段;
设置第i个可编辑媒体样本的区域数量字段的取值。
另一种实施方式中,封装单元502在用于设置第i个可编辑媒体样本的区域数量字段的取值时,可具体用于:
若第i个可编辑媒体样本(即视频帧)均为可编辑的图像区域,则将该区域数量字段的取值设置为默认数值;
若第i个可编辑媒体样本存在一个或多个可编辑图像区域,则根据第i个可编辑媒体样本存在的可编辑图像区域的数量,设置区域数量字段的取值。
另一种实施方式中,当第i个可编辑媒体样本的区域数量字段的取值不等于默认数值时,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
将第i个可编辑媒体样本中的各个可编辑图像区域的区域信息,添加至第p个元数据样本中;
其中,任一可编辑图像区域的区域信息包括以下至少一项:所述任一可编辑图像区域在所述第i个可编辑媒体样本中的位置坐标,以及所述任一可编辑图像区域的区域尺寸。
另一种实施方式中,当第p个元数据样本中的内容再编辑数量字段的取值不等于无效数值时,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
当第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为第五数值,在第p个元数据样本中添加第i个可编辑媒体样本的文本数量字段;
根据第i个可编辑媒体样本中存在的可编辑文本的数量,确定第i个可编辑媒体样本的文本数量字段的取值。
另一种实施方式中,封装单元502在用于根据确定出的可编辑媒体样本生成内容再编辑元数据轨道时,还可用于:
在第p个元数据样本中,添加第i个可编辑媒体样本中的各个可编辑文本的文本指示信息;
其中,任一可编辑文本的文本指示信息用于指示:任一可编辑文本中可再次编辑的文本内容。
另一种实施方式中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中;所述内容再编辑指示信息包括:一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识任一媒体轨道中可被再次编辑的媒体样本;
相应的,封装单元502在用于在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件时,可具体用于:
在媒体数据的封装过程中,根据识别出的各个媒体帧在多个媒体轨道中确定可编辑媒体样本;
根据可编辑媒体样本的媒体类型,将各个可编辑媒体样本划分成一个或多个媒体样本组;
将各个媒体样本组分别添加至相应的媒体轨道中。
另一种实施方式中,若一个或多个媒体样本组中包括内容再编辑视频样本组,则封装单元502还可用于:
在视频轨道中添加视频样本组入口;其中,视频样本组入口包括:内容再编辑视频样本组所标识的各个媒体样本的区域数量字段,以及内容再编辑视频样本组所标识的各个媒体样本中的可编辑图像区域的区域信息。
另一种实施方式中,若一个或多个媒体样本组中包括内容再编辑文本样本组,则封装单元502还可用于:
在文本轨道中添加文本样本组入口;其中,文本样本组入口包括:内容再编辑文本样本组所标识的各个媒体样本的文本数量字段,以及内容再编辑文本样本组所标识的各个媒体样本的文本指示信息。
根据本申请的另一个实施例,图5所示的媒体数据的封装装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于媒体数据的封装装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图2中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图5中所示的媒体数据的封装装置设备,以及来实现本申请实施例的媒体数据的封装方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例在获取到支持内容再编辑的媒体数据后,可识别媒体数据中可被再次编辑的媒体帧,从而在媒体数据的封装过程中,对识别出的各个媒体帧进行标识以得到媒体数据的封装文件。这样的封装方式可使得封装文件中包括内容再编辑指示信息,从而实现通过该内容再编辑指示信息直观指示媒体数据中可被再次编辑的媒体帧,进而使得任意设备在对该媒体数据进行内容再编辑时,可以基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,并对这些媒体帧进行内容编辑,可有效提升媒体数据的编辑效率。并且,通过在封装文件中添加内容再编辑指示信息,使得任意设备在对媒体数据进行内容再编辑时,无需对媒体数据执行进行数据识别等复杂操作,这样不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
基于上述图3所示的媒体数据的编辑方法的相关描述,本申请实施例还公开了一种媒体数据的编辑装置,所述媒体数据的编辑装置可以是运行于上述所提及的媒体编辑设备的一个计算机程序(包括程序代码)。所述媒体数据的编辑装置可以执行图3所示的方法,请参见图6,所述媒体数据的编辑装置可以运行如下单元:
获取单元601,用于获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
编辑单元602,用于根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑。
在一种实施方式中,编辑单元602在用于根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑时,可具体用于:
对封装文件进行解封装以得到媒体数据,并获取用于对媒体数据进行内容编辑的媒体内容;
根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧;
采用媒体内容对筛选出的媒体帧进行内容编辑,得到编辑后的媒体数据。
另一种实施方式中,内容再编辑指示信息包括内容再编辑元数据轨道,内容再编辑元数据轨道可包括样本入口,且样本入口包括轨道描述字段;则编辑单元602在用于根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧时,可具体用于:
从内容再编辑元数据轨道的样本入口中读取轨道描述字段的取值;
若轨道描述字段的取值为第一数值,则确定内容再编辑元数据轨道中的一个元数据样本对应一个播放时刻的一个媒体样本;
遍历内容再编辑元数据轨道中的各个元数据样本,针对当前遍历的当前元数据样本,从当前元数据样本中读取内容再编辑数量字段的取值;
若内容再编辑数量字段的取值等于无效数值,则可确定当前元数据样本对应的媒体样本中不存在可编辑媒体样本,继续遍历其他的元数据样本;
若内容再编辑数量字段的取值不等于无效数值,则确定当前元数据样本对应的媒体样本为可编辑媒体样本,将当前元数据样本对应的媒体样本作为媒体数据中的可被再次编辑的媒体帧。
另一种实施方式中,编辑单元602在用于根据内容再编辑指示信息,在媒体数据中筛选出可被再次编辑的媒体帧时,还可具体用于:
若轨道描述字段的取值为第一数值,则确定内容再编辑元数据轨道中的一个元数据样本对应一个播放时刻的一个媒体样本;
遍历内容再编辑元数据轨道中的各个元数据样本,针对当前遍历的当前元数据样本,从当前元数据样本中读取内容再编辑数量字段的取值;
若内容再编辑数量字段的取值等于无效数值,则可确定当前元数据样本对应的媒体样本中不存在可编辑媒体样本,继续遍历其他的元数据样本;
若内容再编辑数量字段的取值不等于无效数值,则将当前元数据样本对应的所有媒体样本中存在的各个可编辑媒体样本作为媒体数据中的可被再次编辑的媒体帧。
根据本申请的另一个实施例,图6所示的媒体数据的编辑装置中的各个单元可以分别或全部合并为一个或若干个另外的单元来构成,或者其中的某个(些)单元还可以再拆分为功能上更小的多个单元来构成,这可以实现同样的操作,而不影响本申请的实施例的技术效果的实现。上述单元是基于逻辑功能划分的,在实际应用中,一个单元的功能也可以由多个单元来实现,或者多个单元的功能由一个单元实现。在本申请的其它实施例中,基于媒体数据的编辑装置也可以包括其它单元,在实际应用中,这些功能也可以由其它单元协助实现,并且可以由多个单元协作实现。
根据本申请的另一个实施例,可以通过在包括中央处理单元(CPU)、随机存取存储介质(RAM)、只读存储介质(ROM)等处理元件和存储元件的例如计算机的通用计算设备上运行能够执行如图3中所示的相应方法所涉及的各步骤的计算机程序(包括程序代码),来构造如图6中所示的媒体数据的编辑装置设备,以及来实现本申请实施例的媒体数据的编辑方法。所述计算机程序可以记载于例如计算机可读记录介质上,并通过计算机可读记录介质装载于上述计算设备中,并在其中运行。
本申请实施例可通过获取支持内容再编辑的媒体数据的封装文件,使得可基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,进而实现对这些可被再次编辑的媒体帧进行内容编辑,这样可有效提升媒体数据的编辑效率。并且,由于在整个编辑过程中,无需对媒体数据执行进行数据识别等复杂操作;因此,这样的编辑方式不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
基于上述方法实施例以及装置实施例的描述,本申请实施例还提供一种计算机设备,该计算机设备可以是上述所提及的媒体处理设备或者媒体编辑设备。请参见图7,该计算机设备至少包括处理器701、输入接口702、输出接口703以及计算机存储介质704。其中,计算机设备内的处理器701、输入接口702、输出接口703以及计算机存储介质704可通过总线或其他方式连接。计算机存储介质704可以存储在计算机设备的存储器中,所述计算机存储介质704用于存储计算机程序,所述计算机程序包括程序指令,所述处理器701用于执行所述计算机存储介质704存储的程序指令。处理器701(或称CPU(Central ProcessingUnit,中央处理器))是计算机设备的计算核心以及控制核心,其适于实现一条或多条指令,具体适于加载并执行一条或多条指令从而实现相应方法流程或相应功能。
在一个实施例中,当计算机设备是媒体处理设备时,本申请实施例所述的处理器701可以用于进行一系列的媒体数据的封装处理,具体包括:获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧,等等。
另一个实施例中,当计算机设备是媒体编辑设备时,本申请实施例所述的处理器701可以用于进行一系列的媒体数据的编辑处理,具体包括:获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑,等等。
本申请实施例还提供了一种计算机存储介质(Memory),所述计算机存储介质是计算机设备中的记忆设备,用于存放程序和数据。可以理解的是,此处的计算机存储介质既可以包括计算机设备中的内置存储介质,当然也可以包括计算机设备所支持的扩展存储介质。计算机存储介质提供存储空间,该存储空间存储了计算机设备的操作系统。并且,在该存储空间中还存放了适于被处理器加载并执行的一条或多条的指令,这些指令可以是一个或一个以上的计算机程序(包括程序代码)。需要说明的是,此处的计算机存储介质可以是高速RAM存储器,也可以是非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器;可选的,还可以是至少一个位于远离前述处理器的计算机存储介质。
在一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图2所示的媒体数据的封装方法实施例中的方法的相应步骤。另一个实施例中,可由处理器加载并执行计算机存储介质中存放的一条或多条指令,以实现上述有关图3所示的媒体数据的编辑方法实施例中的方法的相应步骤。
本申请实施例可通过获取支持内容再编辑的媒体数据的封装文件,使得可基于该封装文件中的内容再编辑指示信息,快速地定位出媒体数据中可被再次编辑的媒体帧,进而实现对这些可被再次编辑的媒体帧进行内容编辑,这样可有效提升媒体数据的编辑效率。并且,由于在整个编辑过程中,无需对媒体数据执行进行数据识别等复杂操作;因此,这样的编辑方式不仅可有效较低媒体数据的编辑难度,还可在一定程度上节省处理资源。
需要说明的是,根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述图2或图3所示的方法实施例方面的各种可选方式中提供的方法。
并且,应理解的是,以上所揭露的仅为本申请较佳实施例而已,当然不能以此来限定本申请之权利范围,因此依本申请权利要求所作的等同变化,仍属本申请所涵盖的范围。

Claims (29)

1.一种媒体数据的编辑方法,其特征在于,包括:
获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑;
其中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应媒体类型对应的媒体轨道中;
所述内容再编辑指示信息包括:内容再编辑元数据轨道,所述内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本;或者,所述内容再编辑指示信息包括一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识所述任一媒体轨道中可被再次编辑的媒体样本。
2.如权利要求1所述的方法,其特征在于,所述内容再编辑元数据轨道包括样本入口,所述样本入口包括轨道描述字段;
当所述轨道描述字段的取值为第一数值时,所述轨道描述字段用于指示所述内容再编辑元数据轨道描述单个媒体轨道;
当所述轨道描述字段的取值为第二数值时,所述轨道描述字段用于指示所述内容再编辑元数据轨道描述多个不同类型的媒体轨道。
3.如权利要求2所述的方法,其特征在于,当所述轨道描述字段的取值为第一数值时,所述样本入口还包括媒体类型字段;
其中,所述媒体类型字段用于指示所述内容再编辑元数据轨道所描述的媒体轨道的类型。
4.如权利要求2所述的方法,其特征在于,所述内容再编辑元数据轨道包括P个元数据样本,一个元数据样本对应所述媒体数据的一个播放时刻,P的取值等于媒体数据包括的播放时刻的数量;
第p个元数据样本用于描述:所述内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P]。
5.如权利要求4所述的方法,其特征在于,所述第p个元数据样本包括内容再编辑数量字段;其中:
当所述内容可编辑数量字段的取值等于无效数值时,所述内容可编辑字段用于指示所述第p个元数据样本对应的所有媒体样本中不存在可编辑媒体样本;
当所述内容可编辑数量字段的取值不等于无效数值时,所述内容可编辑字段用于指示所述第p个元数据样本对应的所有媒体样本中的可编辑媒体样本的数量。
6.如权利要求5所述的方法,其特征在于,当所述轨道描述字段的取值为第二数值,且所述内容可编辑数量字段的取值不等于无效数值时,所述第p个元数据样本中还包括:所述第p个元数据样本对应的所有媒体样本中的各个可编辑媒体样本的媒体类型字段;
其中,媒体类型字段用于指示可编辑媒体样本的媒体类型。
7.如权利要求6所述的方法,其特征在于,当所述媒体类型字段的取值等于第三数值时,所述媒体类型字段用于指示视频媒体类型;
当所述媒体类型字段的取值等于第四数值时,所述媒体类型字段用于指示音频媒体类型;
当所述媒体类型字段的取值等于第五数值时,所述媒体类型字段用于指示文本媒体类型。
8.如权利要求7所述的方法,其特征在于,当所述第p个元数据样本对应的第i个可编辑媒体样本的媒体类型字段为所述第三数值时,所述第i个可编辑媒体样本为视频帧;i的取值小于或等于所述内容可编辑数量字段的取值,且i为正整数;
所述第p个元数据样本中还包括:所述第i个可编辑媒体样本的区域数量字段;其中:
当区域数量字段的取值为默认数值时,区域数量字段用于指示视频帧为一个视频帧均为可编辑的图像区域;
当区域数量字段的取值不为默认数值时,区域数量字段用于指示一个视频帧中存在的可编辑图像区域的数量。
9.如权利要求8所述的方法,其特征在于,当所述区域数量字段的取值不为默认数值时,所述第p个元数据样本中还包括:所述第i个可编辑媒体样本中的各个可编辑图像区域的区域信息;
其中,任一可编辑图像区域的区域信息包括以下至少一项:所述任一可编辑图像区域在所述第i个可编辑媒体样本中的位置坐标,以及所述任一可编辑图像区域的区域尺寸。
10.如权利要求7所述的方法,其特征在于,当所述第p个元数据样本中的第i个可编辑媒体样本的媒体类型字段为所述第五数值时,所述第i个可编辑媒体样本为文本帧;i的取值小于或等于所述内容可编辑数量字段的取值,且i为正整数;
所述第p个元数据样本中还包括:所述第i个可编辑媒体样本的文本数量字段;其中,文本数量字段用于指示文本帧中存在的可编辑文本的数量。
11.如权利要求10所述的方法,其特征在于,所述第p个元数据样本中还包括:所述第i个可编辑媒体样本中的各个可编辑文本的文本指示信息;
其中,任一可编辑文本的文本指示信息用于指示:所述任一可编辑文本中可再次编辑的文本内容。
12.如权利要求1所述的方法,其特征在于,所述多个媒体轨道包括视频轨道,所述一个或多个媒体样本组中包括:位于所述视频轨道中的内容再编辑视频样本组;所述内容再编辑视频样本组所标识的各个媒体样本均为可被再次编辑的视频帧;
其中,所述视频轨道还包括视频样本组入口;所述视频样本组入口包括:所述内容再编辑视频样本组所标识的各个媒体样本的区域数量字段。
13.如权利要求12所述的方法,其特征在于,当内容再编辑视频样本组所标识的任一媒体样本的区域数量字段的取值不为默认数值时,所述视频样本组入口还包括:所述内容再编辑视频样本组所标识的任一媒体样本中的可编辑图像区域的区域信息。
14.如权利要求1所述的方法,其特征在于,所述多个媒体轨道包括文本轨道,所述一个或多个媒体样本组中包括:位于所述文本轨道中的内容再编辑文本样本组;所述内容再编辑文本样本组所标识的各个媒体样本均为可被再次编辑的文本帧;
其中,所述文本轨道还包括文本样本组入口;所述文本样本组入口包括:所述内容再编辑文本样本组所标识的各个媒体样本的文本数量字段。
15.如权利要求14所述的方法,其特征在于,所述文本样本组入口还包括:所述内容再编辑文本样本组所标识的各个媒体样本的文本指示信息。
16.如权利要求1-15任一项所述的方法,其特征在于,所述封装文件还包括:内容再编辑实体组,所述内容再编辑实体组用于将可被再次编辑的媒体轨道与媒体内容进行关联,所述媒体内容是指用于替换所述媒体数据中的源内容的内容。
17.如权利要求16所述的方法,其特征在于,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中;
所述内容再编辑实体组中包括:映射至所述内容再编辑实体组的M个实体的实体标识,M为正整数;所述M个实体至少包括:所述媒体内容和所述多个媒体轨道中需被替换的源内容;
其中,第m个实体的实体标识为:所述多个媒体轨道中的其中一个媒体轨道的轨道标识,或者与所述多个媒体轨道中的其中一个媒体轨道相关联的项目的项目标识。
18.如权利要求17所述的方法,其特征在于,所述内容再编辑实体组中包括实体数量字段;
其中,所述实体数量字段用于指示所述内容再编辑实体组中的实体标识的数量。
19.如权利要求18所述的方法,其特征在于,所述内容再编辑实体组还包括所述M个实体标识中的每个实体标识的内容标志字段;
当内容标志字段的取值为第六数值时,内容标志字段用于指示相应的实体为被再次编辑的源内容;
当内容标志字段的取值为第七数值时,内容标志字段用于指示相应的实体为用于替换源内容的媒体内容。
20.一种媒体数据的封装方法,其特征在于,包括:
获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
其中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中;
所述内容再编辑指示信息包括:内容再编辑元数据轨道,所述内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本;或者,所述内容再编辑指示信息包括一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识所述任一媒体轨道中可被再次编辑的媒体样本。
21.如权利要求20所述的方法,其特征在于,所述内容再编辑指示信息包括:内容再编辑元数据轨道;所述在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件,包括:
在所述媒体数据的封装过程中,根据识别出的各个媒体帧在所述多个媒体轨道中确定可编辑媒体样本;
根据确定出的可编辑媒体样本生成内容再编辑元数据轨道。
22.如权利要求21所述的方法,其特征在于,所述内容再编辑元数据轨道包括样本入口,所述样本入口包括轨道描述字段;所述根据确定出的可编辑媒体样本生成内容再编辑元数据轨道,包括:
若确定出的各个媒体样本处于同一个媒体轨道,则确定所述内容再编辑元数据轨道用于描述单个媒体轨道,并将所述轨道描述字段的取值设置为第一数值;
若确定出的各个媒体样本处于多个不同类型的媒体轨道,则确定所述内容再编辑元数据轨道用于描述多个不同类型的媒体轨道,并将所述轨道描述字段的取值设置为第二数值。
23.如权利要求22所述的方法,其特征在于,当所述内容再编辑元数据轨道描述单个媒体轨道时,所述根据确定出的可编辑媒体样本生成内容再编辑元数据轨道,还包括:
在所述内容再编辑元数据轨道中的样本入口中,添加媒体类型字段;
根据所述内容再编辑元数据轨道所描述的媒体轨道的类型,设置所述媒体类型字段的取值。
24.如权利要求22所述的方法,其特征在于,所述内容再编辑元数据轨道包括P个元数据样本,一个元数据样本对应所述媒体数据的一个播放时刻;第p个元数据样本用于描述:所述内容再编辑元数据轨道所描述的各个媒体轨道中,处于第p个播放时刻的各个媒体样本的内容可编辑情况,p∈[1,P];
所述根据确定出的可编辑媒体样本生成内容再编辑元数据轨道,还包括:
若所述第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则根据所述至少一个可编辑媒体样本的数量,确定所述第p个元数据样本中的内容再编辑数量字段的取值;
若所述第p个元数据样本对应的所有媒体样本中不存在可编辑媒体样本,则将所述第p个元数据样本中的内容再编辑数量字段的取值设置为无效数值。
25.如权利要求24所述的方法,其特征在于,当所述内容再编辑元数据轨道描述多个不同类型的媒体轨道时,所述根据确定出的可编辑媒体样本生成内容再编辑元数据轨道,还包括:
若所述第p个元数据样本对应的所有媒体样本中存在至少一个可编辑媒体样本,则将所述第p个元数据样本对应的所有媒体样本中的各个可编辑媒体样本的媒体类型字段,添加至所述第p个元数据样本中,媒体类型字段用于指示可编辑媒体样本的媒体类型;
根据所述第p个元数据样本中的各个媒体类型字段对应的可编辑媒体样本的媒体类型,设置所述各个媒体类型字段的取值。
26.一种媒体数据的编辑装置,其特征在于,包括:
获取单元,用于获取支持内容再编辑的媒体数据的封装文件,所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
编辑单元,用于根据所述内容再编辑指示信息,对所述媒体数据中可被再次编辑的媒体帧进行内容编辑;
其中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应媒体类型对应的媒体轨道中;
所述内容再编辑指示信息包括:内容再编辑元数据轨道,所述内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本;或者,所述内容再编辑指示信息包括一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识所述任一媒体轨道中可被再次编辑的媒体样本。
27.一种媒体数据的封装装置,其特征在于,包括:
获取单元,用于获取支持内容再编辑的媒体数据,并识别所述媒体数据中可被再次编辑的媒体帧;
封装单元,用于在所述媒体数据的封装过程中,对识别出的各个媒体帧进行标识,得到所述媒体数据的封装文件;所述封装文件包括内容再编辑指示信息,所述内容再编辑指示信息用于指示所述媒体数据中可被再次编辑的媒体帧;
其中,所述媒体数据包括多种媒体类型的媒体帧,所述封装文件包括多个媒体轨道;一个媒体轨道对应一种媒体类型,且一个媒体帧被作为一个媒体样本封装至相应的媒体轨道中;
所述内容再编辑指示信息包括:内容再编辑元数据轨道,所述内容再编辑元数据轨道用于描述所述多个媒体轨道中可被再次编辑的媒体样本;或者,所述内容再编辑指示信息包括一个或多个媒体样本组,不同的媒体样本组位于不同的媒体轨道中,任一媒体轨道中的媒体样本组用于标识所述任一媒体轨道中可被再次编辑的媒体样本。
28.一种计算机设备,包括输入接口和输出接口,其特征在于,还包括:
处理器,适于实现一条或多条指令;以及,
计算机存储介质,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由所述处理器加载并执行如权利要求1-19任一项所述的媒体数据的编辑方法;或者,所述一条或多条指令适于由所述处理器加载并执行如权利要求20-25任一项所述的媒体数据的封装方法。
29.一种计算机存储介质,其特征在于,所述计算机存储介质存储有一条或多条指令,所述一条或多条指令适于由处理器加载并执行如权利要求1-19任一项所述的媒体数据的编辑方法;或者,所述一条或多条指令适于由所述处理器加载并执行如权利要求20-25任一项所述的媒体数据的封装方法。
CN202111147156.9A 2021-09-28 2021-09-28 媒体数据的编辑方法、媒体数据的封装方法及相关设备 Active CN113905255B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202111147156.9A CN113905255B (zh) 2021-09-28 2021-09-28 媒体数据的编辑方法、媒体数据的封装方法及相关设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111147156.9A CN113905255B (zh) 2021-09-28 2021-09-28 媒体数据的编辑方法、媒体数据的封装方法及相关设备

Publications (2)

Publication Number Publication Date
CN113905255A CN113905255A (zh) 2022-01-07
CN113905255B true CN113905255B (zh) 2022-08-02

Family

ID=79189111

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111147156.9A Active CN113905255B (zh) 2021-09-28 2021-09-28 媒体数据的编辑方法、媒体数据的封装方法及相关设备

Country Status (1)

Country Link
CN (1) CN113905255B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180004528A (ko) * 2016-07-04 2018-01-12 (주)에어사운드 동영상 콘텐츠 제공 시스템 및 그 제어방법
CN110996181A (zh) * 2019-08-14 2020-04-10 中国电子科技集团公司第七研究所 一种多源内容数据统一封装方法
CN112015927A (zh) * 2020-09-29 2020-12-01 北京百度网讯科技有限公司 多媒体文件编辑方法、装置、电子设备和存储介质
CN112367551A (zh) * 2020-10-30 2021-02-12 维沃移动通信有限公司 视频编辑的方法及装置、电子设备和可读存储介质
CN113170239A (zh) * 2018-11-29 2021-07-23 佳能株式会社 将媒体数据封装到媒体文件的方法、装置和计算机程序
CN113254822A (zh) * 2021-04-20 2021-08-13 北京达佳互联信息技术有限公司 一种对象编辑方法、装置、电子设备及存储介质

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20150135214A1 (en) * 2002-05-10 2015-05-14 Convergent Media Solutions Llc Method and apparatus for browsing using alternative linkbases
CN112287128B (zh) * 2020-10-23 2024-01-12 北京百度网讯科技有限公司 多媒体文件编辑方法、装置、电子设备和存储介质

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20180004528A (ko) * 2016-07-04 2018-01-12 (주)에어사운드 동영상 콘텐츠 제공 시스템 및 그 제어방법
CN113170239A (zh) * 2018-11-29 2021-07-23 佳能株式会社 将媒体数据封装到媒体文件的方法、装置和计算机程序
CN110996181A (zh) * 2019-08-14 2020-04-10 中国电子科技集团公司第七研究所 一种多源内容数据统一封装方法
CN112015927A (zh) * 2020-09-29 2020-12-01 北京百度网讯科技有限公司 多媒体文件编辑方法、装置、电子设备和存储介质
CN112367551A (zh) * 2020-10-30 2021-02-12 维沃移动通信有限公司 视频编辑的方法及装置、电子设备和可读存储介质
CN113254822A (zh) * 2021-04-20 2021-08-13 北京达佳互联信息技术有限公司 一种对象编辑方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
电视节目生产Dolby E再编辑的流程优化;陶红;《现代电视技术》;20191015;全文 *

Also Published As

Publication number Publication date
CN113905255A (zh) 2022-01-07

Similar Documents

Publication Publication Date Title
US10419801B2 (en) Information processing apparatus and method
KR102028527B1 (ko) 영상 디코딩 방법 및 이를 이용하는 장치
US9723318B2 (en) Compression and decompression of reference images in a video encoder
US20220124376A1 (en) Joint termination of bidirectional data blocks for parallel coding
CN112565815B (zh) 文件封装方法、文件传输方法、文件解码方法及相关设备
CN113992635B (zh) 多媒体数据处理方法、装置、设备及存储介质
US20240080487A1 (en) Method, apparatus for processing media data, computer device and storage medium
WO2024078066A1 (zh) 视频解码方法、视频编码方法、装置、存储介质及设备
CN115066898A (zh) 跨层参考限制条件
CN113905255B (zh) 媒体数据的编辑方法、媒体数据的封装方法及相关设备
US9706201B2 (en) Region-based processing of predicted pixels
EP4354868A1 (en) Media data processing method and related device
WO2022042325A1 (zh) 视频处理方法、装置、设备及存储介质
EP4266689A1 (en) Method and device for generating/receiving media file including nal unit information, and method for transmitting media file
US20240056618A1 (en) Method and device for generating/receiving media file including nal unit array information, and method for transmitting media file
US20240056578A1 (en) Media file generation/reception method and apparatus supporting random access in units of samples, and method for transmitting media file
US20230319374A1 (en) Method and device for creating/receiving media file containing layer information, and media file transfer method
US20240064323A1 (en) Media file generation/reception method and device for signaling subpicture id information, and computer-readable recording medium in which media file is stored
US11743477B1 (en) Video-stream format for machine analysis using NPU
US20240205409A1 (en) Method and device for generating/receiving media file on basis of eos sample group, and method for transmitting media file
US20230336783A1 (en) Method and device for generating/receiving media file including output layer set information, and method for transmitting media file
US20230379481A1 (en) Media file generation/reception method and device for signaling operating point information and output layer set information, and computer-readable recording medium in which media file is stored
US20230336751A1 (en) Method and apparatus for generating/receiving media file which signals output layer set information, and computer-readable recording medium storing media file
KR20240032707A (ko) 인공신경망의 분산 연산 시스템 및 방법
CN117242490A (zh) 用于以图像文件格式对区域和区域掩码进行信号发送的方法和装置

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
REG Reference to a national code

Ref country code: HK

Ref legal event code: DE

Ref document number: 40064619

Country of ref document: HK

GR01 Patent grant
GR01 Patent grant