CN115802095B - 视频流传输装置、系统、设备及视频流传输方法 - Google Patents
视频流传输装置、系统、设备及视频流传输方法 Download PDFInfo
- Publication number
- CN115802095B CN115802095B CN202310014867.1A CN202310014867A CN115802095B CN 115802095 B CN115802095 B CN 115802095B CN 202310014867 A CN202310014867 A CN 202310014867A CN 115802095 B CN115802095 B CN 115802095B
- Authority
- CN
- China
- Prior art keywords
- frame
- module
- attribute
- frame buffer
- buffer module
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Images
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本公开提供一种视频流传输装置、系统、设备及视频流传输方法。该视频流传输装置包括多个帧缓存模块、控制模块和先进先出的标识队列;帧缓存模块,被配置为缓存解码器对视频流进行解码得到的视频帧,并将缓存的视频帧提供给显示设备进行读取并显示;控制模块,被配置为当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中,并在标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧。该方案大大避免了显示画面跳帧的问题。
Description
技术领域
本公开涉及视频显示技术领域,尤其涉及一种视频流传输装置、系统、设备及视频流传输方法。
背景技术
目前的视频播放技术中,整个视频播放过程可以理解为原始视频经编码器压缩后形成H264、H265等码流,再经过硬件(解码器)解码还原为原始视频,原始视频由视频帧组成,一视频帧即是一幅图像,如果连续播放上述视频帧,则形成了原始视频。H264、H265的码流被解码器解码后会输出连续的视频帧,视频帧存储于帧缓存(Frame Buffer,FB)中,每一视频帧存储在一个Frame Buffer中。显示硬件会从Frame Buffer以固定刷新率读取视频帧并输出到显示器。随着显示硬件不断的切换Frame Buffer,每一视频帧得以连续的显示。
现有解码器和显示硬件之间的配合过程为:解码器申请固定内存资源用作解码后的Frame Buffer,一般来说,为了保证视频帧的连续显示,解码器解码速度需要大于播放器播放速度。但是由于硬件资源有限(Frame Buffer的数量有限)的情况下,显示硬件输出某个Frame Buffer(如FBx)的内容给显示器后,需要立即归还该FBx的内存资源给解码器继续解码使用,这种情况下容易出现显示器正在播放FBx的内容,FBx又被用于解码,且解码速度远高于显示速度,导致显示器正在播放FBx的内容时FBx中已存入了后面视频帧的内容(新解码的视频帧),显示器没来得及切到下一视频帧所在的Frame Buffer,继续显示FBx,导致显示画面看上去跳帧了。
发明内容
本公开的目的是提供一种视频流传输装置、系统、设备及视频流传输方法,解决了现有技术中通过帧缓存来缓存解码帧的技术中出现显示画面跳帧的技术问题。
根据本公开的一个方面,提供一种视频流传输装置,包括:多个帧缓存模块、控制模块和先进先出的标识队列;
帧缓存模块,被配置为缓存解码器对视频流进行解码得到的视频帧,并将缓存的视频帧提供给显示设备进行读取并显示;
控制模块,被配置为当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中,并在标识队列中标识的数量大于等于预设阈值时 ,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;
预设阈值大于等于2且小于视频流传输装置中帧缓存模块的数量。
在一些实施例中,上述视频流传输装置中,控制模块,被配置为在标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括:
控制模块,被配置为当有帧缓存模块正在被显示设备读取,且在该帧缓存模块的标识存入标识队列之前标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
在一些实施例中,上述视频流传输装置中,帧缓存模块的显示属性还包括待显示状态和占用状态;
控制模块,还被配置为:
当有帧缓存模块缓存了解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示。
在一些实施例中,上述视频流传输装置中,显示属性为待显示状态的帧缓存模块,被显示设备以其正在读取的帧缓存模块为起点,按照预设轮询方向进行轮询,以使得显示设备在显示完当前视频帧之后对轮询到的第一个显示属性为待显示状态的帧缓存模块中的视频帧进行读取并显示。
在一些实施例中,上述视频流传输装置中,显示属性为空闲状态的帧缓存模块,被解码器以其解码得到的上一视频帧所存入的帧缓存模块为起点,按照预设轮询方向进行轮询,以使得解码器将轮询到的第一个显示属性为空闲状态的帧缓存模块进行释放并利用该帧缓存模块来缓存最新解码的视频帧。
在一些实施例中,上述视频流传输装置中,帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
控制模块,还被配置为:
当解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
在一些实施例中,上述视频流传输装置中,还包括:属性缓存模块;
控制模块,还被配置为将各个帧缓存模块的属性和标识绑定后存入属性缓存模块中,使得控制模块在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从属性缓存模块中查找到该帧缓存模块的属性。
在一些实施例中,上述视频流传输装置中,还包括:属性缓存模块;
控制模块,还被配置为以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处,使得控制模块在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从缓存模块中查找到该帧缓存模块的属性。
根据本公开的另一方面,提供一种图形处理器,包括上述任一实施例的视频流传输装置。
根据本公开的另一方面,提供一种图形处理系统,包括上述任一实施例的图形处理器。
根据本公开的另一方面,提供一种电子组件,包括上述任一实施例的图形处理系统。
根据本公开的另一方面,提供一种电子设备,包括上述任一实施例的电子组件。
根据本公开的另一个方面,提供一种视频流传输方法,包括:
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中;其中,该帧缓存模块中缓存有解码器对视频流进行解码得到的视频帧;
当标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;
预设阈值大于等于2且小于视频流传输装置中帧缓存模块的数量。
在一些实施例中,上述视频流传输方法中,当标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括以下步骤:
当有帧缓存模块正在被显示设备读取,且在该帧缓存模块的标识存入标识队列之前标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
在一些实施例中,上述视频流传输方法中,帧缓存模块的显示属性还包括待显示状态和占用状态;
上述方法,还包括:
当有帧缓存模块缓存了解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示。
在一些实施例中,上述视频流传输方法中,帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
上述方法,还包括:
当解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
在一些实施例中,上述视频流传输方法中,还包括:
将各个帧缓存模块的显示属性和标识存入属性缓存模块中,使得在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从属性缓存模块中查找到该帧缓存模块的属性。
在一些实施例中,上述视频流传输方法中,还包括:
以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处,使得在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从缓存模块中查找到该帧缓存模块的属性。
附图说明
图1为本公开一个实施例提供的视频流传输装置的结构示意图;
图2为本公开一个实施例提供的视频流传输装置中标识队列的工作原理示意图;
图3为本公开一个实施例提供的另一视频流传输装置的结构示意图;
图4为本公开一个实施例提供的视频流传输装置中属性缓存模块中的数据结构示意图;
图5为本公开一个实施例提供的视频流传输装置中帧缓存模块的轮询示意图;
图6为本公开一个实施例提供的视频流传输装置的工作原理示意图;
图7为本公开一个实施例提供的解码器的工作流程示意图;
图8为本公开一个实施例提供的显示设备的工作流程示意图。
具体实施方式
在介绍本公开实施例之前,应当说明的是:
本公开部分实施例被描述为处理流程,虽然流程的各个操作步骤可能被冠以顺序的步骤编号,但是其中的操作步骤可以被并行地、并发地或者同时实施。
本公开实施例中可能使用了术语“第一”、“第二”等等来描述各个特征,但是这些特征不应当受这些术语限制。使用这些术语仅仅是为了将一个特征与另一个特征进行区分。
本公开实施例中可能使用了术语“和/或”,“和/或”包括其中一个或更多所列出的相关联特征的任意和所有组合。
应当理解的是,当描述两个部件的连接关系或通信关系时,除非明确指明两个部件之间直接连接或直接通信,否则,两个部件的连接或通信可以理解为直接连接或通信,也可以理解为通过中间部件间接连接或通信。
为了使本公开实施例中的技术方案及优点更加清楚明白,以下结合附图对本公开的示例性实施例进行进一步详细的说明,显然,所描述的实施例仅是本公开的一部分实施例,而不是所有实施例的穷举。需要说明的是,在不冲突的情况下,本公开中的实施例及实施例中的特征可以相互组合。
本公开的目的是提供一种视频流传输装置、系统、设备及视频流传输方法,该视频流传输装置包括:多个帧缓存模块、控制模块和先进先出的标识队列;帧缓存模块,被配置为缓存解码器对视频流进行解码得到的视频帧,并将缓存的视频帧提供给显示设备进行读取并显示;控制模块,被配置为当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中,并在标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;预设阈值大于等于2且小于视频流传输装置中帧缓存模块的数量。
可以理解为,本公开的技术方案中,显示设备在读取一帧缓存模块中的视频帧并进行显示之后,该帧缓存模块再次提供给解码器解码使用的时机,最早是在显示设备读取下一视频帧所在的帧缓存模块时。也即在显示设备读取下一视频帧所在的帧缓存模块之前,该帧缓存模块不会再次提供给解码器使用,所以显示设备在读取该帧缓存模块中的视频帧并进行显示的过程中,在一定程度上,该帧缓存模块中不会出现新解码的视频帧,大大避免了显示画面跳帧的问题。
本公开的一个实施例提供一种视频流传输装置,如图1所示,该视频流传输装置包括:多个帧缓存模块、控制模块和先进先出的标识队列;
帧缓存模块,被配置为缓存解码器对视频流进行解码得到的视频帧,并将缓存的视频帧提供给显示设备进行读取并显示;
控制模块,被配置为当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中,并在标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;
预设阈值大于等于2且小于视频流传输装置中帧缓存模块的数量。
其中,各个帧缓存模块依次为FB0、FB1、FB2、FB3、…、FBn-2、FBn-1,n为帧缓存模块的数量。
对应的,上述方案可以理解为,显示设备在读取帧缓存模块FB0中的视频帧并进行显示之后,帧缓存模块FB0再次提供给解码器解码使用的时机,最早是在显示设备读取下一视频帧所在的帧缓存模块FB1时;显示设备在读取帧缓存模块FB1中的视频帧并进行显示之后,帧缓存模块FB1再次提供给解码器解码使用的时机,最早是在显示设备读取下一视频帧所在的帧缓存模块FB2时;以此类推,显示设备在读取帧缓存模块FBx(x为0到n-1之间的自然数)中的视频帧并进行显示之后,帧缓存模块FBx再次提供给解码器解码使用的时机,最早是在显示设备读取下一视频帧所在的帧缓存模块FBx+1时。上述最早是指预设阈值为2的情况,当预设阈值为其它数值时,可类推得到对应的再次提供给解码器解码使用的时机。
其中,解码器在利用某一显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧时,如果该帧缓存模块中有数据,则需要将该帧缓存模块进行释放,释放后再利用该帧缓存模块来缓存最新解码的视频帧;或者,不进行释放,解码器最新解码的视频帧可以直接覆盖该帧缓存模块中已有的数据。
另外,在视频流传输装置中存在显示属性为空闲状态的帧缓存模块时,解码器才会继续解码,当视频流传输装置中不存在显示属性为空闲状态的帧缓存模块时,解码器会暂停解码,解码器如果暂停较长时间,可能出现死锁问题,所以需要尽量保证解码器不会暂停太长时间。而本实施例中,显示设备开始显示之后,每隔固定时间,视频流传输装置中就会出现显示属性为空闲状态的帧缓存模块可以被解码器使用,所以在一定程度上可以解决解码器死锁的问题,还可以提升解码器的工作效率,保证了视频显示的稳定性。通过这种方式来解决解码器死锁的问题,可以避免设置较多的帧缓存模块,节约硬件资源。
另外,视频流传输装置中帧缓存模块的数量可根据需求进行设置,但帧缓存模块的数量不宜过大。
且上述方案中,通过标识队列的深度来判断帧缓存模块切换为空闲状态(可以被解码器使用)的时机,这种判断方式在一定程度上简化了判断逻辑,且标识队列中缓存的是对应的帧缓存模块的标识,所需位宽很小,进一步节约了硬件资源。
需要说明的是,在解码器开始解码视频流之前,各个帧缓存模块为空的状态,其显示属性也是空闲状态。
在一些实施例中,标识队列的深度等于预设阈值。
在一些实施例中,为了进一步避免显示画面跳帧的问题,可以在在显示设备显示完下一帧缓存模块FBx+1中的视频帧之后,再将显示的上一视频帧所在的帧缓存模块FBx提供给解码器解码使用,该场景下,预设阈值可以大于等于3。当预设阈值为3时,可以理解为显示设备在显示完帧缓存模块FBx+1中的视频帧之后,显示设备开始读取下一视频帧所在的帧缓存模块FBx+2时,控制模块将帧缓存模块FBx+2的标识写入(存入)标识队列中(写入后标识队列中存有帧缓存模块FBx、帧缓存模块FBx+1和帧缓存模块FBx+2的标识,深度为3),控制模块再将标识队列中当前最先存入的帧缓存模块FBx的标识读取出来(标识队列中还剩下帧缓存模块FBx+1和帧缓存模块FBx+2的标识),且将读取出来的标识对应的帧缓存模块FBx的显示属性切换为空闲状态,以提供给解码器解码使用。
在一些实施例中,控制模块,被配置为在标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括:
控制模块,被配置为当有帧缓存模块正在被显示设备读取,且在该帧缓存模块的标识存入标识队列之前标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
可以理解为,当预设阈值等于2时,显示设备在显示完帧缓存模块FBx+1中的视频帧之后,显示设备开始读取下一视频帧所在的帧缓存模块FBx+2,控制模块可以在帧缓存模块FBx+2的标识写入(存入)标识队列之前(写入前,标识队列中存有帧缓存模块FBx、帧缓存模块FBx+1的标识,深度为2),将标识队列中当前最先存入的帧缓存模块FBx的标识读取出来(标识队列中还剩下帧缓存模块FBx+1的标识),然后再将缓存模块FBx+2的标识写入(存入)标识队列中(写入后,标识队列中存有帧缓存模块FBx+1、帧缓存模块FBx+2的标识,深度为2),且将读取出来的标识对应的帧缓存模块FBx的显示属性切换为空闲状态,以提供给解码器解码使用。
也就是说,上述当有帧缓存模块正在被显示设备读取,在该帧缓存模块的标识存入标识队列之前,判断标识队列是否满足读出条件的方案中,预设阈值大于等于2,同样可以实现在显示设备显示完下一帧缓存模块FBx+1中的视频帧之后,再将显示的上一视频帧所在的帧缓存模块FBx提供给解码器解码使用,以进一步避免显示画面跳帧的问题,且该方案中还可以进一步减小标识队列的深度需求,缩小标识队列的占用面积,节省装置的资源。
在一些实施例中,标识队列的工作原理类似于时序逻辑的先进先出(First InputFirst Output,FIFO)队列,其结构如图2所示,包括m个缓存单元,分别为缓存单元0、缓存单元1、缓存单元2、…、缓存单元m-2、缓存单元m-1。控制模块将帧缓存模块的标识写入标识队列时,根据写指针的位置把标识存储于相应的单元中,每次写入后写指针的值加1(当写指针为m-1时,本次写入后写指针重置为0)。标识队列的读指针可以一直指向缓存单元0。当标识队列为空时,数据直接写入缓存单元0,当标识队列不为空时,每次从缓存单元0读出标识,所有其它缓存单元都会把存的标识依次向下移位,也就是说,缓存单元1中的标识会填入缓存单元0中,缓存单元2中的标识会填入缓存单元1,以此类推。每次从缓存单元0读出标识,所有其它缓存单元缓存的标识下移之后,写指针也会倒退一位。
另外,在标识队列的工作原理类似于时序逻辑FIFO的方案中,当控制模块在标识队列中写入p-1个标识(p为预设阈值,p小于m)之后,可以实现控制模块在标识队列中写入标识时,标识队列的写指针可以一直指向缓存单元p-1(即之后的标识都是写入缓存单元p-1中的),具体写入流程为:控制模块将第1至p个标识依次写入缓存单元0至缓存单元p-1(写指针依次指向缓存单元0至缓存单元p-1),在将第p+1个标识存入标识队列之前由于标识队列中标识的数量等于预设阈值p,所以先从缓存单元0读出标识,所有其它缓存单元缓存的标识依次下移,写指针重新指向缓存单元p-1,接下来的第p+1个标识存入缓存单元p-1中,以此类推,之后写入的标识都是存入缓存单元p-1中的。
除此之外,控制模块将第1至p个标识依次写入标识队列时,写指针也可以一直指向缓存单元p-1,具体写入流程为:控制模块将第1个标识写入缓存单元p-1(写指针指向缓存单元p-1);在写入第2个标识之前,先将第1个标识从缓存单元p-1移至缓存单元p-2,然后将第2个标识写入缓存单元p-1(写指针指向缓存单元p-1);在写入第3个标识之前,先将第1个标识从缓存单元p-2移至缓存单元p-3(适用于p大于等于3的场景)或移出队列(即从标识队列中读取出来,适用于p等于2的场景),再将第2个标识从缓存单元p-1移至缓存单元p-2,然后将第3个标识写入缓存单元p-1(写指针指向缓存单元p-1),以此类推。这种方案中虽然比前述方案需要更大的功耗,但是当预设阈值为2、3等较小值时,这种方案的功耗仍然比较小,可以满足功耗要求。
在一些实施例中,标识队列的工作原理还可以类似于组合逻辑的FIFO,具体为:控制器每存入一个标识到标识队列中,都将标识队列的写指针进行更新(更新方式可以为当写指针的当前值小于写指针的最大值时,将写指针的值加1,当写指针的当前值等于写指针的最大值,将写指针的值重置为写指针的最小值);以及,控制模块每从标识队列中读出一个标识之后,都将标识队列的读指针进行更新(更新方式可以为当读指针的当前值小于读指针的最大值时,将读指针的值加1,当读指针的当前值等于读指针的最大值,将读指针的值重置为读指针的最小值)。
在一些实施例中,如图3所示,上述视频流传输装置,还包括:属性缓存模块;
控制模块,还被配置为将各个帧缓存模块的属性和标识绑定后存入属性缓存模块中,使得控制模块在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从属性缓存模块中查找到该帧缓存模块的属性。
这种属性缓存模块中的数据结构如图4所示,其中,帧缓存模块的属性和标识绑定的方式可以为数组的形式。
在另一些实施例中,上述视频流传输装置,还包括:属性缓存模块;
控制模块,还被配置为以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处,使得控制模块在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从缓存模块中查找到该帧缓存模块的属性。
也即,这种属性缓存模块的数据写入方式区别于上一实施例中的数据写入方式,本实施例中,控制模块以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处的方式可以为:将所有帧缓存模块的数据组成一个数组(该数组一共n行),帧缓存模块FB0在该数组的第1行,帧缓存模块FB1在该数组的第2行,以此类推,帧缓存模块FBn-1在该数组的第n行。也即帧缓存模块FB0至FBn-1的标识为写指针时,分别指向该数组的第1行至第n行。
例如,在控制模块在切换帧缓存模块FBn的属性,或,显示设备或解码器在查询帧缓存模块FBn的属性时,以帧缓存模块FBn的标识为读指针(指向上述数值的第n行)从缓存模块中查找到帧缓存模块FBn的属性。
在一些实施例中,帧缓存模块的显示属性还包括待显示状态和占用状态;
控制模块,还被配置为:
当有帧缓存模块缓存了解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示。
需要说明的是,在任一时刻,一个帧缓存模块的显示属性为空闲状态、待显示状态和占用状态中的一种。
上述状态设定方式可以理解为,帧缓存模块的显示属性为待显示状态,指示了该帧缓存模块中缓存的视频帧为显示设备未读取(未显示)过的视频帧,其中缓存的视频帧在将来的某个时刻可以被显示设备读取并显示,且显示属性为待显示状态的帧缓存模块不能被解码器用于缓存最新解码的视频帧;
帧缓存模块的显示属性为占用状态,指示了该帧缓存模块中缓存的视频帧正在被显示设备读取或已经读取结束了(显示结束了),显示设备在显示完当前视频帧之后,该帧缓存模块中缓存的视频帧不可以再被显示设备读取了,且显示属性为占用状态的帧缓存模块也不能被解码器用于缓存最新解码的视频帧;
帧缓存模块的显示属性为空闲状态,指示了该帧缓存模块中缓存的视频帧的标识已经被移出标识队列了(也即其中缓存的视频帧已经显示结束一定时间了),可以被解码器用于缓存最新解码的视频帧。
在一些实施例中,上述控制模块根据解码器对帧缓存模块的写入操作切换帧缓存模块的显示属性的具体方式可以为:当解码器将新解码的视频帧存入对应的帧缓存模块后,解码器可以通过中断通知等方式通知控制模块,以使得控制模块可以切换该帧缓存模块的显示属性。上述控制模块根据显示设备对帧缓存模块的读取操作切换帧缓存模块的显示属性以及执行对标识队列的写入操作的具体方式可以为:当显示设备将正在读取对应的帧缓存模块中的视频帧时,显示设备可以通过中断通知等方式通知控制模块,以使得控制模块可以切换该帧缓存模块的显示属性以及执行对标识队列的写入操作。
在一些实施例中,显示属性为待显示状态的帧缓存模块,被显示设备以其正在读取的帧缓存模块为起点,按照预设轮询方向进行轮询,以使得显示设备在显示完当前视频帧之后,对轮询到的第一个显示属性为待显示状态的帧缓存模块中的视频帧进行读取并显示。其中,预设轮询方向可以为从FB0到FBn-1的方向,如图5所示。也即,帧缓存模块FB0到FBn-1中显示属性为待显示状态的帧缓存模块,被显示设备以其正在读取的帧缓存模块为起点,按照从FB0到FBn-1的方向逐个读取并显示。
例如,显示设备正在读取帧缓存模块FBx中的视频帧,则显示设备会以帧缓存模块FBx为起点,按照从FB0到FBn-1的方向进行轮询,以使得显示设备在显示完当前视频帧(FBx中的视频帧)之后,对轮询到的第一个显示属性为待显示状态的帧缓存模块(如FBx+1)中的视频帧进行读取并显示。
在一些实施例中,显示属性为空闲状态的帧缓存模块,被解码器以其解码得到的上一视频帧所存入的帧缓存模块为起点,按照上述预设轮询方向进行轮询,以使得解码器将轮询到的第一个显示属性为空闲状态的帧缓存模块进行释放并利用该帧缓存模块来缓存最新解码的视频帧。
例如,解码器解码得到的上一视频帧存入了帧缓存模块FBx中,则解码器会以帧缓存模块FBx为起点,按照上述预设轮询方向进行轮询,以使得解码器将轮询到的第一个显示属性为空闲状态的帧缓存模块(如FBx+1)进行释放并利用该帧缓存模块FBx+1来缓存最新解码的视频帧,或者不进行释放,直接将最新解码的视频帧覆盖帧缓存模块FBx+1中之前缓存的视频帧。
在一些实施例中,上述当有帧缓存模块正在被显示设备读取,在该帧缓存模块的标识存入标识队列之前,判断标识队列是否满足读出条件的场景下,结合标识队列的工作原理类似于时序逻辑FIFO的方案,以及结合预设阈值为2的方案,以及预设轮询方向为从FB0到FBn-1的方向的方案,对应的视频流传输装置的工作原理示意图如图6所示:初始状态时,解码器未开始解码,显示设备未开始显示视频帧,此时各个帧缓存模块均为空,属性缓存模块中各个帧缓存模块的显示属性均为空闲状态,标识队列为空状态;当解码器开始解码,且显示设备未开始显示视频帧时,解码器可以快速解码得到各个视频帧并依次写入帧缓存模块FB0至FBn-1中,控制模块将帧缓存模块FB0至FBn-1的显示属性置为待显示状态;当显示设备开始读取帧缓存模块FB0时,控制模块将帧缓存模块FB0的显示属性切换为占用状态且将帧缓存模块FB0的标识写入标识队列的缓存单元0中;当显示设备开始读取帧缓存模块FB1时,控制模块将帧缓存模块FB1的显示属性切换为占用状态且将帧缓存模块FB1的标识写入标识队列的缓存单元1中;当显示设备开始读取帧缓存模块FB2时,控制模块将帧缓存模块FB2的显示属性切换为占用状态且将帧缓存模块FB0的标识从标识队列的缓存单元0中读取出来,帧缓存模块FB1的标识从标识队列的缓存单元1下移至缓存单元0中,然后将帧缓存模块FB2的标识写入标识队列的缓存单元1中,且控制模块将从标识队列中读取出来的帧缓存模块FB0的标识对应的帧缓存模块FB0的显示属性置为空闲状态;当显示设备开始读取帧缓存模块FB3时,控制模块将帧缓存模块FB3的显示属性切换为占用状态且将帧缓存模块FB1的标识从标识队列的缓存单元0中读取出来,帧缓存模块FB2的标识从标识队列的缓存单元1下移至缓存单元0中,然后将帧缓存模块FB3的标识写入标识队列的缓存单元1中,且控制模块将从标识队列中读取出来的帧缓存模块FB1的标识对应的帧缓存模块FB1的显示属性置为空闲状态。
在一些实施例中,帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
控制模块,还被配置为:
当解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
其中,上述参考属性与显示属性是一起存入属性缓存模块中的,当控制模块在切换对应的帧缓存模块的显示属性或参考属性,或,显示设备在查询对应的帧缓存模块的显示属性,或解码器在查询对应的帧缓存模块显示属性和参考属性时,可以根据该帧缓存模块的标识从属性缓存模块中查找到该帧缓存模块的显示属性或参考属性。
以及,编码器在对视频流进行编码时,会指定参考帧,并指定以该参考帧为参考的各个视频帧(即该参考帧对应的非参考帧),这些信息会写入视频流中,解码器在读取视频流时,也就知道了每个视频帧的参考状态,所以,当解码器将新解码的视频帧存入一帧缓存模块中时,会根据视频流中的信息对该帧缓存模块的参考属性进行初始化,若初始化之后的参考属性为参考状态,则指示了该帧缓存模块中新存入的视频帧为参考帧,若初始化之后的参考属性为非参考状态,则指示了该帧缓存模块中新存入的视频帧为非参考帧。
在上述帧缓存模块还具有参考属性的场景下,解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,但不能用参考属性为参考状态的帧缓存模块来缓存最新解码的视频帧,这是因为参考属性为参考状态的帧缓存模块中的视频帧为参考帧,在解码器后面的解码过程中需要用参考帧作为解码参考,所以参考属性为参考状态的帧缓存模块中的视频帧暂时不能被释放或覆盖。
上述当解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,是指当以该缓存模块中缓存的视频帧为参考帧的其它非参考帧已经解码完成之后。一种具体判定方式可以为:当解码器最新解码的视频帧没有以帧缓存模块FBx中的视频帧为参考帧,而是以在帧缓存模块FBx中的视频帧之后解码的视频帧为参考帧,也即帧缓存模块FBx中的视频帧不再是最新的参考帧了,可以看作是解码器不再需要帧缓存模块FBx中的视频帧作为解码所需的参考帧了。
在上述帧缓存模块还具有参考属性的场景下,显示属性为空闲状态且参考属性为非参考状态的帧缓存模块,被解码器以其解码得到的上一视频帧所存入的帧缓存模块为起点,按照上述预设轮询方向进行轮询,以使得解码器将轮询到的第一个显示属性为空闲状态且参考属性为非参考状态的帧缓存模块进行释放并利用该帧缓存模块来缓存最新解码的视频帧。
基于上述帧缓存模块还具有参考属性的场景下,解码器的工作流程如图7所示,具体为:解码器开始解码;读取对应的视频流;判断当前视频流是否解码完,若是,则将解码结束,否则,顺序读取待解码的第X个视频帧;判断当前各个帧缓存模块中是否存在状态属性为空闲状态且参考属性为非参考状态的帧缓存模块;若是,则以其解码得到的上一视频帧(第X-1个视频帧)所存入的帧缓存模块为起点,按照上述预设轮询方向进行轮询,以使得解码器利用轮询到的第一个显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来解码第X个视频帧(即将该帧缓存模块进行释放并利用该帧缓存模块来缓存最新解码的第X个视频帧);否则,暂不解码,并返回判断当前各个帧缓存模块中是否存在状态属性为空闲状态且参考属性为非参考状态的帧缓存模块的步骤;解码第X个视频帧之后,将X加1,并返回判断视频流是否解码完的步骤。
基于上述当有帧缓存模块正在被显示设备读取,在该帧缓存模块的标识存入标识队列之前,判断标识队列是否满足读出条件的场景下,显示设备的工作流程如图8所示,具体为:显示设备开始显示;顺序(按照预设轮询顺序)从显示属性为待显示状态的第Y个帧缓存模块中读取视频帧并进行显示,将第Y个帧缓存模块的显示状态切换为占用状态,且判断标识队列的深度是否大于等于预设阈值,若是,则将标识队列中当前最先存入的标识读取出来并将对应的帧缓存模块切换为空闲状态并返回判断标识队列的深度是否大于等于预设阈值的步骤,否则将第Y个帧缓存模块的标识写入标识队列;判断当前各个帧缓存模块中是否存在待显示状态的帧缓存模块,若是则按照预设轮询顺序对Y进行更新,并返回顺序(按照预设轮询顺序)从显示属性为待显示状态的第Y个帧缓存模块中读取视频帧并进行显示的步骤,以读取下一视频帧并显示,否则显示结束。
在一些实施例中,上述视频流传输装置的产品形式为显存。
基于相同的发明构思,本公开实施例还提供一种图形处理器(GraphicsProcessing Unit,GPU),包括上述任一实施例的视频流传输装置。
基于相同的发明构思,本公开实施例还提供一种图形处理系统,包括上述任一实施例的图形处理器。
该图形处理系统可以是一个die(管芯),也可以是多die互联的一个SOC(Systemon Chip,片上系统),或者其他的组织形式。
基于相同的发明构思,本公开实施例还提供一种电子组件,该电子组件包括上述任一实施例中的图形处理系统。在一些使用场景下,该电子组件的产品形式体现为显卡或CPU主板。
基于相同的发明构思,本公开实施例还提供一种电子设备,该电子设备包括上述的电子组件。在一些使用场景下,该电子设备的产品形式是便携式电子设备,例如智能手机、平板电脑、VR设备等;在一些使用场景下,该电子设备的产品形式是个人电脑、游戏主机等。
基于相同的发明构思,本公开实施例还提供一种视频流传输方法,包括:
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中;其中,该帧缓存模块中缓存有解码器对视频流进行解码得到的视频帧;
当标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;
预设阈值大于等于2且小于视频流传输装置中帧缓存模块的数量。
在一些实施例中,上述视频流传输方法中,当标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括以下步骤:
当有帧缓存模块正在被显示设备读取,且在该帧缓存模块的标识存入标识队列之前标识队列中标识的数量大于等于预设阈值时,将标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
在一些实施例中,上述视频流传输方法中,帧缓存模块的显示属性还包括待显示状态和占用状态;
上述方法,还包括:
当有帧缓存模块缓存了解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示。
在一些实施例中,上述视频流传输方法中,帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
上述方法,还包括:
当解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
在一些实施例中,上述视频流传输方法中,还包括:
将各个帧缓存模块的显示属性和标识存入属性缓存模块中,使得在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从属性缓存模块中查找到该帧缓存模块的属性。
在一些实施例中,上述视频流传输方法中,还包括:
以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处,使得在切换对应的帧缓存模块的属性,或,显示设备或解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从缓存模块中查找到该帧缓存模块的属性。
尽管已描述了本公开的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本公开范围的所有变更和修改。
显然,本领域的技术人员可以对本公开进行各种改动和变型而不脱离本公开的精神和范围。这样,倘若本公开的这些修改和变型属于本公开权利要求及其等同技术的范围之内,则本公开也意图包含这些改动和变型在内。
Claims (16)
1.一种视频流传输装置,其中,包括:多个帧缓存模块、控制模块和先进先出的标识队列;
所述帧缓存模块,被配置为缓存解码器对视频流进行解码得到的视频帧,并将缓存的视频帧提供给显示设备进行读取并显示;
所述控制模块,被配置为当有帧缓存模块正在被所述显示设备读取时,将该帧缓存模块的标识存入所述标识队列中,并在所述标识队列中标识的数量大于等于预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得所述解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;以及,当有帧缓存模块缓存了所述解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得所述显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;当有帧缓存模块正在被所述显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得所述显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示;
所述预设阈值大于等于2且小于所述视频流传输装置中所述帧缓存模块的数量。
2.根据权利要求1所述的视频流传输装置,其中,所述控制模块,被配置为在所述标识队列中标识的数量大于等于预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括:
所述控制模块,被配置为当有帧缓存模块正在被所述显示设备读取,且在该帧缓存模块的标识存入所述标识队列之前所述标识队列中标识的数量大于等于所述预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
3.根据权利要求1所述的视频流传输装置,其中,显示属性为待显示状态的帧缓存模块,被所述显示设备以其正在读取的帧缓存模块为起点,按照预设轮询方向进行轮询,以使得所述显示设备在显示完当前视频帧之后,对轮询到的第一个显示属性为待显示状态的帧缓存模块中的视频帧进行读取并显示。
4.根据权利要求3所述的视频流传输装置,其中,显示属性为空闲状态的帧缓存模块,被所述解码器以其解码得到的上一视频帧所存入的帧缓存模块为起点,按照所述预设轮询方向进行轮询,以使得所述解码器将轮询到的第一个显示属性为空闲状态的帧缓存模块进行释放并利用该帧缓存模块来缓存最新解码的视频帧。
5.根据权利要求1所述的视频流传输装置,其中,所述帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得所述解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得所述解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
所述控制模块,还被配置为:
当所述解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
6.根据权利要求1所述的视频流传输装置,其中,还包括:属性缓存模块;
所述控制模块,还被配置为将各个帧缓存模块的属性和标识绑定后存入所述属性缓存模块中,使得所述控制模块在切换对应的帧缓存模块的属性,或,所述显示设备或所述解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从所述属性缓存模块中查找到该帧缓存模块的属性。
7.根据权利要求1所述的视频流传输装置,其中,还包括:属性缓存模块;
所述控制模块,还被配置为以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入所述属性缓存模块的对应位置处,使得所述控制模块在切换对应的帧缓存模块的属性,或,所述显示设备或所述解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从所述缓存模块中查找到该帧缓存模块的属性。
8.一种图形处理器,其中,包括权利要求1至7中任一项所述的视频流传输装置。
9.一种图形处理系统,其中,包括权利要求8所述的图形处理器。
10.一种电子组件,其中,包括权利要求9所述的图形处理系统。
11.一种电子设备,其中,包括权利要求10所述的电子组件。
12.一种视频流传输方法,其中,包括:
当有帧缓存模块正在被显示设备读取时,将该帧缓存模块的标识存入标识队列中;其中,该帧缓存模块中缓存有解码器对视频流进行解码得到的视频帧;
当所述标识队列中标识的数量大于等于预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,以使得所述解码器能够利用显示属性为空闲状态的帧缓存模块来缓存最新解码的视频帧;
当有帧缓存模块缓存了所述解码器最新解码的视频帧时,将该帧缓存模块的显示属性切换为待显示状态,以使得所述显示设备在显示完当前视频帧之后,能够从显示属性为待显示状态的帧缓存模块中读取下一视频帧并进行显示;
当有帧缓存模块正在被所述显示设备读取时,将该帧缓存模块的显示属性切换为占用状态,以使得所述显示设备在显示完当前视频帧之后,不能从显示属性为占用状态的帧缓存模块中读取下一视频帧并进行显示;
所述预设阈值大于等于2且小于所述帧缓存模块的数量。
13.根据权利要求12所述的视频流传输方法,其中,当所述标识队列中标识的数量大于等于预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态,包括以下步骤:
当有帧缓存模块正在被所述显示设备读取,且在该帧缓存模块的标识存入所述标识队列之前所述标识队列中标识的数量大于等于所述预设阈值时,将所述标识队列中当前最先存入的标识读取出来且将读取出来的标识对应的帧缓存模块的显示属性切换为空闲状态。
14.根据权利要求12所述的视频流传输方法,其中,所述帧缓存模块还具有参考属性,包括参考状态和非参考状态,以使得所述解码器能够利用显示属性为空闲状态且参考属性为非参考状态的帧缓存模块来缓存最新解码的视频帧,以及使得所述解码器能够利用参考属性为参考状态的帧缓存模块中缓存的视频帧作为解码所需的参考帧;
所述方法,还包括:
当所述解码器不再需要一帧缓存模块中缓存的视频帧作为解码所需的参考帧时,将该帧缓存模块的参考属性切换为非参考状态。
15.根据权利要求12所述的视频流传输方法,其中,还包括:
将各个帧缓存模块的显示属性和标识存入属性缓存模块中,使得在切换对应的帧缓存模块的属性,或,所述显示设备或所述解码器在查询对应的帧缓存模块的属性时,按照该帧缓存模块的标识从所述属性缓存模块中查找到该帧缓存模块的属性。
16.根据权利要求12所述的视频流传输方法,其中,还包括:
以各个帧缓存模块的标识为写指针,将各个帧缓存模块的属性存入属性缓存模块的对应位置处,使得在切换对应的帧缓存模块的属性,或,所述显示设备或所述解码器在查询对应的帧缓存模块的属性时,以该帧缓存模块的标识为读指针从所述缓存模块中查找到该帧缓存模块的属性。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310014867.1A CN115802095B (zh) | 2023-01-06 | 2023-01-06 | 视频流传输装置、系统、设备及视频流传输方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310014867.1A CN115802095B (zh) | 2023-01-06 | 2023-01-06 | 视频流传输装置、系统、设备及视频流传输方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115802095A CN115802095A (zh) | 2023-03-14 |
CN115802095B true CN115802095B (zh) | 2023-04-18 |
Family
ID=85428620
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310014867.1A Active CN115802095B (zh) | 2023-01-06 | 2023-01-06 | 视频流传输装置、系统、设备及视频流传输方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115802095B (zh) |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567849A (zh) * | 2009-04-30 | 2009-10-28 | 炬才微电子(深圳)有限公司 | 一种数据缓存方法和装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102270444B (zh) * | 2011-09-07 | 2014-03-26 | 东莞中山大学研究院 | 视频处理芯片数据流控制及帧缓存装置 |
CN108259381B (zh) * | 2016-12-29 | 2022-06-07 | 航天信息股份有限公司 | 数据帧处理方法、装置及车载单元 |
CN112468875B (zh) * | 2020-11-30 | 2022-03-29 | 展讯通信(天津)有限公司 | 视频解码帧的显示输出控制方法及装置、存储介质、终端 |
CN113015003B (zh) * | 2021-03-08 | 2022-11-25 | 展讯通信(上海)有限公司 | 视频帧缓存方法和设备 |
-
2023
- 2023-01-06 CN CN202310014867.1A patent/CN115802095B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101567849A (zh) * | 2009-04-30 | 2009-10-28 | 炬才微电子(深圳)有限公司 | 一种数据缓存方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN115802095A (zh) | 2023-03-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110830838B (zh) | 一种安防高清录像倒播方法及装置 | |
JP4889573B2 (ja) | 画像処理装置 | |
US20070268298A1 (en) | Delayed frame buffer merging with compression | |
WO2002015162A3 (en) | System and method for displaying large images with reduced capacity buffer, file format conversion, user interface with zooming and panning, and broadcast of different images | |
US8451280B2 (en) | Display control device having a frame buffer for temporarily storing image data to be displayed on either one of a first display device or a second display device | |
US20070269181A1 (en) | Device and method for mpeg video playback | |
US20050123046A1 (en) | Method and device for sharing MPEG frame buffers | |
CN113015003B (zh) | 视频帧缓存方法和设备 | |
US7689047B2 (en) | Reduced buffer size for JPEG encoding | |
CN108377394B (zh) | 视频编码器的图像数据读取方法、计算机装置及计算机可读存储介质 | |
CN110708609A (zh) | 一种视频播放方法及装置 | |
CN114071047A (zh) | 帧率控制方法及相关装置 | |
CN111752520A (zh) | 图像显示方法、装置、电子设备和计算机可读存储介质 | |
CN111953991A (zh) | 基于window平台视频CPU+GPU硬件解码加速系统和方法 | |
JP2009129448A (ja) | データ処理装置、データ処理方法およびデータ処理システム | |
CN115802095B (zh) | 视频流传输装置、系统、设备及视频流传输方法 | |
CN114428595A (zh) | 图像处理方法、装置、计算机设备和存储介质 | |
CN108024116B (zh) | 一种数据缓存方法及装置 | |
US6275535B1 (en) | Method and device for decoding an image compressed in particular according to the MPEG standards, especially a bidirectional image | |
US6717989B1 (en) | Video decoding apparatus and method for a shared display memory system | |
US20070183510A1 (en) | Method and apparatus for decoding video that alternately store lines of picture in pixel units and method of storing reference picture | |
CN107040784B (zh) | 一种视频缓冲处理方法、系统和装置 | |
CN115209216A (zh) | 视频的播放方法、装置及电子设备 | |
CN113709574B (zh) | 视频截图方法、装置、电子设备及计算机可读存储介质 | |
US8654136B1 (en) | Memory paging system for real time motion data recording, editing, and playback |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |