CN108271068B - 一种基于流媒体技术的视频数据的处理方法及装置 - Google Patents

一种基于流媒体技术的视频数据的处理方法及装置 Download PDF

Info

Publication number
CN108271068B
CN108271068B CN201611252400.7A CN201611252400A CN108271068B CN 108271068 B CN108271068 B CN 108271068B CN 201611252400 A CN201611252400 A CN 201611252400A CN 108271068 B CN108271068 B CN 108271068B
Authority
CN
China
Prior art keywords
video data
information
tilt
tilt information
video
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
CN201611252400.7A
Other languages
English (en)
Other versions
CN108271068A (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
Priority to CN201611252400.7A priority Critical patent/CN108271068B/zh
Priority to EP17889051.3A priority patent/EP3550843A1/en
Priority to PCT/CN2017/098291 priority patent/WO2018120857A1/zh
Publication of CN108271068A publication Critical patent/CN108271068A/zh
Priority to US16/450,441 priority patent/US20190313151A1/en
Application granted granted Critical
Publication of CN108271068B publication Critical patent/CN108271068B/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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/764Media network packet handling at the destination 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • 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
    • 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
    • H04N21/23439Processing 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 for generating different versions
    • 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/235Processing of additional data, e.g. scrambling of additional data or processing content descriptors
    • H04N21/2353Processing of additional data, e.g. scrambling of additional data or processing content descriptors specifically adapted to content descriptors, e.g. coding, compressing or processing of metadata
    • 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • 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/435Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport 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/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
    • 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
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Databases & Information Systems (AREA)
  • Library & Information Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本发明实施例提供了一种基于流媒体技术的视频数据的处理方法和装置。所述方法包括:得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;根据所述视频数据的索引信息得到视频数据;得到所述视频数据的倾斜信息;根据所述视频数据的倾斜信息处理所述视频数据。根据本发明实施例的视频数据的处理方法和装置,客户端接收到的信息包括视频数据的倾斜信息,客户端可以根据倾斜信息调整视频数据的呈现方式。

Description

一种基于流媒体技术的视频数据的处理方法及装置
技术领域
本发明涉及流媒体数据处理领域,尤其涉及一种基于流媒体技术的视频数据的处理方法及装置。
背景技术
虚拟现实技术是一种可以创建和体验虚拟世界的计算机仿真系统,它利用计算机生成一种模拟环境,是一种多源信息融合的交互式的三维动态视景和实体行为的系统仿真,可以使用户沉浸到该环境中。VR主要包括模拟环境、感知、自然技能和传感设备等方面。模拟环境是由计算机生成的、实时动态的三维立体逼真图像。感知是指理想的VR应该具有一切人所具有的感知。除计算机图形技术所生成的视觉感知外,还有听觉、触觉、力觉、运动等感知,甚至还包括嗅觉和味觉等,也称为多感知。自然技能是指人的头部转动,眼睛、手势、或其他人体行为动作,由计算机来处理与参与者的动作相适应的数据,并对用户的输入作出实时响应,并分别反馈到用户的五官。传感设备是指三维交互设备。当VR视频(或者360度视频,或者全方位视频(英文:Omnidirectional video))在头戴设备和手持设备上呈现时,只有对应于用户头部的方位部分的视频图像呈现和相关联的音频呈现。
随着虚拟现实(英文:virtual reality,VR)技术的日益发展完善,360度视角等VR视频的观看应用越来越多地呈现在用户面前。全方位VR视频的内容会覆盖用户的360度的全部视野,为了给观看者提供浸入式的体验,呈现给用户的视频内容需要是正向的,也就是给用户呈现的视频内容是和自然界物体的上下方向是一致的。
现有的VR视频采集设备的镜头数量都超过1个,多个镜头在同一时刻可以采集到多幅图像,比如2个鱼眼镜头可以采集到两幅图像(例如图1),多幅图像进行拼接后可以得到一个VR的图像。在实际的拍摄中,可能因某些原因将采集设备倾斜,这样最终采集到的视频呈现出来的效果就会有偏移,这种偏移会给观看者带来不适感。
发明内容
本发明第一方面实施例提供了一种基于流媒体技术的视频数据的处理方法,所述方法包括:得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;根据所述视频数据的索引信息得到视频数据;得到所述视频数据的倾斜信息;根据所述视频数据的倾斜信息处理所述视频数据。
在一种可能的方式中,本发明实施例的根据所述视频数据的倾斜信息处理所述视频数据,包括根据所述视频数据的倾斜信息呈现所述视频数据或者根据所述视频数据的倾斜信息解码所述视频数据。
根据本发明实施例的视频数据的处理方法,通过传输倾斜信息,可以使得客户端根据倾斜信息调整视频数据的处理方式。
在一种可能的实现方式中,本发明实施例所述的流媒体技术,是指将一连串的媒体数据压缩后,经过网络分段发送数据,在网络上传输以供客户端播放的一种技术。流媒体传输有顺序流式传输(Progressive Streaming)和实时流式传输(Realtime Streaming)两种方式。流媒体传输协议主要包括超文本传送协议(HyperText Transfer Protocol,HTTP),实时传输协议(Real-time Transport Protocol,RTP)、实时传输控制协议(Real-time Transport Control Protocal,RTCP)、资源预定协议(Resource reserveProtocol)、实时流传输协议(Real Time Streaming Protocol,RTSP),路由选择表维护协议(Routing Table Maintenance Protocol,RMTP)等。
在一种可能的实现方式中,本发明实施例所述的视频数据,可以包括一帧或多帧图像数据,可以是采集设备采集到的原始数据,也可以是对采集的原始数据进行编码后的数据。在一种实现方式中,可以采用ITU H.264或ITU H.265等编码标准对原始采集数据进行编码。在一种实现方式中,视频数据包括一个或多个媒体分段(segment)。在一种示例中,服务器会为同一个视频内容准备多种版本的码流,每个版本的码流称为表示(representation)。表示是在传输格式中的一个或者多个码流的集合和封装,一个表达中包含一个或者多个分段(segment)。不同版本的码流的码率、分辨率等编码参数可以不同,每个码流分割成多个小的文件,每个小文件被称为分段。在客户端请求媒体分段数据的过程中可以在不同的媒体表示之间切换,在一个示例中,服务器为一部电影准备了3个表示,包括rep1,rep2,rep3。其中,rep1是码率为4mbps(每秒兆比特)的高清视频,rep2是码率为2mbps的标清视频,rep3是码率为1mbps的标清视频。每个表示的分段可以首尾相接的存在一个文件中,也可以独立存储为一个个的小文件。Segment可以按照标准ISO/IEC 14496-12中的格式封装(ISO BMFF(Base Media File Format)),也可以是按照ISO/IEC 13818-1中的格式封装(MPEG-2TS)。
在一种实现方式中,视频数据也可以根据私有协议封装。可以包括一段时间长度(例如5s)的媒体内容,也可以只包括某一个时间点(例如11点59分10秒)的媒体内容。
在一种可能的实现方式中,本发明实施例所述的媒体呈现描述,可以是一个包括了视频数据的索引信息的文件,该文件的格式既可以是使用的标准协议,如使用超文本标记语言(HyperText Markup Language,HTML)构建的xml文件;也可以是使用其它私有协议构建的文件。
在一种可能的实现方式中,媒体呈现描述可以是基于MPEG-DASH标准得到的文件。2011年11月,MPEG组织批准了DASH标准,DASH标准是基于HTTP协议传输媒体流的技术规范(以下称DASH技术规范);DASH技术规范主要由两大部分组成:媒体呈现描述(英文:MediaPresentation Description,MPD)和媒体文件格式(英文:file format)。在DASH标准中,媒体呈现描述被称为MPD,MPD可以是一个xml的文件,文件中的信息是采用分级方式描述,如图2所示,上一级的信息被下一级完全继承。在该文件中描述了一些媒体元数据,这些元数据可以使得客户端了解服务器中的媒体内容信息,并且可以使用这些信息构造请求segment的http-URL。
在DASH标准中,媒体呈现(英文:media presentation),是呈现媒体内容的结构化数据的集合;媒体呈现描述(英文:media presentation description),一个规范化描述媒体呈现的文件,用于提供流媒体服务;时期(英文:period),一组连续的时期组成整个媒体呈现,时期具有连续和不重叠的特性;表示(英文:representation),封装有一个或多个具有描述性元数据的的媒体内容成分(编码的单独的媒体类型,例如音频、视频等)的结构化的数据集合即表示是传输格式中一个或者多个码流的集合和封装,一个表示中包含一个或者多个分段;自适应集(英文:AdaptationSet),表示同一媒体内容成分的多个可互替换的编码版本的集合,一个自适应集包含一个或者多个表示;子集(英文:subset),一组自适应集合的组合,当播放器播放其中所有自适应集合时,可以获得相应的媒体内容;分段信息,是媒体呈现描述中的HTTP统一资源定位符引用的媒体单元,分段信息描述媒体数据的分段,媒体数据的分段可以存储在一个文件中,也可以单独存储,在一种可能的方式中,MPD中会存储媒体数据的分段。
本发明有关MPEG-DASH技术的相关技术概念可以参考ISO/IEC 23009-1:2014Information technology----Dynamic adaptive streaming over HTTP(DASH)--Part 1:Media presentation description and segment formats,中的有关规定,也可以参考历史标准版本中的相关规定,如ISO/IEC 23009-1:2013或ISO/IEC 23009-1:2012等。
在一种可能的实现方式中,本发明实施例所述的视频数据的索引信息,可以是一个具体的存储地址,例如一个超链接;也可以是一个具体的数值;还可以是一个存储地址的模板,例如一个URL模板,此时客户端可以根据URL模板生成视频数据的获取请求,向对应的地址请求视频数据。
在一种可能的实现方式中,本发明实施例所述的根据所述视频数据的索引信息得到视频数据,可以包括如下的几种实现方式:
媒体呈现描述中包括了视频数据,根据视频数据的索引信息从媒体呈现描述中得到相应的视频数据,此时不需要向服务器再发送额外的视频数据获取请求。
或者
视频数据的索引信息是视频数据对应的存储地址,客户端向该存储地址发送视频数据获取请求,然后接收到相应的视频数据;该请求可以是一个基于HTTP的获取请求。
或者
视频数据的索引信息是视频数据的存储地址模板,客户端根据该模板生成相应的视频数据获取请求,然后接收到相应的视频数据;客户端在根据存储地址模板生成视频数据获取请求时,可以根据媒体呈现描述中包括的信息构造视频数据获取请求,也可以根据客户端的信息构造视频数据获取请求,还可以根据传输网络的信息构造视频获取请求;视频数据获取请求可以是一个基于HTTP的获取请求。
在一种可能的实现方式中,本发明实施例所述的视频数据的倾斜信息,可以包括下列信息中的至少一种:偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
视频数据的倾斜信息主要体现的是采集设备的正向角度与客户端设备呈现时的正向角度之间的差异,或者是预设的某个角度与客户端设备呈现时的正向角度之间的差异,或者是视频帧相对于参考视频帧的旋转角度或者像素或者块。偏航角,俯仰角,滚动角可以用来表示物体在惯性坐标系中的姿态,也可以称为欧拉角。
在一种可能的实现方式中,偏航角信息,俯仰角信息,滚动角信息等信息可以是以角度为单位的信息,也可以是以像素为单位的信息,或者是以某个大小的块为单位的数据。
比如图1所示,偏航角为ɑ,俯仰角为β,侧方滚动角(侧滚角)为θ。
在一种实现方式中,倾斜信息的表现形式如下:
Figure BDA0001198246390000081
在一种实现方式中,倾斜处理方式信息可以包括插值信息和采样信息,插值信息可以包括插值方式,采样信息可以包括采样率等。采集设备中的图像采集传感器和倾斜数据采集的传感器可能是不同的传感器,而且传感器之间的采样频率可能也是不同的。所以如果倾斜数据的采样率和视频数据的采样率不同的话,需要对倾斜数据进行插值计算,将对应某一时刻视频数据的倾斜信息计算出来;插值计算的方式可以是线性差值或者多项式插值等。
在一种示例中,倾斜处理方式信息的示例如下:
Figure BDA0001198246390000091
在一种可能的实现方式中,本发明实施例所述的得到所述视频数据的倾斜信息,可以包括如下的几种实现方式:
1、所述视频数据的倾斜信息和所述视频数据封装在同一个码流中,此
时可以通过视频数据的码流得到视频数据的倾斜信息。
在一种实现方式中,倾斜信息可以封装在码流的参数集中,例如封装在在视频参数集(video_parameter_set,VPS),序列参数集(sequence_parameter_set,SPS)或者图像参数集(picture_parameter_set,PPS)中或者是其他VR扩展相关的参数集中。
在一个示例中,在PPS中描述倾斜信息如下:
Figure BDA0001198246390000101
在一种可能的方式中,将倾斜信息封装在SEI(Supplemental enhancementinformation)中。
Figure BDA0001198246390000102
上述语法中的position表示一个具体取值,比如190,用以表示SEI的类型值为190的话,SEI NALU(Network Abstract Layer Unit,网络适配层单元)中的数据是倾斜信息。数字190只是个具体的示例,不代表对本发明实施例的具体限制。
position_payload(payloadSize)的描述方法:
Figure BDA0001198246390000111
在一种可能的方式中,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在倾斜信息。例如倾斜信息标识是一个flag,当flag值为1时表示码流中存在倾斜信息;当flag值为0时表示码流中不存在倾斜信息。
在一种可能的方式中,上述的flag也可以描述在视频参数集VPS,SPS或者PPS中,具体语法如下,如果position_extension_flag=1,表示在每一帧的码流数据中包含有当前帧的倾斜数据。
Figure BDA0001198246390000112
Figure BDA0001198246390000121
一种可能的方式中,该数据除了由传感器获得,或者通过传感器数据插值获得,还可以由编码器在做球面运动估计时获得,可以认为是球面帧和参考球面帧的全局旋转信息,该旋转信息可以是倾斜的绝对值(球面帧在采集时的倾斜信息),也可以是相对值(VR视频中当前球面帧相对于参考球面帧的旋转信息),还可以是相对值变化的值,具体不做限定;球面运动估计时可以采用球面图像,也可以采用球面映射后的2D图像,具体不做限定;解码器在获得该信息后,需要采用该值在参考帧中找到参考数据的位置,从而完成视频数据的正确解码。
2、所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中。
在本发明的一种实现方式中,track是基于ISO标准的媒体文件中具有时间属性的一类样本序列。
此时客户端需要通过传输倾斜信息的track或者发送倾斜信息获取请求得到视频数据的倾斜信息。在一种实现方式中,媒体呈现描述包括了倾斜信息的索引信息,客户端可以采用与上述得到视频数据类似的方式得到视频数据的倾斜信息。在一种实现方式中,倾斜信息的索引信息也可以通过独立于媒体呈现描述的文件发送到客户端。
在一种示例中,倾斜信息的描述如下:
Figure BDA0001198246390000131
在一种可能的实现方式中,倾斜信息还包括:
Figure BDA0001198246390000132
客户端获取到倾斜数据的track中的描述信息,该描述信息中描述了本track中的倾斜数据的最大倾斜情况,客户端可以根据该最大倾斜情况预先申请出图像处理的最大计算空间;以防在图像处理过程中因为倾斜数据的变化导致内存空间重申请。
在一种可能的实现方式中,媒体呈现描述包括倾斜信息的元数据,客户端可以根据该元数据得到视频数据的倾斜信息。
在一种基于DASH标准的示例中,在MPD中增加的倾斜信息的元数据描述如下:
Figure BDA0001198246390000141
或者在MPD中描述倾斜信息
比如在period层或者adaptation set层增加倾斜信息,具体样例如下:
在adaptation set层增加倾斜信息,表示adaptation set下的视频流内容的倾斜情况。
Figure BDA0001198246390000142
在period层增加倾斜信息,表示period下的视频流内容的倾斜情况:
Figure BDA0001198246390000151
客户端可以通过解析MPD获得倾斜数据表达的元数据,构造倾斜数据获取的URL,获取倾斜数据。可以理解的是,上述示例只是为了帮助本发明技术方案的一种举例,倾斜信息的元数据也可以在表示中或MPD描述子中描述。
3、所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
此时可以通过传输视频数据的track得到视频数据的倾斜信息。
在一个示例中,倾斜信息可以封装在视频数据的元数据中。
在一种可能的实现方式中,所述倾斜信息可以封装在媒体呈现描述中。此时客户端可以通过视频数据的元数据得到倾斜信息。例如可以通过解析媒体呈现描述得到视频数据的倾斜信息。
在一个示例中,描述了将倾斜信息携带在视频track中的样例,在本实施例中,描述倾斜信息的box为Positioninfomationbox;
Figure BDA0001198246390000161
或者:
Figure BDA0001198246390000162
Figure BDA0001198246390000171
根据本发明实施例的视频数据的处理方法,将采集设备相关的倾斜数据作为元数据进行了封装,该元数据更加有利于客户端的VR视频呈现,客户端可以选择呈现正向的视频内容也可以选择呈现拍摄者的原始拍摄姿态下的内容,同时,还可以利用该数据客户端还可以计算出视频采集的镜头中心区域在图像中的位置,从而客户端可以根据视频内容距离中心位置不同,视频内容的形变和分辨率也不同的原理,来选择观看视频的空间区域。
本发明第二方面实施例提供了一种基于流媒体技术的视频数据的处理装置,所述装置包括:接收器,所述接收器用于得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;所述接收器还用于根据所述视频数据的索引信息得到视频数据;所述接收器还用于得到所述视频数据的倾斜信息;处理器,所述处理器用于根据所述视频数据的倾斜信息处理所述视频数据。
在一种可能的实现方式中,所述视频数据的倾斜信息包括下列信息中的至少之一:
偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在所述视频数据的元数据中。
在一种可能的实现方式中,所述视频数据的倾斜信息和所述视频数据封装在同一个码流中。
在一种可能的实现方式中,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在倾斜信息。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
可以理解的是,本发明装置实施例的具体实现方式以及有关特征的示例,可以采用上述方法实施例对应的实现方式,在此不再赘述。
本发明第三方面实施例公开了一种基于流媒体技术的视频数据的处理方法,所述方法包括:
向客户端发送媒体呈现描述;
得到视频数据的倾斜信息,向所述客户端发送所述视频数据的倾斜信息。
在本发明实施例一种可能的实现方式中,所述方法还包括:得到视频数据,向所述客户端发送所述视频数据。
在本发明实施例一种可能的实现方式中,所述方法还包括:接收所述客户端发送的媒体呈现描述获取请求。
在本发明实施例一种可能的实现方式中,所述方法还包括:接收所述客户端发送的视频数据获取请求。
在本发明实施例一种可能的实现方式中,所述得到视频数据的倾斜信息,包括如下可能的实现方式:
接收视频数据的倾斜信息;
或者
由采集设备采集视频数据的倾斜信息。
在一种可能的实现方式中,本发明实施例所述的流媒体技术,是指将一连串的媒体数据压缩后,经过网络分段发送数据,在网络上传输以供客户端播放的一种技术。流媒体传输有顺序流式传输(Progressive Streaming)和实时流式传输(Realtime Streaming)两种方式。流媒体传输协议主要包括超文本传送协议(HyperText Transfer Protocol,HTTP),实时传输协议(Real-time Transport Protocol,RTP)、实时传输控制协议(Real-time Transport Control Protocal,RTCP)、资源预定协议(Resource reserveProtocol)、实时流传输协议(Real Time Streaming Protocol,RTSP),路由选择表维护协议(Routing Table Maintenance Protocol,RMTP)等。
在一种可能的实现方式中,本发明实施例所述的视频数据,可以包括一帧或多帧图像数据,可以是采集设备采集到的原始数据,也可以是对采集的原始数据进行编码后的数据。在一种实现方式中,可以采用ITU H.264或ITU H.265等编码标准对原始采集数据进行编码。在一种实现方式中,视频数据包括一个或多个媒体分段(segment)。在一种示例中,服务器会为同一个视频内容准备多种版本的码流,每个版本的码流称为表示(representation)。表示是在传输格式中的一个或者多个码流的集合和封装,一个表达中包含一个或者多个分段(segment)。不同版本的码流的码率、分辨率等编码参数可以不同,每个码流分割成多个小的文件,每个小文件被称为分段。在客户端请求媒体分段数据的过程中可以在不同的媒体表示之间切换,在一个示例中,服务器为一部电影准备了3个表示,包括rep1,rep2,rep3。其中,rep1是码率为4mbps(每秒兆比特)的高清视频,rep2是码率为2mbps的标清视频,rep3是码率为1mbps的标清视频。每个表示的分段可以首尾相接的存在一个文件中,也可以独立存储为一个个的小文件。Segment可以按照标准ISO/IEC 14496-12中的格式封装(ISO BMFF(Base Media File Format)),也可以是按照ISO/IEC13818-1中的格式封装(MPEG-2TS)。
在一种实现方式中,视频数据也可以根据私有协议封装。可以包括一段时间长度(例如5s)的媒体内容,也可以只包括某一个时间点(例如11点59分10秒)的媒体内容。
在一种可能的实现方式中,本发明实施例所述的媒体呈现描述,可以是一个包括了视频数据的索引信息的文件,该文件的格式既可以是使用的标准协议,如使用超文本标记语言(HyperText Markup Language,HTML)构建的xml文件;也可以是使用其它私有协议构建的文件。
在一种可能的实现方式中,媒体呈现描述可以是基于MPEG-DASH标准得到的文件。2011年11月,MPEG组织批准了DASH标准,DASH标准是基于HTTP协议传输媒体流的技术规范(以下称DASH技术规范);DASH技术规范主要由两大部分组成:媒体呈现描述(英文:MediaPresentation Description,MPD)和媒体文件格式(英文:file format)。在DASH标准中,媒体呈现描述被称为MPD,MPD可以是一个xml的文件,文件中的信息是采用分级方式描述,如图2所示,上一级的信息被下一级完全继承。在该文件中描述了一些媒体元数据,这些元数据可以使得客户端了解服务器中的媒体内容信息,并且可以使用这些信息构造请求segment的http-URL。
在DASH标准中,媒体呈现(英文:media presentation),是呈现媒体内容的结构化数据的集合;媒体呈现描述(英文:media presentation description),一个规范化描述媒体呈现的文件,用于提供流媒体服务;时期(英文:period),一组连续的时期组成整个媒体呈现,时期具有连续和不重叠的特性;表示(英文:representation),封装有一个或多个具有描述性元数据的的媒体内容成分(编码的单独的媒体类型,例如音频、视频等)的结构化的数据集合即表示是传输格式中一个或者多个码流的集合和封装,一个表示中包含一个或者多个分段;自适应集(英文:AdaptationSet),表示同一媒体内容成分的多个可互替换的编码版本的集合,一个自适应集包含一个或者多个表示;子集(英文:subset),一组自适应集合的组合,当播放器播放其中所有自适应集合时,可以获得相应的媒体内容;分段信息,是媒体呈现描述中的HTTP统一资源定位符引用的媒体单元,分段信息描述媒体数据的分段,媒体数据的分段可以存储在一个文件中,也可以单独存储,在一种可能的方式中,MPD中会存储媒体数据的分段。
本发明有关MPEG-DASH技术的相关技术概念可以参考ISO/IEC 23009-1:2014Information technology --Dynamic adaptive streaming over HTTP(DASH)--Part 1:Media presentation description and segment formats,中的有关规定,也可以参考历史标准版本中的相关规定,如ISO/IEC 23009-1:2013或ISO/IEC 23009-1:2012等。
在一种可能的实现方式中,本发明实施例所述的视频数据的倾斜信息,可以包括下列信息中的至少一种:偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
视频数据的倾斜信息主要体现的是采集设备的正向角度与客户端设备呈现时的正向角度之间的差异。
在一种实现方式中,倾斜信息的表现形式如下:
Figure BDA0001198246390000231
在一种实现方式中,倾斜处理方式信息可以包括插值信息和采样信息,插值信息可以包括插值方式,采样信息可以包括采样率等。采集设备中的图像采集传感器和倾斜数据采集的传感器可能是不同的传感器,而且传感器之间的采样频率可能也是不同的。所以如果倾斜数据的采样率和视频数据的采样率不同的话,需要对倾斜数据进行插值计算,将对应某一时刻视频数据的倾斜信息计算出来;插值计算的方式可以是线性差值或者多项式插值等。
在一种示例中,倾斜处理方式信息的示例如下:
Figure BDA0001198246390000232
Figure BDA0001198246390000241
本发明实施例所述的向所述客户端发送所述视频数据的倾斜信息,可以包括如下几种实现方式:
所述视频数据的倾斜信息封装在所述视频数据的元数据中;
或者
所述视频数据的倾斜信息和所述视频数据封装在同一个码流中;
或者
所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中;
或者
所述视频数据的倾斜信息封装在独立于所述视频数据的文件中;
或者
所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
上述实现方式的具体示例可以参考第一方面实施例中对应部分的实施例,在此不再赘述。
本发明第四方面的实施例公开了一种基于流媒体技术的视频数据的处理装置,所述装置包括:
发送模块,用于向客户端发送媒体呈现描述;
倾斜信息获得模块,用于得到视频数据的倾斜信息;
所述发送模块还用于向所述客户端发送所述视频数据的倾斜信息。
在本发明实施例一种可能的实现方式中,所述装置还包括:视频数据获得模块,用于得到视频数据;所述发送模块还用于向所述客户端发送所述视频数据。
在本发明实施例一种可能的实现方式中,所述装置还包括,接收模块,用于接收所述客户端发送的媒体呈现描述获取请求。
在本发明实施例一种可能的实现方式中,所述接收模块还用于接收所述客户端发送的视频数据获取请求。
在本发明实施例一种可能的实现方式中,所述得到视频数据的倾斜信息,包括如下可能的实现方式:
接收视频数据的倾斜信息;
或者
由采集设备采集视频数据的倾斜信息。
本发明实施例所述的向所述客户端发送所述视频数据的倾斜信息,可以包括如下几种实现方式:
所述视频数据的倾斜信息封装在所述视频数据的元数据中;
或者
所述视频数据的倾斜信息和所述视频数据封装在同一个码流中;
或者
所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中;
或者
所述视频数据的倾斜信息封装在独立于所述视频数据的文件中;
或者
所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
上述实现方式的具体示例可以参考上述第三方面实施例和第一方面实施例中对应部分的实施例,在此不再赘述。
可以理解的是,本装置实施例中的可能实现方式或者特征示例可以参考上述第三方面实施例,在此不再赘述。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例的一种偏航角,俯仰角,滚动角的示意图;
图2是本发明实施例的基于MPEG-DASH进行流媒体传输时的媒体展现描述的结构示意图。
图3是本发明实施例的一种基于流媒体技术的视频数据的处理方法的流程示意图。
图4是本发明实施例的一种基于流媒体技术的视频数据的处理方法的实现方式示意图。
图5为本发明实施例的基于流媒体技术的视频数据的处理装置的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
下面结合图3描述本发明实施例的一种基于流媒体技术的视频数据的处理方法,如图3所示,包括:
S301:得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息。
S302:根据所述视频数据的索引信息得到视频数据。
S303:得到所述视频数据的倾斜信息。
S304:根据所述视频数据的倾斜信息处理所述视频数据。
根据本发明实施例的视频数据的处理方法,通过传输倾斜信息,可以使得客户端根据倾斜信息调整视频数据的呈现方式。
可以理解的是,上述步骤顺序只是为了帮助理解本发明实施例而做出的一种举例,而不是对本发明实施例的一种限制,例如步骤S302和S303的顺序可以调换。
下面结合图4描述本发明实施例的一种基于流媒体技术的视频数据的处理方法的实现方式。
如图4所示,采集设备400采集视频数据,本发明实施例中的采集设备400可以是多个摄像头阵列,也可以是分散布置的摄像头;摄像头采集到原始的数据之后,可以将原始的数据发送给服务器401,由服务器进行编码;也可以在采集设备端对视频数据进行编码,然后将编码后的数据发送给服务器401。可以采用现有的视频编码标准对采集到的数据进行编码,如ITU H.262,ITU H.264,ITU H.265等,也可以采用私有的编码协议对采集到的数据进行编码。采集设备400或服务器401可以将多个摄像头采集到的图像拼接成一个应用于VR呈现的图像,并对该图像进行编码和存储。
采集设备400上还包括了传感器(例如陀螺仪等),用于得到视频数据的倾斜信息,一般来说,视频数据的倾斜信息是指在某一时刻采集视频数据时,采集设备的倾斜情况,也就是采集设备的镜头的主光轴的偏航角,俯仰角和滚动角,也称为主光轴的欧拉角或姿态角。在得到了视频数据的倾斜信息之后,将视频数据的倾斜信息发送给服务器401;在一种示例中,服务器401也可以从其它服务器接收视频数据的倾斜信息。倾斜信息可以是对原始采集到的倾斜数据进行数据滤波或者数据下采样后的信息。
在一种实现方式中,也可以在服务器侧直接计算视频数据的倾斜信息,例如服务器401根据存储的采集设备的信息或者实时收到的采集设备的信息得到视频数据的倾斜信息。例如,服务器401存储了采集设备的各个时刻的倾斜信息等,也可以是服务器通过对采集设备的实时状态进行处理得到视频数据的倾斜信息,服务器401可以通过和采集设备400通信交互的方式得到采集设备401的状态信息,也可以通过其它设备进行处理(例如通过其它摄像头对采集设备进行拍照,通过建模的方式得到采集设备的倾斜信息)。本方面实施例主要涉及视频数据的倾斜信息的传输方式,对于服务器如何得到倾斜信息不做具体的限制。
在一种实现方式中,也可以在在编码器侧直接计算视频帧相对于参考视频帧的倾斜数据,该倾斜数据也可以称为旋转数据,相对旋转数据;编码器通过运动搜索可以获得当前VR帧相对于参考视频帧在x,y,z三个轴上的相对偏移信息,或者是由相对旋转数据计算到的差值;对于编码器的运动搜索方法不做具体的限制。
在一种可能的实现方式中,本发明实施例所述的视频数据的倾斜信息,可以包括下列信息中的至少一种:偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
在一种可能的实现方式中,偏航角信息,俯仰角信息,滚动角信息等信息可以是以角度为单位的信息,也可以是以像素为单位的信息,或者是以某个大小的块为单位的数据。
视频数据的倾斜信息主要体现的是采集设备的正向角度与客户端设备呈现时的正向角度之间的差异,或者是预设的某个角度与客户端设备呈现时的正向角度之间的差异,或者是视频帧相对于参考视频帧的旋转角度或者像素或者块。
在一种实现方式中,倾斜信息的表现形式如下:
Figure BDA0001198246390000311
在一种实现方式中,倾斜处理方式信息可以包括插值信息和采样信息,插值信息可以包括插值方式,采样信息可以包括采样率等。采集设备400中的图像采集传感器和倾斜数据采集的传感器可能是不同的传感器,而且传感器之间的采样频率可能也是不同的。如果倾斜数据的采样率和视频数据的采样率不同的话,需要对倾斜数据进行插值计算,将对应某一时刻视频数据的倾斜信息计算出来;插值计算的方式可以是线性差值或者多项式插值等。
在一种示例中,倾斜处理方式信息的示例如下:
Figure BDA0001198246390000312
Figure BDA0001198246390000321
在一种实现方式中,服务器401根据视频数据生成媒体呈现描述。媒体呈现描述包括了视频数据的索引信息。在一种方式中,服务器401可以无需得到客户端402的请求,而将媒体呈现描述发送给客户端402,这种方式主要应用在直播的场景中;在另一种方式中,服务器401要先接收客户端402发送的媒体呈现描述获取请求,再将相应的媒体呈现描述发送给客户端402,这种方式主要应用在直播或点播的场景中。
在一种可能的实现方式中,本发明实施例所述的媒体呈现描述,可以是一个包括了视频数据的索引信息的文件,该文件的格式既可以是使用的标准协议,如使用超文本标记语言(HyperText Markup Language,HTML)构建的xml文件;也可以是使用其它私有协议构建的文件。
在一种可能的实现方式中,媒体呈现描述可以是基于MPEG-DASH标准得到的文件。2011年11月,MPEG组织批准了DASH标准,DASH标准是基于HTTP协议传输媒体流的技术规范(以下称DASH技术规范);DASH技术规范主要由两大部分组成:媒体呈现描述(英文:MediaPresentation Description,MPD)和媒体文件格式(英文:file format)。在DASH标准中,媒体呈现描述被称为MPD,MPD可以是一个xml的文件,文件中的信息是采用分级方式描述,如图2所示,上一级的信息被下一级完全继承。在该文件中描述了一些媒体元数据,这些元数据可以使得客户端了解服务器中的媒体内容信息,并且可以使用这些信息构造请求segment的http-URL。
在DASH标准中,媒体呈现(英文:media presentation),是呈现媒体内容的结构化数据的集合;媒体呈现描述(英文:media presentation description),一个规范化描述媒体呈现的文件,用于提供流媒体服务;时期(英文:period),一组连续的时期组成整个媒体呈现,时期具有连续和不重叠的特性;表示(英文:representation),封装有一个或多个具有描述性元数据的的媒体内容成分(编码的单独的媒体类型,例如音频、视频等)的结构化的数据集合即表示是传输格式中一个或者多个码流的集合和封装,一个表示中包含一个或者多个分段;自适应集(英文:AdaptationSet),表示同一媒体内容成分的多个可互替换的编码版本的集合,一个自适应集包含一个或者多个表示;子集(英文:subset),一组自适应集合的组合,当播放器播放其中所有自适应集合时,可以获得相应的媒体内容;分段信息,是媒体呈现描述中的HTTP统一资源定位符引用的媒体单元,分段信息描述媒体数据的分段,媒体数据的分段可以存储在一个文件中,也可以单独存储,在一种可能的方式中,MPD中会存储媒体数据的分段。
本发明有关MPEG-DASH技术的相关技术概念可以参考ISO/IEC 23009-1:2014Information technology--Dynamic adaptive streaming over HTTP(DASH)--Part 1:Media presentation description and segment formats,中的有关规定,也可以参考历史标准版本中的相关规定,如ISO/IEC 23009-1:2013或ISO/IEC 23009-1:2012等。
在一种可能的实现方式中,本发明实施例所述的视频数据的索引信息,可以是一个具体的存储地址,例如一个超链接;也可以是一个具体的数值;还可以是一个存储地址的模板,例如一个URL模板,此时客户端可以根据URL模板生成视频数据的获取请求,向对应的地址请求视频数据。
在一种可能的实现方式中,客户端402根据所述视频数据的索引信息得到视频数据,可以包括如下的几种实现方式:
媒体呈现描述中包括了视频数据,根据视频数据的索引信息从媒体呈现描述中得到相应的视频数据,此时不需要向服务器再发送额外的视频数据获取请求。
或者
视频数据的索引信息是视频数据对应的存储地址,客户端向该存储地址发送视频数据获取请求,然后接收到相应的视频数据;该请求可以是一个基于HTTP的获取请求。
或者
视频数据的索引信息是视频数据的存储地址模板,客户端根据该模板生成相应的视频数据获取请求,然后接收到相应的视频数据;客户端在根据存储地址模板生成视频数据获取请求时,可以根据媒体呈现描述中包括的信息构造视频数据获取请求,也可以根据客户端的信息构造视频数据获取请求,还可以根据传输网络的信息构造视频获取请求;视频数据获取请求可以是一个基于HTTP的获取请求。
客户端402可以向服务器401请求视频数据;也可以是服务器401或采集设备400将视频数据发送到其它服务器或存储设备上,客户端402向相应的服务器或存储设备请求视频数据。
在一种可能的实现方式中,本发明实施例所述的得到所述视频数据的倾斜信息,可以包括如下的几种实现方式:
1、所述视频数据的倾斜信息和所述视频数据封装在同一个码流中,此时可以通过视频数据的码流得到视频数据的倾斜信息。
在一种实现方式中,倾斜信息可以封装在码流的参数集中,例如封装在在视频参数集(video_parameter_set,VPS),序列参数集(sequence_parameter_set,SPS)或者图像参数集(picture_parameter_set,PPS)中或者新扩展出VR相关的参数集中。
在一个示例中,在PPS中描述倾斜信息如下:
Figure BDA0001198246390000361
在一种可能的方式中,将倾斜信息封装在SEI(Supplemental enhancementinformation)中。
Figure BDA0001198246390000362
上述语法中的position表示一个具体取值,比如190,用以表示SEI的类型值为190的话,SEI NALU(Network Abstract Layer Unit,网络适配层单元)中的数据是倾斜信息。数字190只是个具体的示例,不代表对本发明实施例的具体限制。
position_payload(payloadSize)的描述方法:
Figure BDA0001198246390000371
一种可能的方式中,该数据除了由传感器获得,或者通过传感器数据插值获得,还可以由编码器在做球面运动估计时获得,可以认为是球面帧和参考球面帧的全局旋转信息,该旋转信息可以是倾斜的绝对值(球面帧在采集时的倾斜信息),也可以是相对值(VR视频中当前球面帧相对于参考球面帧的旋转信息),还可以是相对值变化的值,具体不做限定;球面运动估计时可以采用球面图像,也可以采用球面映射后的2D图像,具体不做限定;解码器在获得该信息后,需要采用该值在参考帧中找到参考数据的位置,从未完成视频数据的正确解码。
在一种可能的方式中,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在倾斜信息。例如倾斜信息标识是一个flag,当flag值为1时表示码流中存在倾斜信息;当flag值为0时表示码流中不存在倾斜信息。
在一种可能的方式中,上述的flag也可以描述在视频参数集VPS,SPS或者PPS中,具体语法如下,如果position_extension_flag=1,表示在每一帧的码流数据中包含有当前帧的倾斜数据。
Figure BDA0001198246390000381
2、所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中;
此时客户端需要通过传输倾斜信息的track或者发送倾斜信息获取请求得到视频数据的倾斜信息。在一种实现方式中,媒体呈现描述包括了倾斜信息的索引信息,客户端可以采用与上述得到视频数据类似的方式得到视频数据的倾斜信息。在一种实现方式中,倾斜信息的索引信息也可以通过独立于媒体呈现描述的文件发送到客户端。
在一种示例中,倾斜信息的描述如下:
Figure BDA0001198246390000391
在一种可能的实现方式中,倾斜信息还包括:
Figure BDA0001198246390000392
客户端获取到倾斜数据的track中的描述信息,该描述信息中描述了本track中的倾斜数据的最大倾斜情况,客户端可以根据该最大倾斜情况预先申请出图像处理的最大计算空间;以防在图像处理过程中因为倾斜数据的变化导致内存空间重申请。
在一种可能的实现方式中,媒体呈现描述包括倾斜信息的元数据,客户端可以根据该元数据得到视频数据的倾斜信息。
在一种基于DASH标准的示例中,在MPD中增加的倾斜信息的元数据描述如下:
Figure BDA0001198246390000401
或者在MPD中描述倾斜信息
比如在period层或者adaptation set层增加倾斜信息,具体样例如下:
在adaptation set层增加倾斜信息,表示adaptation set下的视频流内容的倾斜情况。
Figure BDA0001198246390000402
在period层增加倾斜信息,表示period下的视频流内容的倾斜情况:
Figure BDA0001198246390000411
客户端可以通过解析MPD获得倾斜数据表达的元数据,构造倾斜数据获取的URL,获取倾斜数据。可以理解的是,上述示例只是为了帮助本发明技术方案的一种举例,倾斜信息的元数据也可以在表示中或MPD描述子中描述。
3、所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
此时可以通过传输视频数据的track得到视频数据的倾斜信息。
在一个示例中,倾斜信息可以封装在视频数据的元数据中。
在一种可能的实现方式中,所述倾斜信息可以封装在媒体呈现描述中。此时客户端可以通过视频数据的元数据得到倾斜信息。例如可以通过解析媒体呈现描述得到视频数据的倾斜信息。
在一个示例中,描述了将倾斜信息携带在视频track中的样例,在本实施例中,描述倾斜信息的box为Positioninfomationbox;
Figure BDA0001198246390000421
或者:
Figure BDA0001198246390000422
Figure BDA0001198246390000431
在一个实现方式中,倾斜信息描述在视频track的元数据中。客户端行为如下:
1、客户端获得视频track后,先解析该track的元数据,在元数据解析过程中会解析到psib box(即上述示例中的Positioninfomationbox);
2、客户端可以从psib box中获得一个视频图像对应的倾斜信息;
3、客户端根据倾斜信息,对解码后的视频图像进行角度调整或显示调整。
根据本发明实施例的视频数据的处理方法,将采集设备相关的倾斜数据作为元数据进行了封装,该元数据更加有利于客户端的VR视频呈现,客户端可以选择呈现正向的视频内容也可以选择呈现拍摄者的原始拍摄姿态下的内容,同时,还可以利用该数据客户端还可以计算出视频采集的镜头中心区域在图像中的位置,从而客户端可以根据视频内容距离中心位置不同,视频内容的形变和分辨率也不同的原理,来选择观看视频的空间区域。
下面结合附图5描述本发明实施例的一种基于流媒体技术的视频数据的处理装置500,所述装置500包括:接收器501,接收器501用于得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;接收器501还用于根据所述视频数据的索引信息得到视频数据;接收器501还用于得到所述视频数据的倾斜信息;处理器502,所述处理器用于根据所述视频数据的倾斜信息呈现所述视频数据。
在一种可能的实现方式中,所述视频数据的倾斜信息包括下列信息中的至少之一:
偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在所述视频数据的元数据中。
在一种可能的实现方式中,所述视频数据的倾斜信息和所述视频数据封装在同一个码流中。
在一种可能的实现方式中,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在倾斜信息。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在独立于所述视频数据的轨迹(track)中;
或者
所述视频数据的倾斜信息封装在独立于所述视频数据的文件中。
在一种可能的实现方式中,所述视频数据的倾斜信息封装在所述视频数据的轨迹(track)中。
可以理解的是,本发明装置实施例的具体实现方式以及有关特征的示例,可以采用上述方法实施例对应的实现方式,在此不再赘述。
需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。
上述装置和系统内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,上述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,上述的存储介质可为磁碟、光盘、只读存储记忆体(ROM:Read-Only Memory)或随机存储记忆体(RAM:RandomAccess Memory)等。

Claims (8)

1.一种基于流媒体技术的视频数据的处理方法,其特征在于,所述方法包括:
得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;
根据所述视频数据的索引信息得到视频数据;
得到所述视频数据的第一倾斜信息,所述第一倾斜信息包括插值方式和采样率,所述第一倾斜信息封装在码流的参数集或者所述视频数据的元数据中;
在所述第一倾斜信息的采样率与所述视频数据的采样率不同时,对所述第一倾斜信息进行所述插值方式的计算得到某一时刻视频数据的第二倾斜信息;
根据所述某一时刻视频数据的第二倾斜信息处理所述视频数据。
2.根据权利要求1所述的方法,其特征在于,所述视频数据的第一倾斜信息或所述视频数据的第二倾斜信息包括下列信息中的至少之一:
偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
3.根据权利要求1或2所述的方法,其特征在于,所述视频数据的第一倾斜信息和所述视频数据封装在同一个码流中。
4.根据权利要求3所述的方法,其特征在于,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在第一倾斜信息。
5.一种基于流媒体技术的视频数据的处理装置,其特征在于,所述装置包括:
接收器,所述接收器用于得到媒体呈现描述,所述媒体呈现描述包括视频数据的索引信息;
所述接收器还用于根据所述视频数据的索引信息得到视频数据;
所述接收器还用于得到所述视频数据的第一倾斜信息,所述第一倾斜信息包括插值方式和采样率,所述第一倾斜信息封装在码流的参数集或者所述视频数据的元数据中;
处理器,所述处理器用于在所述第一倾斜信息的采样率与所述视频数据的采样率不同时,对所述第一倾斜信息进行所述插值方式的计算得到某一时刻视频数据的第二倾斜信息,根据所述某一时刻视频数据的第二倾斜信息处理所述视频数据。
6.根据权利要求5所述的装置,其特征在于,所述视频数据的第一倾斜信息或所述视频数据的第二倾斜信息包括下列信息中的至少之一:
偏航角信息,俯仰角信息,滚动角信息或倾斜处理方式信息。
7.根据权利要求5或6所述的装置,其特征在于,所述视频数据的第一倾斜信息和所述视频数据封装在同一个码流中。
8.根据权利要求7所述的装置,其特征在于,所述码流中还包括倾斜信息标识,所述倾斜信息标识用于表示码流中是否存在第一倾斜信息。
CN201611252400.7A 2016-12-30 2016-12-30 一种基于流媒体技术的视频数据的处理方法及装置 Active CN108271068B (zh)

Priority Applications (4)

Application Number Priority Date Filing Date Title
CN201611252400.7A CN108271068B (zh) 2016-12-30 2016-12-30 一种基于流媒体技术的视频数据的处理方法及装置
EP17889051.3A EP3550843A1 (en) 2016-12-30 2017-08-21 Streaming media technology-based method and apparatus for processing video data
PCT/CN2017/098291 WO2018120857A1 (zh) 2016-12-30 2017-08-21 一种基于流媒体技术的视频数据的处理方法及装置
US16/450,441 US20190313151A1 (en) 2016-12-30 2019-06-24 Streaming-technology based video data processing method and apparatus

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201611252400.7A CN108271068B (zh) 2016-12-30 2016-12-30 一种基于流媒体技术的视频数据的处理方法及装置

Publications (2)

Publication Number Publication Date
CN108271068A CN108271068A (zh) 2018-07-10
CN108271068B true CN108271068B (zh) 2020-04-03

Family

ID=62710251

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201611252400.7A Active CN108271068B (zh) 2016-12-30 2016-12-30 一种基于流媒体技术的视频数据的处理方法及装置

Country Status (4)

Country Link
US (1) US20190313151A1 (zh)
EP (1) EP3550843A1 (zh)
CN (1) CN108271068B (zh)
WO (1) WO2018120857A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113542907B (zh) * 2020-04-16 2022-09-23 上海交通大学 多媒体数据收发方法、系统、处理器和播放器

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2003516053A (ja) * 1999-11-29 2003-05-07 ソニー株式会社 映像音声信号処理方法及び映像音声信号処理装置
US20060023066A1 (en) * 2004-07-27 2006-02-02 Microsoft Corporation System and Method for Client Services for Interactive Multi-View Video
KR100845892B1 (ko) * 2006-09-27 2008-07-14 삼성전자주식회사 사진 내의 영상 객체를 지리 객체와 매핑하는 방법 및 그시스템
JP5156757B2 (ja) * 2006-12-13 2013-03-06 ジーブイビービー ホールディングス エス.エイ.アール.エル. オーディオ・データおよびビデオ・データを取得および編集するシステムおよび方法
US20090040308A1 (en) * 2007-01-15 2009-02-12 Igor Temovskiy Image orientation correction method and system
US8350916B2 (en) * 2007-12-03 2013-01-08 Panasonic Corporation Image processing device, photographing device, reproducing device, integrated circuit, and image processing method
US20090213270A1 (en) * 2008-02-22 2009-08-27 Ryan Ismert Video indexing and fingerprinting for video enhancement
CN101576926B (zh) * 2009-06-04 2011-01-26 浙江大学 一种基于地理信息系统的监控视频检索方法
US20110175999A1 (en) * 2010-01-15 2011-07-21 Mccormack Kenneth Video system and method for operating same
US9501495B2 (en) * 2010-04-22 2016-11-22 Apple Inc. Location metadata in a media file
ITMI20120491A1 (it) * 2012-03-27 2013-09-28 Videotec Spa Dispositivo di interfaccia per telecamere
JP6116168B2 (ja) * 2012-09-14 2017-04-19 キヤノン株式会社 情報処理装置およびその方法
WO2015008538A1 (ja) * 2013-07-19 2015-01-22 ソニー株式会社 情報処理装置および情報処理方法
JP6327816B2 (ja) * 2013-09-13 2018-05-23 キヤノン株式会社 送信装置、受信装置、送受信システム、送信装置の制御方法、受信装置の制御方法、送受信システムの制御方法、及びプログラム
EP3044965A4 (en) * 2013-09-13 2017-03-01 Voke Inc. Video production sharing apparatus and method
US9807452B2 (en) * 2013-10-07 2017-10-31 Samsung Electronics Co., Ltd. Practical delivery of high quality video using dynamic adaptive hypertext transport protocol (HTTP) streaming (DASH) without using HTTP in a broadcast network
DE102014201271A1 (de) * 2014-01-24 2015-07-30 Robert Bosch Gmbh Verfahren und Steuergerät zum Erkennen einer Veränderung eines relativen Gierwinkels innerhalb eines Stereo-Video-Systems für ein Fahrzeug

Also Published As

Publication number Publication date
WO2018120857A1 (zh) 2018-07-05
US20190313151A1 (en) 2019-10-10
EP3550843A4 (en) 2019-10-09
EP3550843A1 (en) 2019-10-09
CN108271068A (zh) 2018-07-10

Similar Documents

Publication Publication Date Title
EP3466091B1 (en) Method, device, and computer program for improving streaming of virtual reality media content
CN109074678B (zh) 一种信息的处理方法及装置
US10757162B2 (en) Video data processing method and apparatus
CN108282449B (zh) 一种应用于虚拟现实技术的流媒体的传输方法和客户端
US11094130B2 (en) Method, an apparatus and a computer program product for video encoding and video decoding
CN110876051B (zh) 视频数据的处理,传输方法及装置,视频数据的处理系统
CN108965929B (zh) 一种视频信息的呈现方法、呈现视频信息的客户端和装置
EP3973684A1 (en) Immersive media content presentation and interactive 360° video communication
CN112219403B (zh) 沉浸式媒体的渲染视角度量
CN111869221B (zh) Dash对象之间的有效关联
KR100576544B1 (ko) 엠펙-4 객체기술자 정보 및 구조를 이용한 3차원 동영상처리 장치 및 그 방법
WO2019139099A1 (ja) 送信装置、送信方法、受信装置および受信方法
JPWO2019031469A1 (ja) 送信装置、送信方法、受信装置および受信方法
KR20200020913A (ko) 미디어 정보를 처리하는 방법 및 장치
CN110351492B (zh) 一种视频数据处理方法、装置及介质
CN108271068B (zh) 一种基于流媒体技术的视频数据的处理方法及装置
WO2018178510A2 (en) Video streaming
CN108271084B (zh) 一种信息的处理方法及装置
da Costa New Interaction Models for 360º Video
WO2023194648A1 (en) A method, an apparatus and a computer program product for media streaming of immersive media

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant