视频分享方法及系统的制作方法

文档序号:8322682阅读:304来源:国知局
视频分享方法及系统的制作方法
【技术领域】
[0001]本申请涉及视频分享技术,尤其涉及一种基于实时拍摄的视频分享方法及系统。
[0002]
【背景技术】
[0003]随着网络技术及数据传输技术的发展,越来越多的用户习惯利用手机等终端设备拍摄视频并与网络中的其他用户进行共享。
[0004]现有技术中,终端利用摄像头采集到画面后,直接将每帧画面的数据转换为(jpg,Joint Photographic Experts GROUP)等格式的图片数据,再将图片数据传输到观看端进行播放。
[0005]在对现有技术的研究中发现,用户利用现有技术对视频进行分享时,将画面的数据转换为图片数据后,数据量仍然较大,因此造成网络中数据流量庞大,网络负载较重,传输效率低。在向多个用户进行实时拍摄的影像分享时,视频画面更会产生延迟,实时性差,并且导致输出的画面质量清晰度不高。
[0006]

【发明内容】

[0007]有鉴于此,为了解决上述问题,本申请提供一种视频分享方法及系统,可以将拍摄终端的视频画面传输到观看终端进行实时分享。
[0008]一种视频分享方法,包括:
拍摄终端采集至少一帧原始画面;
拍摄终端对采集到的每帧原始画面进行裁剪,得到分辨率等于预置分辨率的画面;拍摄终端对所述分辨率等于预置分辨率的画面的源数据进行视频编码,得到编码后的源数据;
拍摄终端将所述编码后的源数据进行封包,得到封装数据;
拍摄终端将所述封装数据传输到至少一个观看终端;
观看终端将所述封装数据进行解码并显示。
[0009]一种视频分孚系统,包括:拍摄终端及观看终端;
所述拍摄终端包括:
采集单元,用于采集至少一帧原始画面;
裁剪单元,用于对采集到的每帧原始画面进行裁剪,得到分辨率等于预置分辨率的画面;
编码单元,用于对所述裁剪单元裁剪出的所述分辨率等于预置分辨率的画面的源数据进行编码,得到编码后的源数据;
封包单元,用于将所述编码单元编码后的源数据进行封包,得到封装数据;
传输单元,用于将所述封包单元封包成的封装数据传输到至少一个观看终端; 所述观看终端包括:
解码单元,用于将所述封装数据进行解码;
显示单元,用于将所述解码单元解码后的数据进行显示。
[0010]本发明提供的视频分享方法及系统,采集至少一帧原始画面,对采集到的每帧原始画面进行裁剪,得到分辨率等于预置分辨率的画面,拍摄终端对所述分辨率等于预置分辨率的画面的源数据进行视频编码,将编码后的源数据进行封包,再将得到的封装数据传输到观看终端,观看终端将封装数据进行解码并显示。相比较现有技术中直接将画面数据转换为图片数据的方法,可以在保证传输画面清晰度的前提下,有效降低画面数据量,减轻网络负载,减少传输延迟的现象。
[0011]
【附图说明】
图1为本发明实施一的方法流程图;
图2为本发明实施二的方法流程图;
图3为本发明实施三的系统结构示意图;
图4为本发明实施三的视频分享系统的另一种结构示意图。
【具体实施方式】
[0012]下面通过【具体实施方式】结合附图对本发明作进一步详细说明。
[0013]在本申请实施例中,提供一种视频分享方法及系统,可以将拍摄终端的视频画面传输到观看终端进行实时分享。
[0014]实施例一:
请参考图1,图1为本发明实施一的方法流程图。如图1所示,本发明实施例一提供一种视频分享方法,该方法可包括以下步骤:
101、拍摄终端采集至少一帧原始画面,对采集到的每帧原始画面进行裁剪,得到分辨率等于预置分辨率的画面的源数据。
[0015]由于每帧画面的分辨率不同,根据拍摄终端的硬件性能(如cpu性能、摄像头支持的画面参数如分辨率、旋转角度等)所支持的的预置分辨率,对每帧原始画面进行裁剪,使得画面的分辨率等于预置的分辨率。
[0016]102、拍摄终端对分辨率等于预置分辨率的画面的源数据进行编码,得到编码后的源数据。
[0017]优选的实施例中,可以对分辨率等于预置分辨率的画面的源数据进行H.263视频编码。编码过程可以对画面的源数据进行压缩,减少了后续传输的数据量,从而提高视频传输效率,增强视频分享的实时性。
[0018]103、拍摄终端将编码后的源数据进行封包,得到封装数据。
[0019]优选的,可以将编码后的源数据进行实时传输协议(RTP, Real-time TransportProtocol)打包,转换为RTP数据。
[0020]104、拍摄终端将所述封装数据传输到至少一个观看终端。
[0021]其中,拍摄终端可以将封装数据传输到至少一个观看终端上,实现多用户同时分享同一视频的功能。
[0022]105、观看终端将所述封装数据进行解码并显示。
[0023]拍摄终端向网络中的所有观看终端广播所述拍摄终端的地址信息,观看终端获取到拍摄终端的地址信息后,观看终端与拍摄终端之间可以通过实时流协议(RTSP,RealTime Streaming Protocol)进行连接。然后观看终端向拍摄终端发送命令消息,所述命令消息指示读取拍摄终端上的封装数据。拍摄终端将封装数据传输到观看终端,观看终端对封装数据进行解码并显示。
[0024]本发明实施例一提供的视频分享方法,采集至少一帧原始画面,对采集到的每帧原始画面进行裁剪,得到分辨率等于预置分辨率的画面,拍摄终端对所述分辨率等于预置分辨率的画面的源数据进行视频编码,将编码后的源数据进行封包,再将得到的封装数据传输到观看终端,观看终端将封装数据进行解码并显示。相比较现有技术中直接将画面数据转换为图片数据的方法,本申请可以在保证传输画面清晰度的前提下,有效降低画面数据量,减轻网络负载,减少传输延迟的现象。
[0025]实施例二:
请参考图2,图2为本发明实施二的方法流程图。如图2所示,本发明实施例二提供一种视频分享方法,该方法可包括以下步骤:
201、接收至少一个所述观看终端发送的拍摄指令。
[0026]拍摄终端和观看终端可以工作在远程?呆控t旲式,可以由观看终端向拍摄终端发送拍摄指令。
[0027]优选的,拍摄指令可以是通过RTSP指令进行传输,由观看终端发送到拍摄终端。
[0028]一个实施例中,当拍摄终端仅拍摄一帧画面时,拍摄指令可以是以超文本传输协议(HTTP, Hypertext transfer protocol)请求的形式发送到拍摄终端。
[0029]202、采集至少一帧原始画面。
[0030]拍摄终端在接收到拍摄指令后,调用摄像头等设备进行拍摄,以采集画面。本发明实施例的视频分享方法中,可以采集至少一帧原始画面。
[0031]优选的,在采集至少一帧原始画面之前,拍摄终端可以根据拍摄终端所支持的画面质量,计算采集的单帧原始画面的源数据大小。然后预设用于缓存所述原始画面的源数据的缓存单元,所述缓存单元包括至少一个数组,每个所述数组的空间大小等于所述单帧原始画面的源数据大小。将所述原始画面的源数据缓存到预设的缓存单元中。
[0032]一个实施例中,采集到的至少一帧原始画面可以显示在拍摄终端的预览窗口上。
[0033]203、拍摄终端对每帧所述原始画面进行裁剪,得到分辨率等于预置分辨率的画面。
[0034]从缓存单元中读取原始画面的原始数据,即得到原始画面。然后对每帧原始画面进行处理,得到分辨率等于预置分辨率的画面。
[0035]204、拍摄终端对所述分辨率等于预置分辨率的画面的源数据进行编码,得到编码后的源数据。
[0036]205、拍摄终端将所述编码后的源数据进行封包,得到封装数据。
[0037]206、拍摄终端通过用户数据包协议(UDP, User Datagram Protocol)广播向网络中所有观看终端广播所述拍摄终端的地址信息。
[0038]步骤206可以使网络中的所有观看终端获取到拍摄终端的地址信息。
[0039]207、建立与至少一个观看终端之间的RTSP连接。
[0040]RTSP连接可以支持拍摄终端与多个观看终端之间的连接,实现多用户的实时视频分享。
[0041]208、接收至少一个观看终端发送的的命令消息,所述命令消息触发所述拍摄终端将所述封装数据传输到观看终端。
[0042]观看终端在获取到拍摄终端的地址信息后,向拍摄终端
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1