CN107333164B - 一种图像数据处理方法及装置 - Google Patents

一种图像数据处理方法及装置 Download PDF

Info

Publication number
CN107333164B
CN107333164B CN201610282120.4A CN201610282120A CN107333164B CN 107333164 B CN107333164 B CN 107333164B CN 201610282120 A CN201610282120 A CN 201610282120A CN 107333164 B CN107333164 B CN 107333164B
Authority
CN
China
Prior art keywords
image data
frame
video buffer
image
buffer area
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
CN201610282120.4A
Other languages
English (en)
Other versions
CN107333164A (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 Xueersi Education Technology Co ltd
Original Assignee
Beijing Xueersi Education 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 Xueersi Education Technology Co ltd filed Critical Beijing Xueersi Education Technology Co ltd
Priority to CN201610282120.4A priority Critical patent/CN107333164B/zh
Publication of CN107333164A publication Critical patent/CN107333164A/zh
Application granted granted Critical
Publication of CN107333164B publication Critical patent/CN107333164B/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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/231Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion
    • H04N21/23106Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers, prioritizing data for deletion involving caching operations
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09BEDUCATIONAL OR DEMONSTRATION APPLIANCES; APPLIANCES FOR TEACHING, OR COMMUNICATING WITH, THE BLIND, DEAF OR MUTE; MODELS; PLANETARIA; GLOBES; MAPS; DIAGRAMS
    • G09B5/00Electrically-operated educational appliances
    • G09B5/08Electrically-operated educational appliances providing for individual presentation of information to a plurality of student stations
    • 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/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • H04N21/4331Caching operations, e.g. of an advertisement for later insertion during playback
    • 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/44016Processing 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 splicing one content stream with another content stream, e.g. for substituting a video clip

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • Physics & Mathematics (AREA)
  • Educational Administration (AREA)
  • Educational Technology (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Television Signal Processing For Recording (AREA)
  • Controls And Circuits For Display Device (AREA)

Abstract

本发明实施例提供一种图像数据处理方法,所述方法包括:采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;将所述第二图像数据存储在第一视频缓冲区中;以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。本发明实施例可以对两种或两种以上不同帧率的图像数据进行处理,获得更好的播放效果。

Description

一种图像数据处理方法及装置
技术领域
本发明实施例涉及图像处理技术领域,具体涉及一种图像数据处理方法及装置。
背景技术
随着计算机图像技术和网络技术的发展,通过网络进行在线直播授课成为一种新的趋势。在现有技术中,通常是在教师端录制教师授课的图像,将所述图像通过网络传输给学生客户端,由学生客户端的播放器播放所述图像便于学生观看。现有技术中,通常只能够播放一种视频源的图像。若要播放两种或两种以上不同视频源的图像,由于不同视频源的图像帧率不同,会造成两个图像播放时一个图像有数据,一个图像没有数据,播放效果不好,给用户造成不好的体验。
发明内容
本发明实施例提供了一种图像数据处理方法及装置,可以对两种或两种以上不同帧率的图像数据进行处理,获得更好的播放效果。
为此,本发明实施例提供如下技术方案:
一方面,本发明实施例提供了一种图像数据处理方法,所述方法包括:
采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;
将所述第二图像数据存储在第一视频缓冲区中;
以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;
合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
进一步地,所述从所述第一视频缓冲区中获取一帧第二图像数据包括:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
进一步地,所述方法还包括:
当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值;或者,
当经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。
进一步地,所述图像数据还包括第三图像数据,所述方法还包括:
将所述第三图像数据存储在第二视频缓冲区中;
以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据;
所述合并获取的所述第一图像数据和所述第二图像数据,生成整合图像包括:
合并获得的所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。
进一步地,所述获取所述第一图像数据包括:
从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;
合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。
另一方面,本发明实施例提供了一种图像数据处理装置,所述装置包括:
采集单元,用于采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;
第一存储单元,用于将所述第二图像数据存储在第一视频缓冲区中;
第一获取单元,用于以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;
合并单元,用于合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
进一步地,所述第一获取单元具体用于:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
本发明实施例提供的图像数据处理方法及装置,当处理两种或两种以上视频源不同、帧率不同的图像数据时,以第一图像数据的帧率作为基准帧率,将第二图像数据存储在视频缓冲区中进行缓冲,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据,从而使得在每次取帧合并图像时,两种图像数据均能够取到图像,从而获得更好的图像播放效果。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的图像数据处理方法流程图;
图2为本发明一实施例提供的一具体应用场景示意图;
图3为本发明另一实施例提供的图像数据处理装置示意图;
图4为本发明又一实施例示出的一种用于图像数据处理的装置的框图。
具体实施方式
本发明实施例提供了一种图像数据处理方法及装置,可以对两种或两种以上不同帧率的图像数据进行处理,获得更好的播放效果。
为了使本技术领域的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
参见图1,为图1为本发明一实施例提供的图像数据处理方法流程图。如图1所示,所述方法可以包括:
S101,采集图像数据。
其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同。
需要说明的是,本发明实施例具体实现时,可以对两种或两种以上帧率不同的数据进行合并处理。下面以两种为例进行说明,本领域技术人员可以理解的是,两种以上帧率不同的数据也可以参照这一实施例提供的方法而实现。其中,帧率用于描述每秒采集或者显示的图像数据的帧数。
举例说明,第一图像数据来自第一视频源,其帧率为第一帧率。第二图像数据来自第二视频源,其帧率为第二帧率。第一视频源和第二视频源不同。第一帧率可以大于第二帧率,也可以小于第二帧率。当第一图像数据的帧率大于第二图像数据的帧率,即第一帧率大于第二帧率时,本发明实施例以第一图像数据的帧率作为基准帧率,对第二图像数据进行补帧处理。当第一图像数据的帧率小于第二图像数据的帧率,即第一帧率小于第二帧率时,本发明实施例以第一图像数据的帧率作为基准帧率,对第二图像数据进行减帧处理。例如,如图2所示,为本发明一实施例提供的一具体应用场景示意图。在图2中,包括3个显示区域,第一显示区域为内容显示区,大小为800*600像素;第二显示区域为老师视频录制头像,大小为256*192像素;第三显示区域为文字互动部分,大小为256*408像素。本发明实施例中的第一图像数据例如可以是第一显示区域内的数据,第二图像数据例如可以是第二显示区域中的数据。其中,采集第二图像数据为从摄像头中采集,其帧率可以是5帧/s。采集第一图像数据的帧率可以是12帧/s。这里,采集第一图像数据和第二图像数据的帧率不同。设置为不同的帧率可以有效的降低视频码率,提高数据处理速度。
S102,将所述第二图像数据存储在第一视频缓冲区中。
为了保证在获取图像时,第一图像数据和第二图像数据均有图像,本发明实施例中,将所述第二图像数据存储在第一视频缓冲区中进行缓冲。需要说明的是,缓冲(Buffer)与缓存(Cache)不同。本发明实施例设置视频缓冲区存储第二图像数据,是为了对第二图像数据进行补帧或者减帧处理。当第二图像数据的帧率小于第一图像数据的帧率时,即利用视频缓冲区对第二图像数据进行补帧处理;当第二图像数据的帧率大于第一图像数据的帧率时,即利用视频缓冲区对第二图像数据进行减帧处理。第一视频缓冲区中缓冲的第二图像数据的帧数可以预先设置,例如3帧或者5帧,在此不进行限定,第一视频缓冲区中的第二图像数据应当至少保留一帧。
S103,以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据。
需要说明的是,较佳地,在第一视频缓冲区中存储有至少一帧第二图像数据时,才执行获取第一图像数据和第二图像数据的操作。举例说明,第一图像数据的帧率是12帧/s,以第一图像数据的帧率作为基准帧率获取第一图像数据和第二图像数据,即每秒获取12帧第一图像数据和12帧第二图像数据。由于预先将第二图像数据存储在第一视频缓冲区中进行缓冲,所述第一视频缓冲区中存储有至少一帧第二图像数据,因此在每次取图像数据时,均能够取到第二图像数据。
具体实现时,所述从所述第一视频缓冲区中获取一帧第二图像数据包括:判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。举例说明,若第一视频缓冲区中的第二图像数据的数量大于1帧,则按照存储图像的先后顺序从前往后取出最先存储的一帧图像。若第一视频缓冲区中的第二图像的数据为一帧,则复制所述第二图像数据,将复制的图像取出,在缓冲区中至少保留一帧所述第二图像,直到缓冲区中的图像大于一帧,才会按照存储图像帧的先后顺序进行取出图像帧。较佳地,本发明提供的方法还可以包括实时或者非实时删除第一视频缓冲区中的图像的步骤。例如,若当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值。需要说明的是,在缓冲区中可以采取先进先出的原则,当第一缓冲区的图像大于预设阈值时,就删除最先保存的那一帧。这种判断可以是实时的,也可以是预设一段时间经过后,就删除若干帧。例如,当判断经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。其中,预设时间可以根据需要设定,例如2S、3S等。删除的第二图像数据的数量可以是预设值,例如每次删除固定数量的第二图像数据,只要第一缓冲区中的图像数据的数量不小于1帧即可。当然,删除的第二图像数据的数量也可以根据具体的情况进行调整,例如使得删除后的第一缓冲区中的第二图像数据的数量不大于预设阈值且不小于1帧。如此动态调整视频缓冲区中的图像帧,可以保证在每次取帧组图时都有图像,从而满足了图像数据合成的实时性要求,并改善了图像播放显示的效果。
进一步地,本发明实施例中,所述获取所述第一图像数据包括:从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。需要说明的是,本发明实施例提供的方法可以应用于第一电子设备中,所述第一电子设备具有显示单元,所述显示单元上显示图像数据处理装置的第一显示区域。在所述第一显示区域当前内容显示页面中,可以包括一个或多个图层,每个图层单独承载与其对应的显示数据。所述显示数据包括但不限于图形、文本、动画或者视频等。举例说明,在所述第一显示区域内,可以显示第一用户授课所用的演示文稿Powerpoint(以下简称PPT),所述PPT以一个图层单独承载。较佳地,设置所述PPT所在的图层为所有图层的最底层,作为背景层呈现。又如,在所述第一显示区域内,可以显示多媒体元素,例如动画、视频、图片等。当所述显示数据包括视频时,可以设置所述视频所在的图层为所有图层的最顶层。这时,视频所在的图层以浮层的方式显示。再如,在所述第一显示区域内,还可以显示各种图形,例如物理图形、数学图形。举例说明,第一用户可以在PPT上添加注释、标记、图画等,上述任意显示数据均可以由一个单独的图层承载。其中,第一显示区域内的各图层以叠加的方式显示。具体地,从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据可以是:获取所述当前内容显示页面的标识,从内存中读取与所述标识对应的各图层的显示数据。较佳地,图像处理装置定时从内存中获取第一显示区域内当前内容显示页面的各图层的显示数据。具体实现时,可以设置定时器,以固定的速率或者频率去内存中读取数据。读取数据时,首先获取第一显示区域内当前内容显示页面的标识,从内存中读取与所述当前内容显示页面的标识对应的各图层的显示数据。在内存中,每一内容显示页面均有专门的存储位置用于存储显示数据,内容显示页面、内容显示页面的页面标识与显示数据具有一一对应关系。根据内容页面的页面标识即可以从内存中获取相应的显示数据。由于本发明实施例是直接从内存中获取显示数据,因此不会将其他窗口或者组件的数据抓取出来,因此也避免了其他窗口或者组件的遮挡带来的显示效果不好的问题。具体实现时,可以定时获取所述显示数据,例如50ms取一次数据,每秒取12帧图像。当然,此处仅为示例性说明,还可以设置其他数值。在一些实施方式中,从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据包括:从内存直接获取显示属性为显示的内容显示页面的各图层的显示数据。在获取与各图层对应的显示数据后,即可以将各图层合并成一张图像。例如,可以根据所述各图层的显示数据的创建顺序,合并所述各图层对应的显示数据,生成第一图像。例如,按照图层的显示数据的创建顺序,把第一显示区域内的各图层对应的显示数据渲染成一幅图像。这是因为,在合并图层时,需要根据图层间的上下位置关系,例如哪一图层位于底层,哪一图层位于顶层,来合并各图层。举例说明,可以按照图层的标号表明的各图层的创建顺序,依次合并各图层的显示数据。在合并各图层的显示数据时,若当前图层如果是透明部分,就透明叠加;若当前图层不是透明的,就覆盖叠加。
S104,合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
具体实现时,将第一图像数据和第二图像数据合并成一张图像。这里是通过拼接的方式将两个图形数据整合成一张图像的。例如,先生成一幅空图,将所述空图划分为两个显示区域,例如第一图像显示区域和第二图像显示区域,将第一图像数据放置在第一显示区域内,将第二图像数据放置在第二显示区域内,即可以将两帧图像数据合并成一帧图像。
进一步地,在某些实施方式中,本发明实施例采集的所述图像数据还包括第三图像数据,所述方法还包括:将所述第三图像数据存储在第二视频缓冲区中;以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据。则所述合并获取的所述第一图像数据和所述第二图像数据,生成整合图像包括:合并获得所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。举例说明,以图2为例,例如第一显示区域为内容显示区,用于呈现PPT、多媒体课件等,第二显示区域为老师视频录制头像显示区域,第三显示区域为师生聊天文字显示区域。先获取第一显示区域内各图层对应的显示数据,利用所述显示数据,合并所述第一显示区域内的各图层,获取合并后的第一图像数据。获取一帧第一图像数据,从第一视频缓冲区中获取一帧用户的视频头像(第二图像数据)以及从第二视频缓冲区中获取一帧文字互动部分的图像(第三图像数据)。生成一副空图(大小例如可以是1056*600像素),所述空图包括第一显示区域、第二显示区域、第三显示区域,将第一图像数据配置在所述第一显示区域内、用户的视频图像(第二图像数据)配置在第二显示区域内、将文字互动部分的图像(第三图像数据)配置在第三显示区域内,由此即可以拼接成一幅完整的图像。效果图如图2所示。举例说明,第一显示区域可以是内容显示区,大小为800*600像素;第二显示区域为老师视频录制头像,大小为256*192像素;第三显示区域为文字互动部分,大小为256*408像素。需要说明的是,以上仅为示例性的说明,不视为对本发明的限制。
更进一步地,本发明实施例提供的方法还包括:利用所述整合图像以及音频数据生成流媒体数据,发送所述流媒体数据。具体实现时,将所述整合图像以及相应的音频数据一起输入编码器进行编码处理,生成流媒体数据。具体编码处理的方式可以采用现有技术提供的方法。
在另外一些实施方式中,所述音频数据包括第一音频数据和第二音频数据,所述第一音频数据和所述第二音频数据的音频源不同,所述方法还包括:对所述第一音频数据和所述第二音频数据进行混音处理。举例说明,第一音频数据可以是第一用户(例如教师)授课时的声音,其音频源为麦克风。第二音频数据可以是播放的其他视频文件。本发明实施例可以通过解码其他视频文件,并截获所述视频文件的声音,获得所述声音的原始数据。这样,将第一音频数据和第二音频数据进行混音处理,形成新的音频数据。更进一步的,在解码其他视频文件的音频后,一路音频通过扬声器播放出来,一路音频则发送到混音设备中,与通过麦克风采集的老师音频一起通过混音器进行混音处理,然后编码、压缩,发送至第二电子设备。混音处理的具体流程为:对第一音频数据A和所述第二音频数据B进行重采样处理,然后对第一音频数据的采样数据、第二音频数据的采样数据进行加权处理,得到混合后的音频数据C。其中,C=A*X1+B*X2。X1,X2是加权系数,大小可以根据需要设置。通过调整加权系数X1,X2的大小,可以获得不同的播放效果。
而后,对整合图像和音频数据编码生成流媒体数据后,即可以发送给相应的设备。
在本发明实施例中,当处理两种或两种以上视频源不同、帧率不同的图像数据时,以第一图像数据的帧率作为基准帧率,将第二图像数据存储在视频缓冲区中进行缓冲,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据,从而使得在每次取帧合并图像时,两种图像数据均能够取到图像,从而获得更好的图像播放效果。
参见图3为本发明另一实施例提供的图像数据处理装置示意图。
一种图像数据处理装置300,所述装置包括:
采集单元301,用于采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同。
第一存储单元302,用于将所述第二图像数据存储在第一视频缓冲区中。
第一获取单元303,用于以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据。
合并单元304,用于合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
进一步地,第一获取单元具体用于:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
进一步地,所述装置还包括:
第一删除单元,用于当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值;或者,
第二删除单元,用于当经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。
进一步地,所述采集单元采集的所述图像数据还包括第三图像数据,所述装置还包括:
第二存储单元,用于将所述第三图像数据存储在第二视频缓冲区中;
第二获取单元,用于以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据;
所述合并单元具体用于;
合并获得所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。
进一步地,所述第一获取单元具体用于:
从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。
进一步地,所述装置还包括:
发送单元,用于利用所述整合图像以及音频数据生成流媒体数据,发送所述流媒体数据。
进一步地,所述装置还包括:
混音单元,当所述音频数据包括第一音频数据和第二音频数据,所述第一音频数据和所述第二音频数据的音频源不同时,对所述第一音频数据和所述第二音频数据进行混音处理。
参见图4,为本发明再一实施例提供的图像数据处理装置示意图。
图4描述了本发明另一个实施例提供的图像数据处理装置的结构,包括至少一个处理器401(例如CPU),存储器402和至少一个通信总线403,用于实现这些装置之间的连接通信。处理器401用于执行存储器402中存储的可执行模块,例如计算机程序。存储器402可能包含高速随机存取存储器(RAM:Random Access Memory),也可能还包括非不稳定的存储器(non-volatile memory),例如至少一个磁盘存储器。一个或者一个以上程序存储于存储器中,且经配置以由一个或者一个以上处理器401执行所述一个或者一个以上程序包含用于进行以下操作的指令:
采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;
将所述第二图像数据存储在第一视频缓冲区中;
以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;
合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值;或者,
当经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
将所述第三图像数据存储在第二视频缓冲区中;
以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据;
合并获得所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
从内存直接获取所述第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;
合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
利用所述整合图像以及对应的音频数据生成流媒体数据,发送所述流媒体数据。
在一些实施方式中,处理器401具体用于执行所述一个或者一个以上程序包含用于进行以下操作的指令:
当所述音频数据包括第一音频数据和第二音频数据,所述第一音频数据和所述第二音频数据的音频源不同时,对所述第一音频数据和所述第二音频数据进行混音处理。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本发明的其它实施方案。本发明旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (10)

1.一种图像数据处理方法,其特征在于,所述方法包括:
采集图像数据,其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;
将所述第二图像数据存储在第一视频缓冲区中;其中,所述第一视频缓冲区可以对所述第二图像数据进行补帧或者减帧处理,以保证在所述第一视频缓冲区中存储有至少一帧所述第二图像数据;
以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据,其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;
合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
2.根据权利要求1所述的方法,其特征在于,所述从第一视频缓冲区中获取一帧第二图像数据包括:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
3.根据权利要求1所述的方法,其特征在于,所述方法还包括:
当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值;或者,
当经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。
4.根据权利要求1所述的方法,其特征在于,所述获取所述第一图像数据包括:
从内存直接获取第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;
合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。
5.根据权利要求1所述的方法,其特征在于,所述图像数据还包括第三图像数据,所述方法还包括:
将所述第三图像数据存储在第二视频缓冲区中;
以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据;
所述合并获取的所述第一图像数据和所述第二图像数据,生成整合图像包括:
合并获得的所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。
6.一种图像数据处理装置,其特征在于,所述装置包括:
采集单元,用于采集图像数据;其中,所述图像数据至少包括第一图像数据和第二图像数据,所述第一图像数据和所述第二图像数据的视频源、帧率均不同;
第一存储单元,用于将所述第二图像数据存储在第一视频缓冲区中;其中,所述第一视频缓冲区可以对所述第二图像数据进行补帧或者减帧处理,以保证在所述第一视频缓冲区中存储有至少一帧所述第二图像数据;
第一获取单元,用于以所述第一图像数据的帧率作为基准帧率获取所述第一图像数据和所述第二图像数据;其中,每获取一帧第一图像数据,从所述第一视频缓冲区中获取一帧第二图像数据;
合并单元,用于合并获取的所述第一图像数据和所述第二图像数据,生成整合图像。
7.根据权利要求6所述的装置,其特征在于,所述第一获取单元具体用于:
判断所述第一视频缓冲区中的第二图像数据的数量是否大于1;
若判断所述第一视频缓冲区中的第二图像数据的数量大于1时,按照存储所述第二图像数据的先后顺序取出一帧图像数据;
若判断所述第一视频缓冲区中的第二图像数据的数量等于1时,复制所述第二图像数据,将复制的所述第二图像数据从第一视频缓冲区中取出,使得所述第一视频缓冲区中至少保留一帧第二图像数据。
8.根据权利要求6所述的装置,其特征在于,所述装置还包括:
第一删除单元,用于当判断所述第一视频缓冲区中的第二图像数据的数量大于预设阈值时,删除最先保存的图像,使得所述第一缓冲区中的第二图像数据的数量不大于预设阈值;或者,
第二删除单元,用于当经过预设时间后,按照存储图像帧的先后顺序删除先保存的图像;其中,删除后的第一缓冲区中的第二图像数据的数量不小于1帧。
9.根据权利要求6所述的装置,其特征在于,所述第一获取单元具体用于:
从内存直接获取第一显示区域内当前内容显示页面的各图层的显示数据;其中,每个图层单独承载各自显示数据;合并已获取的所述当前内容显示页面的各图层的显示数据,生成第一图像。
10.根据权利要求6所述的装置,其特征在于,所述采集单元还用于:
采集第三图像数据;
所述装置还包括:
第二存储单元,用于将所述第三图像数据存储在第二视频缓冲区中;
第二获取单元,用于以所述第一图像数据的帧率作为基准帧率获取所述第三图像数据;其中,每获取一帧第一图像数据,从所述第二视频缓冲区中获取一帧第三图像数据;
所述合并单元具体用于:
合并获得的所述第一图像数据、所述第二图像数据和所述第三图像数据,生成整合图像。
CN201610282120.4A 2016-04-29 2016-04-29 一种图像数据处理方法及装置 Active CN107333164B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610282120.4A CN107333164B (zh) 2016-04-29 2016-04-29 一种图像数据处理方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610282120.4A CN107333164B (zh) 2016-04-29 2016-04-29 一种图像数据处理方法及装置

Publications (2)

Publication Number Publication Date
CN107333164A CN107333164A (zh) 2017-11-07
CN107333164B true CN107333164B (zh) 2020-05-15

Family

ID=60193407

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610282120.4A Active CN107333164B (zh) 2016-04-29 2016-04-29 一种图像数据处理方法及装置

Country Status (1)

Country Link
CN (1) CN107333164B (zh)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108156501A (zh) * 2017-12-29 2018-06-12 北京安云世纪科技有限公司 用于对视频数据进行动态合成的方法、系统以及移动终端
CN110213635B (zh) * 2018-04-08 2021-11-30 腾讯科技(深圳)有限公司 视频混流方法、视频混流装置及存储介质
CN110719430A (zh) * 2018-07-13 2020-01-21 杭州海康威视数字技术股份有限公司 图像数据生成方法、装置、电子设备及存储介质
CN109327708A (zh) * 2018-11-12 2019-02-12 深圳品阔信息技术有限公司 现场直播方法、现场直播装置及存储介质
CN110335230A (zh) * 2019-03-30 2019-10-15 复旦大学 一种内镜图像病变实时检测方法及装置
CN109996013B (zh) * 2019-05-31 2019-08-16 南京巨鲨显示科技有限公司 一种低延时视频拼接方法、装置和系统
CN112866778B (zh) * 2019-11-27 2023-03-14 北京嗨动视觉科技有限公司 流媒体显示方法及装置、流媒体显示系统
CN112616089A (zh) * 2020-11-27 2021-04-06 深圳点猫科技有限公司 一种网课直播拼接推流方法、系统及介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1767601A (zh) * 2005-10-21 2006-05-03 西安交通大学 一种支持多源流媒体的同步播放控制方法
CN101436353A (zh) * 2007-11-16 2009-05-20 北京新学堂网络科技有限公司 一种模拟真实课堂授课效果的远程授课视频制作方法
CN101583025A (zh) * 2009-06-11 2009-11-18 中兴通讯股份有限公司 一种流媒体播放方法及装置
CN103200425A (zh) * 2013-03-29 2013-07-10 天脉聚源(北京)传媒科技有限公司 一种多媒体处理装置及方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7337463B1 (en) * 2000-03-09 2008-02-26 Intel Corporation Displaying heterogeneous video
CN202261619U (zh) * 2011-08-15 2012-05-30 浙江博视电子科技股份有限公司 四通道高清图像显示设备

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1767601A (zh) * 2005-10-21 2006-05-03 西安交通大学 一种支持多源流媒体的同步播放控制方法
CN101436353A (zh) * 2007-11-16 2009-05-20 北京新学堂网络科技有限公司 一种模拟真实课堂授课效果的远程授课视频制作方法
CN101583025A (zh) * 2009-06-11 2009-11-18 中兴通讯股份有限公司 一种流媒体播放方法及装置
CN103200425A (zh) * 2013-03-29 2013-07-10 天脉聚源(北京)传媒科技有限公司 一种多媒体处理装置及方法

Also Published As

Publication number Publication date
CN107333164A (zh) 2017-11-07

Similar Documents

Publication Publication Date Title
CN107333164B (zh) 一种图像数据处理方法及装置
EP3357253B1 (en) Gapless video looping
US9049482B2 (en) System and method for combining computer-based educational content recording and video-based educational content recording
CN111131876B (zh) 视频直播的控制方法、装置、终端及计算机可读存储介质
CN107147939A (zh) 用于调整视频直播封面的方法和装置
CN102129346B (zh) 一种视频互动方法及装置
US20100217884A2 (en) Method and system of providing multimedia content
US10546557B2 (en) Removing overlays from a screen to separately record screens and overlays in a digital medium environment
CN111078070B (zh) Ppt视频弹幕的播放控制方法、装置、终端及介质
CN103561277B (zh) 一种用于网络教学的传输方法和系统
CN107331222B (zh) 一种图像数据处理方法及装置
CN114205635B (zh) 一种直播评论展示方法、装置、设备及介质
CN110505511B (zh) 一种在网页中播放视频的方法、装置、系统及计算设备
WO2016188276A1 (zh) 视频播放方法、客户端和计算机存储介质
CN107635153B (zh) 一种基于影像数据的交互方法及系统
CN108173873B (zh) 一种Android实现带摄像头采集的录屏推流的解决方法
JP7408506B2 (ja) コンテンツ配信システム、コンテンツ配信方法、およびコンテンツ配信プログラム
JP2011040921A (ja) コンテンツ生成装置,コンテンツ生成方法およびコンテンツ生成プログラム
US20150195320A1 (en) Method, System and Software Product for Improved Online Multimedia File Sharing
CN114007098B (zh) 一种用于智能课堂中3d全息视频的生成方法和装置
CN113259705A (zh) 录制与合成视频的方法和装置
CN113139090A (zh) 交互方法、装置、电子设备及计算机可读存储介质
CN112988008A (zh) 一种信息展示方法、装置、计算机设备和存储介质
KR20150112113A (ko) 이벤트 처리 기반의 온라인 강의 콘텐츠 관리방법
US20130182183A1 (en) Hardware-Based, Client-Side, Video Compositing System

Legal Events

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