[发明专利]音视频同步续播的方法、装置、电子设备及存储介质有效
申请号: | 202210414021.2 | 申请日: | 2022-04-14 |
公开(公告)号: | CN114979718B | 公开(公告)日: | 2023-09-19 |
发明(设计)人: | 毕新维;何大红 | 申请(专利权)人: | 海南车智易通信息技术有限公司 |
主分类号: | H04N21/236 | 分类号: | H04N21/236;H04N21/2368;H04N21/434;H04N21/439;H04N21/44;H04N21/8547 |
代理公司: | 北京思睿峰知识产权代理有限公司 11396 | 代理人: | 赵爱军;高攀 |
地址: | 571924 海南省老城高新技术*** | 国省代码: | 暂无信息 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 视频 同步 方法 装置 电子设备 存储 介质 | ||
1.一种音视频同步续播的方法,所述方法通过将读取的视频流中视频和音频存入队列,控制解码的视频与音频时间戳同步,实现在视频发送时保持时间戳的一致性,并通过加锁或丢帧或补帧方式实现输出数据帧率相同,所述方法包括步骤:
获取视音频调用及输出参数,所述视音频调用及输出参数包括:视音频调用接口、封面图路径、预览推流地址、节目输出推流地址和主路输入源拉流地址,具体包括,获取用户事件通知库libevent服务器调用的视音频调用接口,依据所述用户事件通知库libevent服务器调用的视音频调用接口,设置所述封面图路径、预览推流地址、节目输出推流地址和主路输入源拉流地址,依据所述设置所述封面图路径、预览推流地址、节目输出推流地址和主路输入源拉流地址,获取第一线程调用视频编码标准读取主路输入源拉流的视频流,依据所述第一线程调用视频编码标准读取主路输入源拉流的视频流,获取所述视频流的音频数据包和视频数据包分别存入音频数据包队列和视频数据包队列信息,依据所述视频流的音频数据包和视频数据包分别存入音频数据包队列和视频数据包队列信息,获取第二线程开启解码视频数据包及第三线程解码音频数据包信息;
依据所述视音频调用及输出参数,获取音视频数据包中数据帧的视频解码时间戳和音频解码时间戳,具体包括,依据所述第二线程解码所述视频数据包,获取所述视频流的预览路preview_os和输出路target_os,依据所述视频流的预览路preview_os和输出路target_os,获取所述预览路preview_os的视频帧数据存入预览视频帧列表,所述输出路target_os的视频帧数据存入输出视频帧列表信息,及视频解码时间戳信息,依据所述预览路preview_os的视频帧数据存入预览视频帧列表,所述输出路target_os的视频帧数据存入输出视频帧列表信息,及视频解码时间戳信息,获取视频数据包的视频帧解码的当前视频解码时间戳,以及所述视频数据包中第一个视频帧解码的第一视频解码时间戳,依据所述第三线程解码所述音频数据包,获取所述音频数据包解码的音频解码时间戳,并对所述音频数据包的音频帧数据进行重采样,重构所述音频帧数据,依据所述重构的所述音频帧数据,获取所述音频帧数据的音频数据帧列表信息,依据所述音频解码时间戳和所述音频帧数据的音频数据帧列表信息,获取所述音频帧数据的音频推送时间戳;
依据所述数据帧的视频解码时间戳和音频解码时间戳,获取所述音视频数据包中视频数据的发送速度,并控制所述音频数据的发送速度;
依据所述音视频数据包中视频数据的发送速度,并控制所述音频数据的发送速度,获取在所述视音频数据中音频数据包与视频数据包发送帧率不同时通过加锁方式实现所述音频与视频发送帧率同步;
或者,多路所述视音频数据包调用帧率不同,通过丢帧或补帧方式实现输出帧率相同;
或者,所述视音频数据包调用帧率与输出帧率不同时,通过时间基转化方式实现视音频数据包正确输出。
2.如权利要求1所述的方法,其中,所述重构所述音频帧数据的步骤包括:
获取所述音频帧数据,获取所述音频帧数据的重采样参数,所述音频帧数据的重采样参数与所述输出参数相适配,所述音频帧数据的重采样参数包括:采样率、声道数、音频编码格式;
依据所述音频帧数据的重采样参数,获取所述重采样后音频帧数据存储的先入先出队列信息;
依据所述重采样后音频帧数据存储的先入先出队列信息,获取所述重采样后音频帧数据存储的先入先出队列的大小不小于1024信息;
依据所述重采样后音频帧数据存储的先入先出队列的大小不小于1024信息,获取所述重采样后音频帧数据存储的先入先出队列读取1024个数据,重构所述音频帧数据。
3.如权利要求1所述的方法,其中,所述依据所述数据帧的视频解码时间戳和音频解码时间戳,获取所述音视频数据包中视频数据的发送速度,并控制所述音频数据的发送速度的步骤包括:
比较所述数据帧的视频解码时间戳和音频解码时间戳;
如果所述数据帧的音频解码时间戳大于或等于所述数据帧的视频解码时间戳,则控制所述音频数据的发送休眠;
如果所述数据帧的音频解码时间戳小于所述数据帧的视频解码时间戳,则获取所述视频数据的发送速度;
依据所述视频数据的发送速度控制所述音频数据的发送速度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海南车智易通信息技术有限公司,未经海南车智易通信息技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210414021.2/1.html,转载请声明来源钻瓜专利网。