CN102833585B - 一种泛终端视频传输系统和方法 - Google Patents

一种泛终端视频传输系统和方法 Download PDF

Info

Publication number
CN102833585B
CN102833585B CN201210304145.1A CN201210304145A CN102833585B CN 102833585 B CN102833585 B CN 102833585B CN 201210304145 A CN201210304145 A CN 201210304145A CN 102833585 B CN102833585 B CN 102833585B
Authority
CN
China
Prior art keywords
terminal
server
processing device
logic processing
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.)
Expired - Fee Related
Application number
CN201210304145.1A
Other languages
English (en)
Other versions
CN102833585A (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.)
Beijing cat eye vision technology Co., Ltd.
Original Assignee
BEIJING RONGZHI XUNDA TECHNOLOGY 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 BEIJING RONGZHI XUNDA TECHNOLOGY Co Ltd filed Critical BEIJING RONGZHI XUNDA TECHNOLOGY Co Ltd
Priority to CN201210304145.1A priority Critical patent/CN102833585B/zh
Publication of CN102833585A publication Critical patent/CN102833585A/zh
Application granted granted Critical
Publication of CN102833585B publication Critical patent/CN102833585B/zh
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明公开了一种泛终端视频传输系统,该系统包括服务器和终端,其特征在于,服务器进一步包括:流逻辑处理装置,用于响应终端的媒体获取请求,对视频进行分发处理;动态转码器,用于根据终端类型,自动转换编码格式以适应不同的终端请求;协议适配器,用于根据用户配置,决定底层传输协议,并且用于测试网络功能,并将测试结果反馈给业务逻辑处理装置;业务逻辑处理装置,用于根据接收的网络功能测试结果,如果决定对视频进行跳帧处理,则发出跳帧指令到动态转码器,其中动态转码器进行跳帧处理,处理完之后发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端。

Description

一种泛终端视频传输系统和方法
技术领域
本发明涉及数据传输领域,特别涉及一种泛终端视频传输系统和方法。
背景技术
业界中的各种音视频传输方法,基本都是一种平台对应一种传输协议,例如:要在andriod平台上播放视频,流媒体服务器端先将视频按照rtsp或者http传输协议格式封装,然后分发到该andriod平台,该封装协议无法在IOS,或者pc端上进行传输以及播放。
假设需要在IOS平台播放,流媒体服务器还必须按照IOS支持的传输协议格式进行再次封装。随着平台种类甚至相同平台不同版本的区别,流媒体服务器需要为每种平台做特定的、有针对性的封装,给服务器增加了不少重复封装协议包的工作。
另外,目前在互联网或者移动互联网,音视频传输多为固定码流进行传输,在网络环境恶劣情况下,无法正常播放音视频文件。
发明内容
为了克服现有技术存在的缺陷,本发明提出一种泛终端视频传输系统和方法,能够实现音视频在不同终端上的传输以及播放。其他终端机型包括目前主流的andriod平台、iphone平台、ipad平台、pc端、web/web平台等各种终端。
本发明的泛终端视频传输方法包括步骤:步骤1,终端向服务器发出建立会话请求指令,该指令包含由参数proc表示的终端适用的协议类型,该指令还包含终端的计划码流;步骤2,服务器的协议适配器根据接收到的建立会话请求指令,解析后设置连接属性,协议适配器是终端与服务器的接口所在,提供多种协议与终端连接,协议适配器根据所述proc参数来确定所采用的协议;步骤3,协议适配器适配完终端后将转码需求发送到服务器的动态转码器进行转码处理,动态转码器根据终端类型,自动转换编码格式以适应不同的终端请求,经过转码处理,动态转码器向服务器的流逻辑处理装置发送流数据;步骤4,由流逻辑处理装置输出音视频流到终端,其中在音视频流传输过程中,服务器的业务逻辑处理装置根据接收的网络功能测试结果,如果决定对视频进行跳帧处理,则发出跳帧指令到动态转码器,动态转码器根据跳帧指令进行跳帧处理,处理完之后发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端。
本发明的泛终端视频传输系统,该系统包括服务器和终端,其特征在于,服务器进一步包括:流逻辑处理装置,用于响应终端的媒体获取请求,对视频进行分发处理;动态转码器,用于根据终端类型,自动转换编码格式以适应不同的终端请求;协议适配器,用于根据用户配置,决定底层传输协议,并且用于测试网络功能,并将测试结果反馈给业务逻辑处理装置;业务逻辑处理装置,用于根据接收的网络功能测试结果,如果决定对视频进行跳帧处理,则发出跳帧指令到动态转码器,其中动态转码器进行跳帧处理,处理完之后发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端。
本发明采用统一一种封装格式,使得通过该方式封装的视频数据,可以在各种平台上进行视频播放,无需为每个平台做特定的封装,这样可以大大减少流媒体服务器的工作压力以及简化封装协议管理。
利用本发明的系统和方法,能够实现音视频在不同终端上的传输以及播放,终端机型包括目前主流的andriod平台、iphone平台、ipad平台、pc端、web/web平台等各种终端。
目前在互联网或者移动互联网,音视频传输多为固定码流进行传输,在网络环境恶劣情况下,无法正常播放音视频文件。本发明实现了智能视频跳帧方法,使得媒体传输可以根据网络传输情况,自动跳帧传输码流或者实现跳帧的方式来适应当前网络环境下媒体的传输。
附图说明:
图1为本发明泛终端视频传输系统拓扑结构图;
图2本发明泛终端视频传输系统逻辑架构图;
图3为本发明测试终端的处理流程;
图4为本发明泛终端视频传输方法流程图;
图5为跳帧数据流向示意图;
图6为跳帧处理流程图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本发明进一步详细说明。
利用本发明的系统和方法在进行视频传输过程中,系统会自动探测网络传输状况,将传输状况实时反馈给前端动态编码框架,然后框架会自动调节输出码流大小,以最适合当前网速的码流进行传输,从而保证了视频传输的稳定性、流畅性。
本发明的泛终端视频网络传输方法能够高可靠、可自动调节传输码流、高度适配各种平台终端,可以通过internet以及2.5G、3G等移动网络进行流畅音视频传输。本发明能够实现在不同平台进行视频传输。
本发明的方法从原理上来讲包括两部分,一是视频数据的传递,二是视频数据传递控制功能。本发明的系统能够支持多种底层网络传输协议,例如:udp、tcp等,同时完全支持http协议。
本发明的系统和方法可以根据网络状况,侦测采用合适的方式进行传输,可以采用有状态连接的方式,也可以采用无状态连接的方式进行传输。
图1为本发明整体系统拓扑结构图。该系统包含4部分:视频来源部分,主要有两种来源,直播视频源与点播视频源;流媒体媒体处理装置,负责接收--加工--分发视频处理工作;业务处理服务器,负责整个系统的控制指令发出--解析--执行等工作;终端,负责视频接收--播放工作;
图2为本发明泛终端视频传输系统逻辑架构图。
参照图1和图2,本发明的泛终端视频传输系统包括服务器端和终端。
服务器进一步包括:流逻辑处理装置,用于响应终端的媒体获取请求、对单播、群播、点播、直播做出应答、对视频进行编码、加工(封装)、分发处理;动态转码器,用于根据终端类型,自动转换编码格式以适应不同的终端请求,为流逻辑处理装置实现转码功能;协议适配器,用于根据网络传输状态,决定采用哪种底层传输协议例如udp、rdp、tcp等,并根据用户配置,决定底层传输协议;业务逻辑处理装置,用于负责系统中业务逻辑的处理功能,负责整个系统中控制指令的发出--解析--执行等工作,例如服务器探测终端平台类型指令的发送与结果处理等。
业务逻辑处理装置,在当服务器需要获取终端平台信息时,还用于生成一条测试终端平台指令,发送到终端。终端对请求作出应对,反馈自身平台信息到服务器,具体处理过程包括:业务逻辑处理装置生成测试平台指令,其指令格式如下:
GetForm 10000002 ettp-v1.0[消息体]CR LF;
指令解释:GetForm--表示监测平台命令码;10000002--表示终端id,ettp-v1.0--表示协议版本号;消息体部分表示消息的具体内容;CR LF--指令结束标志;
业务逻辑处理装置将指令发送到协议适配器,协议适配器根据配置(该配置是服务器的业务逻辑处理模块通过GetForm指令读取到终端属性中支持协议格式,例如终端1002支持udp协议传输)进行协议封装。协议适配器将处理后的测平台指令发往终端,该终端可能是pc、手机、pad等;终端adapter模块启动后,实时接收发送数据。当指令从服务器下发后adapter接收到指令后执行获取平台信息处理运算;终端封装测平台应答包返回到协议适配器,消息格式如下:
GetFormACK status-code(状态码)10000002(终端ID)ettp-v1.0(协议版本)[消息体(平台型号信息如)andriod-4.0sp-a]CR LF;
指令解释:GetFormACK--获取平台信息应当指令命令码;status-code--状态码,表示本次执行结果成功还是失败;10000002--表示终端ID识别码;ettp-v1.0--表示协议版本号;消息体填写终端平台信息的具体内容,如:终端的平台信号为andriod-4.0-sp,那么在消息体中填入[andriod-4.0-sp]。协议适配器将应答包上传至业务逻辑处理装置;业务逻辑处理装置接收到应答包后执行如下处理:步骤1:对协议包进行解析;步骤2:记录获取到的终端平台信息。
某些情况下(例如终端启动后),终端会主动向服务器上报自身的平台信息。具体处理流程如下:终端获取到自身平台信息;封装成“报平台”数据包,发送到服务器(协议适配器),消息格式如下:SendForm 10000002(终端ID)ettp-v1.0(协议版本)[消息体(平台型号信息如)andriod-4.0sp-a]CR LF;协议适配器转发报送消息包到业务逻辑处理装置;业务逻辑处理装置收到报送消息包,解析并执行相应操作。
业务逻辑处理装置还具有测试解码的功能,用于获取到终端用户解码能力,具体流程包括:业务逻辑处理装置生成测试解码指令,其具体指令格式如下:
GetDecode 0x1000002(终端id)ettp-v1.0(协议版本)【消息体可以为空】CR LF;
指令解释:GetDecode--指令码,获取目标解码能力;0x1000002--终端ID;ettp-v1.0--协议版本;CR LF--结束标志。
业务逻辑处理装置将消息包发送到协议适配器;协议适配器将协议发送到指定终端;终端收到指令后,查询自身最高解码能力;组成测试解码应答包,沿原路返回给消息适配器,具体消息格式如下:
GetDecodeACK status-code(状态码)10000002(终端ID)ettp-v1.0(协议版本)[消息体decode H264]CR LF。
指令解释:GetDecodeACK--指令码,获取目标解码能力应答;status-code--状态码,0表示成功,1表示失败
协议适配器,具有网络网络测试功能,能自动探测网络速度、自动调整视频码率、自动跳帧等功能,。系统开启网络实时监控功能后,将会对网络速度作出测试。并且实时反馈到业务逻辑处理装置。业务逻辑处理装置,根据这些性能参数,实现对数据传输的智能调控,例如视频自动减码率、丢帧等控制。实现网络测试的具体流程为:协议适配器开启网络测试功能(通过配置文件config.cfg testnet=on/off开关该功能);将测试结果上报到业务逻辑处理装置,具体消息格式如下:
TestNet 0x9001(模块ID)ettp-v1.0(协议版本)[消息体包含upd=20bpstcp=30bps http=50bps]CR LF。
指令解释:TestNet--指令码,网络速度测试指令;0x9001--模块id,系统中的每个模块有全局唯一ID;ettp-v1.0--协议版本号;消息体中udp=20bps表示udp传输速率为20bps,每个协议之间用空格隔开;业务逻辑处理装置接收到上报数据包后,刷新网络状态。
服务器业务逻辑处理模块读取自身配置属性,同样终端也可以读取自身属性,具体指令格式如下:GetEncode 0x1000002(终端id)ettp-v1.0(协议版本)【消息体0-表示服务器,1-表示终端】CR LF,注:0x1000002(终端id)当服务器取自身属性时id=0。服务器或者终端可以通过该指令获取指定流的属性值,例如:流编码格式、码率大小、分辨率大小等。具体指令格式如下:
GetStreamOption 0x1000002(终端id)ettp-v1.0(协议版本)【消息体0-表示服务器,1-表示终端】CR LF,注:终端id--如果服务器执行该指令时,终端id=0。
指令解释:GetStreamOption--命令码,获取流媒体属性;0x1000002--终端id,表示该指令是哪个终端发出的。ettp-v1.0--协议版本号;CR LF命令结束标志。
服务器在与终端建立会话时,终端请求业务服务器建立流媒体通道连接。终端准备就绪后,向流媒体服务器发出建立流媒体通道连接请求,具体消息格式如下:
CreateSS 0x1000002(终端id)ettp-v1.0(协议版本)【消息体】CRLF,
指令解释:CreateSS--指令码,表示创建流;0x1000002--指令发出者终端ID;ettp-v1.0--协议版本号;消息体可以为空,需要传输附件内容时,可以写入在消息体中;CF LF指令结束标志。
此时消息体可以为空,也可以带一些附加条件,例如指定连接方式,link=0为长连接,link=1为短连接,消息格式prot=udp、tct、http,视频编码器vc=h264,音频编码ac=aac,br=100bps消息体部分具体格式如下:【link=1proc=udp code=h264dq=128*320vc=h264ac=aac br=200】。服务器建立会话后,业务逻辑服务器将应答消息下发给终端,具体消息格式如下:CreateSSACK status-code(状态码)90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF,当服务器应答消息体为空时,表示已经满足请求中的所有要求,假设请求中消息体link=1 proc=udp code=h264 dq=128*320vc=h264 ac=aac br=200那么表示服务器已经全部按要求建立了会话或者可以按要求执行,例如br=200(bps)虽然还未开始传输流,但是服务器经过对网络的测试,可以满足200bps码流传输。
在删除会话时,业务逻辑服务器通过下面的指令主动删除会话,或者终端向业务逻辑服务器发出下面的指令请求删除该会话,具体消息格式如下:DelSS 90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF,消息体可以为空,也可以附加条件,如:time=10(单位秒)表示收到该指令10秒后删除会话。在删除会话之后,服务器下发该消息到终端,反馈删除会话结果,该消息格式为:DelSSACK status-code(状态码)90001(会话id)ettp-v1.0(协议版本)【消息体】,status-code(状态码)=0表示删除成功,-1表示删除失败。
终端在接受流数据期间,会每隔一定时间向业务逻辑服务器发送心跳,告诉服务器我还在活动状态中。如果在指定时间内没有收到终端的心跳包,服务器会主动断开与终端的会话。在某些情况下,终端可以告诉服务器,保持一定时间的连接,这种情况下,即使不发送心跳包,服务器也会为终端保留会话连接。终端发送的消息格式如下:HoldSS 90001(会话id)ettp-v1.0(协议版本)【time=100】CR LF,
指令解释:HoldSS--指令码,表示流保持;90001--表示会话id,没个会话具有唯一ID;ettp-v1.0--表示协议版本号;
消息体中time=100表示请求服务器从建立算起,保留100秒的连接时间。
业务逻辑服务器通过下面的指令,反馈holdSS请求结果,具体消息格式如下:HoldSSACK status-code(状态码)90001(会话id)ettp-v1.0(协议版本)【time=100】,tatus-code=0,表示holdss请求成功,其他值都表示失败;当成功时消息体为空表示按请求(假设请求time=100)保持,如有time=90表示只能满足90秒。
终端向服务器发出播放视频请求,具体消息格式如下:Play 90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF。服务器通知终端,开始传输视频流,具体消息格式如下:SendSS 90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF,此时消息体可以为空,也可以带一些附加条件,例如指定连接方式,link=0,为长连接,link=1为短连接,消息格式prot=udp、tct、http,视频编码器vc=h264,音频编码ac=aac,br=100bps消息体部分具体格式如下:【link=1 proc=udp code=h264dq=128*320 vc=h264 ac=aac br=200】。
当终端发现自身解码、网络传输跟不上服务器步骤时,可以自动向服务器发出跳帧请求,具体格式如下:StepFrame 90001(会话id)ettp-v1.0(协议版本)【step=3】CR LF,step=3表示视频流的I-P帧间,最多保留3个p帧,其他p帧可以跳过传输。视频传输按一个关键帧I帧,夹带多个P帧的方式,I帧是一个完整的帧,不允许丢弃,P是非关键帧,可以适当丢弃,不影响播放,但会对视频质量产生一定的影响。视频传输示意图{I....P.....P....P.....P.....P....I....P....P....P...P...P....P....I...}。
SendAVData 9001ettp-v1.0【流数据】
指令解释:SendAVData--指令码,发送流数据,9001--是流会话id,ettp-v1.0--协议版本号,流数据--即为具体数据内容。该指令的意思是,在会话ID=9001的流通道上发送具体流数据。
图4为本发明泛终端视频传输方法流程图。终端登录服务器的过程这里不做描述,以下流程假设终端已经正常登录到该平台,需要进行视频传输。本发明的视频传输方法包括步骤:步骤1,终端向服务器发出建立会话请求指令:CreateSS 0x1000002 ettp-v1.0<link=1proc=udp dq=240*320vc=h264 ac=aac br=200>CR LF,其中0x1000002是终端自己ID,ettp-v1.0是协议版本号,link=1表示要求建立长连接,proc=udp表示优先采用udp协议传输,dq=240*320表示分辨率,vc=h264表示视频编码,ac=aac表示音频编码格式,br=200是表示计划码流200bps。
步骤2,服务器反馈应答包到终端:CreateSSACK status-code(状态码)90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF,状态码:0表示成功;其他表示失败;创建成功后生成一个会话ID 90001;
步骤3,协议适配器接收到建立会话请求指令,解析后设置该连接属性(例如,link=1长连接,proc=udp虚拟连接);协议适配器是终端与服务器的接口所在,提供多种协议与终端连接。具体采用哪种协议格式,通过终端的CreateSS指令的proc参数来确定。
步骤3,协议适配器读取终端协议属性后将转码请求发送到动态转码器。协议适配器与动态转码器是采用tcp长连接方式进行通信的,采用自定义消息包,消息内容包括:格式:vc=h264(视频编码)ac=aac(音频编码)dq=240*320(分辨率)br=200(码流)
SSTrancer*Ts=new SSTrancer(struct SSInfo);
Ts.init();
Ts.Run();
struct SSInfo{
Vc--视频编码格式;
Ac--音频编码格式;
Dq--分辨率;
Br--码流大小;
}
步骤4,动态转码器将该指令转发至流逻辑处理装置进行如下逻辑处理:动态转码器与流逻辑处理装置采用tcp长连接方式进行连接,收到动态转码器的转码指令后初始化一个流实例,以便存储动态转码器转码后的流数据。
struct SSInfo{
Vc--视频编码格式;
Ac--音频编码格式;
Dq--分辨率;
Br--码流大小;
}
SStream*ss=new SStream(struct SSInfo);//新建流实例
ss.Init();//初始化流实例
ss.AcceptData(Ts);//接受数据流Ts转码后,输出到ss流实例
转码服务器向流逻辑处理装置发送流数据;
Ts.SendAV(S Stream  *ss);
步骤5,由流逻辑处理装置输出音视频流到终端。首先由服务器向终端发送开始传输视频指令,该指令为:SendSS 90001(会话id)ettp-v1.0(协议版本)【消息体】CR LF;然后服务器开始传输视频流数据SendAVData 9001ettp-v1.0【流数据】。
步骤6,保持会话(HoldSS)。终端向服务器发送以下消息,使得服务器端不会因为没有收到终端的心跳包而中断视频传输。消息格式为:HoldSS 90001(会话id)ettp-v1.0(协议版本)【time=100】CR LF。
图5为智能跳帧数据流向示意图。图6为图6为本发明泛终端视频传输过程中实现智能跳帧的具体流程图。
跳帧,是指在视频传输过程中,服务器或者终端检测到网络传输质量差,这时系统(可以是服务器也可以是终端)根据设定策略,进行跳帧逻辑处理。
利用本发明的泛终端视频传输方法实现智能跳帧的流程包括步骤(服务器端自动执行跳帧):服务器或者终端在视频传输过程中检测到网络传输受阻,此时终端或者服务器发起跳帧请求;协议适配器开启网络测试功能,实时将测试数据上传到业务逻辑处理装置;业务逻辑处理装置分析网速,决定对视频进行丢帧处理;业务逻辑处理装置发出丢帧指令到动态转码器,消息如下:StepFrame 90001ettp-v1.0【step=3】CR LF,其中90001表示到终端的会话ID,step=3表示2个I帧之间,最多保留3个P帧;动态转码器接受跳帧请求并响应跳帧处理:Ts->pause();//暂停转码,Ts->StepFame(3);//转码器设置跳帧,Ts->Run();//开始转码;在进行完跳帧处理之后,动态转码器发送流数据到流逻辑处理装置:Ts.SendAV(SStream*ss);//ss为创建会话完后,流媒体实例;流逻辑处理装置发送流数据到终端:SendAVData 9001ettp-v1.0【流数据】。
目前在互联网或者移动互联网,音视频传输多为固定码流进行传输,在网络环境恶劣情况下,无法正常播放音视频文件。本发明实现了智能视频跳帧方法,使得媒体传输可以根据网络传输情况,自动跳帧传输码流或者实现跳帧的方式来适应当前网络环境下媒体的传输。
以上所述的具体实施例,对本发明的目的、技术方案和有益效果进行了进一步详细说明,所应理解的是,以上所述仅为本发明的具体实施例而已,并不用于限制本发明,凡在本发明的精神和原则之内,所做的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

Claims (10)

1.一种泛终端视频传输方法,该方法包括步骤:
步骤1,终端向服务器发出建立会话请求指令,该指令包含由参数proc表示的终端适用的协议类型,该指令还包含终端的计划码流;
步骤2,服务器的协议适配器根据接收到的建立会话请求指令,解析后设置连接属性,协议适配器是终端与服务器的接口所在,提供多种协议与终端连接,协议适配器根据所述proc参数来确定所采用的协议;
步骤3,协议适配器适配完终端后将转码需求发送到服务器的动态转码器进行转码处理,动态转码器根据终端类型,自动转换编码格式以适应不同的终端请求,经过转码处理,动态转码器向服务器的流逻辑处理装置发送流数据;
步骤4,由流逻辑处理装置输出音视频流到终端,
其中在音视频流传输过程中,服务器的业务逻辑处理装置根据接收的网络功能测试结果,如果决定对视频进行跳帧处理,则发出跳帧指令到动态转码器,动态转码器根据跳帧指令进行跳帧处理,处理完之后发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端,
其中跳帧处理进一步包括:服务器或者终端在视频传输过程中检测到网络传输受阻,此时终端或者服务器发起跳帧请求,协议适配器开启网络测试功能,实时将测试数据上传到业务逻辑处理装置,业务逻辑处理装置分析网速,决定对视频进行丢帧处理,业务逻辑处理装置发出丢帧指令到动态转码器,动态转码器接受跳帧请求并响应跳帧处理,在进行完跳帧处理之后,动态转码器发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端。
2.根据权利要求1所述的方法,其特征在于,在当服务器需要获取终端平台信息时,业务逻辑处理装置还用于生成一条测试终端平台指令,发送到终端,终端对请求作出应对,反馈自身平台信息到服务器。
3.根据权利要求2所述的方法,其特征在于,业务逻辑处理装置具有测试解码的功能,用于获取终端解码能力。
4.根据权利要求3所述的方法,其特征在于,服务器与终端建立会话时,终端请求服务器建立流媒体通道连接,服务器建立会话后,将应答消息下发给终端,应答消息包括消息体,当服务器应答消息体为空时,表示已经满足请求中的所有要求。
5.根据权利要求4所述的方法,其特征在于,终端在接受流数据期间,会每隔一定时间向服务器发送心跳包,告诉服务器终端还在活动状态中,如果在指定时间内没有收到终端的心跳包,服务器会主动断开与终端的会话。
6.一种泛终端视频传输系统,该系统包括服务器和终端,其特征在于,服务器进一步包括:
流逻辑处理装置,用于响应终端的媒体获取请求,对视频进行分发处理;
动态转码器,用于根据终端类型,自动转换编码格式以适应不同的终端请求;
协议适配器,用于根据用户配置,决定底层传输协议,并且用于测试网络功能,并将测试结果反馈给业务逻辑处理装置;
业务逻辑处理装置,用于根据接收的网络功能测试结果,如果决定对视频进行跳帧处理,则发出跳帧指令到动态转码器,
其中跳帧处理进一步包括:服务器或者终端在视频传输过程中检测到网络传输受阻,此时终端或者服务器发起跳帧请求,协议适配器开启网络测试功能,实时将测试数据上传到业务逻辑处理装置,业务逻辑处理装置分析网速,决定对视频进行丢帧处理,业务逻辑处理装置发出丢帧指令到动态转码器,动态转码器接受跳帧请求并响应跳帧处理,在进行完跳帧处理之后,动态转码器发送流数据到流逻辑处理装置,流逻辑处理装置发送流数据到终端。
7.根据权利要求6所述的系统,其特征在于,在当服务器需要获取终端平台信息时,业务逻辑处理装置还用于生成一条测试终端平台指令,发送到终端,终端对请求作出应对,反馈自身平台信息到服务器。
8.根据权利要求7所述的系统,其特征在于,业务逻辑处理装置具有测试解码的功能,用于获取终端解码能力。
9.根据权利要求8所述的系统,其特征在于,服务器与终端建立会话时,终端请求服务器建立流媒体通道连接,服务器建立会话后,将应答消息下发给终端,应答消息包括消息体,当服务器应答消息体为空时,表示已经满足请求中的所有要求。
10.根据权利要求9所述的系统,其特征在于,终端在接受流数据期间,会每隔一定时间向服务器发送心跳包,告诉服务器终端还在活动状态中,如果在指定时间内没有收到终端的心跳包,服务器会主动断开与终端的会话。
CN201210304145.1A 2012-08-24 2012-08-24 一种泛终端视频传输系统和方法 Expired - Fee Related CN102833585B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201210304145.1A CN102833585B (zh) 2012-08-24 2012-08-24 一种泛终端视频传输系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201210304145.1A CN102833585B (zh) 2012-08-24 2012-08-24 一种泛终端视频传输系统和方法

Publications (2)

Publication Number Publication Date
CN102833585A CN102833585A (zh) 2012-12-19
CN102833585B true CN102833585B (zh) 2015-04-15

Family

ID=47336510

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201210304145.1A Expired - Fee Related CN102833585B (zh) 2012-08-24 2012-08-24 一种泛终端视频传输系统和方法

Country Status (1)

Country Link
CN (1) CN102833585B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103475901A (zh) * 2013-09-05 2013-12-25 乐视网信息技术(北京)股份有限公司 一种统一源的网络视频系统和设计方法
CN104253968A (zh) * 2014-10-10 2014-12-31 中麦通信网络有限公司 移动终端视频通信实现方法及装置
CN107637045B (zh) * 2015-06-16 2020-11-27 苹果公司 使用动态无线接入网信息的自适应视频流送
CN105072507B (zh) * 2015-07-24 2019-01-25 南京信通科技有限责任公司 一种多媒体数据的传输方法及系统
CN108271043B (zh) * 2017-01-04 2020-09-08 武汉斗鱼网络科技有限公司 一种直播码率选择方法及装置
CN109391585B (zh) * 2017-08-03 2021-06-11 杭州海康威视数字技术股份有限公司 视频数据处理方法、装置、终端及计算机可读存储介质
CN109819234A (zh) * 2019-02-01 2019-05-28 广州卓远虚拟现实科技有限公司 一种基于h.265的虚拟现实视频传输与播放方法、系统
CN117692598A (zh) * 2024-02-04 2024-03-12 浙江华创视讯科技有限公司 视频流的发送方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702774A (zh) * 2009-10-23 2010-05-05 深圳中兴力维技术有限公司 应用于移动视频监控系统的移动视频码流定制装置及方法
CN102347947A (zh) * 2011-09-21 2012-02-08 杭州海康威视软件有限公司 一种流媒体适配器、流媒体网络交互的系统及方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101702774A (zh) * 2009-10-23 2010-05-05 深圳中兴力维技术有限公司 应用于移动视频监控系统的移动视频码流定制装置及方法
CN102347947A (zh) * 2011-09-21 2012-02-08 杭州海康威视软件有限公司 一种流媒体适配器、流媒体网络交互的系统及方法

Also Published As

Publication number Publication date
CN102833585A (zh) 2012-12-19

Similar Documents

Publication Publication Date Title
CN102833585B (zh) 一种泛终端视频传输系统和方法
CN104618690B (zh) 一种高清视频实时点播和历史回放的方法及系统
CN104604286B (zh) 用于流式传输和对话服务的能量感知多媒体自适应
TWI568252B (zh) 具有視訊定向協調(cvo)之串流技術
CN108141455B (zh) 用于媒体数据的流式发射的期限信令
CN104796796B (zh) 提高Android平台的HLS流播放器容错的方法
CN112422508A (zh) 一种在浏览器网页中播放视频的方法及系统
US20150256600A1 (en) Systems and methods for media format substitution
CN102347947B (zh) 一种流媒体适配器、流媒体网络交互的系统及方法
CN105900445B (zh) 用于动态自适应流式传输的稳健实况操作的方法和装置
JP2016021763A (ja) ワイヤレスディスプレイデバイスのためのフィードバックチャネル
TW201419792A (zh) 裝置定向能力交換信令以及回應裝置定向的多媒體內容之伺服器調適
JP2009147902A (ja) ユーザ端末にマルチメディアコンテンツとコーデックを提供する適応的マルチメディアシステムおよびその方法
WO2011134260A1 (zh) 一种插播广告的方法、装置及系统
CN101600092A (zh) 网络视频录像的生成和播放方法及系统
WO2016174960A1 (ja) 受信装置、送信装置、およびデータ処理方法
WO2013139146A1 (zh) 一种实现flv视频播放的方法及装置
CN102439935B (zh) 媒体适配的方法和装置
EP2524503B1 (en) Method and apparatus for transmitting video content compressed by codec
CN113938470A (zh) 一种浏览器播放rtsp数据源的方法、装置以及流媒体服务器
CN111327951A (zh) 多媒体数据播放方法、装置、系统及存储介质
US11252471B2 (en) Method for managing the electricity consumption of an electronic device
CA2554987C (en) Storage of advanced video coding (avc) parameter sets in avc file format
CN102164276A (zh) 一种流媒体处理方法及系统
KR20120015037A (ko) 실시간 스트리밍 프로토콜을 기반으로 한 동영상 재생 서비스에서 동영상 재생 지연 보상 시스템 및 방법

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: BEIJING RONGZHI XUNDA TECHNOLOGY CO., LTD.

Free format text: FORMER OWNER: SHENZHEN ZHONGQING HECHUANG MEDIA TECHNOLOGY CO., LTD.

Effective date: 20140715

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 518057 SHENZHEN, GUANGDONG PROVINCE TO: 100005 DONGCHENG, BEIJING

TA01 Transfer of patent application right

Effective date of registration: 20140715

Address after: 100005, Beijing, Dongcheng District Jianguomen No. 5 North Street, Jin Jianguo, No. 618, room 5

Applicant after: BEIJING RONGZHI XUNDA TECHNOLOGY CO., LTD.

Address before: 518057 Guangdong city of Shenzhen province Nanshan District South Road seven No. 001 Shenzhen Digital Technology Park A1 building four floor B1 District

Applicant before: Shenzhen Zhongqing Hechuang Media Technology Co., Ltd.

C14 Grant of patent or utility model
GR01 Patent grant
C56 Change in the name or address of the patentee
CP03 Change of name, title or address

Address after: 102601 Beijing city Daxing District Panggezhuang sweet Road No. 8 Building No. 1 room 118

Patentee after: Beijing cat eye vision technology Co., Ltd.

Address before: 100005, Beijing, Dongcheng District Jianguomen No. 5 North Street, Jin Jianguo, No. 618, room 5

Patentee before: BEIJING RONGZHI XUNDA TECHNOLOGY CO., LTD.

CF01 Termination of patent right due to non-payment of annual fee
CF01 Termination of patent right due to non-payment of annual fee

Granted publication date: 20150415

Termination date: 20190824