CN105430453B - 媒体数据采集方法、媒体终端及在线音乐教学系统 - Google Patents

媒体数据采集方法、媒体终端及在线音乐教学系统 Download PDF

Info

Publication number
CN105430453B
CN105430453B CN201510846320.3A CN201510846320A CN105430453B CN 105430453 B CN105430453 B CN 105430453B CN 201510846320 A CN201510846320 A CN 201510846320A CN 105430453 B CN105430453 B CN 105430453B
Authority
CN
China
Prior art keywords
frame
acquisition
video frame
video
code rate
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
CN201510846320.3A
Other languages
English (en)
Other versions
CN105430453A (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.)
Individual
Original Assignee
Individual
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 Individual filed Critical Individual
Priority to CN201510846320.3A priority Critical patent/CN105430453B/zh
Publication of CN105430453A publication Critical patent/CN105430453A/zh
Application granted granted Critical
Publication of CN105430453B publication Critical patent/CN105430453B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

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/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/238Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
    • H04N21/23805Controlling the feeding rate to the network, e.g. by controlling the video pump
    • 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/8547Content authoring involving timestamps for synchronizing content

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Databases & Information Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

本发明公开了媒体数据采集方法、媒体终端及在线音乐教学系统。其中,媒体终端包括视频采集单元、传输单元和控制单元。视频采集单元适于采集图像并生成视频帧。传输单元适于将视频帧传输到媒体服务器。控制单元适于判断传输单元是否发生阻塞,并在发生阻塞时,根据传输单元传输视频帧的码率生成第一采集调整参数。

Description

媒体数据采集方法、媒体终端及在线音乐教学系统
技术领域
本发明涉及通信领域,尤其涉及媒体数据采集方法、媒体终端及在线音乐教学系统。
背景技术
目前,在例如视频会议或网络直播等实时通信方案中,采集终端通常采用固定比特率(Constant bitrate,CBR)或者动态比特率(Variable Bit Rate,VBR)等方式进行多媒体数据的采集编码。例如,采集终端采用固定的比特率进行视频数据采集并编码。又例如,采集终端通过动态比特率方式编码采集到的视频数据。
然而,在具体应用实施通信方案时,所面临的网络环境通常是不稳定的。即,网络会存在网络抖动、网络中断等各种情况。现有的采集终端大多面临实时性差的问题。
发明内容
为此,本发明提供一种新的媒体数据采集编码方案,有效的解决了上面至少一个问题。
根据本发明的一个方面,提供一种媒体终端,包括视频采集单元、传输单元和控制单元。其中,视频采集单元适于采集图像并生成视频帧。传输单元适于将视频帧传输到媒体服务器。控制单元适于判断传输单元是否发生阻塞,并在发生阻塞时,根据传输单元传输视频帧的码率生成第一采集调整参数。
视频采集单元还适于根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输单元传输视频帧的码率相匹配。
根据本发明的又一个方面,提供一种媒体数据采集方法,适于在根据本发明的媒体终端中执行。该方法包括下述步骤。采集图像并生成视频帧。通过传输单元将视频帧编码传输到媒体服务器。判断传输单元是否发生阻塞,并在发生阻塞时,根据传输视频帧的码率生成第一采集调整参数。根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输视频帧的码率相匹配。
根据本发明的又一个方面,提供一种在线音乐系统,包括根据本发明的媒体终端、媒体服务器和媒体播放端。其中,媒体服务器适于实时接收媒体终端的视频帧和音频帧。媒体播放端适于从媒体服务器获取并播放视频帧和音频帧。
根据本发明的媒体数据采集方案,可以在网络带宽较低时,降低视频帧的生成码率,使得生成码率与媒体终端对视频帧的传输码率相匹配。这样,媒体终端通过服务器传输到媒体播放端的视频数据具有很好的实时性。特别是在音乐教学系统中,本发明的采集方案通过对视频生成码率进行自适应调整,从而使得本发明的采集方案能够有充足的网络带宽对声音数据进行及时传输。这样,本发明的技术方案可以极大提高音乐教学的质量。另外,根据本发明采集方案可以调节所生成视频帧的帧率,并且经过调节的视频帧是时间均匀的,从而使得媒体播放端所播放的视频是平滑的,而不会出现画面跳跃现象,极大提高了用户体验度。
附图说明
为了实现上述以及相关目的,本文结合下面的描述和附图来描述某些说明性方面,这些方面指示了可以实践本文所公开的原理的各种方式,并且所有方面及其等效方面旨在落入所要求保护的主题的范围内。通过结合附图阅读下面的详细描述,本公开的上述以及其它目的、特征和优势将变得更加明显。遍及本公开,相同的附图标记通常指代相同的部件或元素。
图1示出了根据本发明一个示例性音乐教学系统100的框图;
图2示出了根据本发明一些实施例的媒体终端200的框图;
图3示出了根据本发明一个实施例的视频采集单元210的框图;
图4示出了根据本发明一个实施例的视频采集单元210的框图;
图5示出了根据本发明的一些媒体数据采集方法500的流程图;以及
图6示出了根据本发明的一些媒体数据采集方法600的流程图。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个示例性音乐教学系统100的框图。如图1所示,音乐教学系统100可以包括多个学生客户端110、服务器120和老师客户端130。在音乐教学系统100中,学生客户端110和老师客户端130通过服务器120进行实时通信,以便进行在线音乐教学。例如,在学生进行演奏时,学生客户端110可以被实现为媒体终端,采集学生演奏相关的诸如视频和音频等媒体数据,并通过服务器120向老师客户端130传输这些媒体数据。老师客户端130可以被实现为媒体播放端,接收并播放媒体数据,以便老师实时了解学生的演奏情况。同时,老师客户端130也可以被实现为媒体终端,采集老师对学生演奏的反馈指导或者教学演示等内容的媒体数据,并通过服务器120向学生客户端传输。学生客户端110可以被实现为媒体播放端,接收并播放来自老师客户端130的媒体数据,以便老师对学生演奏进行实时反馈,或者实时地对学生进行教学演示。总之,学生客户端110和老师客户端130都可以被实现为媒体终端和媒体播放终端。这里,媒体数据例如包括演奏乐器的指法、气息、乐器声音和指导文案等教学内容,但不限于此。
通常,音乐教学系统100面临传输带宽不稳定的问题,例如网络抖动、网络间歇中断等情况。然而,高质量的音乐教学对媒体数据的实时性、同步性和流畅性等方面有较高的要求。本发明针对音乐教学系统的采集媒体数据环节,提出了一种新的媒体终端。下面结合图2对音乐教学系统中的媒体终端进行进一步的示例性说明。当然,媒体终端可以是学生客户端或者老师客户端,为了简化描述,下文中不再区分媒体终端的具体类型。同样,学生客户端110和老师客户端130都可以被实现为媒体播放端。需要说明的是,根据本发明的媒体终端可以被应用在音乐教学系统中,但并不限于此。例如,根据本发明的媒体终端也可以应用在例如视频会议、比赛直播等实时流媒体方案中。
图2示出了根据本发明一些实施例的媒体终端200的框图。这里,计算设备可以被配置为媒体终端200。而计算设备可以实现为小尺寸便携(或者移动)电子设备的一部分,这些电子设备可以是诸如蜂窝电话、个人数字助理(PDA)、个人媒体播放器设备、无线网络浏览设备、个人头戴设备、应用专用设备、或者可以包括上面任何功能的混合设备。计算设备还可以实现为包括桌面计算机和笔记本计算机配置的个人计算机,但不限于此。
如图2所示,媒体终端200包括视频采集单元210、传输单元220、控制单元230和音频采集单元240。可选地,媒体终端200还可以包括图文输入单元250,但并不限于此。
视频采集单元210可以采集图像并生成视频帧。例如,视频采集单元210对学生演奏乐器的场景进行拍摄,以获取视频帧序列。音频采集单元240可以采集声音并生成音频帧。在一个实施例中,图文输入单元250例如包括触摸屏。老师或学生等用户可以在例如音乐演奏的过程中,通过触摸屏上显示的交互界面进行手写输入。图文输入单元250可以接收用户(例如老师或者学生)的文字输入或者涂画式输入,并生成图文消息。这里,文字输入是图文输入单元250根据用户输入所识别的文字信息。而涂画式输入是用户手写输入后,通过例如截屏方式获取的图片信息。所生成的图文消息可以包括文字信息和图片信息中至少一种。
传输单元220可以将媒体数据生成待发送的数据帧,并传输到媒体服务器。媒体播放端从媒体服务器接收并播放媒体数据。根据本发明一个实施例,传输单元220可以将待传输的视频帧和音频帧生成待发送的数据帧。可选地,传输单元220还可以将文字信息、图片信息和媒体终端200的控制信号数据等生成待发送的数据帧,但不限于此。
通常,在例如音乐教学等流媒体系统中,声音的重要性要高于视频等数据。在根据本发明的媒体终端200中,音频采集单元240会按照预定采集参数采集音频帧序列。这里,音频帧的生成码率例如为192kbps。传输单元220可以对音频帧进行实时传输。另外,由于传输单元220在传输数据帧时,网络带宽通常是不稳定的。控制单元230适于根据网速生成调整信息,以便视频采集单元210根据该调整信息对视频帧的生成码率进行调节。具体而言,控制单元230可以对传输单元220进行监测,以判断传输单元是否发生阻塞。在传输单元发生阻塞时,控制单元230计算传输单元对视频帧的传输码率,进而生成第一采集调整参数。这样,视频采集单元210可以根据第一调整参数降低视频帧的生成码率。下面对媒体终端200调节视频生成码率的过程进一步示例性说明。
在根据本发明一个实施例中,传输单元220具有传输缓冲区,并将待发送的数据帧存放在其中。控制单元230通过监测传输缓冲区中待发送数据帧的数量是否超过阈值来判断传输单元220是否发生阻塞。这里,阈值例如为5,但不限于此。需要说明的是,传输单元220发生阻塞时,表明视频采集单元210的生成码率高于传输单元220传输视频帧的码率。如果不对生成码率进行调节,则传输单元220会保持阻塞状态。换言之,传输单元220对数据帧的发送延时会越来越大,并且视频帧会出现较多的丢帧现象。这样,媒体播放端在播放视频时,会出画面延时较大、画面不均匀和画面中出现马赛克等现象。为了避免这种情况的发生,控制单元230在传输单元220发生阻塞时,计算第一预定时长(例如为2秒)内传输单元220传输视频帧对应的待发送数据帧的平均码率,进而生成第一采集调整参数。这里,第一调整参数例如为生成视频帧的目标码率。这样,视频采集单元可以根据第一调整参数对视频帧的生成码率进行调节。下面对视频采集单元210的具体调节过程进行示例性说明。
图3示出了根据本发明一个实施例的视频采集单元210的框图。如图3所示,视频采集单元210包括第一摄像头310、编码单元320和缓冲区330。其中,第一摄像头310适于采集原始图像帧。原始图像帧规格例如为640*480尺寸和25帧/秒。视频采集单元210可以将原始图像帧存放到缓冲区330中。这里,缓冲区例330如为环形缓冲区。另外,视频采集单元210还可以记录原始图像帧的捕获时间为一个时间戳。缓冲区330中的一帧原始图像帧格式例如为:
{dwstamp videodata}
其中,dwstamp为时间戳,videodata为YUV420格式的图像帧。
编码单元320适于对缓冲区330中原始图像帧进行编码。例如,编码单元320可以对原始图像帧进行H.264(由ITU-T视频编码专家组(VCEG)和ISO/IEC动态图像专家组(MPEG)联合组成的联合视频组(JVT,Joint Video Team)提出的高度压缩数字视频编解码器标准)格式的编码。编码单元320的编码参数包括完整画面组(GOP)。GOP的长度例如100帧,即一个图像组具有100帧视频帧。这里,GOP以I帧开始,随后跟随若干P帧。在相邻的P帧间还具有B帧。例如,一个GOP的部分序列为I P B P B P P P P B P。其中,I帧为帧内编码帧,包含了完整图像信息,并且在不参考任何附加信息来重建图像。P帧为前向预测编码帧,由在它前面的P帧或者I帧预测而来。B帧为双向预测的压缩帧。在将图像帧压缩成B帧时,编码单元320根据相邻的前一帧、本帧以及后一帧数据的不同点来压缩本帧。编码单元320的编码参数还可以包括编码帧率和编码尺寸,但不限于此。根据本发明一个实施例,编码单元320执行编码操作的代码示例如下:
Ret=CLDC_Open(width,height,bitrate,mode);
width:视频压缩的宽度
height:视频压缩的高度
bitrate:视频压缩的目标比特率
mode:视频压缩模式控制
//图像压缩引擎初始化
Ret=CLDC_Encode(pBuf,dwbase,m_pVideoBuffer,nEncoderLen);
pBuf:采集的图像数据缓冲
dwbase:原始图像数据的长度
m_pVideoBuffer:图像压缩的缓冲
nEncoderLen:图像压缩后的长度
//图像编码后产生包含SPS和PPS的H264图像码流
Ret=CLDC_Close();
//图像编码引擎关闭
上文对视频采集单元210的工作过程进行了示例性说明。在需要降低视频帧的生成码率时,视频采集单元210可以对第一摄像头310和编码单元320的工作参数进行调节,以便视频帧的生成码率与目标码率一致。例如,视频采集单元210将原始图像帧的分辨率从640*480调整为320*240,并将编码单元320的编码帧率从25帧调整为12帧。这里,编码单元320可以从原始图像帧中选择等间距(图像帧的时间差值相等)的图像帧进行编码。这样,所生成的视频帧在被播放时是均匀平滑的,而不会出现画面跳跃的情况。又例如,编码单元320在降低编码帧率后,会重新开始编码I帧,继而形成新的GOP。当然,视频采集单元210也可以只对第一摄像头310的采集参数和编码单元320的编码参数中一个参数进行调节,例如,在目标码率较高时,视频采集单元210选择对编码参数进行调节。而在目标码率较低时,视频采集单元210同时对采集参数和编码参数进行调节,但不限于此。
图4示出了根据本发明一个实施例的视频采集单元210的框图。如图4所示,视频采集单元210包括第二摄像头410、编码单元420和处理单元430。这里,第二摄像头410适于输出已编码的图像帧。第二摄像头410例如为IPcam。这里,第二摄像头410作为一个独立的视频数据输出单元,可以通过例如WIFI等方式与媒体终端进行连接。视频采集单元210在以默认参数工作时,将第二摄像头410输出的图像帧直接视为视频帧。视频采集单元210在获取到第一采集调整参数后,处理单元430判断第二摄像头410的输出码率是否与第一采集调整参数一致。如果不一致,处理单元430可以将第二摄像头410输出的图像帧解码为原始图像帧。这样,编码单元420可以重新对解码得到的原始图像帧进行编码以生成视频帧。编码单元420通过重新编码的方式可以将视频帧的生成码率调节为与第一调整参数一致。另外,如果第二摄像头410的输出码率与第一采集调整参数一致,处理单元430直接将第二摄像头410输出的图像帧视为待传输的视频帧,而编码单元420不执行编码操作。
上文对视频采集单元210根据第一调整参数调节视频帧的生成码率进行了示例性说明。另外,在视频采集单元210对视频帧的生成码率经过调整后,控制单元230还可以验证调整后的生成码率是否与传输单元220当前传输视频帧的码率相匹配。例如,从视频采集单元210根据第一采集调整参数完成调节开始,在预定时间(例如为3秒)之后,控制单元230继续检测传输单元220是否阻塞。如果传输单元220还处于阻塞状态,则视频采集单元210适于继续进行一次或多次微调操作。在每次微调操作中,视频采集单元210可以将编码帧率降低一帧,例如将编码帧率从12帧调节为11帧。随后,控制单元230在本次微调操作后判断传输单元220是否还处于阻塞状态。如果传输单元220不处于阻塞状态,则结束降低视频帧生成码率的操作。如果传输单元220还处于阻塞状态,则继续执行微调操作,直到传输单元220不再阻塞。需要说明的是,这里之所以对生成码率进行微调操作,是由于网络带宽是动态变化的。根据本发明微调操作是对生成码率进行微调节,以便生成码率与传输单元传输视频帧的码率尽可能的匹配。应注意,根据本发明微调操作并不限于对编码帧率进行调节。根据本发明的实施例也可以通过对视频采集单元210中其他参数进行调节以实现对生成码率的微调,而这些微调方式都应落入本发明的保护范围。
如上所述,在网络带宽较低时,媒体终端200可以降低视频帧的生成码率,使得生成码率与媒体终端200视频帧的传输码率相匹配。这样,媒体终端200通过服务器传输到媒体播放端的媒体数据具有较高的实时性。同时,媒体终端200通过对视频帧的生成帧率进行调节,使得媒体终端传输的视频帧在时间上更加均匀,而不会出现在播放视频帧时出现画面跳跃现象,极大提高了用户体验度。
另外,控制单元230除了可以检测传输单元220是否发生阻塞,还可以检测传输单元220在发送待发送的数据帧时是否具有空闲时间。控制单元230在检测到传输单元220具有空闲时间时,表明当前网络状况较好。控制单元230可以统计第二预定时长(例如为10秒)内,传输单元220对待发送的数据帧的发送流量和空闲时长,并根据这两个值生成第二采集调整参数。视频采集单元210可以根据第二采集调整参数提高视频帧的生成码率。具体而言,在根据本发明一个实施例中,控制单元230首先根据空闲时长和发送流量计算传输单元220可用的剩余带宽,然后根据剩余带宽生成第二采集调整参数。剩余带宽例如可以根据下述公式计算:
其中,addvideo为剩余带宽,data为发送流量,T为第二预定时长,t为空闲时长。
控制单元根据上述公式可以计算剩余带宽值。另外,考虑到网络带宽为波动变化的,第二调整参数例如为addvideo*M。M值例如为0.8。随后,视频采集单元可以根据第二调整参数提高视频帧的生成码率,以充分利用剩余带宽来传输视频数据。这样,媒体终端可以在网络状况较好的情况下,相应提高视频数据的品质。这里,视频采集单元210提高视频帧的生成码率,也是通过调节原始图像帧的采集参数和编码参数中至少一个参数来实现的。具体调节方式请参见前文,这里不再赘述。
图5示出了根据本发明的一些媒体数据采集方法500的流程图。方法500适于在根据本发明的媒体终端中执行。
如图5所示,方法500始于步骤S510。在步骤S510中,采集图像并生成视频帧。根据本发明一个实施例,在步骤S510中,首先通过第一摄像头采集原始图像帧,然后对原始图像帧进行编码并生成视频帧。这里,视频帧还可以包括捕获到该视频帧所对应图像的时间戳。根据本发明又一个实施例,媒体终端可以采用第二摄像头(例如为IPcam)。在步骤S510中,从第二摄像头获取已编码的图像帧。这里,已编码的图像帧可以直接作为视频帧。根据本发明又一个实施例中,在步骤S510中还可以采集声音并生成音频帧,但不限于此。在步骤S510中还可以采集例如文字、图片信息等媒体数据。
随后,方法500进入步骤S520。在步骤S520中,通过传输单元将视频帧传输到媒体服务器。具体地,传输单元具有传输缓冲区。传输单元可以将媒体数据(例如视频帧和音频帧)生成待发送的数据帧,并存放到传输缓冲区中。然后,传输单元依次对传输缓冲区中数据帧传输到媒体服务器。另外,在步骤S520中,还可以通过传输单元将音频帧、文字、图片信息等媒体数据传输到媒体服务器。
方法500还包括步骤S530。在步骤S530中,判断传输单元是否发生阻塞,并在发生阻塞时,根据传输视频帧的码率生成第一采集调整参数。根据本发明一个实施例,在步骤S530中,判断所有待发送的数据帧(例如由视频帧和音频帧等媒体数据生成的数据帧)数量是否超过阈值。如果超过阈值,则确定传输单元发生阻塞。这里,阈值例如为5。在传输单元发生阻塞时,统计传输单元在第一预定时长内所发送的对应视频帧的待发送的数据帧的数量,以计算对视频帧的平均的传输码率。然后,将计算得到的传输码率作为第一采集调整参数。换言之,第一调整参数为生成视频帧的目标码率。
随后,方法500执行步骤S540。在步骤S540中,根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输视频帧的码率相匹配。根据本发明一个实施例,在步骤S540中,降低视频帧的生成码率可以通过调节采集原始图像的采集参数或者调节对原始图像编码时的编码参数来实现。这里,采集参数可以包括采集图像的分辨率和采集图像的帧率。编码参数可以包括编码帧率、画面组(GOP)长度和编码尺寸,但不限于此。根据本发明又一个实施例,在执行步骤S540之前,传输单元所传输的视频帧是从第二摄像头获取的已编码的图像帧。因此,在步骤S540中,首先判断第一采集调整参数是否与第二摄像头的预定生成码率一致。如果不一致,将所获取的已编码的图像帧进行解码,以获取原始图像帧。然后,根据第一调整参数对所获取原始图像帧进行编码,以获取符合目标码率的视频帧。应注意,方法500的具体实施方式已在上文图2的描述中公开,这里不再赘述。
图6示出了根据本发明的一些媒体数据采集方法600的流程图。方法600适于在根据本发明的媒体终端中执行。
如图6所示,方法600始于步骤S610。在步骤S610中,采集图像并生成视频帧。根据本发明一个实施例,在步骤S610中,首先通过第一摄像头采集原始图像帧,然后对原始图像帧进行编码并生成视频帧。这里,视频帧还可以包括捕获到该视频帧所对应图像的时间戳。根据本发明又一个实施例,媒体终端可以采用第二摄像头(例如为IPcam)。在步骤S610中,从第二摄像头获取已编码的图像帧。这里,已编码的图像帧可以直接作为视频帧。根据本发明又一个实施例中,在步骤S610中还可以采集声音并生成音频帧,但不限于此。在步骤S610中还可以采集例如文字、图片信息等媒体数据。
随后,方法600进入步骤S620。在步骤S620中,通过传输单元将视频帧传输到媒体服务器。具体地,传输单元具有传输缓冲区。传输单元可以将媒体数据(例如视频帧和音频帧)生成待发送的数据帧,并存放到传输缓冲区中。然后,传输单元依次对传输缓冲区中数据帧传输到媒体服务器。另外,在步骤S620中,还可以通过传输单元将音频帧、文字、图片信息等媒体数据传输到媒体服务器。
方法600还包括步骤S630。在步骤S630中,判断传输单元是否发生阻塞,并在发生阻塞时,根据传输视频帧的码率生成第一采集调整参数。根据本发明一个实施例,在步骤S630中,判断所有待发送的数据帧(例如由视频帧和音频帧等媒体数据生成的数据帧)数量是否超过阈值。如果超过阈值,则确定传输单元发生阻塞。这里,阈值例如为5。在传输单元发生阻塞时,统计传输单元在第一预定时长内所发送的对应视频帧的待发送的数据帧的数量,以计算对视频帧的平均的传输码率。然后,将计算得到的传输码率作为第一采集调整参数。换言之,第一调整参数为生成视频帧的目标码率。
随后,方法600执行步骤S640。在步骤S640中,根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输视频帧的码率相匹配。根据本发明一个实施例,在步骤S640中,降低视频帧的生成码率可以通过调节采集原始图像的采集参数或者调节对原始图像编码时的编码参数来实现。这里,采集参数可以包括采集图像的分辨率和采集图像的帧率。编码参数可以包括编码帧率、画面组(GOP)长度和编码尺寸,但不限于此。根据本发明又一个实施例,在执行步骤S640之前,传输单元所传输的视频帧是从第二摄像头获取的已编码的图像帧。因此,在步骤S640中,首先判断第一采集调整参数是否与第二摄像头的预定生成码率一致。如果不一致,将所获取的已编码的图像帧进行解码,以获取原始图像帧。然后,根据第一调整参数对所获取原始图像帧进行编码,以获取符合目标码率的视频帧。
另外,方法600还包括步骤S650。在步骤S650中,检测传输单元在发送所述待发送的数据帧时是否具有空闲时间,并计算第二预定时长内、对待发送数据帧的发送流量和空闲时长,并根据发送流量和空闲时长生成第二调整参数。具体地,首先统计第二预定时长内传输的发送流量和空闲时长。然后,根据空闲时长和发送流量计算传输单元的剩余带宽。剩余带宽例如可以根据下述公式计算:
其中,addvideo为剩余带宽,data为发送流量,T为第二预定时长,t为空闲时长。随后,根据剩余带宽生成第二调整参数。这里,第二调整参数为可增加的视频帧生成码率。
随后,方法600进入步骤S660。在步骤S660中,根据第二采集调整参数提高视频帧的生成码率。应注意,方法600具体实施方式已在图2的说明中公开,这里不再赘述。
A9、如A1-A8中任一项所述的媒体终端,其中所述视频采集单元包括:第一摄像头,适于采集原始图像帧;编码单元,适于对原始图像帧进行编码并生成视频帧。A10、如A7所述的媒体终端,其中视频采集单元根据下述方式中至少一种来根据所述第一采集调整参数调节视频帧的生成码率:第一摄像头适于根据第一采集调整参数降低所采集原始图像的分辨率和/或采集帧率;以及编码单元适于通过调节编码尺寸、编码帧率、画面组(GOP)长度中至少一个来降低视频帧的生成码率。A11、如A1-A8中任一项所述的媒体终端,其中所述视频采集单元包括:第二摄像头,适于输出已编码的图像帧;处理单元,适于判断第二摄像头的输出码率是否与所述第一调整采集参数一致,如果不一致,则将已编码的图像帧解码为原始图像帧;以及编码单元,适于根据第一采集调整参数对原始图像帧进行编码并生成视频帧;其中,如果输出码率与所述第一采集调整参数一致,所述处理单元还适于将已编码的图像帧作为所述视频帧。A12、如A2-A11中任一项所述的媒体终端,其中所述发送缓冲区为环形缓冲。A13、如A1-A12中任一项所述的媒体终端,其中所述视频帧包括捕获到该视频帧所对应图像的时间戳。
B15、如B14所述的方法,所述将所述视频帧传输到媒体服务器的步骤包括:根据所述视频帧生成对应该视频帧的待发送的数据帧,并将所生成对应视频帧的待发送的数据帧传输到媒体服务器。B16、如B15所述的方法,还包括:采集声音并生成音频帧;以及根据音频帧生成对应音频帧的待发送的数据帧,并将对应音频帧的待发送的数据帧传输到多媒体服务器。B17、如B15或B16所述的方法,所述确定传输单元发生阻塞的步骤包括:判断所有待发送的数据帧数量是否超过阈值,如果超过阈值,则确定所述传输单元发生阻塞。B18、如B15-B17中任一项所述的方法,其中,所述计算所述传输单元传输所述视频帧的码率的步骤包括:在第一预定时长内,统计传输单元所发送的对应所述视频帧的待发送的数据帧的数量以计算对所述视频帧的平均的传输码率。B19、如B14-B18中任一项所述的方法,所述第一采集调整参数为生成视频帧的目标码率,该目标码率与所述传输单元传输视频帧的码率一致;所述根据第一采集调整参数降低视频帧的生成码率,以便调节后生成码率与目标码率一致的步骤包括下述中至少一个:降低所采集图像的分辨率;降低所采集图像的帧率;降低所编码视频帧的编码帧率;以及降低所编码视频帧的编码尺寸。B20、如B15-B19中任一项所述的方法,还包括:检测所述传输单元在发送所述待发送的数据帧时是否具有空闲时间,并计算第二预定时长内、对待发送数据帧的发送流量和空闲时长,并根据发送流量和空闲时长生成第二调整参数;以及根据第二采集调整参数提高所述视频帧的生成码率。B21、如B20所述的方法,其中,所述根据发送流量和空闲时长生成第二调整参数的步骤包括:根据所述空闲时长和发送流量计算传输单元的剩余带宽;根据剩余带宽生成第二采集调整参数。B22、如B14-B21中任一项所述的方法,其中所述采集图像并生成视频帧的步骤包括:通过第一摄像头采集原始图像帧;
对原始图像帧进行编码并生成视频帧。B23、如B20所述的方法,其中所述根据所述第一采集调整参数调节视频帧的生成码率的步骤包括下述中至少一个:根据第一采集调整参数降低所采集原始图像的分辨率和/或采集帧率;以及调节编码尺寸、编码帧率、画面组(GOP)长度中至少一个来降低视频帧的生成码率。B24、如B14-B21中任一项所述的方法,其中所述采集图像并生成视频帧的步骤包括:从第二摄像头获取已编码的图像帧,将已编码的图像帧作为所述视频帧;以及所述根据第一采集调整参数调节视频帧的生成码率的步骤包括:判断第二摄像头的输出码率是否与所述第一调整采集参数一致,如果不一致,则将已编码的图像帧解码为原始图像帧;和根据第一采集调整参数对原始图像帧进行编码并生成视频帧。B25、如B14-B24所述的方法,其中所述视频帧包括捕获到该视频帧所对应图像的时间戳。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下被实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有时间上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。

Claims (22)

1.一种媒体终端,包括:
视频采集单元,适于采集图像并生成视频帧;
音频采集单元,适于按照预定采集参数采集声音并生成音频帧;
传输单元,适于将所述视频帧和音频帧生成数据帧,并将所述数据帧传输到媒体服务器,且对所述数据帧中的音频帧进行实时传输;
控制单元,适于判断所述传输单元是否发生阻塞,并在发生阻塞时,根据传输单元传输视频帧的码率生成第一采集调整参数;
其中,视频采集单元还适于根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输单元传输视频帧的码率相匹配;
控制单元还适于验证调整后的生成码率是否与传输单元当前传输视频帧的码率相匹配,从而确定传输单元是否阻塞,如果传输单元还处于阻塞状态,则视频采集单元适于继续进行一次或多次微调操作,直到传输单元不再阻塞。
2.如权利要求1所述的媒体终端,其中,所述传输单元包括传输缓冲区,适于存放待发送的数据帧;以及
所述控制单元适于根据下述方式确定传输单元发生阻塞:
判断传输缓冲区中所有待发送的数据帧数量是否超过阈值,如果超过阈值,则确定所述传输单元发生阻塞。
3.如权利要求2所述的媒体终端,其中,所述控制单元根据下述方式计算所述传输单元传输所述视频帧的码率:
在第一预定时长内,统计传输单元所发送的对应所述视频帧的待发送的数据帧的数量以计算对所述视频帧的平均的传输码率。
4.如权利要求1-3中任一项所述的媒体终端,所述第一采集调整参数为指示所述视频采集单元生成视频帧的目标码率,该目标码率与所述传输单元传输视频帧的码率一致;
所述视频采集单元适于根据下述方式中至少一种来根据第一采集调整参数降低视频帧的生成码率,以便调节后生成码率与目标码率一致:
降低所采集图像的分辨率;
降低所采集图像的帧率;
降低所编码视频帧的编码帧率;以及
降低所编码视频帧的编码尺寸。
5.如权利要求2或3所述的媒体终端,其中,所述控制单元还适于:检测所述传输单元在发送所述待发送的数据帧时是否具有空闲时间,并计算第二预定时长内、对待发送数据帧的发送流量和空闲时长,并根据发送流量和空闲时长生成第二采集调整参数;以及
所述视频采集单元还适于根据第二采集调整参数提高所述视频帧的生成码率。
6.如权利要求5所述的媒体终端,其中,所述控制单元根据下述方式以根据发送流量和空闲时长生成第二采集调整参数:
根据所述空闲时长和发送流量计算传输单元的剩余带宽;以及
根据剩余带宽生成第二采集调整参数。
7.如权利要求1-3中任一项所述的媒体终端,其中所述视频采集单元包括:
第一摄像头,适于采集原始图像帧;
编码单元,适于对原始图像帧进行编码并生成视频帧。
8.如权利要求7所述的媒体终端,其中视频采集单元根据下述方式中至少一种来根据所述第一采集调整参数调节视频帧的生成码率:
第一摄像头适于根据第一采集调整参数降低所采集原始图像的分辨率和/或采集帧率;以及
编码单元适于通过调节编码尺寸、编码帧率、画面组(GOP)长度中至少一个来降低视频帧的生成码率。
9.如权利要求1-3中任一项所述的媒体终端,其中所述视频采集单元包括:
第二摄像头,适于输出已编码的图像帧;
处理单元,适于判断第二摄像头的输出码率是否与所述第一采集调整参数一致,如果不一致,则将已编码的图像帧解码为原始图像帧;以及
编码单元,适于根据第一采集调整参数对原始图像帧进行编码并生成视频帧;
其中,如果输出码率与所述第一采集调整参数一致,所述处理单元还适于将已编码的图像帧作为所述视频帧。
10.如权利要求2或3所述的媒体终端,其中所述传输缓冲区为环形缓冲。
11.如权利要求1-3中任一项所述的媒体终端,其中所述视频帧包括捕获到该视频帧所对应图像的时间戳。
12.一种媒体数据采集方法,适于在如权利要求1~11中任一项所述的媒体终端中执行,该方法包括:
采集图像并生成视频帧;
按照预定采集参数采集声音并生成音频帧;
通过传输单元将所述视频帧和音频帧生成数据帧,并将所述数据帧传输到媒体服务器;
判断所述传输单元是否发生阻塞,并在发生阻塞时,根据传输视频帧的码率生成第一采集调整参数;以及
根据该第一采集调整参数降低视频帧的生成码率,以便该生成码率与传输视频帧的码率相匹配。
13.如权利要求12所述的方法,所述判断所述传输单元是否发生阻塞的步骤包括:
判断所有待发送的数据帧数量是否超过阈值,如果超过阈值,则确定所述传输单元发生阻塞。
14.如权利要求12或13所述的方法,其中,还包括,按照如下方式计算所述传输单元传输视频帧的码率:
在第一预定时长内,统计传输单元所发送的对应所述视频帧的待发送的数据帧的数量,以计算对所述视频帧的平均的传输码率,作为传输单元传输视频帧的码率。
15.如权利要求12或13所述的方法,所述第一采集调整参数为生成视频帧的目标码率,该目标码率与所述传输单元传输视频帧的码率一致;
所述根据第一采集调整参数降低视频帧的生成码率的步骤包括下述中至少一个:
降低所采集图像的分辨率;
降低所采集图像的帧率;
降低所编码视频帧的编码帧率;以及
降低所编码视频帧的编码尺寸。
16.如权利要求12或13所述的方法,还包括:
检测所述传输单元在发送待发送的数据帧时是否具有空闲时间,并计算第二预定时长内、对待发送数据帧的发送流量和空闲时长,并根据发送流量和空闲时长生成第二采集调整参数;以及
根据第二采集调整参数提高所述视频帧的生成码率。
17.如权利要求16所述的方法,其中,所述根据发送流量和空闲时长生成第二采集调整参数的步骤包括:
根据所述空闲时长和发送流量计算传输单元的剩余带宽;以及
根据剩余带宽生成第二采集调整参数。
18.如权利要求12或13所述的方法,其中所述采集图像并生成视频帧的步骤包括:
通过第一摄像头采集原始图像帧;
对原始图像帧进行编码并生成视频帧。
19.如权利要求18所述的方法,其中所述根据所述第一采集调整参数降低视频帧的生成码率的步骤包括下述中至少一个:
根据第一采集调整参数降低所采集原始图像的分辨率和/或采集帧率;以及
调节编码尺寸、编码帧率、画面组(GOP)长度中至少一个来降低视频帧的生成码率。
20.如权利要求12或13所述的方法,其中所述采集图像并生成视频帧的步骤包括:从第二摄像头获取已编码的图像帧,将已编码的图像帧作为所述视频帧;以及
所述根据第一采集调整参数降低视频帧的生成码率的步骤包括:
判断第二摄像头的输出码率是否与所述第一采集调整参数一致,如果不一致,则将已编码的图像帧解码为原始图像帧;和
根据第一采集调整参数对原始图像帧进行编码并生成视频帧。
21.如权利要求12或13所述的方法,其中所述视频帧包括捕获到该视频帧所对应图像的时间戳。
22.一种在线音乐教学系统,包括:
如权利要求1-11中任一项所述的媒体终端;
媒体服务器,适于实时接收所述媒体终端的视频帧和音频帧;以及
媒体播放端,适于从媒体服务器获取并播放所述媒体终端的视频帧和音频帧。
CN201510846320.3A 2015-11-27 2015-11-27 媒体数据采集方法、媒体终端及在线音乐教学系统 Active CN105430453B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510846320.3A CN105430453B (zh) 2015-11-27 2015-11-27 媒体数据采集方法、媒体终端及在线音乐教学系统

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510846320.3A CN105430453B (zh) 2015-11-27 2015-11-27 媒体数据采集方法、媒体终端及在线音乐教学系统

Publications (2)

Publication Number Publication Date
CN105430453A CN105430453A (zh) 2016-03-23
CN105430453B true CN105430453B (zh) 2019-04-02

Family

ID=55508337

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510846320.3A Active CN105430453B (zh) 2015-11-27 2015-11-27 媒体数据采集方法、媒体终端及在线音乐教学系统

Country Status (1)

Country Link
CN (1) CN105430453B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107770135A (zh) * 2016-08-19 2018-03-06 范子文 电子乐器的音乐直播方法和装置
CN107610550A (zh) * 2017-09-12 2018-01-19 北京银河润泰科技有限公司 在线课堂的实现方法及装置
CN111083430B (zh) * 2018-10-18 2021-04-23 杭州海康威视系统技术有限公司 一种图像获取方法、装置、电子设备及存储介质
CN110784744A (zh) * 2019-10-31 2020-02-11 重庆唐码传媒有限公司 低延时图像采集方法
CN111354235A (zh) * 2020-04-24 2020-06-30 刘纯 一种钢琴远程教学系统

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1845596A (zh) * 2005-04-06 2006-10-11 上海迪比特实业有限公司 视频传输系统及其自适应调节视频图像的方法
CN101145288A (zh) * 2007-08-03 2008-03-19 上海欧亚钢琴乐器有限公司 基于宽带互联网的钢琴远程教学系统
CN101771492A (zh) * 2008-12-29 2010-07-07 华为技术有限公司 调整流媒体码率的方法和装置
CN103036808A (zh) * 2012-12-13 2013-04-10 四川九洲电器集团有限责任公司 一种去除网络抖动的方法及系统
CN104270649A (zh) * 2014-10-28 2015-01-07 中怡(苏州)科技有限公司 影像编码装置及影像编码方法
CN105025294A (zh) * 2015-08-03 2015-11-04 兴天通讯技术有限公司 一种视频传输控制装置及方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2011115965A1 (en) * 2010-03-15 2011-09-22 Movik Networks Adaptive chunked and content-aware pacing of multi-media delivery over http transport and network controlled bit rate selection

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1845596A (zh) * 2005-04-06 2006-10-11 上海迪比特实业有限公司 视频传输系统及其自适应调节视频图像的方法
CN101145288A (zh) * 2007-08-03 2008-03-19 上海欧亚钢琴乐器有限公司 基于宽带互联网的钢琴远程教学系统
CN101771492A (zh) * 2008-12-29 2010-07-07 华为技术有限公司 调整流媒体码率的方法和装置
CN103036808A (zh) * 2012-12-13 2013-04-10 四川九洲电器集团有限责任公司 一种去除网络抖动的方法及系统
CN104270649A (zh) * 2014-10-28 2015-01-07 中怡(苏州)科技有限公司 影像编码装置及影像编码方法
CN105025294A (zh) * 2015-08-03 2015-11-04 兴天通讯技术有限公司 一种视频传输控制装置及方法

Also Published As

Publication number Publication date
CN105430453A (zh) 2016-03-23

Similar Documents

Publication Publication Date Title
CN105429983B (zh) 采集媒体数据的方法、媒体终端及音乐教学系统
US11711588B2 (en) Video delivery
CN105430453B (zh) 媒体数据采集方法、媒体终端及在线音乐教学系统
CN105472477B (zh) 一种数据传输方法、装置及设备
CN104410918B (zh) 一种直播视频参数调整方法和装置
Staelens et al. Subjective quality assessment of longer duration video sequences delivered over HTTP adaptive streaming to tablet devices
Ray et al. Vantage: optimizing video upload for time-shifted viewing of social live streams
CN105072506B (zh) 教学直播视频的传输方法及系统
CN110381316A (zh) 一种视频传输控制方法、装置、设备及存储介质
CN107925511A (zh) 发送器侧视频电话降级
CN101009824A (zh) 一种音/视频数据的网络传输方法
CN102547375A (zh) 一种快速实现预览h.264编码帧的传输方法
CN101998116A (zh) 一种多视角视频业务的实现方法、系统和设备
CN106303661B (zh) 一种直播客户端实现自适应屏幕旋转的方法及系统
Nguyen et al. A new adaptation approach for viewport-adaptive 360-degree video streaming
KR20150131175A (ko) Http를 통한 동적 적응형 스트리밍에서 미디어 세그먼트들의 손실 존재시의 회복력
Yi et al. A measurement study of YouTube 360 live video streaming
CN105430510A (zh) 一种视频点播方法、网关、智能终端及视频点播系统
Addu et al. Effect of Codec Performance on Video QoE for videos encoded with Xvid, H. 264 and WebM/VP8
Rezaei et al. Joint video coding and statistical multiplexing for broadcasting over DVB-H channels
CN105376595A (zh) 一种视频混合编码系统和方法
US11910038B2 (en) Crop-based compression of videos
KR100747664B1 (ko) 대역폭에 적응적인 멀티미디어 데이터 처리방법 및 이를적용한 호스트장치
KR20130122117A (ko) 실시간 동영상 전송 방법 및 장치
Uppu et al. QoE of video streaming over LTE network

Legal Events

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