一种计算机视频流处理方法和装置的制造方法_5

文档序号:9892084阅读:来源:国知局
视频设备,则获取到所述视频设备 的视频流参数信息并发送至特效处理模块。
[0258] 其中,所述第一修改模块包括:
[0259] 转换创建模块,将所述视频流数据转换为RGB格式数据,并基于所述RGB格式数据 创建位图;
[0260] 位图加载模块,用于将所述位图通过位图加载函数SelectObject加载至设备描述 表中;
[0261] 数据修改子模块,用于基于所述修改参数,在所述设备描述表中修改所述位图;
[0262] 提取转换模块,用于从设备描述表中提取修改完的对应位图的RGB格式数据,基于 所述视频流参数信息将所述RGB格式数据转换为原视频流数据的格式。
[0263] 其中,所述转换创建模块包括:
[0264] 区域选取转换模块,用于从视频流数据中选取制定位置和大小的数据,并转换为 RGB格式;所述指定位置和大小根据所述视频流参数信息设置。
[0265] 其中,还包括:
[0266] 修改数据发送模块:由特效处理模块通过发送视频流数据发送消息,将所述个性 化视频流数据发送至视频流过滤驱动。
[0267] 其中,所述第一I/O请求包完成模块包括:
[0268] 第一完成模块,用于根据所述结构体与第一I/O请求包的一一对应关系,将所述个 性化数据填入第一 I/O请求包的第一缓存空间地址,通知所述第一 I/O请求包结束等待
[0269] 对于系统实施例而言,由于其与方法实施例基本相似,所W描述的比较简单,相关 之处参见方法实施例的部分说明即可。
[0270] 本说明书中的各个实施例均采用递进的方式描述,每个实施例重点说明的都是与 其他实施例的不同之处,各个实施例之间相同相似的部分互相参见即可。
[0271] 最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将 一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示运些实体或操作 之间存在任何运种实际的关系或者顺序。
[0272] 本领域内的技术人员应明白,本发明实施例的实施例可提供为方法、系统、或计算 机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和 硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可 用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上 实施的计算机程序产品的形式。
[0273] 本发明实施例是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品 的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的 每一流程和/或方框、W及流程图和/或方框图中的流程和/或方框的结合。可提供运些计算 机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理 器W产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生 用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的 装置。
[0274] 运些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备W特 定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指 令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。
[0275] 运些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计 算机或其他可编程设备上执行一系列操作步骤W产生计算机实现的处理,从而在计算机或 其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一 个方框或多个方框中指定的功能的步骤。
[0276] 尽管已描述了本发明实施例的优选实施例,但本领域内的技术人员一旦得知了基 本创造性概念,则可对运些实施例做出另外的变更和修改。所W,所附权利要求意欲解释为 包括优选实施例W及落入本发明实施例范围的所有变更和修改。
[0277] W上对本发明实施例所提供的一种计算机视频流处理方法和装置,进行了详细介 绍,本文中应用了具体个例对本发明实施例的原理及实施方式进行了阐述,W上实施例的 说明只是用于帮助理解本发明实施例的方法及其核屯、思想;同时,对于本领域的一般技术 人员,依据本发明实施例的思想,在【具体实施方式】及应用范围上均会有改变之处,综上所 述,本说明书内容不应理解为对本发明实施例的限制。
[0278] 本发明公开了 A1、一种计算机视频流处理方法,包括:
[0279] 拦截应用程序的进程发送至视频设备的第一 I/O请求包,并使所述第一 I/O请求包 进入等待过程;
[0280] 基于所述第一 I/O请求包中的参数信息重新构造第二I/O请求包;
[0281] 将所述第二I/O请求包下发至视频设备,获取视频流数据;
[0282] 根据用户的个性化参数,将所述视频流数据修改为所述用户的个性化视频流数 据;
[0283] 将所述个性化视频流数据填入所述第一 I/O请求包,通知所述第一 I/O请求包结束 等待,并返回所述第一 I/O请求包至应用程序的进程。
[0284] A2、根据A1所述的方法,拦截应用程序的进程发送至视频设备的第一 I/O请求包, 包括:
[02化]将由IRP_MJ_DEVICE_C0NTR0L函数处理的,,且控制码loCon化olCode为I0CTL_KS_ READ_STREAM的第一 I/O请求包进行拦截。
[0286] A3、根据A1所述的方法,所述基于所述第一 I/O请求包中的参数信息重新构造第二 I/O请求包,包括:
[0287] 获取包括第一I/O请求包中的用户空间指针,W及所述用户空间指针指向的结构 体中包括的用于存储视频流数据的第一缓存空间地址,w及应用程序的进程和视频设备通 讯的句柄的参数信息;
[0288] 基于包括所述用户空间指针、所述第一缓存空间地址,和所述句柄的参数信息,仓U 建工作结构体;
[0289] 基于所述工作结构体中的参数信息,重新构造第二I/O请求包;其中所述第二I/O 请求包、工作结构体、第一 I/O请求包均采用所述第一缓存空间地址保存视频流数据。
[0290] A4、根据A3所述的方法,所述将所述第二I/O请求包下发至视频设备,获取视频流 数据,包括:
[0291] 通过视频流过滤驱动将所述第二I/O请求包下发至视频设备,获取视频流数据,将 所述视频流数据填入所述第一缓存空间地址;
[0292] 当所述第二I/O请求包从视频设备获取视频流数据填入第一缓存空间地址,并返 回至视频流过滤驱动后,将所述公用第一缓存空间地址的工作结构体插入等待处理处理队 列队尾。
[0293] A5、根据A4所述的方法,所述将所述公用第一缓存空间地址的工作结构体插入等 待处理处理队列队尾之前还包括:
[0294] 判断是否存在特效处理模块发送的特效处理打开指令,如果存在,则将所述公用 第一缓存空间地址的工作结构体插入等待处理处理队列队尾;如果不存在,则通知所述第 一 I/O请求包结束等待,返回应用程序的进程;
[ows]和/或,判断是否存在特效处理模块发送的特效处理关闭指令,如果存在,则通知 所述第一 I/O请求包结束等待,返回应用程序的进程。
[0296] A6、根据A4所述的方法,所述根据用户的个性化参数,将所述视频流数据修改为所 述用户的个性化视频流数据包括:
[0297] 通过特效处理模块从视频流过滤驱动中获取视频流数据;
[0298] 特效处理模块根据接收的由用户输入的个性化参数,和由视频流过滤驱动从视频 设备获取并发送的视频流参数信息,将所述视频流数据修改为所述用户的个性化视频流数 据。
[0299] A7、根据A6所述的方法,所述通过特效处理模块从视频流过滤驱动中获取视频流 数据包括:
[0300] 视频流过滤驱动提取等待处理队列队首的工作结构体的第一缓存空间地址中的 视频流数据;
[0301] 将所述视频流数据填入获取数据队列队首的视频流数据获取I/O请求包的第二缓 存空间地址;
[0302] 将所述得到视频流数据的视频流数据获取I/O请求包返回至特效处理模块;
[0303] 其中,视频流过滤驱动接收特效处理模块通过视频流数据获取消息发送的视频流 数据获取I/O请求包,并将视频流数据获取I/O请求包所述按序插入获取数据队列队尾。
[0304] A8、根据A6所述的方法,特效处理模块根据接收由视频流过滤驱动从视频设备获 取并发送的视频流参数信息之前包括:
[0305] 所述视频流过滤驱动收特效处理模块的监控指令,根据所述监控指令在视频流过 滤驱动的控制模块中注册监控过滤器;所述监控过滤监控应用程序的进程是否打开视频设 备;当应用程序的进程打开视频设备,则获取到所述视频设备的视频流参数信息并发送至 特效处理模块。
[0306] A9、根据A6所述的方法,所述特效处理模块根据接收的由用户输入的个性化参数, 和由视频流过滤驱动从视频设备获取并发送的视频流参数信息,将所述视频流数据修改为 所述用户的个性化视频流数据,包括:
[0307] 将所述视频流数据转换为RGB格式数据,并基于所述RGB格式数据创建位图;
[0308] 将所述位图通过位图加载函数SelectObject加载至设备描述表中;
[0309] 基于所述修改参数,在所述设备描述表中修改所述位图;
[0310] 从设备描述表中提取修改完的对应位图的RGB格式数据,基于所述视频流参数信 息将所述RGB格式数据转换为原视频流数据的格式。
[0311] A10、根据A9所述的方法,将所述视频流数据转换为RGB格式数据包括:
[0312] 从视频流数据中选取指定位置和大小的数据,并转换为RGB格式;所述指定位置和 大小根据所述视频流参数信息设置。
[0313] All、根据A6所述的方法,还包括:
[0314] 由特效处理模块通过发送视频流数据发送消息将所述个性化视频流数据至视频 流过滤驱动。
[0315] A12、根据A4所述的方法,所述将所述个性化视频流数据填入所述第一 I/O请求包, 通知所述第一 I/O请求包结束等待包括:
[0316] 根据所述结构体与第一 I/O请求包的一一对应关系,将所述个性化数据填入第一 I/O请求包的第一缓存空间地址,通知所述第一 I/O请求包结束等待。
[0317]本发明还公开了 B13、一种计算机视频流处理装置,包括:
[0318] 视频流过滤驱动和特效处理模块,
[0319] 所述视频流过滤驱动包括:
[0320] 第一I/O请求包拦截模块,用于拦截应用程序的进程发送至视频设备的第一I/O请 求包,并使所述第一 I/O请求包进入等待过程;
[0321] 第二I/O请求包重构模块,用于基于所述第一 I/O请求包中的参数信息重新构造第 二I/O请求包;
[0322] 第二I/O请求包发送模块,用于将所述第二I/O请求包下发至视频设备,获取视频 流数据;
[0323] 第一 I/O请求包完成模块,用于将所述个性化视频流数据填入所述第一 I/O请求 包,通知所述第一 I/O请求包结束等待,并返回所述第一 I/O请求包至应用程序的进程;
[0324] 所述特效处理模块包括:
[0325] 数据修改模块,用于根据用户的个性化参数,将所述视频流数据修改为所述用户 的个性化视频流数据。
[0326] B14、根据B13所述的装置,所述第一 I/O请求包拦截模块用于:
当前第5页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1