一种多媒体文件的录制方法和装置与流程

文档序号:16008647发布日期:2018-11-20 20:23阅读:来源:国知局

技术特征:

1.一种多媒体文件的录制方法,其特征在于,包括:

具有摄像头的电子设备接收到多媒体文件的录制请求时,创建数据源、编码器、第一多媒体写入器、第二多媒体写入器;

通过数据源持续采集多媒体数据,所述数据源包括摄像头和/或麦克风,所述多媒体数据包括视频数据和/或音频数据;

编码器持续对所述多媒体数据进行编码,并将编码之后的多媒体数据写入预置的缓存队列;

第一多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第一多媒体文件;

判断所述第一多媒体文件是否超过预设的文件大小阈值;若是,则关闭第一多媒体写入器,启动第二多媒体写入器;

第二多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第二多媒体文件;

判断所述第二多媒体文件是否超过预设的文件大小阈值;若是,则关闭第二多媒体写入器,启动第一多媒体写入器。

2.根据权利要求1所述的方法,其特征在于,所述第一多媒体写入器包括第一写入器和第一打包器,所述第二多媒体写入器包括第二写入器和第二打包器。

3.根据权利要求2所述的方法,其特征在于,所述第一多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第一多媒体文件的步骤包括:

第一打包器从所述缓存队列读取编码之后的多媒体数据;

第一打包器将编码之后的多媒体数据打包成多媒体数据包;

第一写入器将所述多媒体数据包写入第一多媒体文件。

4.根据权利要求1或3所述的方法,其特征在于,所述第一多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第一多媒体文件的步骤包括:

当所述第一多媒体文件超过预设的文件大小阈值时,第一多媒体写入器生成封装完成事件;

第一多媒体写入器广播所述封装完成事件。

5.根据权利要求4所述的方法,其特征在于,所述判断所述第一多媒体文件是否超过预设的文件大小阈值的步骤包括:

判断是否接收到由第一多媒体写入器广播的封装完成事件;若是,则判断所述第一多媒体文件超过预设的文件大小阈值。

6.根据权利要求2或3或5所述的方法,其特征在于,所述切换至第二多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第二多媒体文件的步骤包括:

停止第一打包器和第一写入器,同时,第一写入器对所述第一多媒体进行保存处理;

启动第二打包器和第二写入器;

第二打包器从所述缓存队列读取编码之后的多媒体数据;

第二打包器将编码之后的多媒体数据打包成多媒体数据包;

第二写入器将所述多媒体数据包写入第二多媒体文件。

7.根据权利要求2或3或5所述的方法,其特征在于,所述缓存队列配置有互斥锁,所述切换至第二多媒体写入器从所述缓存队列读取编码后的多媒体数据的步骤包括:

第一打包器释放所述缓存队列;

第二打包器锁定所述缓存队列;

第二打包器通过所述缓存队列提供的读接口从所述缓存队列读取编码后的多媒体数据。

8.一种多媒体文件的录制装置,其特征在于,包括:

录制工具创建模块,用于在具有摄像头的电子设备接收到多媒体文件的录制请求时,创建数据源、编码器、第一多媒体写入器、第二多媒体写入器;

多媒体数据采集模块,用于通过数据源持续采集多媒体数据,所述数据源包括摄像头和/或麦克风,所述多媒体数据包括视频数据和/或音频数据;

编码模块,用于由编码器持续对所述多媒体数据进行编码,并将编码之后的多媒体数据写入预置的缓存队列;

第一封装模块,用于由第一多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第一多媒体文件;

文件大小判断模块,用于判断所述第一多媒体文件是否超过预设的文件大小阈值;若是,则关闭第一多媒体写入器,启动第二多媒体写入器,

并判断所述第二多媒体文件是否超过预设的文件大小阈值;若是,则关闭第二多媒体写入器,启动第一多媒体写入器;

第二封装模块,用于第二多媒体写入器从所述缓存队列读取编码后的多媒体数据,并写入第二多媒体文件。

当前第2页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1