发明名称 一种基于无锁缓存队列的多路h264视频数据缓存方法及系统
摘要 本发明公开了一种基于无锁缓存队列的多路h264视频数据缓存方法及系统,该方法包括:获取针对第一缓存队列的当前缓存子块c<sub>1i</sub>的所述多路h264视频数据中的一帧数据;判断该帧数据是否为I帧数据;当帧数据为I帧数据时,将帧数据写入与当前缓存子块c<sub>1i</sub>对应的第二缓存队列中的缓存子块c<sub>2i</sub>,并继续获取针对第一缓存队列的下一缓存子块c<sub>1(i+1)</sub>的多路h264视频数据中的下一帧数据;当帧数据不为I帧数据时,将帧数据写入当前缓存子块c<sub>1i</sub>,并继续获取针对第一缓存队列的下一缓存子块c<sub>1(i+1)</sub>的多路h264视频数据中的下一帧数据。可见,本发明实现了保证关键帧(I帧)的完整性,减少视频数据的跳帧现象,进而保证后续播放视频数据时的流畅度和完整性的目的。
申请公布号 CN105611307A 申请公布日期 2016.05.25
申请号 CN201510954913.1 申请日期 2015.12.17
申请人 浪潮(北京)电子信息产业有限公司 发明人 毕敬强
分类号 H04N21/218(2011.01)I;H04N21/234(2011.01)I 主分类号 H04N21/218(2011.01)I
代理机构 北京集佳知识产权代理有限公司 11227 代理人 罗满
主权项 一种基于无锁缓存队列的多路h264视频数据缓存方法,其特征在于,该方法包括:获取针对第一缓存队列的当前缓存子块c<sub>1i</sub>的所述多路h264视频数据中的一帧数据;判断所述帧数据是否为I帧数据;当所述帧数据为I帧数据时,将所述帧数据写入与所述当前缓存子块c<sub>1i</sub>对应的第二缓存队列中的缓存子块c<sub>2i</sub>,并继续获取针对所述第一缓存队列的下一缓存子块c<sub>1(i+1)</sub>的所述多路h264视频数据中的下一帧数据;当所述帧数据不为I帧数据时,将所述帧数据写入所述当前缓存子块<sub>c1i</sub>,并继续获取针对所述第一缓存队列的下一缓存子块c<sub>1(i+1)</sub>的所述多路h264视频数据中的下一帧数据;当i+1&gt;N时,c<sub>1(i+1)</sub>为c<sub>11</sub>;其中,所述第一缓存队列C<sub>1</sub>={c<sub>11</sub>,c<sub>12</sub>,…,c<sub>1i</sub>,…,c<sub>1N</sub>},所述第二缓存队列C<sub>2</sub>={c<sub>21</sub>,c<sub>22</sub>,…,c<sub>2i</sub>,…,c<sub>2N</sub>},i=1,2,3,……,N;c<sub>1i</sub>为所述第一缓存队列中的第i个缓存子块,c<sub>2i</sub>为所述第二缓存队列中与c<sub>1i</sub>相对应的缓存子块;各所述缓存子块的内存大小相等。
地址 100085 北京市海淀区上地信息路2号2-1号C栋1层