本申请公开了一种对终端进行流媒体采集自动识别方向并调整的方法及系统,方法包括:采集原始视频流;获取所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2;计算视频图像的旋转角度A3;对原始视频流进行编码,形成视频帧编码数据;在视频帧编码数据的编码头文件中加入视频图像的旋转角度信息,形成带有旋转角度信息的码流;将形成的带有旋转角度信息的码流上传至服务器;客户端从服务器获取码流,对码流进行解码,获得视频图像的旋转角度信息和视频流;对旋转角度信息进行解析,并将解析出的信息及解码出的视频流一同发送至显示渲染模块;显示渲染模块对视频图像进行加速旋转处理,使视频图像正常显示。
【技术实现步骤摘要】
本申请涉及媒体处理
,具体地说,涉及一种对终端进行流媒体采集自动识别方向并调整的方法及系统。
技术介绍
互联网的普及和多媒体技术在互联网商的应用,迫切要求能解决实时传送视频、音频、计算机动画等媒体文件的技术,在这种背景下,产生了流式传输技术及流媒体。通俗的讲,流式传输技术是指在互联网的视音频服务器将声音、图像或动画等媒体文件从服务器向客户端是实时连续传输时,用户不必等待全部媒体文件下载完毕,而只需延迟几秒或十几秒,就可以在用户的计算机或其他播放终端上播放,而文件的其余部分则由用户在后台继续播放,直至播放完毕或用户终止操作。这种技术使用户在播放视音频或动画等媒体的等待时间成百倍的减少,而且不需要太多的缓存。而流媒体是采用流式传输的方式在Internet播放的连续时基媒体,如音频、视频或多媒体文件,比如,商家用一个视频传送服务器把节目当成数据包发出,传送到网络上,用户通过解压设备对这些数据进行解压后,节目就会像发送前的那样显示出来。流媒体的出现极大地方便了人民的工作和生活。流媒体技术广泛地应用于视频直播、视频点播等多个领域,包括源信号采集、压缩编码、流媒体传输、播出等多个环节的处理。现有技术中,利用手机等移动拍摄终端可以方便地采集、上传、直播流媒体文件。在采用手机等移动拍摄终端采集流媒体文件的过程中,由于场景的变化,往往需要采用不同的方向拍摄,例如横屏拍摄、竖屏拍摄等,这就需要将拍摄终端本身的方向进行旋转,从而导致以下问题:由于采集的图像无法旋转,在播放视频文件时,就会出现拍摄的内容在屏幕中旋转的现象,从而无法满足正常观看和播放的质量要求。采用拍摄终端录制MP4视频时,虽然可以在信息头中加入compositionmatrix,在播放视频时可利用此信息进行旋转,但此种方式只能进行第一次方向改变的判断,若视频中途进行一次以上手机拍摄角度的转换时,该方式仍无法解决拍摄内容在屏幕中旋转的问题,因而还是无法满足正常观看和播放的质量要求。
技术实现思路
有鉴于此,本申请所要解决的技术问题是提供了一种的对终端进行流媒体采集自动识别方向并调整的方法及系统,解决现有技术中利用手机等拍摄终端采集视频的过程中,由于手机本身方向发生旋转而导致播放所采集的视频时,视频内的图像也出现旋转的问题,保证视频能够流畅且正常地播放显示。为了解决上述技术问题,本申请有如下技术方案:本专利技术提供一种对终端进行流媒体采集自动识别方向并调整的方法,包括:采集原始视频流;获取所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2;根据所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2计算得到视频图像的旋转角度A3;对所述原始视频流进行编码,形成视频帧编码数据;在所述视频帧编码数据的编码头文件中加入所述视频图像的旋转角度信息,形成带有旋转角度信息的码流;将形成的所述带有旋转角度信息的码流上传至服务器;客户端从所述服务器获取所述码流,对所述码流进行解码,获得所述视频图像的旋转角度信息和视频流;对所述旋转角度信息进行解析,并将解析出的信息及解码出的视频流一同发送至显示渲染模块;所述显示渲染模块对视频图像进行加速旋转处理,使视频图像正常显示。优选地,其中,所述视频图像为所述终端的前置摄像头显示的图像,所述视频图像的旋转角度A3通过以下公式计算得到:A3=(A2-A1+360)%360。优选地,其中,所述视频图像为所述终端的后置摄像头显示的图像,所述视频图像的旋转角度A3通过以下公式计算得到:A3=(A2+A1)%360。优选地,其中所述显示渲染模块对视频图像进行加速旋转处理,使视频图像正常显示,进一步为:所述显示渲染模块利用OpenGLES(OpenGLforEmbeddedSystems)对视频图像在显存内进行加速旋转渲染处理,使视频图像正常显示。本专利技术还提供一种对终端进行流媒体采集自动识别方向并调整的系统,包括:采集模块、传感器模块、计算模块、编码模块、通讯模块、解码模块、解析模块以及显示渲染模块;其中,采集模块,用于采集原始视频流;传感器模块,用于获取所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2;计算模块,用于根据所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2计算得到视频图像的旋转角度A3;编码模块,对所述原始视频流进行编码,形成视频帧编码数据,并在所述视频帧编码数据的编码头文件中加入所述视频图像的旋转角度信息,形成带有旋转角度信息的码流;通讯模块,用于将形成的所述带有旋转角度信息的码流上传至服务器;解码模块,用于将从所述服务器获取的码流进行解码,获得所述视频图像的旋转角度信息和视频流;解析模块,用于对所述旋转角度信息进行解析,并将解析出的信息及解码出的视频流一同发送至显示渲染模块;显示渲染模块,用于对视频图像进行加速旋转,使视频图像正常显示。与现有技术相比,本申请所述的方法和系统,达到了如下效果:第一,在利用拍摄终端进行视频采集的过程中,本专利技术中的传感器模块能够获取到拍摄终端本身及拍摄终端上摄像头相对于终端基准的旋转角度,计算模块能够计算出播放的视频图像的旋转角度,在对视频信息进行上传编码的过程中,本专利技术在编码的头文件中加入视频图像的旋转角度信息,客户端从服务器获取并播放视频的过程中,对上述旋转角度进行解析,并能根据该旋转角度对视频图像进行加速旋转处理,因此在视频采集的过程中随意旋转拍摄角度,都可以在播放端得到无需旋转、显示正常的视频图像。从而,本专利技术能够解决现有技术中利用手机等拍摄终端采集视频的过程中,由于手机本身方向发生旋转而导致播放所采集的视频时,视频内的图像出现旋转,无法正常显示的问题。第二,本专利技术所提供的方法及系统在进行流媒体采集的过程中能够自动识别方向并能够对方向进行调整,使最终播放的图像能够正常显示,而且对终端上摄像头的位置无要求。以手机摄像头为例,无论是通过前置摄像头采集流媒体,还是利用后置摄像头采集,本专利技术均能准确计算出视频图像的旋转角度,根据该角度对图像进行加速旋转处理,均能够得到正常显示的视频图像。第三,本专利技术的显示渲染模块利用OpenGLES对视频图像进行加速旋转处理,无需损耗CPU资源,该过程无资源损本文档来自技高网...
【技术保护点】
一种对终端进行流媒体采集自动识别方向并调整的方法,其特征在于,包括:采集原始视频流;获取所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2;根据所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相对于终端基准的旋转角度A2计算得到视频图像的旋转角度A3;对所述原始视频流进行编码,形成视频帧编码数据;在所述视频帧编码数据的编码头文件中加入所述视频图像的旋转角度信息,形成带有旋转角度信息的码流;将形成的所述带有旋转角度信息的码流上传至服务器;客户端从所述服务器获取所述码流,对所述码流进行解码,获得所述视频图像的旋转角度信息和视频流;对所述旋转角度信息进行解析,并将解析出的信息及解码出的视频流一同发送至显示渲染模块;所述显示渲染模块对视频图像进行加速旋转处理,使视频图像正常显示。
【技术特征摘要】
1.一种对终端进行流媒体采集自动识别方向并调整的方法,其特征在于,
包括:
采集原始视频流;
获取所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相
对于终端基准的旋转角度A2;
根据所述终端相对于终端基准的旋转角度A1以及所述终端上摄像头相
对于终端基准的旋转角度A2计算得到视频图像的旋转角度A3;
对所述原始视频流进行编码,形成视频帧编码数据;
在所述视频帧编码数据的编码头文件中加入所述视频图像的旋转角度信
息,形成带有旋转角度信息的码流;
将形成的所述带有旋转角度信息的码流上传至服务器;
客户端从所述服务器获取所述码流,对所述码流进行解码,获得所述视
频图像的旋转角度信息和视频流;
对所述旋转角度信息进行解析,并将解析出的信息及解码出的视频流一
同发送至显示渲染模块;
所述显示渲染模块对视频图像进行加速旋转处理,使视频图像正常显示。
2.根据权利要求1所述的对终端进行流媒体采集自动识别方向并调整的
方法,其特征在于:
所述视频图像为所述终端的前置摄像头显示的图像,所述视频图像的旋
转角度A3通过以下公式计算得到:
A3=(A2-A1+360)%360。
3.根据权利要求1所述的对终端进行流媒体采集自动识别方向并调整的
方法,其特征在于:
所述视频图像为所述终端的后置摄像头显示的图像,所述视频图像的旋
转角度A3通过以下公式计算得到:
A3=(A2+A1)%360。
4.根据权利要求1~...
【专利技术属性】
技术研发人员:李凤山,冷志勇,高上,卢述奇,
申请(专利权)人:北京暴风科技股份有限公司,
类型:发明
国别省市:北京;11
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。