基于视频转码的多路输出方法及系统技术方案

技术编号:16704035 阅读:38 留言:0更新日期:2017-12-02 17:35
本发明专利技术公开了基于视频转码的多路输出方法及系统,在可视化界面上设置参数并将设置的相关参数实例化对象到处理器的内存储器中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;转码主线程读取原视频进行转码处理;分解视频流,根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件,将已经转化好的实例对象从堆栈中移除并读取下一个。本发明专利技术根据可视化界面设定可同时转出多路应对于不同网络不同设备的视频,减少用户适配网络和移动设备而手动进行参数设定转化视频的时间。

Multiple output method and system based on video transcoding

The invention discloses a method and system for multi output video transcoding based on the visual interface on the parameter setting and memory setting parameters to instantiate the object processor, and create stack objects, instantiated object in the memory stack, and sorting; the main thread to read original video transcoding transcoding; decomposition the video stream according to the read parameters to be transformed video video and audio streams according to the parameters set by the reorganization; after the reorganization of the audio and video stream with the streaming media data, compression for the physical file, will have transformed a good instance objects are removed from the stack and reads the next. According to the visual interface setting, the invention can simultaneously turn out multiple videos for different networks and devices, reduce user adaptation network and mobile devices, manually set parameter settings, and transform video time.

【技术实现步骤摘要】
基于视频转码的多路输出方法及系统
本专利技术涉及计算机
,具体涉及基于视频转码的多路输出方法及系统。
技术介绍
目前的转码的输出过程是:传统面向流方式的视频转码,由于视频数据自身的特点,数据量的庞大和线性的存储格式,长期以来传统的视频编码转换都是面向数据流进行操作。其工作原理如一个制式转换器一样,输入端输入连续的NTSC制信号,同时在输出端输出实时的PAL制信号。现有的转码输出存在的技术问题是:这种方式的优点是可以以实时或者接近实时的方式输出转码结果,转码算法固化在板卡芯片上,转码工作基本上是由硬件完成,稳定性好。但其缺点也是显而易见的,转码单元针对特定的源编码方式和目标编码方式,用户基本无法对码流的大小和附加信息进行控制,灵活性较差。而为了满足实时处理的要求,有时必须需要牺牲一些图像的质量。另外的缺点就是这种基于流方式的视频转码,输入和输出基本同步,不能以快于实时的速度进行编码转换。
技术实现思路
为解决现有技术存在的不足,本专利技术公开了基于视频转码的多路输出方法及系统。本专利技术根据可视化界面设定可同时转出多路应对于不同网络不同设备的视频,减少用户适配网络和移动设备而手动进行参数设定转化视频的时间。为实现上述目的,本专利技术的具体方案如下:基于视频转码的多路输出方法,包括以下步骤:在可视化界面上设置参数并将设置的相关参数实例化对象到处理器的内存储器中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;转码主线程读取原视频进行转码处理,将视频流临时写入到内存储器中,转码主线程读取堆栈数据,从上而下按照顺序读取待转码视频数据;分解视频流:分解为视频和音频,根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件,将已经转化好的实例对象从堆栈中移除并读取下一个,直到堆栈中再无数据,结束。进一步的,将设置的相关参数实例化对象到处理器的内存储器中时,处理器根据用户可视化界面上设定的设定分析视频转码路数进行处理,读取页面上用户所选择的参数设定,将每一路视频实例化为一个对象。进一步的,创建堆栈对象时,处理器根据路数创建转码堆栈,根据设定的转化路数创建出对应路数的转码虚拟对象。进一步的,转码处理:循环堆栈中的所有转化对象,输出最终每一路的转换视频,并以相应的分辨率和原始文件名命名;将转换后所有视频拷贝到设定的转换目录下已原文件名命名的文件夹中,删除上一步临时转换的文件。进一步的,在可视化界面上设置参数为:用户在界面上所选择的转化的路数以及各路视频的参数,将实例化对象加入到内存堆栈中为将所有路数和各路参数已对象的形式存储起来。基于视频转码的多路输出系统,包括处理器以及存储器;处理器中执行以下程序指令:在可视化界面上设置参数并将设置的相关参数实例化对象到处理器的内存储器中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;转码主线程读取原视频进行转码处理,将视频流临时写入到内存储器中,转码主线程读取堆栈数据,从上而下按照顺序读取待转码视频数据;分解视频流:分解为视频和音频,根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件,将已经转化好的实例对象从堆栈中移除并读取下一个,直到堆栈中再无数据,结束。进一步的,将设置的相关参数实例化对象到处理器的内存储器中时,处理器根据用户可视化界面上设定的设定分析视频转码路数进行处理,读取页面上用户所选择的参数设定,将每一路视频实例化为一个对象。进一步的,创建堆栈对象时,处理器根据路数创建转码堆栈,根据设定的转化路数创建出对应路数的转码虚拟对象。进一步的,转码处理:循环堆栈中的所有转化对象,输出最终每一路的转换视频,并以相应的分辨率和原始文件名命名;将转换后所有视频拷贝到设定的转换目录下已原文件名命名的文件夹中,删除上一步临时转换的文件。进一步的,在可视化界面上设置参数为:用户在界面上所选择的转化的路数以及各路视频的参数,将实例化对象加入到内存堆栈中为将所有路数和各路参数已对象的形式存储起来。本专利技术的有益效果:1.本专利技术采用纯软件式编码,无需采用其他硬件设备。2.本专利技术根据可视化界面设定可同时转出多路应对于不同网络不同设备的视频,减少用户适配网络和移动设备而手动进行参数设定转化视频的时间。附图说明构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。图1本专利技术的多路输出流程图。具体实施方式:下面结合附图对本专利技术进行详细说明:应该指出,以下详细说明都是例示性的,旨在对本申请提供进一步的说明。除非另有指明,本文使用的所有技术和科学术语具有与本申请所属
的普通技术人员通常理解的相同含义。需要注意的是,这里所使用的术语仅是为了描述具体实施方式,而非意图限制根据本申请的示例性实施方式。如在这里所使用的,除非上下文另外明确指出,否则单数形式也意图包括复数形式,此外,还应当理解的是,当在本说明书中使用术语“包含”和/或“包括”时,其指明存在特征、步骤、操作、器件、组件和/或它们的组合。本申请的一种典型的实施方式中,如图1所示,基于视频转码的多路输出方法,包括:一个文件转多路开始;根据用户可视化界面上设定的设定分析视频转码路数进行处理,读取页面上用户所选择的参数设定,将每一路视频实例化为一个对象;根据路数创建转码堆栈;转码堆栈,根据设定的转化路数创建出对应路数的转码虚拟对象,如设定为3路转化,则创建3个对象,每一个对象上包含该路转化的基本信息,如分别率,码流等;转码处理,循环堆栈中的所有转化对象,输出最终每一路的转换视频,并以相应的分辨率和原始文件名命名;将转换后所有视频拷贝到设定的转换目录下已原文件名命名的文件夹中,删除上一步临时转换的文件,结束。其中,本申请中提供可视化页面,为自主开发的桌面应用程序,为用户提供界面进行选择要转化的分辨率,多选,便于让用户自主设定要输出的路数,另外,堆栈性质的转码次序,一路一路的视频输出,保证了转码的有序进行以及稳定性。需要解释的是:一路一路的输出具体的步骤为:1.首先记录用户在界面上所选择的转化的路数以及各路视频的参数。2.内存创建堆栈对象,将所有路数和各路参数以对象的形式存储起来,并按照顺序进行排列。3.视频转化主线程读取堆栈中的数据,自上而下,转化成功一路后将该路视频对象从堆栈中移除,并重新读取下一个,直到所有对象全部移除完毕。本申请的另一种典型的实施方式中,基于视频转码的多路输出方法,包括以下步骤:1.记录用户在可视化界面上选择好的参数;2.记录相关参数,实例化对象到内存中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;3.转码主线程读取原视频,将视频流临时写入到内存中;4.转码主线程读取堆栈数据,从上而下按照顺序读取待转码视频数据;5.分解视频流,分解为视频和音频;6.根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;7.将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件;8.将已经转化好的实例对象从堆栈中移除并读取下一个;9.直到堆栈中再无数据,结束。本申请的另一种典型的实施方式中,基本文档来自技高网
...
基于视频转码的多路输出方法及系统

【技术保护点】
基于视频转码的多路输出方法,其特征是,包括以下步骤:在可视化界面上设置参数并将设置的相关参数实例化对象到处理器的内存储器中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;转码主线程读取原视频进行转码处理,将视频流临时写入到内存储器中,转码主线程读取堆栈数据,从上而下按照顺序读取待转码视频数据;分解视频流:分解为视频和音频,根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件,将已经转化好的实例对象从堆栈中移除并读取下一个,直到堆栈中再无数据,结束。

【技术特征摘要】
1.基于视频转码的多路输出方法,其特征是,包括以下步骤:在可视化界面上设置参数并将设置的相关参数实例化对象到处理器的内存储器中,并创建堆栈对象,将实例化对象加入到内存堆栈中,并排序;转码主线程读取原视频进行转码处理,将视频流临时写入到内存储器中,转码主线程读取堆栈数据,从上而下按照顺序读取待转码视频数据;分解视频流:分解为视频和音频,根据读取到的待转化视频参数将视频流和音频流根据设定的参数重组;将重组后的视频流和音频流合并为新的流媒体数据,压缩为实体物理文件,将已经转化好的实例对象从堆栈中移除并读取下一个,直到堆栈中再无数据,结束。2.如权利要求1所述的基于视频转码的多路输出方法,其特征是,将设置的相关参数实例化对象到处理器的内存储器中时,处理器根据用户可视化界面上设定的设定分析视频转码路数进行处理,读取页面上用户所选择的参数设定,将每一路视频实例化为一个对象。3.如权利要求1所述的基于视频转码的多路输出方法,其特征是,创建堆栈对象时,处理器根据路数创建转码堆栈,根据设定的转化路数创建出对应路数的转码虚拟对象。4.如权利要求1所述的基于视频转码的多路输出方法,其特征是,转码处理:循环堆栈中的所有转化对象,输出最终每一路的转换视频,并以相应的分辨率和原始文件名命名;将转换后所有视频拷贝到设定的转换目录下已原文件名命名的文件夹中,删除上一步临时转换的文件。5.如权利要求1所述的基于视频转码的多路输出方法,其特征是,在可视化界面上设置参数为:用户在界面上所选择的转化的路数以及各路视频的参数,将实例化对象加入到内存堆栈中为将所有路数和各路参数已对象的形式存储起来。6.基于视频转码的...

【专利技术属性】
技术研发人员:任年峰侯发毅董泉
申请(专利权)人:山大鲁能信息科技有限公司
类型:发明
国别省市:山东,37

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1