CN115567754A - 视频播放方法、装置、设备及存储介质 - Google Patents
视频播放方法、装置、设备及存储介质 Download PDFInfo
- Publication number
- CN115567754A CN115567754A CN202211198561.8A CN202211198561A CN115567754A CN 115567754 A CN115567754 A CN 115567754A CN 202211198561 A CN202211198561 A CN 202211198561A CN 115567754 A CN115567754 A CN 115567754A
- Authority
- CN
- China
- Prior art keywords
- application process
- video
- playing
- source data
- communication link
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/44—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
- H04N21/44012—Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving rendering scenes according to scene graphs, e.g. MPEG-4 scene graphs
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/45—Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
- H04N21/458—Scheduling content for creating a personalised stream, e.g. by combining a locally stored advertisement with an incoming stream; Updating operations, e.g. for OS modules ; time-related management operations
- H04N21/4586—Content update operation triggered locally, e.g. by comparing the version of software modules in a DVB carousel to the version stored locally
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/18—Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
Abstract
本申请涉及视频监控领域,提出了一种视频播放方法、装置、设备及存储介质。该方法包括:建立第一应用进程与第二应用进程的通信链路;通过所述通信链路,所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程;所述第二应用进程通过所述窗口句柄播放所述视频源数据的窗口,对所述视频源数据进行解码,并通过所述窗口句柄对应的窗口进行渲染和播放。由于高位数的第二应用进程可使用的内存空间大于第一应用进程可用的内存空间,因而能够更好的满足视频播放时对内存空间的要求,减小第一应用进程出现崩溃的几率,提升用户使用体验。
Description
技术领域
本申请涉及视频监控领域,尤其涉及视频播放方法、装置、设备及存储介质。
背景技术
随着“智慧城市”和“智能交通”的提出,安防行业持续保持了快速增长的势头。目前对监控视频的预览和回放大多采用桌面客户端的方式。随着用户预览和回放需求的增加,视频画质越来越清晰,需要同时预览和回放的通道数越来越多,视频解码需要的内存也越来越多。比如,用户预览和回放的视频分辨率可能为1080P、4K,需要同时预览的通道数可能为32、64。
然而,目前的桌面客户端一般都是32位程序。在windows环境下,最大内存空间为4G,实际可供程序使用的更小。一般桌面客户端UI层、功能层会占用大量内存,留给视频解码的可用内存不多。由于解码的可用内存不足,可能会导致桌面客户端不能预览和回放用户期望的视频通道数,当解码消耗的内存资源达到临界点时,可能会引发桌面客户端崩溃,不利于提升用户使用体验。
发明内容
有鉴于此,本申请实施例提供了一种视频播放方法、装置、设备及存储介质,以解决现有技术中通过低位(比如32位)的应用进程播放多通道、高质量的视频时,容易导致内存不足,可能会引起程序崩溃的问题。
本申请实施例的第一方面提供了一种视频播放方法,所述方法包括:
建立第一应用进程与第二应用进程的通信链路,所述第二应用进程的位数大于所述第一应用进程的位数,所述第一应用进程和所述第二应用进程为用于视频播放的进程;
通过所述通信链路,所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程;
所述第二应用进程通过所述窗口句柄播放所述视频源数据的窗口,对所述视频源数据进行解码,并通过所述窗口句柄对应的窗口进行渲染和播放。
结合第一方面,在第一方面的第一种可能实现方式中,并通过所述窗口句柄对应的窗口进行渲染和播放之后,所述方法还包括:
所述第二应用进程向所述第一应用进程回传所述第二应用进程的播放时间;
所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息。
结合第一方面的第一种可能实现方式,在第一方面的第二种可能实现方式中,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息,包括:
所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的播放进度条;
或者,所述视频源数据为车载监控的视频数据,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的地图数据,以及车辆在图中的位置。
结合第一方面的第二种可能实现方式,在第一方面的第三种可能实现方式中,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的地图数据,以及地图数据中的车辆的定位信息,包括:
所述第一应用进程根据所述播放时间,在第一应用进程中查找所述播放时间对应的车辆定位信息;
根据所述车辆定位信息更新所述第一应用进程的显示信息中的地图数据和车辆在地图中的位置。
结合第一方面,在第一方面的第四种可能实现方式中,在建立第一应用进程与第二应用进程的通信链路之后,所述方法还包括:
第一应用进程向所述第二应用进程发送需要播放的视频的通道数;
第二应用进程根据所述通道数创建相应的通道,并根据视频源数据中的通道标识,在相应的通道进行解码、渲染和播放。
结合第一方面,在第一方面的第五种可能实现方式中,建立第一应用进程与第二应用进程的通信链路,包括:
建立第二应用进程与多个所述第一应用进程之间的通信链路;
在建立第一应用进程与第二应用进程的通信链路之后,所述方法还包括:
所述第二应用进程为每个第一应用进程创建对应的音频播放器,通过所述音频播放器播放对应的第一应用进程发送的视频源数据中的音频。
结合第一方面,在第一方面的第六种可能实现方式中,建立第一应用进程与第二应用进程的通信链路,包括:
所述第一应用进程启动时,检测是否存在所述第二应用进程;
如果不存在所述第二应用进程,则根据预先设定的所述第一应用进程和所述第二应用进程的相对路径,创建所述第二应用进程。
本申请实施例的第二方面提供了一种视频播放装置,所述装置包括:
通信链路建立单元,用于建立第一应用进程与第二应用进程的通信链路,所述第二应用进程的位数大于所述第一应用进程的位数,所述第一应用进程和所述第二应用进程为用于视频播放的进程;
数据传送单元,用于通过所述通信链路,由所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程;
解码播放单元,用于由所述第二应用进程通过所述窗口句柄播放所述视频源数据的窗口,对所述视频源数据进行解码,并通过所述窗口句柄对应的窗口进行渲染和播放。
本申请实施例的第三方面提供了视频播放设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如第一方面任一项所述方法的步骤。
本申请实施例的第四方面提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现如第一方面任一项所述方法的步骤。
本申请实施例与现有技术相比存在的有益效果是:本申请通过建立第一应用进程和第二应用进程的通信链路,由第一应用进程将视频源数据和窗口句柄发送至第二应用进程,通过第二应用进程对所述视频源数据进行解码,通过所述窗口句柄确定的窗口对解码的数据进行渲染和播放,由于高位数的第二应用进程可使用的内存空间大于第一应用进程可用的内存空间,因而能够更好的满足视频播放时对内存空间的要求,减小第一应用进程出现崩溃的几率,提升用户使用体验。
附图说明
为了更清楚地说明本申请实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是目前用于视频监控的32位的桌面客户端应用进程的内存使用示意图;
图2是本申请实施例提供的一种视频播放方法的实现流程示意图;
图3是本申请实施例提供一种第一应用进程与第二应用进程的交互示意图;
图4是本申请实施例提供的一种视频播放装置的示意图;
图5是本申请实施例提供的视频播放设备的示意图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本申请实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本申请。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本申请的描述。
为了说明本申请所述的技术方案,下面通过具体实施例来进行说明。
图1为目前用于视频监控的32位的桌面客户端应用进程的内存使用示意图。通常情况下,32位进程的桌面客户端可以使用的内存空间为4G。桌面客户端中包括UI层、功能(包括如预览功能、回放功能等)层等模块,会占用一定的内存空间。桌面客户端中的视频解码库能够使用的内存空间小于4G。当功能层调用视频解码库进行视频解码时,可用的内存空间无法满足高质量、多通道视频的解码要求,可能会导致视频监控的桌面客户端崩溃,不利于提升用户的使用体验。由于32位程序不能调用64位的dll(英文全称为Dynamic LinkLibrary,中文全称为动态链接库),因此,将视频解码库编译成64位也不能满足桌面客户端的视频播放要求。
为了解决上述问题,本申请实施例提出了一种视频播放方法,如图2所示,该方法包括:
在S201中,建立第一应用进程与第二应用进程的通信链路。
其中,第二应用进程的位数大于第一应用进程的位数,第一应用进程和第二应用进程为用于视频播放的进程。
在可能的实现方式中,第一应用进程可以为32位应用进程。比如,第一应用进程可以为目前普遍使用的视频监控场景下用于视频播放或回放的桌面客户端对应的进程。第二应用进程可以为64位应用进程。不局限于此,随着技术的发展,第二应用进程的位数还可能是128位、256位等。第一应用进程和第二应用进程所在的设备,可以为较高位数的设备,比如可以包括:32位的第一应用进程和64位的第二应用进程,运行于64位的设备中。
其中,应用进程的位数,是指应用进程对应的应用编译程序的地址长度位数。由于第一应用进程的位数较小,第一应用进程可用的内存空间受限,比如第一应用进程可用的内存空间为4G,无法直接满足高质量、多通道的视频播放要求。第二应用进程的位数相对于第一应用进程的位数更大,比如第二应用进程的位数为64位,可支持的最大内存空间为256T,可以有效的满足高质量(比如2K、1080P等高清视频)、多通道(比如16通道、32通道等)的视频播放要求。
在第一应用进程和第二应用进程之间建立通信链路时,可以在第一应用进程与第二应用进程之间建立基于Socket协议的通信链路。
在可能的实现方式中,可以设置第二应用进程在开机时自动启动。当第一应用进程启动时,建立第一应用进程。可以将自动启动的第二应用进程,与第一应用进程建立通信链路。或者,该第二应用进程也可以由用户手动操作的方式启动,基于所启动的第二应用进程和第一应用进程建立通信链路。
在可能的实现方式中,第二应用进程可以通过第一应用进程触发。比如,可以在第一应用进程启动时,建立第一应用进程,可以检测系统是否存在第二应用进程,如果存在第二应用进程,则可以建立与第二应用进程的通信链路。如果不存在第二应用进程,则可以根据预先设定的第一应用进程与第二应用进程的相对路径,触发第二应用进程,建立第二应用进程,从而建立所述第一应用进程与第二应用进程之间的通信链路。
第二应用进程的位数大于第一应用进程的位数,比如第二应用进程为64位时,可以在第二应用进程中创建多个视频任务,在每个视频任务中可以预先设置多个通道任务,通过每个通道任务可以对相应的视频源数据进行解码和渲染处理。可以建立每个视频任务与第一应用进程之间的对应关系。在启动一个第一应用进程时,则相应的为该第一应用进程分配一个视频任务,并可以根据第一应用进程中的视频通道的数量,在所述视频任务中创建相应数量的解码通道。
比如,第二应用进程中可以预置100个未分配的视频任务,每个视频任务中可以预置32个未分配的通道任务,通过通道任务对第一应用进程中的相应通道的视频源数据进行解码和渲染。
在S202中,通过所述通信链路,所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程。
如图3所示的第一应用进程与第二应用进程的交互示意图中,第一应用进程与第二应用进程建立通信链路后,第一应用进程可以将需要播放的视频源数据发送至第二应用进程,并且将用于确定播放所述源视频数据的窗口的句柄,即窗口句柄发送至第二应用进程。
当第一应用进程中包括多个通道的视频源数据时,在第二应用进程中检测是否有相应的视频任务,如果没有则创建新的视频任务。或者,同一个第一应用进程,可以根据操作状态的不同,在第二应用进程中创建相应的视频任务。比如,可以根据回放状态、预览状态,在第二应用进程中相应的创建视频任务。
在所创建的视频任务中,可以相应的创建多个通道任务,并建立通道任务的标识与第一应用进程中的视频通道的对应关系。根据该对应关系,可以将第一应用进程中的各个通道的视频源数据,相应的发送至视频任务中的各个通道任务中,分别实现对各个通道的视频源数据的转码、解码或渲染等操作。
在本申请实施例中,第一应用进程还发送用于显示所解码的视频的窗口对应的窗口句柄。用于视频显示的窗口句柄是系统中的唯一资源,由第一应用进程发送至第二应用进程后,可以由第二应用进程正常调用和使用窗口句柄,得到用于显示视频的窗口。
如图3所示,当第二应用进程与多个第一应用进程建立通信链路时,为了避免不同的视频任务之间出现干扰,可以在所述第二应用进程中,为每个视频任务分别创建一个属于相应的第一应用进程的音频播放器。该音频播放器用于播放所对应的第一应用进程发送的视频源数据中的音频,从而使得各个第一应用进程的音频播放独立。音频播放器在播放音频时,可以播放第一应用进程中的多个通道中所选中的通道中的音频。
在S203中,所述第二应用进程通过窗口句柄播放所述视频源数据的窗口,对视频源数据进行解码,并通过窗口句柄对应的窗口进行渲染和播放。
第二应用进程接收到第一应用进程发送的视频源数据后,可以通过第二应用进程对其进行解码和渲染等处理。第二应用进程根据第一应用进程发送的窗口句柄,使用该窗口句柄对应的窗口,从而实现对所述视频源数据的播放。由于第二应用进程的位数
在视频播放过程中,第二应用进程可以接收第一应用进程的播放控制指令,包括如播放、暂停、帧进、帧退、电子放大、添加马赛克、倍速播放、声音开启关闭、图像放置、截图等指令。
在本申请实施例中,第二应用进程在播放第一应用进程传输的视频源数据时,还可以根据播放的帧信息,将播放时间回传至第一应用进程。
为了能够使得第一应用进程中的UI界面与第二应用进程中的播放状态匹配,第一应用进程可以根据返回的播放时间,动态的更新UI(英文全称为User Interface,中文全称为用户界面)界面中的内容,包括如更新UI界面中的播放进度条。
当第一应用进程为车载的视频监控的桌面客户端时,该UI界面还可以包括地图数据,以及车辆在地图中的位置。
在可能的实现方式中,如果车辆移动时,则发送视频源数据至第二应用进程,如果车辆静止,则停止向第二应用进程发送视频源数据。此时,可以根据第二应用进程中返回的视频播放的时间,比如每1秒钟返回一次视频的播放时间,则可以根据所返回的视频的播放时间,动态更新播放进度条,以及动态的更新UI界面中的地图数据和车辆在地图中的位置。比如,可以根据播放时间,匀速的向前推进地图,以及匀速的改变车辆在地图中的位置。从而使得第一应用进程中的UI界面,与第二应用进程中播放进度匹配。
在可能的实现方式中,可以在第一应用进程中视频源数据的记录播放时间与定位数据的对应关系。根据第二应用进程所返回的播放时间,查找相应的定位数据,基于定位数据更新第一应用进程的显示信息中的地图数据,以及车辆在地图中的位置。
当第一应用进程的视频任务结束时,可以发送指令至第二应用进程,由第二应用进程释放所分配的视频任务,将该视频任务置为空闲状态。
本申请通过具有较高位数的第二应用进程对第一应用进程的视频源数据进行解码渲染,并基于窗口句柄确定显示的窗口,从而使得第一应用进程可以借助第二应用进程完成视频播放,可以解决内存资源不足的问题,有效的适应高质量、多通道的视频播放任务的要求。本申请实施例中的第二应用进程为公用的进程,可以由同一台电脑上所有需要解码的使用该进程,可适应多种视频任务的播放要求。
应理解,上述实施例中各步骤的序号的大小并不意味着执行顺序的先后,各过程的执行顺序应以其功能和内在逻辑确定,而不应对本申请实施例的实施过程构成任何限定。
图4为本申请实施例提供的一种视频播放装置的示意图,如图5所示,该装置包括:
通信链路建立单元401,用于建立第一应用进程与第二应用进程的通信链路,第二应用进程的位数大于第一应用进程的位数,第一应用进程和第二应用进程为用于视频播放的进程;
数据传送单元402,用于通过通信链路,由第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至第二应用进程;
解码播放单元403,用于由第二应用进程通过窗口句柄播放视频源数据的窗口,对视频源数据进行解码,并通过窗口句柄对应的窗口进行渲染和播放。
图4所示的视频播放装置,与图2所示的视频播放方法对应。
图5是本申请一实施例提供的视频播放设备的示意图。如图5所示,该实施例的视频播放设备5包括:处理器50、存储器51以及存储在所述存储器51中并可在所述处理器50上运行的计算机程序52,例如视频播放程序。所述处理器50执行所述计算机程序52时实现上述各个视频播放方法实施例中的步骤。或者,所述处理器50执行所述计算机程序52时实现上述各装置实施例中各模块/单元的功能。
示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本申请。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述视频播放设备5中的执行过程。
所述视频播放设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是视频播放设备5的示例,并不构成对视频播放设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如所述视频播放设备还可以包括输入输出设备、网络接入设备、总线等。
所称处理器50可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器51可以是所述视频播放设备5的内部存储单元,例如视频播放设备5的硬盘或内存。所述存储器51也可以是所述视频播放设备5的外部存储设备,例如所述视频播放设备5上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器51还可以既包括所述视频播放设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储所述计算机程序以及所述视频播放设备所需的其他程序和数据。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请的范围。
在本申请所提供的实施例中,应该理解到,所揭露的装置/终端设备和方法,可以通过其它的方式实现。例如,以上所描述的装置/终端设备实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通讯连接可以是通过一些接口,装置或单元的间接耦合或通讯连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请实现上述实施例方法中的全部或部分流程,也可以通过计算机程序指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,RandomAccess Memory)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括是电载波信号和电信信号。
以上所述实施例仅用以说明本申请的技术方案,而非对其限制;尽管参照前述实施例对本申请进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本申请各实施例技术方案的精神和范围,均应包含在本申请的保护范围之内。
Claims (10)
1.一种视频播放方法,其特征在于,所述方法包括:
建立第一应用进程与第二应用进程的通信链路,所述第二应用进程的位数大于所述第一应用进程的位数,所述第一应用进程和所述第二应用进程为用于视频播放的进程;
通过所述通信链路,所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程;
所述第二应用进程通过所述窗口句柄播放所述视频源数据的窗口,对所述视频源数据进行解码,并通过所述窗口句柄对应的窗口进行渲染和播放。
2.根据权利要求1所述的方法,其特征在于,并通过所述窗口句柄对应的窗口进行渲染和播放之后,所述方法还包括:
所述第二应用进程向所述第一应用进程回传所述第二应用进程的播放时间;
所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息。
3.根据权利要求2所述的方法,其特征在于,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息,包括:
所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的播放进度条;
或者,所述视频源数据为车载监控的视频数据,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的地图数据,以及车辆在图中的位置。
4.根据权利要求3所述的方法,其特征在于,所述第一应用进程根据所述播放时间,更新所述第一应用进程的显示信息中的地图数据,以及地图数据中的车辆的定位信息,包括:
所述第一应用进程根据所述播放时间,在第一应用进程中查找所述播放时间对应的车辆定位信息;
根据所述车辆定位信息更新所述第一应用进程的显示信息中的地图数据和车辆在地图中的位置。
5.根据权利要求1所述的方法,其特征在于,在建立第一应用进程与第二应用进程的通信链路之后,所述方法还包括:
第一应用进程向所述第二应用进程发送需要播放的视频的通道数;
第二应用进程根据所述通道数创建相应的通道,并根据视频源数据中的通道标识,在相应的通道进行解码、渲染和播放。
6.根据权利要求1所述的方法,其特征在于,建立第一应用进程与第二应用进程的通信链路,包括:
建立第二应用进程与多个所述第一应用进程之间的通信链路;
在建立第一应用进程与第二应用进程的通信链路之后,所述方法还包括:
所述第二应用进程为每个第一应用进程创建对应的音频播放器,通过所述音频播放器播放对应的第一应用进程发送的视频源数据中的音频。
7.根据权利要求1所述的方法,其特征在于,建立第一应用进程与第二应用进程的通信链路,包括:
所述第一应用进程启动时,检测是否存在所述第二应用进程;
如果不存在所述第二应用进程,则根据预先设定的所述第一应用进程和所述第二应用进程的相对路径,创建所述第二应用进程。
8.一种视频播放装置,其特征在于,所述装置包括:
通信链路建立单元,用于建立第一应用进程与第二应用进程的通信链路,所述第二应用进程的位数大于所述第一应用进程的位数,所述第一应用进程和所述第二应用进程为用于视频播放的进程;
数据传送单元,用于通过所述通信链路,由所述第一应用进程将用于视频播放的窗口句柄和需要播放的视频源数据发送至所述第二应用进程;
解码播放单元,用于由所述第二应用进程通过所述窗口句柄播放所述视频源数据的窗口,对所述视频源数据进行解码,并通过所述窗口句柄对应的窗口进行渲染和播放。
9.一种视频播放设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述方法的步骤。
10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211198561.8A CN115567754A (zh) | 2022-09-29 | 2022-09-29 | 视频播放方法、装置、设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211198561.8A CN115567754A (zh) | 2022-09-29 | 2022-09-29 | 视频播放方法、装置、设备及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115567754A true CN115567754A (zh) | 2023-01-03 |
Family
ID=84742520
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211198561.8A Pending CN115567754A (zh) | 2022-09-29 | 2022-09-29 | 视频播放方法、装置、设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115567754A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055789A (zh) * | 2023-03-24 | 2023-05-02 | 杭州星犀科技有限公司 | 基于安卓系统的直播画面放大方法、系统、设备和介质 |
-
2022
- 2022-09-29 CN CN202211198561.8A patent/CN115567754A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116055789A (zh) * | 2023-03-24 | 2023-05-02 | 杭州星犀科技有限公司 | 基于安卓系统的直播画面放大方法、系统、设备和介质 |
CN116055789B (zh) * | 2023-03-24 | 2023-08-11 | 杭州星犀科技有限公司 | 基于安卓系统的直播画面放大方法、系统、设备和介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111031368B (zh) | 多媒体播放方法、装置、设备及存储介质 | |
CN112087633B (zh) | 视频解码方法、装置及存储介质 | |
EP4152757A1 (en) | Video playback method and apparatus, storage medium, and electronic device | |
CN110070496B (zh) | 图像特效的生成方法、装置和硬件装置 | |
CN110704202B (zh) | 多媒体录制数据共享方法及终端设备 | |
CN108377394B (zh) | 视频编码器的图像数据读取方法、计算机装置及计算机可读存储介质 | |
EP3410302B1 (en) | Graphic instruction data processing method, apparatus | |
CN105451071A (zh) | 一种视频流的处理方法、装置和系统 | |
CN113676769B (zh) | 视频解码方法、设备及存储介质 | |
CN115567754A (zh) | 视频播放方法、装置、设备及存储介质 | |
CN111356023B (zh) | 播放方式确定方法及装置 | |
CN112351333A (zh) | 一种数据传输方法、设备及介质 | |
CN108391170A (zh) | 切换edid文件的方法、装置、电视机和存储介质 | |
CN114040189A (zh) | 多媒体测试方法、装置、存储介质及电子设备 | |
CN110582021B (zh) | 信息处理方法及装置、电子设备和存储介质 | |
CN108093258B (zh) | 码流数据的解码方法、计算机装置及计算机可读存储介质 | |
CN112995543B (zh) | 分布式视频切换系统、方法、设备 | |
CN101662630A (zh) | 视频再生装置 | |
US11917241B2 (en) | Electronic device and its execution method and computer-readable medium | |
CN114942812B (zh) | 多媒体信息共享方法、装置和电子设备 | |
CN209930416U (zh) | 一种多屏播放系统 | |
WO2023030402A1 (zh) | 视频的处理方法、装置及系统 | |
CN112104907B (zh) | 图片播放方法和播放装置 | |
CN109981554B (zh) | 信息处理方法、系统和电子设备 | |
CN116436876A (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 |