CN111953992A - 解码方法及装置 - Google Patents

解码方法及装置 Download PDF

Info

Publication number
CN111953992A
CN111953992A CN202010644907.7A CN202010644907A CN111953992A CN 111953992 A CN111953992 A CN 111953992A CN 202010644907 A CN202010644907 A CN 202010644907A CN 111953992 A CN111953992 A CN 111953992A
Authority
CN
China
Prior art keywords
target
image data
decoding
display
idle
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.)
Pending
Application number
CN202010644907.7A
Other languages
English (en)
Inventor
段瑞楠
范志刚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Xian Wanxiang Electronics Technology Co Ltd
Original Assignee
Xian Wanxiang Electronics Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Xian Wanxiang Electronics Technology Co Ltd filed Critical Xian Wanxiang Electronics Technology Co Ltd
Priority to CN202010644907.7A priority Critical patent/CN111953992A/zh
Publication of CN111953992A publication Critical patent/CN111953992A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • H04N19/426Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements using memory downsizing methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

本公开提供一种解码方法及装置,涉及解码技术领域,所述方法包括接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息;根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区;从所述目标空闲缓存区中获取目标显示图像数据;显示所述目标显示图像数据。本公开实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。

Description

解码方法及装置
技术领域
本公开涉及解码技术领域,尤其涉及解码方法及装置。
背景技术
计算机图像有自然图像和计算机合成图像两大类。自然图像指的是自然界真实存在的景色,人们生活中看到的电影、电视内容均为自然图像。计算机合成图像是采用计算机图形学技术,通过计算机上显卡计算得到的人造图像。在对图像进行传输时,通常需要对图像进行编解码。
相关技术中,通常解码过程为:解码端对接收到的码流进行解码,然后将解码后的图像数据保存在解码端的缓存中,并将缓存地址通过应用程序控制模块发送给显示模块,显示模块根据缓存地址从解码端的缓存中读取对应的图像数据,再将图像数据的格式转换为显示控制器能够接收的格式,最后将格式转换后的图像数据保存在显示控制器的缓存中,便于显示控制器从缓存中获取并显示图像数据。
但上述解码过程中,存在一次将解码后的图像数据从解码端的缓存区到显示控制器的缓存区的数据搬运,由于数据搬运的过程中需要多次访问缓存,这样,不仅占用缓存的访问带宽,而且耗费资源,因此会引入延迟,降低了图像传输的效率。
发明内容
本公开实施例提供一种解码方法及装置,能够解决现有技术中降低图像传输效率的问题。所述技术方案如下:
根据本公开实施例的第一方面,提供一种解码方法,应用于显示端,所述方法包括:
接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息;
在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区;
从所述目标空闲缓存区中获取目标显示图像数据;
显示所述目标显示图像数据。
本公开实施例提供一种解码方法,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
在一个实施例中,所述根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区包括:
在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
在一个实施例中,在所述显示所述目标显示图像数据之后,还包括:
在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
本实施例中,显示端在确定当前帧显示结束时,将目标空闲缓存区的非空闲标记更新为空闲标记,便于解码端将后续解码和格式转换后的目标显示图像数据保存在该目标空闲缓存区中,实现空闲缓存区的重复利用,节约资源。
根据本公开实施例的第二方面,提供一种解码方法,应用于解码端,所述方法包括:
从预先设置的缓存队列中确定目标空闲缓存区;所述缓存队列包括至少一个空闲缓存区;
将待显示图像数据进行解码,得到目标显示图像数据;所述目标显示图像数据为显示端能够识别的图像数据;
将所述目标显示图像数据保存至所述目标空闲缓存区;
向所述显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
本公开实施例提供一种解码方法,解码端从预先设置的缓存队列中确定目标空闲缓存区,并将解码得到的目标显示图像数据保存至目标空闲缓存区,再向显示端发送解码完成事件,使得显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
在一个实施例中,所述空闲缓存区设置有空闲标记;
在所述将所述目标显示图像数据保存至所述目标空闲缓存区之后,还包括:
将所述目标空闲缓存区的空闲标记更新为非空闲标记。
本实施例中,解码端在将目标显示图像数据保存至目标空闲缓存区之后,将目标空闲缓存区的空闲标记更新为非空闲标记,这样,可以将已存入目标显示图像数据的目标空闲缓存区与未存入目标显示图像数据的空闲缓存区进行分离,使得解码端在写入目标显示图像数据时,不会与显示端读取目标显示图像数据发生冲突,可以提高缓存的读写效率。
根据本公开实施例的第三方面,提供一种解码装置,应用于显示驱动端,所述装置包括:
第一接收模块,用于接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息;
第一获取模块,用于根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区;
第二获取模块,用于从所述目标空闲缓存区中获取目标显示图像数据;
显示模块,用于显示所述目标显示图像数据。
本公开实施例提供一种解码装置,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
在一个实施例中,所述第一获取模块包括获取子模块;
所述获取子模块,用于在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
在一个实施例中,还包括:
第一更新模块,用于在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
根据本公开实施例的第四方面,提供一种解码装置,应用于解码端,所述装置包括:
确定模块,用于从预先设置的缓存队列中确定目标空闲缓存区;所述缓存队列包括至少一个空闲缓存区;
解码模块,用于将待显示图像数据进行解码,得到目标显示图像数据;所述目标显示图像数据为显示端能够识别的图像数据;
保存模块,用于将所述目标显示图像数据保存至所述目标空闲缓存区;
发送模块,用于向所述显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
本公开实施例提供一种解码装置,解码端从预先设置的缓存队列中确定目标空闲缓存区,并将解码得到的目标显示图像数据保存至目标空闲缓存区,再向显示端发送解码完成事件,使得显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
在一个实施例中,所述空闲缓存区设置有空闲标记;所述装置还包括:
第二更新模块,用于将所述目标空闲缓存区的空闲标记更新为非空闲标记。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种解码方法的流程图;
图2是本公开实施例提供的一种显示端的结构图;
图3是本公开实施例提供的一种解码方法的流程图;
图4是本公开实施例提供的一种解码方法的流程图;
图5是本公开实施例提供的一种解码方法的流程图;
图6是本公开实施例提供的一种解码方法的交互图;
图7是本公开实施例提供的一种解码方法的交互图;
图8a是本公开实施例提供的一种解码装置的结构图;
图8b是本公开实施例提供的一种解码装置的结构图;
图8c是本公开实施例提供的一种解码装置的结构图;
图9a是本公开实施例提供的一种解码装置的结构图;
图9b是本公开实施例提供的一种解码装置的结构图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
本公开实施例提供一种解码方法,应用于显示端,如图1所示,该方法包括以下步骤:
步骤101、接收解码端发送的解码完成事件。
其中,所述解码完成事件中携带所述目标空闲缓存区的标识信息,在解码端预先设置有包括至少一个空闲缓存区的缓存队列。
示例的,如图2所示,其为显示端的结构示意图,包括主控单元、显示控制单元、显示驱动单元和显示单元,其中,主控单元用于接收解码端发送的解码完成事件,并对解码完成事件进行解析,获取目标空闲缓存区的标识信息,并将解析得到的目标空闲缓存区的标识信息发送给显示控制单元。
步骤102、根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
示例的,显示控制单元在接收到目标空闲缓存区的标识信息时,将目标空闲缓存区的标识信息发送给显示驱动单元,显示驱动单元根据目标空闲缓存区的标识信息在缓存列表中查找与该标识信息对应的目标空闲缓存区,其中,缓存列表中存储有空闲缓存区的标识信息与空闲缓存区的对应关系,从而可以获取到缓存队列中对应的目标空闲缓存区。
可选的,在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
示例的,显示驱动单元是按照显示单元可以接收的时序向显示单元发送图像数据的,因此,切换帧是按照固定频率节拍进行的。也就是说,每帧图像数据的显示时长是固定的,前一帧图像数据的显示时长结束后,硬件触发历史帧切换完成事件,显示驱动单元在检测到历史帧切换完成事件之后,确定历史帧显示结束,此时向显示控制单元发送历史帧切换完成事件,使得显示控制单元确定上一帧图像数据已实现显示,此时结束上一帧图像的处理流程,开始对当前帧进行处理,即显示控制单元在确定历史帧显示结束时,向显示驱动单元发送目标空闲缓存区的标识信息。例如,60帧场频的显示器,则帧切换的频率最大是60,即每帧16.667毫秒,在每个16.667节拍中的消隐期才能进行帧的更新。
步骤103、从所述目标空闲缓存区中获取目标显示图像数据。
步骤104、显示所述目标显示图像数据。
示例的,显示驱动单元在获取到对应的目标空闲缓存区时,读取目标空闲缓存区中保存的目标显示图像数据,并控制显示单元显示目标显示图像数据。
进一步的,如图3所示,在执行完步骤104之后,还包括以下步骤105:
步骤105、在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
示例的,显示驱动单元在控制显示单元显示待显示图像数据之后,说明当前帧显示结束,此时向显示控制单元发送当前帧切换完成事件,使得显示控制单元在接收到当前帧切换完成事件时,确定当前帧已完成显示,此时显示控制单元将目标空闲缓存区的非空闲标记更新为空闲标记,例如,将目标空闲缓存区当前的引用计数1更新为引用计数0,便于解码端将后续解码和格式转换后的目标显示图像数据保存在该目标空闲缓存区中,实现空闲缓存区的重复利用,节约资源。
需要说明的是,解码端还可以将后续解码和格式转换后的目标显示图像数据保存至缓存队列中的其他空闲缓存区中,对此不做限定。
本公开实施例提供一种解码方法,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
本公开实施例提供一种解码方法,应用于解码端,如图4所示,该方法包括以下步骤:
步骤401、从预先设置的缓存队列中确定目标空闲缓存区。
其中,所述缓存队列包括至少一个空闲缓存区。
示例的,解码端在得到目标显示图像数据时,从预先设置的缓存队列中选取一个空闲缓存区,将该空闲缓存区确定为目标空闲缓存区,具体选取方法可以按照缓存队列中多个空闲缓存区的存储位置选取,可以选取最左端的空闲缓存区,也可以选取最右端的空闲缓存区,还可以选取中间的空闲缓存区,本公开实施例对此不做限定。
需要说明的是,缓存队列为预先设置的,该缓存队列可以基于DMA-BUF,可以由解码端和显示端共享。DMA-BUF是一种在不同外设硬件之间共享DMA缓冲区的通用机制。典型使用场景:生产者消费者问题。一个设备作为DMA缓冲区的生产者(例如采集芯片、解码端),向缓冲区填写数据。另一个设备作为DMA缓冲区的消费者,使用缓冲区中的数据(例如编码端、显示端),待传输图像数据通过DMA(Direct Memory Access,直接存储器访问)传输;且该缓存队列中设定的空闲缓存区的数量可根据采集芯片、解码端和编码端等各自的事件处理速度来确定,例如,缓存队列包括10个DRM(Direct Render Management,直接渲染管理)缓存区,具体可参考现有技术,在此不再赘述。另外,每个空闲缓存区的大小可根据解码端和编码端协商的分辨率尺寸、以及解码端要求的图像边界延拓计算得出。
示例的,VGTP(VANXVM Graphic Transport Protocols,图像传输协议)编码端要求的图像边界延拓为256,即缓存区的总宽度为图像宽度加256,其中图像宽度是根据分辨率协商得到。具体的,解码端向编码端发送解码端的显示器规格,然后编码端将显示器规格置入采集芯片,编码端所连接的视频源会通过HDMI(High Definition MultimediaInterface,高清多媒体接口)线的IIC DDC通道来读取采集芯片内部所存的显示器规格,然后视频源根据显示器规则选择一个最优的分辨率时序或之前用户手动设置的分辨率时序输出待显示图像数据。
需要说明的是,在设置好缓存队列之后,将缓存队列导入解码端,使得解码端能够获知缓存队列中每个缓存区的地址、每行总宽度以及有效像素宽度等,其中,总宽度包括一行的像素数和水平方向的图像边界延拓宽度。
需要说明的是,本公开中是重新设计解码端的缓冲区使用机制,使得解码端使用外部的DMA-BUF功能,也就是说,将解码端伪装成一个硬件外设,使得解码端和显示端共享DMA-BUF。具体的,解码端需要能够支持使用显示端的DMA-BUF,即解码端需要能够将格式转换后的图像数据保存到显示端的DMA-BUF中,将相关技术中解码端识别的图像格式转换为显示端识别的图像格式的过程归并至解码端。
步骤402、将待显示图像数据进行解码,得到目标显示图像数据.
其中,所述目标显示图像数据为显示端能够识别的图像数据。
示例的,解码端通过传输层接收编码端发送的携带待显示图像数据的码流,对该码流进行解码,在解码过程中,将待显示图像数据的显示格式恢复为显示端能够识别的格式,即为得到目标显示图像数据。
步骤403、将所述目标显示图像数据保存至所述目标空闲缓存区。
示例的,解码端在确定目标空闲缓存区时,将得到的目标显示图像数据保存在目标空闲缓存区中。
步骤404、向显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
示例的,解码端在将目标显示图像数据保存在目标空闲缓存区之后,向主控单元发送携带目标空闲缓存区的标识信息的解码完成事件,使得主控单元在接收到解码完成事件时,将目标空闲缓存区的标识信息发送给显示控制单元,显示控制单元在接收到显示驱动单元发送的历史帧切换完成事件时,向显示驱动单元发送目标空闲缓存区的标识信息,使得显示驱动单元根据目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并控制显示单元显示目标显示图像数据。
进一步的,如图5所示,所述空闲缓存区设置有空闲标记;在执行完步骤403之后,还包括以下步骤405:
步骤405、将所述目标空闲缓存区的空闲标记更新为非空闲标记。
示例的,初始时,解码端将缓存队列中的每个缓存区均设置有空闲标记,该空闲标记用于表示所有的缓存区均为空闲,没有被使用,具体空闲标记可以采用引用计数进行标记,例如将空闲缓存区的引用计数均置0;在目标空闲缓存区中写入目标显示图像数据时,将该目标空闲缓存区的空闲标记更新为非空闲标记,非空闲标记用于表示该目标空闲缓存区已被使用,不为空闲缓存区,具体非空闲标记可以为将引用计数加1,即将目标空闲缓存区的引用计数加1,引用计数1说明该目标空闲缓存区不为空闲缓存区。
需要说明的是,本公开对步骤404和步骤405的执行顺序不做限定,可以先执行步骤404,再执行步骤405;也可以先执行步骤405,再执行步骤404。
本公开实施例提供一种解码方法,解码端从预先设置的缓存队列中确定目标空闲缓存区,并将解码得到的目标显示图像数据保存至目标空闲缓存区,再向显示端发送解码完成事件,使得显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率;另外,本公开还将已存入目标显示图像数据的目标空闲缓存区与未存入目标显示图像数据的空闲缓存区进行分离,将已存入目标显示图像数据的目标空闲缓存区设置非空闲标记,将未存入目标显示图像数据的空闲缓存区设置空闲标记,使得解码端在写入目标显示图像数据时,不会与显示端读取目标显示图像数据发生冲突,可以提高缓存的读写效率。而相关技术中,解码端将解码后的图像数据写入解码端的DMA-BUF,应用程序控制模块从解码端的DMA-BUF中读取图像数据,由于DMA-BUF正在被写的同时不能被读,因此存在DMA-BUF中读写冲突问题,导致相关技术中的DMA-BUF的读写效率较低。
本公开实施例提供一种解码方法,应用于解码端和显示端,如图6所示,该方法包括以下步骤:
步骤601、解码端从预先设置的缓存队列中确定目标空闲缓存区。
其中,所述缓存队列包括至少一个空闲缓存区。
步骤602、将待显示图像数据进行解码,得到目标显示图像数据。
其中,所述目标显示图像数据为显示端能够识别的图像数据。
步骤603、解码端将所述目标显示图像数据保存至所述目标空闲缓存区。
步骤604、解码端向显示端发送解码完成事件。
其中,所述解码完成事件中携带所述目标空闲缓存区的标识信息。
步骤605、显示端在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
步骤606、显示端从所述目标空闲缓存区中获取目标显示图像数据。
步骤607、显示端显示所述目标显示图像数据。
本公开实施例提供一种解码方法,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
本公开实施例提供一种解码方法,应用于解码端和显示端,如图7所示,该方法包括以下步骤:
步骤701、解码端从预先设置的缓存队列中确定目标空闲缓存区。
其中,所述缓存队列包括至少一个空闲缓存区,所述空闲缓存区设置有空闲标记。
步骤702、解码端将待显示图像数据进行解码,得到目标显示图像数据.
其中,所述目标显示图像数据为显示端能够识别的图像数据。
步骤703、解码端将所述目标显示图像数据保存至所述目标空闲缓存区。
步骤704、解码端将所述目标空闲缓存区的空闲标记更新为非空闲标记。
步骤705、解码端向显示端发送解码完成事件。
其中,所述解码完成事件中携带所述目标空闲缓存区的标识信息。
步骤706、显示端在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
步骤707、显示端从所述目标空闲缓存区中获取目标显示图像数据。
步骤708、显示端显示所述目标显示图像数据。
步骤709、显示端在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
本公开实施例提供一种解码方法,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率;另外,本公开还将已存入目标显示图像数据的目标空闲缓存区与未存入目标显示图像数据的空闲缓存区进行分离,将已存入目标显示图像数据的目标空闲缓存区设置非空闲标记,将未存入目标显示图像数据的空闲缓存区设置空闲标记,使得解码端在写入目标显示图像数据时,不会与显示端读取目标显示图像数据发生冲突,可以提高缓存的读写效率。而相关技术中,解码端将解码后的图像数据写入解码端的DMA-BUF,应用程序控制模块从解码端的DMA-BUF中读取图像数据,由于DMA-BUF正在被写的同时不能被读,因此存在DMA-BUF中读写冲突问题,导致相关技术中的DMA-BUF的读写效率较低。
基于上述实施例中所描述的解码方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。
本公开实施例提供一种解码装置,如图8a所示,该解码装置80包括:第一接收模块801、第一获取模块802、第二获取模块803和显示模块804。
其中,第一接收模块801,用于接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息。
第一获取模块802,用于根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
第二获取模块803,用于从所述目标空闲缓存区中获取目标显示图像数据。
显示模块804,用于显示所述目标显示图像数据。
在一个实施例中,如图8b所示,所述第一获取模块802包括获取子模块8021。
其中,所述获取子模块8021,用于在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
在一个实施例中,如图8c所示,所述装置还包括第一更新模块805。
其中,所述第一更新模块805,用于在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
本公开实施例提供一种解码装置,显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
本公开实施例提供一种解码装置,如图9a所示,该解码装置90包括:确定模块901、解码模块902、保存模块903和发送模块904。
其中,确定模块901,用于从预先设置的缓存队列中确定目标空闲缓存区;所述缓存队列包括至少一个空闲缓存区。
解码模块902,用于将待显示图像数据进行解码,得到目标显示图像数据;所述目标显示图像数据为显示端能够识别的图像数据。
保存模块903,用于将所述目标显示图像数据保存至所述目标空闲缓存区。
发送模块904,用于向所述显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
在一个实施例中,如图9b所示,所述空闲缓存区设置有空闲标记;所述装置还包括第二更新模块905。
其中,所述第二更新模块905,用于将所述目标空闲缓存区的空闲标记更新为非空闲标记。
本公开实施例提供一种解码装置,解码端从预先设置的缓存队列中确定目标空闲缓存区,并将解码得到的目标显示图像数据保存至目标空闲缓存区,再向显示端发送解码完成事件,使得显示端在接收到解码端发送的解码完成事件时,根据解码完成事件中携带的目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区,并将目标空闲缓存区中的目标显示图像数据进行显示。这样,解码端只需将目标空闲缓存区的标识信息发送至显示端,显示端可直接在目标空闲缓存区中获取目标显示图像数据,实现了解码端和显示端对目标空闲缓存区的共享,无需对目标显示图像数据进行搬运,不会因搬运目标显示图像数据而导致延迟,从而提高了图像传输的效率。
基于上述图1对应的实施例中所描述的解码方法,本公开实施例还提供一种计算机可读存储介质,例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read OnlyMemory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,用于执行上述图1对应的实施例中所描述的解码方法,此处不再赘述。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

Claims (10)

1.一种解码方法,其特征在于,应用于显示端,所述方法包括:
接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息;
根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区;
从所述目标空闲缓存区中获取目标显示图像数据;
显示所述目标显示图像数据。
2.根据权利要求1所述的方法,其特征在于,所述根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区包括:
在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
3.根据权利要求1所述的方法,其特征在于,在所述显示所述目标显示图像数据之后,还包括:
在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
4.一种解码方法,其特征在于,应用于解码端,所述方法包括:
从预先设置的缓存队列中确定目标空闲缓存区;所述缓存队列包括至少一个空闲缓存区;
将待显示图像数据进行解码,得到目标显示图像数据;所述目标显示图像数据为显示端能够识别的图像数据;
将所述目标显示图像数据保存至所述目标空闲缓存区;
向所述显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
5.根据权利要求4所述的方法,其特征在于,所述空闲缓存区设置有空闲标记;
在所述将所述目标显示图像数据保存至所述目标空闲缓存区之后,还包括:
将所述目标空闲缓存区的空闲标记更新为非空闲标记。
6.一种解码装置,其特征在于,应用于显示端,所述装置包括:
第一接收模块,用于接收解码端发送的解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息;
第一获取模块,用于根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区;
第二获取模块,用于从所述目标空闲缓存区中获取目标显示图像数据;
显示模块,用于显示所述目标显示图像数据。
7.根据权利要求6所述的装置,其特征在于,所述第一获取模块包括获取子模块;
所述获取子模块,用于在确定历史帧显示结束时,根据所述目标空闲缓存区的标识信息从缓存队列中获取对应的目标空闲缓存区。
8.根据权利要求6所述的装置,其特征在于,还包括:
第一更新模块,用于在确定当前帧显示结束时,将所述目标空闲缓存区的非空闲标记更新为空闲标记。
9.一种解码装置,其特征在于,应用于解码端,所述装置包括:
确定模块,用于从预先设置的缓存队列中确定目标空闲缓存区;所述缓存队列包括至少一个空闲缓存区;
解码模块,用于将待显示图像数据进行解码,得到目标显示图像数据;所述目标显示图像数据为显示端能够识别的图像数据;
保存模块,用于将所述目标显示图像数据保存至所述目标空闲缓存区;
发送模块,用于向所述显示端发送解码完成事件;所述解码完成事件中携带所述目标空闲缓存区的标识信息,使得所述显示端根据所述目标空闲缓存区的标识信息从缓存队列中获取目标显示图像数据,并显示所述目标显示图像数据。
10.根据权利要求9所述的装置,其特征在于,所述空闲缓存区设置有空闲标记;所述装置还包括:
第二更新模块,用于将所述目标空闲缓存区的空闲标记更新为非空闲标记。
CN202010644907.7A 2020-07-07 2020-07-07 解码方法及装置 Pending CN111953992A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010644907.7A CN111953992A (zh) 2020-07-07 2020-07-07 解码方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010644907.7A CN111953992A (zh) 2020-07-07 2020-07-07 解码方法及装置

Publications (1)

Publication Number Publication Date
CN111953992A true CN111953992A (zh) 2020-11-17

Family

ID=73341171

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010644907.7A Pending CN111953992A (zh) 2020-07-07 2020-07-07 解码方法及装置

Country Status (1)

Country Link
CN (1) CN111953992A (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113015003A (zh) * 2021-03-08 2021-06-22 展讯通信(上海)有限公司 视频帧缓存方法和设备
CN115858081A (zh) * 2023-02-24 2023-03-28 深圳市东微智能科技股份有限公司 Ui界面媒体资源显示方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102723086A (zh) * 2011-05-05 2012-10-10 新奥特(北京)视频技术有限公司 一种智能图文动画更新播放的方法
CN103281528A (zh) * 2013-04-10 2013-09-04 深圳康佳通信科技有限公司 一种流媒体解码方法、系统及移动终端
CN106131319A (zh) * 2016-06-29 2016-11-16 努比亚技术有限公司 一种信息处理方法及装置、终端
CN110708609A (zh) * 2019-08-05 2020-01-17 青岛海信传媒网络技术有限公司 一种视频播放方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102723086A (zh) * 2011-05-05 2012-10-10 新奥特(北京)视频技术有限公司 一种智能图文动画更新播放的方法
CN103281528A (zh) * 2013-04-10 2013-09-04 深圳康佳通信科技有限公司 一种流媒体解码方法、系统及移动终端
CN106131319A (zh) * 2016-06-29 2016-11-16 努比亚技术有限公司 一种信息处理方法及装置、终端
CN110708609A (zh) * 2019-08-05 2020-01-17 青岛海信传媒网络技术有限公司 一种视频播放方法及装置

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113015003A (zh) * 2021-03-08 2021-06-22 展讯通信(上海)有限公司 视频帧缓存方法和设备
CN113015003B (zh) * 2021-03-08 2022-11-25 展讯通信(上海)有限公司 视频帧缓存方法和设备
CN115858081A (zh) * 2023-02-24 2023-03-28 深圳市东微智能科技股份有限公司 Ui界面媒体资源显示方法、装置、设备及存储介质

Similar Documents

Publication Publication Date Title
CN108429924B (zh) 用于播放替换用广告的显示装置及其控制方法
US10389908B2 (en) Image processing device, image processing method, and program with reduction and enlargement scaling of image data
CN111953992A (zh) 解码方法及装置
CN110187858B (zh) 图像显示方法及系统
EP1607934A2 (en) Blur reduction in liquid crystal displays by frame rate control
JP4609568B2 (ja) データ処理装置、データ処理方法およびデータ処理システム
CN112351333A (zh) 一种数据传输方法、设备及介质
CN111953990A (zh) 编码方法及装置
KR20170113011A (ko) 슬라이스 업데이트 맵을 이용하는 장치 및 방법
CN109104581B (zh) 一种无线传屏的方法、系统及接收终端
EP1705558A2 (en) Method and apparatus for capturing full-screen frames
US8279207B2 (en) Information processing apparatus, information processing method, and program
US8040354B2 (en) Image processing device, method and program
US8179978B2 (en) MPEG field data-driven display
CN101657851B (zh) 用于控制显示单元的输出的方法及实现该方法的系统
JP2007165962A (ja) ストリームデータ処理装置
US8036476B2 (en) Image encoding/decoding device and method thereof with data blocks in a determined order
JP2005122119A (ja) Mpuとビデオコーデックとで構成されるシステムにおけるビデオインタフェース装置
CN214057245U (zh) 汽车仪表动画播放系统
JP2008209607A (ja) コンテンツ変換装置、映像再生装置及びコンテンツ変換方法
US20030142870A1 (en) Structure capable of reducing the amount of transferred digital image data of a digital display
JP3559443B2 (ja) 映像出力装置、映像出力方法、映像送信装置、及び映像送信方法
CN117424990A (zh) 数据传输方法、装置、电子设备及可读存储介质
JP3629267B2 (ja) 映像出力装置、映像出力方法、映像送信装置、及び映像送信方法
CN115209001A (zh) 一种视频播放方法、装置及系统

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