CN111937043A - 将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联 - Google Patents

将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联 Download PDF

Info

Publication number
CN111937043A
CN111937043A CN201980024408.3A CN201980024408A CN111937043A CN 111937043 A CN111937043 A CN 111937043A CN 201980024408 A CN201980024408 A CN 201980024408A CN 111937043 A CN111937043 A CN 111937043A
Authority
CN
China
Prior art keywords
machine
value
static
center
vwpt
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.)
Granted
Application number
CN201980024408.3A
Other languages
English (en)
Other versions
CN111937043B (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.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies 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 Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Publication of CN111937043A publication Critical patent/CN111937043A/zh
Application granted granted Critical
Publication of CN111937043B publication Critical patent/CN111937043B/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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/597Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding specially adapted for multi-view video sequence encoding
    • 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/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • 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, manipulating MPEG-4 scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams, manipulating MPEG-4 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/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/84Generation or processing of descriptive data, e.g. content descriptors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Abstract

一种方法包括:获取与第一机位和第二机位关联的媒体内容,其中,所述第一机位的第一位置是静态的,所述第二机位的第二位置是动态的;根据所述媒体内容生成第一VWPT描述符,并描述所述第一机位;根据所述媒体内容生成第二VWPT描述符,并描述所述第二机位;生成包括所述第一VWPT描述符和所述第二VWPT描述符的MPD;传输所述MPD。

Description

将文件格式对象和基于超文本传输协议的动态自适应流媒体 (DASH)对象进行关联
相关申请交叉引用
本申请要求Futurewei技术公司于2018年4月6日提交的申请号为62/654,034、发明名称为“HTTP动态自适应流媒体(DASH)和文件格式对象之间的高效关联(EfficientAssociation of Dynamic Adaptive HTTP Streaming(DASH)and File Format Objects)”的美国临时专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
所公开的对象大体上涉及视频编码,具体而言,涉及将文件格式对象和基于超文本传输协议的动态自适应流媒体(Dynamic Adaptive Streaming over HypertextTransfer Protocol,DASH)对象进行关联。
背景技术
虚拟现实(Virtual Reality,VR)也可以称为全向媒体、沉浸式媒体和/或360度媒体,是一种发生在模拟环境中且利用视觉、音频和/或触觉反馈的交互式录制和/或计算机生成的体验。从视觉角度来看,VR呈现一个图像球体(或一个图像球体的一部分),用户位于该球体的中心。头戴式显示器(head mounted display,HMD)或者其它显示单元可以呈现该图像球体。具体地,通过VR显示器,用户可以通过视场角(field of view,FOV)观看该球体的一部分。用户能够动态改变视角的位置和/或角度,以体验VR视频显示的环境。VR视频中的每个图像(也称为帧)既包括该球体在用户FOV之内的区域,也包括球体在用户FOV之外的区域。因此,与非VR视频图像相比,VR帧包括明显更多的数据。内容提供商对提供基于流媒体的VR视频感兴趣。但是,与传统视频相比,VR视频包括明显更多的数据和不同的属性。这样一来,传统视频的流传输机制不能对VR视频进行高效的流式传输。
发明内容
第一方面涉及一种方法。所述方法包括:获取与机位关联的媒体内容;根据所述媒体内容生成机位信息(VWPT)描述符,其中,所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的;生成包括所述VWPT描述符的媒体描述文件(media presentationdescription,MPD);传输所述MPD。
根据所述第一方面,在所述方法的第一种可能实现方式中,所述值为值is_static。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第二种实现方式中,所述值is_static为所述VWPT描述符中的唯一值,指示所述机位的所述位置是静态的还是动态的。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第三种实现方式中,所述值等于“真”指示所述机位的所述位置是静态的。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第四种实现方式中,所述值等于“假”指示所述机位的所述位置是动态的。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第五种实现方式中,所述VWPT描述符还包括机位标识符(identifier,ID)值,指示所述机位的机位ID。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第六种实现方式中,所述VWPT描述符还包括中心x值,指示所述机位的中心在x轴上、在全局三维坐标中的绝对位置。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第七种实现方式中,所述VWPT描述符还包括中心y值,指示所述机位的所述中心在y轴上、在所述全局三维坐标中的绝对位置。
根据所述第一方面或所述第一方面的任一上述实现方式,在所述方法的第八种实现方式中,所述VWPT描述符还包括中心z值,指示所述机位的所述中心在z轴上、在所述全局三维坐标中的绝对位置。
第二方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第一方面或所述第一方面的任一上述实现方式中的任一种。
第三方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第一方面或所述第一方面的任一上述实现方式中的任一种。
第四方面涉及一种方法。所述方法包括:传输对MPD的请求;响应于所述请求,接收所述MPD,其中,所述MPD包括基于媒体内容的VWPT描述符,所述媒体内容与机位关联,所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的;处理所述MPD。
根据所述第四方面,在所述方法的第一种可能实现方式中,所述值为值is_static。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第二种实现方式中,所述值is_static为所述VWPT描述符中的唯一值,指示所述机位的所述位置是静态的还是动态的。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第三种实现方式中,所述值等于“真”指示所述机位的所述位置是静态的。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第四种实现方式中,所述值等于“假”指示所述机位的所述位置是动态的。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第五种实现方式中,所述VWPT描述符还包括机位ID值,指示所述机位的机位ID。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第六种实现方式中,所述VWPT描述符还包括中心x值,指示所述机位的中心在x轴上、在全局三维坐标中的绝对位置。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第七种实现方式中,所述VWPT描述符还包括中心y值,指示所述机位的所述中心在y轴上、在所述全局三维坐标中的绝对位置。
根据所述第四方面或所述第四方面的任一上述实现方式,在所述方法的第八种实现方式中,所述VWPT描述符还包括中心z值,指示所述机位的所述中心在z轴上、在所述全局三维坐标中的绝对位置。
第五方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第四方面或所述第四方面的任一上述实现方式中的任一种。
第六方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第四方面或所述第四方面的任一上述实现方式中的任一种。
第七方面涉及一种方法。所述方法包括:获取媒体内容;根据所述媒体内容生成有时间属性的元数据表示,其中,所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联;生成MPD,其中,所述MPD包括所述有时间属性的元数据表示;传输所述MPD。
根据所述第七方面,在所述方法的第一种实现方式中,所述有时间属性的元数据表示还与任何其它此类属性不关联,任何其它此类属性用于将所述有时间属性的元数据表示关联到其它DASH对象。
根据所述第七方面或所述第七方面的任一上述实现方式,在所述方法的第二种实现方式中,所述有时间属性的元数据轨迹适用于全部媒体呈现。
第八方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第七方面或所述第七方面的任一上述实现方式中的任一种。
第九方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第七方面或所述第七方面的任一上述实现方式中的任一种。
第十方面涉及一种方法。所述方法包括:传输对MPD的请求;响应于所述请求,接收所述MPD,其中,所述MPD包括基于媒体内容的有时间属性的元数据表示,所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联;处理所述MPD。
根据第十方面,在所述方法的第一种实现方式中,所述有时间属性的元数据表示还与任何其它此类属性不关联,任何其它此类属性用于将所述有时间属性的元数据表示关联到其它DASH对象。
根据所述第十方面或所述第十方面的任一上述实现方式,在所述方法的第二种实现方式中,所述有时间属性的元数据轨迹适用于全部媒体呈现。
第十一方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第十方面或所述第十方面的任一上述实现方式中的任一种。
第十二方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第十方面或所述第十方面的任一上述实现方式中的任一种。
第十三方面涉及一种方法。所述方法包括:获取媒体内容;根据所述媒体内容生成有时间属性的元数据轨迹,其中,所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联;生成文件格式对象,其中,所述文件格式对象包括所述有时间属性的元数据轨迹;传输所述文件格式对象。
根据第十三方面,在所述方法的第一种实现方式中,所述‘cdsc’轨迹引用指示所述有时间属性的元数据轨迹分别描述每个媒体轨迹。
根据所述第十三方面或所述第十三方面的任一上述实现方式,在所述方法的第二种实现方式中,所述有时间属性的元数据轨迹适用于全部影片。
第十四方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第十二方面或所述第十二方面的任一上述实现方式中的任一种。
第十五方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第十三方面或所述第十三方面的任一上述实现方式中的任一种。
第十六方面涉及一种方法。所述方法包括:传输对文件格式对象的请求;响应于所述请求,接收所述文件格式对象,其中,所述文件格式对象包括基于媒体内容的有时间属性的元数据轨迹,所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联;处理所述文件格式对象。
根据所述第十六方面,在所述方法的第一种实现方式中,所述‘cdsc’轨迹引用指示所述有时间属性的元数据轨迹分别描述每个媒体轨迹。
根据所述第十六方面或所述第十六方面的任一上述实现方式,在所述方法的第二种实现方式中,所述有时间属性的元数据轨迹适用于全部影片。
第十七方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第十六方面或所述第十六方面的任一上述实现方式中的任一种。
第十八方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第十六方面或所述第十六方面的任一上述实现方式中的任一种。
第十九方面涉及一种方法。所述方法包括:获取与第一机位和第二机位关联的媒体内容,其中,所述第一机位的第一位置是静态的,所述第二机位的第二位置是动态的;根据所述媒体内容生成第一VWPT描述符,并描述所述第一机位;根据所述媒体内容生成第二VWPT描述符,并描述所述第二机位;生成包括所述第一VWPT描述符和所述第二VWPT描述符的MPD;传输所述MPD。
根据第十九方面,在所述方法的第一种实现方式中,所述第二机位与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹,所述有时间属性的元数据轨迹包括描述所述第二位置的信息。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第二种实现方式中,所述第一VWPT描述符包括第一值,指示所述第一位置是否是静态的;所述第二VWPT描述符包括第二值,指示所述第二位置是否是静态的。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第三种实现方式中,所述第一值为第一值is_static,所述第二值为第二值is_static。
根据第十九方面或第十九方面的任一上述实现方式,在所述方法的第四种实现方式中,所述第一值is_static为所述第一VWPT描述符中的唯一值,指示所述第一机位的所述第一位置是静态的还是动态的;所述第二值is_static为所述第二VWPT描述符中的唯一值,指示所述第二机位的所述第二位置是静态的还是动态的。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第五种实现方式中,所述第一值等于“真”指示所述机位的所述位置是静态的,所述第二值等于“真”指示所述机位的所述位置是静态的。
根据第十九方面或第十九方面的任一上述实现方式,在所述方法的第六种实现方式中,所述第一值等于“假”指示所述机位的所述位置是动态的,所述第二值等于“假”指示所述机位的所述位置是动态的。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第七种实现方式中,所述第一VWPT描述符还包括第一机位ID值,指示所述第一机位的第一机位ID;所述第二VWPT描述符还包括第二机位ID值,指示所述第二机位的第二机位ID。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第八种实现方式中,所述第一VWPT描述符还包括第一中心x值,指示所述第一机位的第一中心在x轴上、在全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心x值,指示所述第二机位的第二中心在所述x轴上、在所述全局三维坐标中的第二绝对位置。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第九种实现方式中,所述第一VWPT描述符还包括第一中心y值,指示所述第一机位的第一中心在y轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心y值,指示所述第二机位的第二中心在所述y轴上、在所述全局三维坐标中的第二绝对位置。
根据所述第十九方面或所述第十九方面的任一上述实现方式,在所述方法的第十种实现方式中,所述第一VWPT描述符还包括第一中心z值,指示所述第一机位的第一中心在z轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心z值,指示所述第二机位的第二中心在所述z轴上、在所述全局三维坐标中的第二绝对位置。
第二十方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第十九方面或所述第十九方面的任一上述实现方式中的任一种。
第二十一方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第十九方面或所述第十九方面的任一上述实现方式中的任一种。
第二十二方面涉及一种方法。所述方法包括:传输对MPD的请求;响应于所述请求,接收所述MPD,其中,所述MPD包括第一VWPT描述符和第二VWPT描述符,所述第一VWPT描述符基于媒体内容,并描述第一机位,所述第一机位的第一位置是静态的;所述第二VWPT描述符基于所述媒体内容,并描述第二机位,所述第二机位的第二位置是动态的;处理所述MPD。
根据所述第二十二方面,在所述方法的第一种实现方式中,所述第二机位与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹,所述有时间属性的元数据轨迹包括描述所述第二位置的信息。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第二种实现方式中,所述第一VWPT描述符包括第一值,指示所述第一位置是否是静态的;所述第二VWPT描述符包括第二值,指示所述第二位置是否是静态的。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第三种实现方式中,所述第一值为第一值is_static,所述第二值为第二值is_static。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第四种实现方式中,所述第一值is_static为所述第一VWPT描述符中的唯一值,指示所述第一机位的所述第一位置是静态的还是动态的;所述第二值is_static为所述第二VWPT描述符中的唯一值,指示所述第二机位的所述第二位置是静态的还是动态的。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第五种实现方式中,所述第一值等于“真”指示所述机位的所述位置是静态的,所述第二值等于“真”指示所述机位的所述位置是静态的。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第六种实现方式中,所述第一值等于“假”指示所述机位的所述位置是动态的,所述第二值等于“假”指示所述机位的所述位置是动态的。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第七种实现方式中,所述第一VWPT描述符还包括第一机位ID值,指示所述第一机位的第一机位ID;所述第二VWPT描述符还包括第二机位ID值,指示所述第二机位的第二机位ID。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第八种实现方式中,所述第一VWPT描述符还包括第一中心x值,指示所述第一机位的第一中心在x轴上、在全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心x值,指示所述第二机位的第二中心在所述x轴上、在所述全局三维坐标中的第二绝对位置。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第九种实现方式中,所述第一VWPT描述符还包括第一中心y值,指示所述第一机位的第一中心在y轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心y值,指示所述第二机位的第二中心在所述y轴上、在所述全局三维坐标中的第二绝对位置。
根据所述第二十二方面或所述第二十二方面的任一上述实现方式,在所述方法的第十种实现方式中,所述第一VWPT描述符还包括第一中心z值,指示所述第一机位的第一中心在z轴上、在所述全局三维坐标中的第一绝对位置,所述第二VWPT描述符还包括第二中心z值,指示所述第二机位的第二中心在所述z轴上、在所述全局三维坐标中的第二绝对位置。
第二十三方面涉及一种装置。所述装置包括存储器以及耦合到所述存储器的处理器。所述处理器用于执行所述第二十二方面或所述第二十二方面的任一上述实现方式中的任一种。
第二十四方面涉及一种计算机程序产品。所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令。当处理器执行所述计算机可执行指令时,一种装置执行所述第二十二方面或所述第二十二方面的任一上述实现方式中的任一种。
上述任一实施例可以与上述其它任一实施例组合,产生新的实施例。通过以下结合附图和权利要求书进行的详细描述,将更清楚地理解这些和其它特征。
附图说明
为了更全面地理解本发明,现在参考下文结合附图和详细说明进行的简要描述,其中,相似的参考数字代表相似的部件。
图1为用于VR视频编码的示例性系统的示意图。
图2为对VR视频进行编码的示例性方法的流程图。
图3为用于录制多机位VR视频的示例性系统的示意图。
图4为示例性DASH MPD的示意图,DASH MPD可以用来对多机位VR视频进行流式传输。
图5为示例性视频编码设备的示意图。
图6为示例性DASH内容服务器的示意图,DASH内容服务器用于对MPD中的DASH对象进行关联,以支持对多机位VR视频进行流式传输。
图7为本发明一个实施例提供的生成和传输MPD的方法的流程图。
图8为本发明一个实施例提供的接收和处理MPD的方法的流程图。
图9为本发明另一个实施例提供的生成和传输MPD的方法的流程图。
图10为本发明另一个实施例提供的接收和处理MPD方法的流程图。
图11为本发明一个实施例提供的生成和传输文件格式对象的方法的流程图。
图12为本发明一个实施例提供的接收和处理文件格式对象的方法的流程图。
图13为本发明又一个实施例提供的生成和传输MPD的方法的流程图。
图14为本发明又一个实施例的接收和处理MPD的方法的流程图。
具体实施方式
首先应理解,尽管下文提供一个或多个实施例的说明性实现方式,但所公开的系统和/或方法可以使用任何数目的技术来实施,无论该技术是当前已知还是现有的。本发明决不应限于下文所说明的说明性实现方式、附图和技术,包括本文所说明并描述的示例性设计和实现方式,而是可以在所附权利要求书的范围以及其等效物的完整范围内修改。
使用以下缩略语:
ASIC:专用集成电路
CPU:中央处理器
DASH:HTTP动态自适应流媒体
DSP:数字信号处理器
EO:电光
FOV:视场角
FPGA:现场可编程门阵列
HMD:头戴式显示器
HTTP:超文本传输协议
ID:标识符
I/O:输入和/或输出
IPD:瞳间距离
ISO:国际标准化组织
ISOBMFF:ISO基本媒体文件格式
LTE:长期演进
MPD:媒体描述文件
OE:光电
OMAF:全向媒体格式
PC:个人计算机
RAM:随机存储器
RF:射频
ROM:只读存储器
RX:接收单元
SRAM:静态RAM
TCAM:三态内容寻址存储器
Tx/Rx:收发单元
URL:统一资源定位符
VM:虚拟机
VR:虚拟现实
VWPT:机位信息
XML:可扩展标记语言
DASH是一种通过网络对视频数据进行流式传输的机制。DASH向客户端提供描述视频的MPD文件。具体地,MPD描述视频的各种表示以及此类表示的位置。上述表示都可以包括不同分辨率的相同视频内容。客户端可以从这些表示中获取视频片段,显示给客户端。具体地,客户端能够监控视频缓冲器和/或网络通信速度,并根据上述MPD中的数据切换各种表示,从而根据当前情况动态地改变视频分辨率。
DASH允许表示与其它表示关联。例如,视频表示可以与表示关联,其中,这些关联包括有时间属性的元数据。这种元数据可以提供指示应该如何显示视频帧的数据。这种数据可以称为提示,表示可以称为提示轨迹。在DASH中,每个表示都可以与包含相关提示轨迹的表示关联。将这样的方案应用于VR视频可能会产生问题。
首先,VR视频可以包括同时从多个称为机位的位置捕获的多个视频流。在播放视频过程中,用户能够切换机位。因此,每个机位包括多个表示。在这种情况下,有时间属性的元数据表示可以包含推荐视角,该推荐视角指示建议机位和该机位在任何指定时间点推荐的FOV。这样,用户可以选择放弃控制VR体验(例如,如果用户想让内容制作者决定观看VR视频的哪个视角)。为了实现这个方案,每个机位的每个表示都与有时间属性的元数据表示关联。当存在大量表示时,由于每个表示都记录有一种关联,所以这种方法产生一个非常大的MPD。
其次,可以根据机位ID和/或位置数据来标识DASH中的机位。在某些情况下,一个机位的位置可能会随着时间而改变。例如,一台摄像机可以安装在轨道上,移动该摄像机以捕获拍摄的环境的不同区域。此时,位置信息会发生改变。由于该机位在不同时间的位置信息不同,所以DASH机制可能无法清楚地判断某些元素是否与同一机位关联。
第三,DASH缺少一个MPD描述符来指示静态机位和动态机位。另外,这种描述符不包括一个值来指示关联机位是静态的还是动态的。
第四,有时间属性的元数据表示通常适用于全部媒体呈现。但是,DASH缺少一种方法将有时间属性的元数据表示关联到全部媒体呈现。
第五,有时间属性的元数据轨迹通常适用于全部影片。但是,文件格式没有一种方法将有时间属性的元数据轨迹关联到全部影片。
本文公开了用于将文件格式对象和DASH对象进行关联的实施例。为了解决上述第一个问题,引入了关联ID属性,使得DASH对象引用不同特指级别的其它DASH对象(例如,不仅限于严格的表示到表示关联)。例如,DASH将各种表示组织到自适应集中,其中,一个自适应集包含在运行时能够互换的表示(例如,包含不同分辨率的相同视频数据的表示)。当存在不同机位时,每个机位可以包括具有一个或多个对应表示的一个或多个自适应集。此外,MPD可以包含预选,这些预选是自适应集(例如,与相同机位关联的音频轨迹自适应集和视频自适应集)的组合,这些自适应集形成一种特定的体验并且由内容提供商选择以组的形式呈现。本文公开的关联ID可以将表示关联到自适应集、将表示关联到机位、将表示关联到预选、将自适应集关联到机位、将自适应集关联到预选、将机位关联到预选(反之亦然)以及它们的任何组合或子组合。例如,关联ID可以包括关联ID属性(@associationId)、关联机位ID属性(@associationVwptId)、关联自适应集ID(@associationAsId)、关联预选ID(@associationPsId)或它们的组合。为了解决上述第二个问题,当机位ID相同时,不管机位位置信息,都认为机位元素相同。为了解决上述第三个问题,一个机位描述符既指示静态机位,也指示动态机位。另外,该机位描述符可以包括一个值,所述值指示关联机位是静态的还是动态的。为了解决上述第四个问题,省略有时间属性的元数据表示中的各种属性。为了解决上述第五个问题,省略有时间属性的元数据轨迹中的轨迹引用。
图1为用于VR视频编码的示例性系统100的示意图。系统100包括多方向摄像机101、包括编码器103的VR编码设备104、DASH内容服务器111、包括解码器107的客户端108和呈现设备109。多方向摄像机101包括摄像机设备阵列。每个摄像机设备指向不同的角度,这样,多方向摄像机101能够从多个角度拍摄周围环境的多个方向视频流。例如,多方向摄像机101能够将环境的VR视频121拍摄成球体,其中,多方向摄像机101位于该球体的中心。此处使用的“球体”和“球形视频”既指几何球体又指几何球体的子部分,例如,球缺、球形穹面、球截形等。例如,多方向摄像机101可以拍摄180度视频以覆盖一半环境,这样,制作人员能够保持在多方向摄像机101的后面。多方向摄像机101还能够在360度(或360度范围内的任意子集)内拍摄VR视频121。然而,可能会忽略多方向摄像机101下方的一部分地板,导致视频不是一个完整的球体。因此,此处使用的术语“球体”是为了清楚论述而使用的通用术语,不应视为从几何角度进行限制。需要说明的是,如上描述的多方向摄像机101是能够捕获VR视频121的示例性摄像机,还可以使用其它摄像机设备(例如,摄像机、鱼眼镜头)来捕获VR视频。
将多方向摄像机101拍摄的VR视频121转发给VR编码设备104。VR编码设备104可以是包括专用VR编码软件的计算系统。VR编码设备104可以包括编码器103。在一些示例中,编码器103也可以包含在独立于VR编码设备104的计算机系统中。VR编码设备104用于将VR视频121中的多个方向视频流转换成一个包括多个方向视频流的VR视频流,包括从所有相关角度录制的整个区域。这种转换可以称为图像拼接。例如,可以将同时捕获的每个视频流中的帧拼接在一起以生成单个球形图像。其次,可以从球形图像中生成球形视频流。为了清楚论述,需要说明的是,术语“帧”和“图像(picture/image)”在本文中可互换使用,除非特别说明。
接着,可以将球形视频流转发给编码器103,以进行压缩。编码器103是能够将信息从一种格式转换到另一种格式的设备和/或程序,目的是进行标准化、加速和/或压缩。标准化编码器103用于对矩形图像和/或方形图像进行编码。因此,编码器103用于将球形视频流中的每个球形图像映射到多个矩形子图像。然后,可以将这些子图像承载在单独的子图像视频流中。因此,每个子图像视频流显示随时间变化的图像流,每个子图像视频流记录了球形视频流的一部分。最后,编码器103可以对每个子图像视频流进行编码,以将视频流压缩成可管理的文件大小。一般而言,编码器103将每个子图像视频流中的每一帧分割成像素块,通过帧间预测和/或帧内预测来压缩像素块以生成包括预测块和残差块的编码块,对残差块进行变换以进一步压缩,并使用各种滤波器对这些块进行滤波。压缩块以及对应的语法存储在码流中,例如,作为ISOBMFF和/或OMAF的轨迹。
VR视频121中的编码轨迹,包括压缩块和相关语法,构成媒体内容123的一部分。媒体内容123可以包括编码视频文件、编码音频文件、组合音频视频文件、以多种语言表示的媒体、有字幕媒体、元数据或它们的组合。媒体内容123可以划分成自适应集。例如,从一个机位的角度看,视频可以包含在一个自适应集中,音频可以包含在另一个自适应集中,隐藏字幕可以包含在另一个自适应集中,元数据可以包含在另一个自适应集中,以此类推。自适应集包含媒体内容123,媒体内容123不能与其它自适应集中的媒体内容123互换。每个自适应集中的内容可以存储在表示中,其中,同一自适应集中的表示能够互换。例如,可以将从单个机位拍摄的VR视频121下采样到不同分辨率并存储在对应的表示中。又例如,可以将从单个机位等拍摄的音频下采样到不同质量,翻译成不同的语言等,并存储在对应的表示中。
可以将媒体内容123转发给DASH内容服务器111,以通过网络105分发给终端用户。DASH内容服务器111可以是用于服务客户端的HTTP请求的任何设备。DASH内容服务器111可以包括专用服务器、服务器集群、云计算环境中的VM,或者任何其它合适的内容管理实体。DASH内容服务器111可以从VR编码设备104接收媒体内容123。DASH内容服务器111可以生成描述媒体内容123的MPD 125。例如,MPD 125可以描述预选、机位、自适应集、表示、元数据轨迹、片段等,以及可以通过HTTP请求(例如,HTTP GET)获取这些内容的位置。
包括解码器107的客户端108可以与DASH内容服务器111进行媒体通信会话127,通过网络105获取媒体内容123。网络105可以包括互联网、移动通信网(例如,基于LTE的数据网络)或其它数据通信数据系统。客户端108可以是任何用户操作的用于从媒体内容123观看视频内容的设备,例如,计算机、电视、平板设备、智能手机等。媒体通信会话127可以包括发出媒体请求,例如,基于HTTP的请求(例如,HTTP GET请求)。接收到初始媒体请求之后,DASH内容服务器111可以将MPD 125转发给客户端108。然后,客户端108可以使用MPD 125中的信息对媒体内容123做出附加媒体请求,作为媒体通信会话的一部分。具体地,客户端108可以使用MPD 125中的数据根据用户偏好、用户选择、缓冲器/网络条件等判断应该获取媒体内容123的哪些部分。在选择媒体内容123的相关部分之后,客户端108使用MPD 125中的数据将媒体请求寻址到DASH内容服务器111中包含相关数据的位置。然后,DASH内容服务器111可以使用媒体内容123的请求部分来响应客户端108。这样,客户端108接收媒体内容123的请求部分,而无需下载全部媒体内容123,节省了网络105上的网络资源(例如,时间、带宽等)。
解码器107是位于用户位置(例如,在客户端108上实现)的设备,用于执行编码器103的编码过程的逆过程,对从DASH内容服务器111以表示的形式获取的编码码流进行解码。解码器107还合并所得到的子图像视频流以重建VR视频序列129。VR视频序列129包含客户端108根据用户选择、偏好和/或网络条件请求的、由解码器107重建的媒体内容123的部分。然后,可以将VR视频序列129转发给呈现设备109。呈现设备109是用于向用户显示VR视频序列129的设备。例如,呈现设备109可以包括固定在用户头部并遮挡用户眼睛的HMD。呈现设备109可以包括每只眼睛对应的屏幕、摄像机、运动传感器、扬声器等,并且可以通过无线连接和/或有线连接与解码器108进行通信。在其它示例中,呈现设备109可以是显示屏,例如,电视、电脑显示器、平板电脑等。呈现设备109可以向用户显示VR视频序列129的一部分。示出的一部分是根据呈现设备109的FOV和/或视角拍摄的。例如,呈现设备109可以使用运动跟踪传感器根据用户头部移动来改变FOV的位置。这样,用户能够根据头部移动看到球形视频流的不同部分。在一些情况下,呈现设备109可以根据用户IPD来调整每只眼睛对应的FOV,从而产生三维空间的效果。
图2为对VR视频进行编码的示例性方法200的流程图。方法200由系统100中的组件等执行。在步骤201中,使用多方向摄像机101等多方向摄像机组来捕获多个方向视频流。所述多个方向视频流包括环境在不同角度的视图。例如,所述多个方向视频流可以包括在水平平面上围绕摄像机以360度、180度、240度等捕获的视频,所述多方向视频流还可以包括在垂直平面上围绕摄像机以360度、180度、240度等捕获的视频。生成的视频包括足以在某段时间内覆盖摄像机周围的球形区域的信息。
在步骤203中,在时域同步所述多个方向视频流。具体地,每个方向视频流包括在对应角度拍摄的一系列图像。确保对每个方向视频流中的在同一时域位置上捕获到的帧进行统一处理,这样多个方向视频流得到同步。然后,可以在空域将方向视频流中的帧拼接在一起,生成球形视频流。因此,所述球形视频流中的每个帧都包含从所有方向视频流的帧中获取的数据,这些帧发生在同一时间位置上。
在步骤205中,将所述球形视频流映射到矩形子图像视频流。本过程也可以称为将所述球形视频流投影到矩形子图像视频流。编码器和解码器通常设计为对矩形帧和/或方形帧进行编码。因此,将所述球形视频流映射到矩形子图像视频流生成了视频流,这些视频流可以由非VR特定的编码器和解码器进行编码和解码。需要说明的是,步骤203和步骤205涉及VR视频处理,因此可以由专门的VR硬件、软件或其组合来执行。
在步骤207中,将所述矩形子图像视频流转发给编码器103等编码器。然后,编码器将子图像视频流编码为对应媒体文件格式的子图像码流。具体地,编码器可以将每个子图像视频流当作视频信号。编码器可以通过帧间预测、帧内预测等方式对每个子图像视频流中的每个帧进行编码。关于文件格式,可能以ISOBMFF存储子图像视频流。例如,以指定的分辨率捕获子图像视频流。然后,将子图像视频流下采样到各种较低的分辨率,以进行编码。每个分辨率都可以称为一种表示。质量较低的表示会导致图像不清晰,但减小了文件大小。因此,与损失视觉质量的高质量表示相比,能够使用较少的网络资源(例如,时间、带宽)向用户传输低质量表示。可以将每个表示存储在DASH内容服务器(例如,DASH内容服务器111)中的相应轨道集中。因此,可以将轨迹发送给用户,其中,这些轨迹包括各种分辨率(例如,视觉质量)的子图像码流。
在步骤209中,将子图像码流作为轨迹发送给解码器。具体地,可以将描述各种表示的MPD从DASH内容服务器转发给客户端。在收到客户端的请求(例如,HTTP GET请求)时可以进行转发。例如,MPD可以描述包含各种表示的各种自适应集。然后,客户端可以从期望的自适应集中请求相关表示或其部分。
在步骤211中,解码器107等解码器接收请求的表示,其中,所述请求的表示包含子图像码流组成的轨迹。然后,解码器可以将子图像码流解码为子图像视频流,以进行显示。解码过程涉及编码过程的逆过程(例如,通过帧间预测和帧内预测)。在步骤213中,解码器可以将所述子图像视频流合并成球形视频流,以作为VR视频序列展示给用户。然后,解码器可以将VR视频序列转发给呈现设备(例如,呈现设备109)。
在步骤215中,呈现设备呈现所述球形视频流的视角,以展示给用户。如上所述,每个时间点可以不呈现VR视频序列中在FOV之外的区域。
图3为用于录制多机位VR视频的示例性系统300的示意图。例如,系统300可以用于从多个机位录制VR视频。可以将每个机位的视频划分成一个或多个自适应集,然后,存储为对应自适应集中的表示。此类自适应集和表示可以进行编码并传输到客户端以进行呈现,例如,结合如上所述的系统100和/或方法200来实现。因此,系统300可以为多方向摄像机101的一个实施例。
在一个示例中,系统300可以部署在举办体育赛事的体育场311内。系统300可以使用第一固定摄像机301、第二固定摄像机302和移动摄像机303。在一些示例中,摄像机301至303都可以是多方向摄像机,用于录制VR序列。摄像机301放置在第一机位,摄像机302放置在第二机位,第二机位与第一机位不同。在体育场311内进行体育赛事的过程中,摄像机301和摄像机302从不同的机位录制相同的环境,因此,从不同角度提供发生在体育场311内进行体育赛事的过程中的动作。摄像机303可以按照体育场311内的工作人员的指示移动。例如,摄像机303可以放置在轨道312上,所以在进行体育赛事的过程中可以移动到特别感兴趣的区域。例如,随着体育赛事进行,可以将摄像机303移动到球的位置附近,以最佳角度观看正在进行的比赛。于是,摄像机303与不断变化的机位关联,该机位与摄像机301和摄像机302的机位都不同。
在一个示例中,可以提供由各种摄像机301至303拍摄的视频,从而用户可以按需、动态地选择对应机位的视频流。在DASH方案中,由摄像机301至303拍摄的视频和/或音频可以根据机位保存在对应的(一个或多个)自适应集中。对应于一个机位的每个自适应集中的视频可以存储在不同质量的表示中。因此,用户能够根据MPD中的数据选择一个机位,并根据适合于用户网络连接的视频质量接收该机位的视频的一个表示。
此外,用户可能想放弃控制,而让视频制作者在体育赛事进行时选择最相关的机位。这可以使用有时间属性的元数据轨迹(例如,提示轨迹)来实现。有时间属性的元数据轨迹作为单独的表示存储在单独的自适应集中。例如,时间元数据轨迹可以指示在摄像机301的机位处指定的FOV包含第一时间段的最有趣视频(例如,运动员持球),指示摄像机302的机位在第二时间段的FOV,指示摄像机303的机位在第三时间段的FOV,以此类推。通过这种方式,客户端可以读取有时间属性的元数据轨迹,并从有时间属性的元数据轨迹指示的机位获取适当的表示,以在进行体育赛事的过程中按照视频制作者的指示显示给用户。
在这种场景下,每个机位(例如,每个自适应集)的每个表示都与有时间属性的元数据轨迹关联。当存在许多机位和许多视频质量时,有时间属性的元数据轨迹与对应表示之间的关联数量变得更多。此类关联记录在MPD文件中,这就会大大增加MPD文件的文件大小。因此,除了表示与表示关联,本发明描述的机制还指示了各种DASH对象之间的关联。例如,三个摄像机301至303的机位可以与有时间属性的元数据轨迹表示和/或自适应集关联。这样,关联的数量从可用视频质量的数量的3倍减少到所示示例中的3个。下文将结合附图论述各种DASH对象以及此类对象之间的关联,从而解决上述问题。
图4为示例性DASH MPD 400的示意图。DASH MPD 400可以用来对多机位VR视频进行流式传输。例如,在应用方法200和/或系统100时,MPD 400可以用于描述由系统300录制的视频。因此,MPD 400可以用作MPD 125。
MPD 400可以包括一个或多个预选460。预选460是一组内容,(视频制作者等)选择这些内容一起体验。例如,预选460可以包括视频、对应的音频、对应的字幕、对应的触觉反馈等。例如,预选460可以包括多个自适应集420。
MPD 400还可以包括一个或多个机位450。机位450包括与(例如,从)相同位置/摄像机关联(录制)的多个自适应集420。例如,机位450可以包括完全由摄像机301(在第一机位450)、完全由摄像机302(在第二机位450)或完全由摄像机303(在第三机位450)录制的任何版本的数据。机位450可以包括一个或多个自适应集420。例如,机位450可以包括在一个位置录制的音频的自适应集420、在该位置录制的视频的自适应集420、有关该位置的元数据的自适应集420,等等。机位450可以是或者可以不是预选460的一部分,这取决于内容制作者所做的选择。
自适应集420包含一个或多个表示430。具体地,自适应集420包含多个表示430,这些表示的类型相同,这些表示能够互换呈现。例如,由于一类音频数据无法与一类视频数据交换,所以将音频数据、视频数据和元数据放置在不同的自适应集420中,从而不影响媒体呈现。此外,不同机位450的视频是不能互换的,因为此类视频包含不同的图像。
表示430包含的媒体数据可以呈现以产生多媒体呈现的一部分。在视频方面,同一自适应集420中的表示430可以包含不同分辨率的同一视频。因此,此类表示430能够根据期望的视频质量进行互换使用。在音频方面,公共自适应集420中的表示430可以包含质量不断变化的音频以及不同语言的音频轨迹。自适应集420中的表示430还可以包含有时间属性的元数据轨迹(例如,提示轨迹)等元数据。因此,包含有时间属性的元数据的表示430可以与对应的视频表示430、音频表示430、隐藏字幕表示430等同时使用,以判断应该如何呈现此类媒体表示430。例如,有时间属性的元数据表示430可以根据时间指示优选机位450和机位450的优选视角。因此,有时间属性的元数据表示430可以指示在媒体呈现进行时应该获取和呈现哪些自适应集。
表示430可以包含片段440。片段440包含预定时间段(例如,3秒)内的媒体数据。因此,片段440可以包含能够通过网络使用预定URL访问的一部分音频数据、一部分视频数据等。MPD 400包含指示每个片段440的URL的数据。因此,客户端可以选择期望的预选460和/或机位450来确定应该呈现的自适应集420。然后,客户端可以根据当前网络拥塞确定要获取的表示430。接着,客户端能够请求对应的片段440,以便向用户显示媒体呈现。
1.指示表示之间的关联
在DASH中,表示430中的一个语法元素可以描述关联表示430,该语法元素包含关联ID属性(@associationId),可选地包含关联类型属性(@associationType)。关联表示430是指提供表示430与其它表示430之间关系的信息的表示430。关联表示430中的片段440可以是可选的,用于解码和/或呈现由@associationId标识的表示430。可以认为,此类片段440是补充信息或描述性信息,属性@associationType指示关联的类型。需要说明的是,属性@associationId和@associationType在不同自适应集420中(例如,在不同自适应集420中)的表示430之间使用。如上所述,有时间属性的元数据表示430有可能与MPD 400中的每个其它表示430相关。当存在多个机位450时,可能存在大量表示430。在这种情况下,指示表示430与表示430之间的关联的语法可以使用大量数据来指示有时间属性的元数据表示430与表示430之间的关联。具体地,以表示430与表示430为例,属性@associationId包含所有表示430的标识符属性(@id)的值。
本发明使用各种示例性指示机制,以解决这个问题并高效地指示表示之间的关联。在第一示例性实施例中,属性@associationId可以包含自适应集420的属性@id(例如,AdaptationSet@id)。当属性@associationId包含AdaptationSet@id的特定值时,AdaptationSet@id的值在MPD 400中的所有自适应集420和所有表示430的属性@id的值之中应该是唯一的,并且在机位450或预选460等任何其它类型的对象的ID值之中应该是唯一的,属性@associationId可以包含这些ID值。可以添加自适应集420的可选级别属性,以指示自适应集420的AdaptationSet@id的值是否满足唯一性。第一示例性实施例实现如下:
在本实施例中,关联表示430、属性@associationId和属性@associationType具体描述如下。表示430中的一个元素描述关联表示430,包含属性@associationId,可选地包含属性@associationType。关联表示430是指提供表示430与其它表示430或自适应集420之间关系的信息的表示430。关联表示430中的片段440可以是可选的,用于解码和/或呈现由@associationId标识的表示430或自适应集420。可以认为,这些片段是补充信息或描述性信息,属性@associationType指示关联的类型。需要说明的是,在本实施例中,属性@associationId和属性@associationType只能在不同自适应集420中的表示430之间使用。表1定义了属性@associationId和属性@associationType。
表1:属性@associationId和@associationType
Figure BDA0002713395130000141
在本实施例中,OMAF的有时间属性的元数据轨迹的携带情况具体描述如下:轨迹样本条目类型‘invo’或‘rcvp’等的有时间属性的元数据轨迹可以封装在DASH表示430中。元数据表示430的属性@associationId可以包含表示430或自适应集420的属性@id的值,表示430或自适应集420包含(一个或多个)媒体轨迹携带的全向媒体,上述媒体轨迹与有时间属性的元数据轨迹关联。元数据表示属性430的@associationType可以设置为等于‘cdsc′。
本实施例中,可选的自适应集级别属性可以具体如表2所述。
表2:属性@idUniqueFlag
Figure BDA0002713395130000142
ID唯一标志属性(@idUniqueFlag)提供了一种机制,用于指示AdaptationSet@id的值在自适应集420中是否是唯一的。
在第二示例性实施例中,表示级别属性可表示为关联自适应集ID(@associationAs Id),定义为将包含在内的表示430关联到一个或多个自适应集420。在本实施例中,关联表示430、属性@associationId、属性@associationAsId和属性@associationType具体描述如下:表示430中的一个元素描述关联表示430,包含属性@associationId或@associationAsId,可选地包含属性@associationType。关联表示430是指提供表示430与其它表示430或自适应集420之间关系的信息的表示430。关联表示430中的片段440可以是可选的,用于解码和/或呈现由@associationId或@associationAsId标识的表示430或自适应集420。可以认为,片段440是补充信息或描述性信息,属性@associationType指示关联的类型。需要说明的是,属性@associationId或@associationAsId和@associationType只能在不同自适应集420中的表示430之间使用。表3定义了属性@associationId、属性@associationAsId和属性@associationType。
表3:属性@associationId、@associationAsId和@associationType
Figure BDA0002713395130000151
在本实施例中,OMAF的有时间属性的元数据轨迹的携带情况可以具体描述如下。轨迹样本条目类型‘invo’或‘rcvp’等的有时间属性的元数据轨迹可以封装在DASH表示430中。元数据表示430的属性@associationId或@associationAsId应分别包含表示430或自适应集420的属性@id的值,表示430或自适应集420包含(一个或多个)媒体轨迹携带的全向媒体,上述媒体轨迹与有时间属性的元数据轨迹关联。该元数据表示的属性@associationType可以设置为等于‘cdsc’。本实施例也可以使用第一实施例中的属性@idUniqueFlag。
通过前两个示例性实施例,使得表示430的属性关联到自适应集420,从而使得全部自适应集430与包含有时间属性的元数据轨迹的表示430关联。这样,有时间属性的元数据轨迹可以引用全部视频轨迹组,而不是指每个表示430,这大大减小了MPD 400的文件大小。
第三示例性实施例与第一示例性实施例类似,但允许表示430与全部机位450关联。在本实施例中,属性@associationId可以包含机位450的ID值。当属性@associationId包含机位450的特定ID值时,机位450的ID值在MPD 400中的所有机位450和所有表示430的属性@id的值之中应该是唯一的,并且在自适应集420或预选460等任何其它类型的对象的ID值之中应该是唯一的,属性@associationId可以包含这些ID值。属性Viewpoint@value可以包含一个字段,指示机位450的ID值是否满足唯一性。其它值可以如第一示例性实施例所述,提到自适应集420与机位450交换。
第四示例性实施例与第二示例性实施例类似,但提供了表示级别属性,其可以表示为关联机位ID(@associationVwptId),定义为将包含在内的表示430关联到一个或多个机位450。其它值可以如第二示例性实施例所述,提到自适应集420与机位450交换。
第五示例性实施例与第一示例性实施例类似,但允许表示430与预选460关联。在本实施例中,属性@associationId可以包含预选460的属性@id(例如,Preselection@id)。当属性@associationId包含预选460的特定ID值时,预选460的ID值在MPD400中的所有预选460和所有表示430的属性@id的值中应该是唯一的,并且在自适应集420或机位450等任何其它类型的对象的ID值中应该是唯一的。可以在预选460的元素的XML模式中添加可选属性,指示预选460的Preselection@id的值是否满足唯一性。其它值可以如第一示例性实施例所述,提到自适应集420与预选460交换。
第六示例性实施例与第二示例性实施例基本类似,但提供了一种表示级别属性,其可以表示为预选460的关联ID(@associationPsId),定义为将包含在内的表示430与一个或多个预选460关联。其它值可以如第二示例性实施例所述,提到自适应集420与预选460交换。
在第七示例性实施例中,示例性实施例1、2、3、4、5和/或6中的属性实现为MPD 400的其它级别属性。具体地,如上所述的属性@associationId、属性@associationAsId、属性@associationPsId和/或属性@associationVwptId可以实现为自适应集420、预选460和/或机位450的(一个或多个)属性。这使得自适应集420、预选460和/或机位450与其它自适应集420、预选460和/或机位450等其它DASH对象关联。
通过实施例1至7中的任意实施例,能够高效地指示关联表示430、自适应集420、预选460或表示430(例如,有时间属性的元数据表示430)对应的机位450或一些其它DASH对象,而不会大大增加MPD400的大小。
具体示例性实现方式如下所述。有时间属性的元数据表示可以与一个或多个媒体表示统一关联。有时间属性的元数据表示可以与子图像组合中的所有媒体表示统一关联,如下所述。关联描述符是有时间属性的元数据表示中的DASH表示元素的子元素。关联描述符应该在类型AdaptationSet的关联元素[SubPicCompositionId=″aa″]中包含一个字符串,其中,″aa″指示子图像组合标识符值。此外,可以将‘cdtg’包含在内,作为关联元素的属性Association@associationKindList的值。具体地,包含‘cdtg’轨迹引用的有时间属性的元数据轨迹统一描述了所引用的媒体轨迹和轨迹组。‘cdtg’轨迹引用只能存在于有时间属性的元数据轨迹中。
2.指示机位ID
由于在一段视频内会移动一些机位450,导致对应的位置信息发生改变,所以一些系统可能难以判断两个机位450实际上是否是相同。另外,DASH缺少一个MPD描述符来指示静态机位和动态机位。而且,这种描述符不包括一个值来指示关联机位是静态的还是动态的。以下可以解决这些问题。
在第一示例性实施例中,当机位450中的两个元素都包括属性@value时,属性@value包含机位450的相同ID值,则不管位置信息,都可以认为机位450中的两个元素的属性@value相同。由此,本实施例提供一种系统,能够判断是否可以认为包含机位450的一个元素的实例的多个DASH对象(例如,自适应集420)属于同一机位450,从而避免在不需要时错误地切换机位450,反之亦然。
在第二示例性实施例中,为了支持DASH存在多个机位的情况,应该使用现有的机位450中的元素,但定义了机位方案。具体地,在MPD 400中,属性@schemeIdUri等于“urn:mpeg:mpegI:omaf:2018:vwpt”的机位元素称为机位信息(VWPT)描述符。定义VWPT描述符来指示MPD 400中的机位450。位置为静态的和动态的或者随时间变化的机位450可以使用相同描述符。在一个示例中,自适应集420的级别最多可以存在一个VWPT描述符,而任何其它级别都不应存在VWPT描述符。VWPT描述符指示自适应集420所属的机位450以及机位450的位置是静态的还是动态的。如果位置为静态的,则VWPT描述符还提供机位450的位置。VWPT描述符的属性@value是一列由逗号分隔的值,如表4所述:
表4:VWPT描述符的属性@value
Figure BDA0002713395130000171
当机位450的位置是动态的,如is_static等于‘假’所示,有时间属性的元数据表示430应提供机位450的动态位置,有时间属性的元数据表示430包含有时间属性的元数据轨迹,有时间属性的元数据轨迹包括特定样本条目类型,例如,‘vpps’。有时间属性的元数据表示430的属性@associationId应包含机位450的VWPT描述符的属性@value的viewpoint_id的值。另外,元数据表示430的属性@associationType应设置为‘cdsc’。
值is_static可能是VWPT描述符中的唯一值,指示机位的位置是静态的还是动态的。
3.将有时间属性的元数据表示关联到全部媒体呈现
有时间属性的元数据表示通常适用于全部媒体呈现。但是,DASH缺少一种方法将有时间属性的元数据表示关联到全部媒体呈现。以下可以解决这一问题。在一个示例性实施例中,允许有时间属性的元数据表示430不包括或省略或不关联属性@associationId、属性@associationAsId、属性@associationVwptId、属性@associationId、属性@associationPsId以及用于将有时间属性的元数据表示430关联到其它DASH对象的任何其它此类属性。因此,指示有时间属性的元数据表示430适用于全部媒体呈现。
4.将有时间属性的元数据轨迹关联到全部影片
OMAF包括以下关于或用于将有时间属性的元数据轨迹关联到媒体轨迹或轨迹组的具体描述。当有时间属性的元数据轨迹链接到一个或多个带有‘cdsc’轨迹引用的媒体轨迹时,分别描述每个媒体轨迹。TrackGroupTypeBox的标志位0(最低有效位是位0)用于指示track_group_id的唯一性。该标志的语义具体描述如下:
(flags&1)在特定track_group_type的TrackGroupTypeBox中等于1指示TrackGroupTypeBox中的track_group_id不等于任何track_ID值,也不等于任何TrackGroupTypeBox的track_group_id,TrackGroupTypeBox具有不同的track_group_type。当(flags&1)在具有track_group_type和track_group_id的特定值的TrackGroupTypeBox中等于1时,(flags&1)在track_group_type和track_group_id的值相同的所有TrackGroupTypeBox中应等于1。
TrackReferenceBox的track_IDs的语义从
track_IDs是一个整数数组,提供被引用轨迹的轨迹标识符。值0不应存在。数组中不应重复某个值。
修改为:
track_IDs是一个整数数组,提供被引用轨迹的轨迹标识符或被引用轨迹组的track_group_id值。track_IDs[i]的每个值(其中,i是track_IDs[]数组的有效索引)是一个整数,使得包含在内的轨迹引用track_ID等于track_IDs[i]的轨迹或引用两个track_group_id等于track_IDs[i]并且TrackGroupTypeBox的(flag&1)等于1的轨迹组。当引用track_group_id值时,除非在特定轨迹引用类型的语义中另有说明,否则轨迹引用分别适用于被引用轨迹组中的每个轨迹。值0不应存在。数组中不应重复某个值。
有时间属性的元数据跟踪通常适用于全部影片。但是,文件格式没有一种方法将有时间属性的元数据轨迹关联到全部影片。以下可以解决这一问题。在一个示例性实施例中,允许有时间属性的元数据轨迹不包括、省略或不关联‘cdsc’轨迹引用。因此,指示有时间属性的元数据轨迹适用于全部影片。
图5为示例性视频编码设备500的示意图。视频编码设备500适合于实现本文描述的所公开示例/实施例。视频编码设备500包括下行端口520、上行端口550和/或收发单元(Tx/Rx)510。收发单元510包括传输器和/或接收器,用于通过网络在上行和/或下行进行数据通信。视频编码设备500还包括处理器530和存储器532。处理器530包括逻辑单元和/或CPU,用于处理所述数据。存储器532用于存储所述数据。视频编码设备500还可以包括耦合到上行端口550和/或下行端口520的光电(optical-to-electrical,OE)组件、电光(electrical-to-optical,E0)组件和/或无线通信组件,通过光通信网络或无线通信网络进行数据通信。视频编码设备500还可以包括输入和/或输出(input/output,I/O)设备560,与用户进行数据通信。I/O设备560可以包括输出设备,例如,用于显示视频数据的显示器、用于输出音频数据的扬声器等。I/0设备560还可以包括键盘、鼠标、轨迹球等输入设备以及用于与这些输出设备交互的对应接口。
处理器530通过硬件和软件实现。处理器530可以实现为一个或多个CPU芯片、核(例如,多核处理器)、FPGA、ASIC和DSP。处理器530与下行端口520、收发单元510、上行端口550和存储器532通信。处理器530包括视频编码组件514。视频编码组件514可以实现本文所述的全部或部分公开实施例。例如,视频编码组件514可以用于实现视频编码设备104、编码器103、DASH内容服务器111、客户端108和/或解码器107的功能,根据具体情况确定。例如,视频编码组件514可以执行方法200的相关部分。又例如,视频编码组件514可以从摄像机301、302和/或303接收VR视频(例如,全向视频),并生成与文件格式对象关联的MPD 400,以支持通过流媒体系统对多机位VR视频进行流式传输。此外,视频编码组件514可以使用将表示430、自适应集420、机位450和/或预选与另一表示430、另一自适应集420、另一机位450和/或另一预选进行关联的语法对MPD进行编码,以实现将DASH对象与有时间属性的元数据轨迹进行关联等目的,而无需对每个表示430的关联进行编码。这减小了MPD的文件大小,减少了用于生成和/或处理MPD的处理资源,减少了用于传输MPD的网络资源和/或减少了用于存储MPD的内存资源。这样一来,视频编码模块514改进了视频编码设备500的功能,并解决了视频编码技术特有的问题。此外,视频编码模块514影响了视频编码设备500到不同状态的转换。或者,视频编码模块514可以实现为存储在存储器532中、由处理器530执行的指令(例如,实现为存储在非瞬时性介质中的计算机程序产品)。
存储器532包括一个或多个存储器类型,例如,磁盘、磁带机、固态硬盘、ROM、RAM、闪存、TCAM、SRAM等。存储器532可以用作溢出数据存储设备,在选择程序来执行时存储此类程序以及存储在执行程序过程中读取的指令和数据。
图6为示例性DASH内容服务器600的示意图。DASH内容服务器600用于对MPD(例如,MPD 400和/或MPD 125)中的DASH对象进行关联,以支持对来自系统300等的多机位VR视频进行流式传输。因此,DASH内容服务器600可以与方法200和/或视频编码组件514一起使用,以支持编码器和/或DASH内容服务器(分别是系统100中的编码器103和/或DASH内容服务器111等)分发多机位VR媒体内容。
DASH内容服务器600可以包括内容接收模块601,用于接收包括VR视频序列的媒体内容,其中,将所述媒体内容描述为多个自适应集。DASH内容服务器600还可以包括DASHMPD生成模块603,用于生成包括关联ID的DASH MPD,其中,所述关联ID指示媒体内容的一部分与对应的第一机位关联。DASH内容服务器600还可以包括请求接收模块605,用于接收客户端对媒体内容的请求。DASH内容服务器600还可以包括传输器607,用于:在接收到请求后,将包括关联ID的DASH MPD传输到客户端,以支持将媒体内容传输到客户端。
图7为本发明一个实施例提供的生成和传输MPD的方法700的流程图。在步骤701中,获取与机位关联的媒体内容。在步骤703中,根据所述媒体内容生成VWPT描述符。所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的。例如,所述值是表4中的值is_static。在步骤705中,生成包括所述VWPT描述符的MPD。最后,在步骤707中,传输所述MPD。
图8为本发明一个实施例提供的接收和处理MPD的方法800的流程图。在步骤801中,传输对MPD的请求。在步骤803中,响应于所述请求,接收所述MPD。所述MPD包括基于媒体内容的VWPT描述符,所述媒体内容与机位关联。所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的。例如,所述值是表4中的值is_static。最后,在步骤805中,处理所述MPD。
图9为本发明另一个实施例提供的生成和传输MPD的方法900的流程图。在步骤901中,获取媒体内容。在步骤903中,根据所述媒体内容生成有时间属性的元数据表示。所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联。在步骤905中,生成MPD,其中,所述MPD包括所述有时间属性的元数据表示。最后,在步骤907中,传输所述MPD。
图10为本发明另一个实施例提供的接收和处理MPD的方法1000的流程图。在步骤1001中,传输对MPD的请求。在步骤1003中,响应于所述请求,接收所述MPD。所述MPD包括基于媒体内容的有时间属性的元数据表示。所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联。最后,在步骤1005中,处理所述MPD。
图11为本发明一个实施例提供的生成和传输文件格式对象的方法1100的流程图。在步骤1101中,获取媒体内容。在步骤1103中,根据所述媒体内容生成有时间属性的元数据轨迹。所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联。在步骤1105中,生成文件格式对象,其中,所述文件格式对象包括所述有时间属性的元数据轨迹。最后,在步骤1107中,传输所述文件格式对象。
图12为本发明一个实施例提供的接收和处理文件格式对象的方法1200的流程图。在步骤1201中,传输对文件格式对象的请求。在步骤1203中,响应于所述请求,接收所述文件格式对象。所述文件格式对象包括基于媒体内容的有时间属性的元数据轨迹。所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联。最后,在步骤1205中,处理所述文件格式对象。
图13为本发明一个实施例提供的生成和传输MPD的方法1300的流程图。在步骤1301中,获取与第一机位和第二机位关联的媒体内容。所述第一机位的第一位置是静态的,所述第二机位的第二位置是动态的。在步骤1303中,根据所述媒体内容生成第一VWPT描述符,并描述所述第一机位。在步骤1305中,根据所述媒体内容生成第二VWPT描述符,并描述所述第二机位。所述第一VWPT描述符和所述第二VWPT描述符可以是结合表4描述的VWPT描述符。在步骤1307中,生成包括所述第一VWPT描述符和所述第二VWPT描述符的MPD。最后,在步骤1309中,传输所述MPD。
所述第二机位可以与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹。所述有时间属性的元数据轨迹包括描述所述第二位置的信息。所述第一VWPT描述符可以包括第一值,指示所述第一位置是否是静态的。所述第二VWPT描述符可以包括第二值,指示所述第二位置是否是静态的。所述第一值和所述第二值可以为表4中的值is_static。
图14为本发明又一个实施例的接收和处理MPD的方法1400的流程图。在步骤1401中,传输对MPD的请求。在步骤1403中,响应于所述请求,接收所述MPD。所述MPD包括第一VWPT描述符和第二VWPT描述符。所述第一VWPT描述符基于媒体内容,并描述第一机位。所述第一机位的第一位置是静态的。所述第二VWPT描述符基于所述媒体内容,并描述第二机位。所述第二机位的第二位置是动态的。所述第一VWPT描述符和所述第二VWPT描述符可以是表4描述的VWPT描述符。最后,在步骤1405中,处理所述MPD。对于方法700至方法1400,收发单元510可以执行接收和传输步骤,处理器530可以执行其余步骤。
所述第二机位可以与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹。所述有时间属性的元数据轨迹包括描述所述第二位置的信息。所述第一VWPT描述符可以包括第一值,指示所述第一位置是否是静态的。所述第二VWPT描述符可以包括第二值,指示所述第二位置是否是静态的。所述第一值和所述第二值可以为表4中的值is_static。
一种装置包括存储器元件以及与所述存储器元件耦合的处理器元件。所述处理器元件用于执行以下方法:获取与第一机位和第二机位关联的媒体内容,其中,所述第一机位的第一位置是静态的,所述第二机位的第二位置是动态的;根据所述媒体内容生成第一VWPT描述符,并描述所述第一机位;根据所述媒体内容生成第二VWPT描述符,并描述所述第二机位;生成所述第一VWPT描述符和所述第二VWPT描述符的MPD;传输所述MPD。
虽然本发明提供了几个实施例,但应理解,在不脱离本发明的精神或范围的情况下,所公开的系统和方法可能通过其它多种具体形式体现。本发明的示例应被视为说明性而非限制性的,且本发明并不限于本文中所给出的细节。例如,各种元件或组件可以组合或集成在另一系统中,或者某些特征可以省略或不实施。
另外,在不脱离本发明范围的情况下,各种实施例中描述和说明为离散或单独的技术、系统、子系统和方法可以与其它系统、组件、技术或方法组合或集成。展示或论述为耦合的其它项也可以采用电方式、机械方式或其它方式经由某一接口、设备或中间组件间接地耦合或通信。其它变更、替换、更改示例对本领域技术人员而言是显而易见的,均不脱离本文中公开的精神和范围。

Claims (68)

1.一种方法,其特征在于,所述方法包括:
获取与机位关联的媒体内容;
根据所述媒体内容生成机位信息(VWPT)描述符,其中,所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的;
生成包括所述VWPT描述符的媒体描述文件(media presentation description,MPD);
传输所述MPD。
2.根据权利要求1所述的方法,其特征在于,所述值为值is_static。
3.根据权利要求2所述的方法,其特征在于,所述值is_static为所述VWPT描述符中的唯一值,指示所述机位的所述位置是静态的还是动态的。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述值等于“真”指示所述机位的所述位置是静态的。
5.根据权利要求1至4中任一项所述的方法,其特征在于,所述值等于“假”指示所述机位的所述位置是动态的。
6.根据权利要求1至5中任一项所述的方法,其特征在于,所述VWPT描述符还包括机位标识符(identifier,ID)值,指示所述机位的机位ID。
7.根据权利要求1至6中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心x值,指示所述机位的中心在x轴上、在全局三维坐标中的绝对位置。
8.根据权利要求1至7中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心y值,指示所述机位的所述中心在y轴上、在所述全局三维坐标中的绝对位置。
9.根据权利要求1至8中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心z值,指示所述机位的所述中心在z轴上、在所述全局三维坐标中的绝对位置。
10.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求1至9中的任一项权利要求。
11.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;在处理器执行所述计算机可执行指令时,所述装置执行权利要求1至9中的任一项权利要求。
12.一种方法,其特征在于,所述方法包括:
传输对媒体描述文件(media presentation description,MPD)的请求;
响应于所述请求,接收所述MPD,其中,所述MPD包括基于媒体内容的机位信息(VWPT)描述符,所述媒体内容与机位关联,所述VWPT描述符包括一个值,所述值指示所述机位的位置是否是静态的;
处理所述MPD。
13.根据权利要求12所述的方法,其特征在于,所述值为值is_static。
14.根据权利要求13所述的方法,其特征在于,所述值is_static为所述VWPT描述符中的唯一值,指示所述机位的所述位置是静态的还是动态的。
15.根据权利要求12至14中任一项所述的方法,其特征在于,所述值等于“真”指示所述机位的所述位置是静态的。
16.根据权利要求12至15中任一项所述的方法,其特征在于,所述值等于“假”指示所述机位的所述位置是动态的。
17.根据权利要求12至16中任一项所述的方法,其特征在于,所述VWPT描述符还包括机位标识符(identifier,ID)值,指示所述机位的机位ID。
18.根据权利要求12至17中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心x值,指示所述机位的中心在x轴上、在全局三维坐标中的绝对位置。
19.根据权利要求12至18中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心y值,指示所述机位的所述中心在y轴上、在所述全局三维坐标中的绝对位置。
20.根据权利要求12至19中任一项所述的方法,其特征在于,所述VWPT描述符还包括中心z值,指示所述机位的所述中心在z轴上、在所述全局三维坐标中的绝对位置。
21.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求11至20中的任一项权利要求。
22.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求11至20中的任一项权利要求。
23.一种方法,其特征在于,所述方法包括:
获取媒体内容;
根据所述媒体内容生成有时间属性的(timed)元数据表示,其中,所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联;
生成媒体描述文件(media presentation description,MPD),其中,所述MPD包括所述有时间属性的元数据表示;
传输所述MPD。
24.根据权利要求23所述的方法,其特征在于,所述有时间属性的元数据表示还与任何其它此类属性不关联,任何其它此类属性用于将所述有时间属性的元数据表示关联到其它基于超文本传输协议的动态自适应流(Dynamic Adaptive Streaming over HypertextTransfer Protocol,DASH)对象。
25.根据权利要求23或24所述的方法,其特征在于,所述有时间属性的元数据轨迹适用于全部媒体呈现。
26.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求23至25中的任一项权利要求。
27.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求23至25中的任一项权利要求。
28.一种方法,其特征在于,所述方法包括:
传输对媒体描述文件(media presentation description,MPD)的请求;
响应于所述请求,接收所述MPD,其中,所述MPD包括基于媒体内容的有时间属性的元数据表示,所述有时间属性的元数据表示与属性@associationId、属性@associationAsId、属性@associationVwptId和属性@associationPsId不关联;
处理所述MPD。
29.根据权利要求28所述的方法,其特征在于,所述有时间属性的元数据表示还与任何其它此类属性不关联,任何其它此类属性用于将所述有时间属性的元数据表示关联到其它基于超文本传输协议的动态自适应流(Dynamic Adaptive Streaming over HypertextTransfer Protocol,DASH)对象。
30.根据权利要求28或29所述的方法,其特征在于,所述有时间属性的元数据轨迹适用于全部媒体呈现。
31.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求28至30中的任一项权利要求。
32.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求28至30中的任一项权利要求。
33.一种方法,其特征在于,所述方法包括:
获取媒体内容;
根据所述媒体内容生成有时间属性的元数据轨迹,其中,所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联;
生成文件格式对象,其中,所述文件格式对象包括所述有时间属性的元数据轨迹;
传输所述文件格式对象。
34.根据权利要求33所述的方法,其特征在于,所述‘cdsc’轨迹引用指示所述有时间属性的元数据轨迹分别描述每个媒体轨迹。
35.根据权利要求33或34所述的方法,其特征在于,所述有时间属性的元数据轨迹适用于全部影片。
36.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求33至35中的任一项权利要求。
37.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求33至35中的任一项权利要求。
38.一种方法,其特征在于,所述方法包括:
传输对文件格式对象的请求;
响应于所述请求,接收所述文件格式对象,其中,所述文件格式对象包括基于媒体内容的有时间属性的元数据轨迹,所述有时间属性的元数据轨迹与‘cdsc’轨迹引用不关联;
处理所述文件格式对象。
39.根据权利要求38所述的方法,其特征在于,所述‘cdsc’轨迹引用指示所述有时间属性的元数据轨迹分别描述每个媒体轨迹。
40.根据权利要求38或39所述的方法,其特征在于,所述有时间属性的元数据轨迹适用于全部影片。
41.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求38至40中的任一项权利要求。
42.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求38至40中的任一项权利要求。
43.一种方法,其特征在于,所述方法包括:
获取与第一机位和第二机位关联的媒体内容,其中,所述第一机位的第一位置是静态的,所述第二机位的第二位置是动态的;
根据所述媒体内容生成第一机位信息(VWPT)描述符,并描述所述第一机位;
根据所述媒体内容生成第二VWPT描述符,并描述所述第二机位;
生成包括所述第一VWPT描述符和所述第二VWPT描述符的媒体描述文件(mediapresentation description,MPD);
传输所述MPD。
44.根据权利要求43所述的方法,其特征在于,所述第二机位与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹,所述有时间属性的元数据轨迹包括描述所述第二位置的信息。
45.根据权利要求43或44所述的方法,其特征在于,所述第一VWPT描述符包括第一值,指示所述第一位置是否是静态的;所述第二VWPT描述符包括第二值,指示所述第二位置是否是静态的。
46.根据权利要求45所述的方法,其特征在于,所述第一值为第一值is_static,所述第二值为第二值is_static。
47.根据权利要求46所述的方法,其特征在于,所述第一值is_static为所述第一VWPT描述符中的唯一值,指示所述第一机位的所述第一位置是静态的还是动态的;所述第二值is_static为所述第二VWPT描述符中的唯一值,指示所述第二机位的所述第二位置是静态的还是动态的。
48.根据权利要求45至47中任一项所述的方法,其特征在于,所述第一值等于“真”指示所述机位的所述位置是静态的,所述第二值等于“真”指示所述机位的所述位置是静态的。
49.根据权利要求45至47中任一项所述的方法,其特征在于,所述第一值等于“假”指示所述机位的所述位置是动态的,所述第二值等于“假”指示所述机位的所述位置是动态的。
50.根据权利要求45至49中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一机位标识符(identifier,ID)值,指示所述第一机位的第一机位ID;所述第二VWPT描述符还包括第二机位ID值,指示所述第二机位的第二机位ID。
51.根据权利要求45至50中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心x值,指示所述第一机位的第一中心在x轴上、在全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心x值,指示所述第二机位的第二中心在所述x轴上、在所述全局三维坐标中的第二绝对位置。
52.根据权利要求45至51中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心y值,指示所述第一机位的第一中心在y轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心y值,指示所述第二机位的第二中心在所述y轴上、在所述全局三维坐标中的第二绝对位置。
53.根据权利要求45至52中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心z值,指示所述第一机位的第一中心在z轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心z值,指示所述第二机位的第二中心在所述z轴上、在所述全局三维坐标中的第二绝对位置。
54.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求43至53中的任一项权利要求。
55.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求43至53中的任一项权利要求。
56.一种方法,其特征在于,所述方法包括:
传输对媒体描述文件(media presentation description,MPD)的请求;
响应于所述请求,接收所述MPD,其中,所述MPD包括第一机位信息(VWPT)描述符和第二VWPT描述符,所述第一VWPT描述符基于媒体内容,并描述第一机位,所述第一机位的第一位置是静态的;所述第二VWPT描述符基于所述媒体内容,并描述第二机位,所述第二机位的第二位置是动态的;
处理所述MPD。
57.根据权利要求56所述的方法,其特征在于,所述第二机位与有时间属性的元数据表示关联,所述有时间属性的元数据表示包括有时间属性的元数据轨迹,所述有时间属性的元数据轨迹包括描述所述第二位置的信息。
58.根据权利要求56或57所述的方法,其特征在于,所述第一VWPT描述符包括第一值,指示所述第一位置是否是静态的;所述第二VWPT描述符包括第二值,指示所述第二位置是否是静态的。
59.根据权利要求58所述的方法,其特征在于,所述第一值为第一值is_static,所述第二值为第二值is_static。
60.根据权利要求59所述的方法,其特征在于,所述第一值is_static为所述第一VWPT描述符中的唯一值,指示所述第一机位的所述第一位置是静态的还是动态的;所述第二值is_static为所述第二VWPT描述符中的唯一值,指示所述第二机位的所述第二位置是静态的还是动态的。
61.根据权利要求58至60中任一项所述的方法,其特征在于,所述第一值等于“真”指示所述机位的所述位置是静态的,所述第二值等于“真”指示所述机位的所述位置是静态的。
62.根据权利要求58至60中任一项所述的方法,其特征在于,所述第一值等于“假”指示所述机位的所述位置是动态的,所述第二值等于“假”指示所述机位的所述位置是动态的。
63.根据权利要求58至62中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一机位标识符(identifier,ID)值,指示所述第一机位的第一机位ID;所述第二VWPT描述符还包括第二机位ID值,指示所述第二机位的第二机位ID。
64.根据权利要求58至63中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心x值,指示所述第一机位的第一中心在x轴上、在全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心x值,指示所述第二机位的第二中心在所述x轴上、在所述全局三维坐标中的第二绝对位置。
65.根据权利要求58至64中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心y值,指示所述第一机位的第一中心在y轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心y值,指示所述第二机位的第二中心在所述y轴上、在所述全局三维坐标中的第二绝对位置。
66.根据权利要求58至65中任一项所述的方法,其特征在于,所述第一VWPT描述符还包括第一中心z值,指示所述第一机位的第一中心在z轴上、在所述全局三维坐标中的第一绝对位置;所述第二VWPT描述符还包括第二中心z值,指示所述第二机位的第二中心在所述z轴上、在所述全局三维坐标中的第二绝对位置。
67.一种装置,其特征在于,所述装置包括:
存储器;
耦合到所述存储器的处理器,其中,所述处理器用于执行权利要求56至66中的任一项权利要求。
68.一种计算机程序产品,其特征在于,所述计算机程序产品包括存储在非瞬时性介质中的计算机可执行指令;当处理器执行所述计算机可执行指令时,所述装置执行权利要求56至66中的任一项权利要求。
CN201980024408.3A 2018-04-06 2019-04-03 将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联 Active CN111937043B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862654034P 2018-04-06 2018-04-06
US62/654,034 2018-04-06
PCT/US2019/025631 WO2019195460A1 (en) 2018-04-06 2019-04-03 Associating file format objects and dynamic adaptive streaming over hypertext transfer protocol (dash) objects

Publications (2)

Publication Number Publication Date
CN111937043A true CN111937043A (zh) 2020-11-13
CN111937043B CN111937043B (zh) 2024-05-03

Family

ID=

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120102042A1 (en) * 2010-10-20 2012-04-26 Flick christopher Temporal metadata track
CN105230024A (zh) * 2013-07-19 2016-01-06 华为技术有限公司 基于超文本传输协议的动态自适应流媒体中的元数据信息的指示及携带
KR20160135660A (ko) * 2015-05-18 2016-11-28 한국전자통신연구원 헤드 마운트 디스플레이를 위한 입체 영상을 제공하는 방법 및 장치
US20170099513A1 (en) * 2014-03-31 2017-04-06 David Stuart FURBECK Apparatus and method for processing media content
US20180061002A1 (en) * 2016-08-25 2018-03-01 Lg Electronics Inc. Method of transmitting omnidirectional video, method of receiving omnidirectional video, device for transmitting omnidirectional video, and device for receiving omnidirectional video

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20120102042A1 (en) * 2010-10-20 2012-04-26 Flick christopher Temporal metadata track
CN105230024A (zh) * 2013-07-19 2016-01-06 华为技术有限公司 基于超文本传输协议的动态自适应流媒体中的元数据信息的指示及携带
US20170099513A1 (en) * 2014-03-31 2017-04-06 David Stuart FURBECK Apparatus and method for processing media content
KR20160135660A (ko) * 2015-05-18 2016-11-28 한국전자통신연구원 헤드 마운트 디스플레이를 위한 입체 영상을 제공하는 방법 및 장치
US20180061002A1 (en) * 2016-08-25 2018-03-01 Lg Electronics Inc. Method of transmitting omnidirectional video, method of receiving omnidirectional video, device for transmitting omnidirectional video, and device for receiving omnidirectional video

Also Published As

Publication number Publication date
EP3776484A1 (en) 2021-02-17
US11902634B2 (en) 2024-02-13
EP3776484A4 (en) 2021-05-05
US20210021909A1 (en) 2021-01-21
WO2019195460A1 (en) 2019-10-10

Similar Documents

Publication Publication Date Title
US11651752B2 (en) Method and apparatus for signaling user interactions on overlay and grouping overlays to background for omnidirectional content
EP3466091B1 (en) Method, device, and computer program for improving streaming of virtual reality media content
CN111869221B (zh) Dash对象之间的有效关联
CN109074678B (zh) 一种信息的处理方法及装置
US11323683B2 (en) Method, an apparatus and a computer program product for virtual reality
US11539983B2 (en) Virtual reality video transmission method, client device and server
CN111937397A (zh) 媒体数据处理方法及装置
CN109218755B (zh) 一种媒体数据的处理方法和装置
CN112219403B (zh) 沉浸式媒体的渲染视角度量
US11438731B2 (en) Method and apparatus for incorporating location awareness in media content
US11902634B2 (en) Associating file format objects and dynamic adaptive streaming over hypertext transfer protocol (DASH) objects
EP3939327A1 (en) Method and apparatus for grouping entities in media content
CN111937043B (zh) 将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联
CN114930869A (zh) 用于视频编码和视频解码的方法、装置和计算机程序产品
US20230396808A1 (en) Method and apparatus for decoding point cloud media, and method and apparatus for encoding point cloud media
CN108271084B (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
GR01 Patent grant