CN113722058A - 一种资源调用方法及电子设备 - Google Patents

一种资源调用方法及电子设备 Download PDF

Info

Publication number
CN113722058A
CN113722058A CN202110669547.0A CN202110669547A CN113722058A CN 113722058 A CN113722058 A CN 113722058A CN 202110669547 A CN202110669547 A CN 202110669547A CN 113722058 A CN113722058 A CN 113722058A
Authority
CN
China
Prior art keywords
parameter
task
resources
application
electronic device
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.)
Granted
Application number
CN202110669547.0A
Other languages
English (en)
Other versions
CN113722058B (zh
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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202110669547.0A priority Critical patent/CN113722058B/zh
Publication of CN113722058A publication Critical patent/CN113722058A/zh
Application granted granted Critical
Publication of CN113722058B publication Critical patent/CN113722058B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/604Tools and structures for managing or administering access control systems

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Bioethics (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Telephone Function (AREA)

Abstract

本申请实施例提供一种资源调用方法及电子设备,设计电力电子技术领域。可以在电子设备中资源被部分使用的情况下,调用剩余的资源。该方法应用于电子设备,所述电子设备包括第一应用;所述方法包括:接收到第一操作,所述第一操作用于触发第二任务,所述第二任务在执行过程中使用编解码资源;获取所述电子设备当前剩余编解码资源;确定所述剩余编解码资源是否满足执行所述第二任务所需的编解码资源;若确定所述剩余编解码资源满足执行所述第二任务所需的编解码资源,使用所述剩余编解码资源执行所述第二任务。

Description

一种资源调用方法及电子设备
技术领域
本申请涉及电力电子技术领域,尤其涉及一种资源调用方法及电子设备。
背景技术
随着电子技术的发展,电子设备的功能越来越强大。电子设备可以安装多个应用,电子设备运行每个应用时,都能实现一定的功能。例如,第一视频应用具有播放视频的功能,而且,第一视频应用还具有投屏功能。所谓“投屏功能”是指,第一电子设备可以向第二电子设备发送视频文件,使得第二电子设备播放该视频文件。
其中,如果电子设备中安装第一视频应用,电子设备运行第一视频应用实现播放视频功能时,可能出现投屏功能无法启动的现象。
发明内容
本申请提供一种资源调用方法及电子设备,可以在电子设备中资源被部分使用的情况下,调用剩余的资源。
为实现上述技术目的,本申请采用如下技术方案:
第一方面,本申请提供一种资源调用方法,该方法可以应用于电子设备,电子设备包括第一应用。该资源调用方法可以包括:电子设备接收到用户的第一操作,第一操作用于触发电子设备执行第二任务,第二任务在执行过程中使用编解码资源。也就是说,电子设备已经使用了部分编解码资源的情况下,需要电子设备执行第二任务,且第二任务执行时也需要使用编解码资源。在这种情况下,第一应用可以获取电子设备当前剩余宏块数。即,电子设备确定当前有多少资源(宏块数)可以被第二任务使用。
具体地说,如果电子设备确定剩余宏块数可以满足执行第二任务所需的编解码资源,那么,电子设备就使用剩余编解码资源执行第二任务。
可以理解的,电子设备在执行一个任务时,使用了一部分的宏块数。此时电子设备想要执行另一个任务,电子设备依然还可以根据剩余的部分或全部宏块数执行第二任务。为电子设备提供了在执行第一任务的同时,兼顾执行第二任务的可能,使得电子设备可以充分利用宏块数。
第一方面的一种可能设计方式中,上述在电子设备确定第二任务为投屏任务时,电子设备获取电子设备当前剩余编解码资源之前,该方法还可以包括:电子设备确定执行第二任务的第一参数信息;使用剩余编解码资源执行第二任务,具体为:使用剩余编码器资源,按照第一参数信息执行第二任务。
第一方面另一种可能设计方式中,上述方法还包括:若确定剩余编解码资源不满足执行第二任务的编解码资源,基于第一参数信息和剩余编解码资源,得到第二参数信息;电子设备可以使用剩余编码器资源,按照第二参数信息执行第二任务。
第一方面另一种可能设计方式中,上述方法还可以包括:创建内核节点,内核节点用于存储当前剩余编码资源。
可以理解的,电子设备设置第一节点,用于统计当前剩余宏块数,并且开放应用层到第一节点的访问权限,以及第一节点被应用层中第一应用访问的权限。使得电子设备在执行第一应用中的任务时,可以直接访问剩余宏块数,以便调整第一任务的参数,尽可能使电子设备可以执行第二任务。
第一方面另一种可能设计方式中,获取电子设备当前剩余编解码资源,具体为:通过内核节点获取电子设备当前剩余编解码资源。
其中,应用层访问内核层中的第一节点,在验证第一应用具有访问第一节点的权限,应用层才能访问第一节点。这种设置是为了满足系统安全要求,以维护电子设备数据交互的安全。
第一方面另一种可能设计方式中,获取电子设备当前剩余编解码资源之后,方法还包括:基于第一参数信息,确定执行第二任务对应的第一编解码资源;确定剩余编解码资源满足执行第二任务所需的编解码资源,具体为:确定剩余编码器资源大于或等于第一编码器资源;确定剩余编解码资源不满足执行第二任务所需的编解码资源,具体为:确定剩余编码器资源小于第一编码器资源。
可以理解的,剩余宏块数大于或等于第一宏块数,说明剩余宏块数可以支持电子设备执行第二任务,在这种情况下,电子设备就按照第一参数信息执行第二任务。
第一方面另一种可能设计方式中,第二任务为投屏业务,第一参数信息包括分辨率和/帧率值。上述确定执行第二任务的第一参数信息之后,第一应用获取电子设备当前剩余宏块数之前,方法还包括:确定投屏任务的场景,其中,场景包括第一场景和第二场景;第一场景指示电子设备调整帧率值,第二场景指示电子设备调整分辨率。并且,根据投屏任务的场景生成帧率列表,或者,根据投屏任务的场景生成分辨率列表。其中,帧率列表包括至少一个帧率值,分辨率列表包括至少一个分辨率。
第一方面另一种可能设计方式中,第一参数信息包括:第一参数、第二参数和可调整参数类型中一个或多个,可调整参数为第一参数类型和/或第二参数类型,第一参数类型和第二参数类型不同。
第一方面另一种可能设计方式中,电子设备预置有第一参数列表和第二参数列表,第一参数列表包含有第一参数类型的多个参数,第二参数列表包含有第二参数类型的多个参数,确定剩余编解码资源不满足执行第二任务所需的编解码资源之后。
上述方法还可以包括:当可调整参数类型为第一参数类型(帧率)时,确定剩余编解码资源对应的最大第一参数;确定第一参数列表中与最大第一参数相匹配的第三参数,则第二参数信息包括第三参数和第二参数。或者,当可调整参数类型为第二参数类型时,确定剩余编解码资源对应的最大第二参数。确定第二参数列表中与最大第二参数相匹配的第四参数,则第二参数信息包括第二参数和第四参数(分辨率值,第二分辨率)。
第一方面另一种可能设计方式中,电子设备包括第一应用,第一应用为投屏应用或者包含投屏功能的应用,第二任务为第一应用中的投屏任务,编解码资源为宏块数,第一参数类型为帧率,第二参数类型为分辨率。
第一方面另一种可能设计方式中,上述方法还包括:为第一应用配置访问内核节点的权限,访问内核节点的权限为允许访问内核节点;为内核节点配置第一应用的访问权限,第一应用的访问权限为允许第一应用访问。
第一方面另一种可能的设计方式中,第一应用还包括第一任务,接收到第一操作之前,上述方法还包括:电子设备执行第一任务,第一任务在执行过程中使用编解码资源。
第一方面另一种可能的设计方式中,第一任务是播放视频业务;
第一方面另一种可能的设计方式中,电子设备执行第一任务包括:电子设备调用部分宏块数执行播放视频业务。
第二方面,本申请还提供一种资源调用方法,应用于电子设备,电子设备包括第一应用,第一应用包括编码预备模块,场景选择模块和编解码参数调整模块,电子设备还包括有安全模块和内核节点,内核节点用于存储剩余宏块数。
该方法可以包括:接收第一操作,用于触发第一应用的第二任务,第二任务为投屏任务;编码预备模块确定执行第二任务的第一参数信息,第一参数信息包括第一帧率值、第一分辨率值和可调整参数类型,可调整参数类型为帧率类型和/或分辨率类型;编码预备模块向场景选择模块发送第一参数信息;响应于接收第一参数信息,场景选择模块通过安全模块获取剩余宏块数;安全模块确认第一应用具有访问内核节点的权限;安全模块通过内核节点获取剩余宏块数;安全模块向场景选择模块发送剩余宏块数;场景选择模块基于第一参数信息,确定执行第二任务对应的第一宏块数;场景选择模块确定剩余宏块数小于第一宏块数;场景选择模块向编解码参数调整模块发送第一参数信息;响应于接收第一参数信息。
当可调整参数为帧率类型时,编解码参数调整模块确定剩余编解码资源对应的最大帧率值;编解码参数调整模块确定帧率列表中与最大帧率帧值相匹配的第二帧率值;编解码参数调整模块向编码预备模块发送第二帧率值;编码预备模块使用剩余编码器资源,按照第二帧率值和第一分辨率值执行第二任务。或者,当可调整参数为分辨率类型时,编解码参数调整模块确定剩余编解码资源对应的最大分辨率;编解码参数调整模块确定分辨率列表中与最大分辨率相匹配的第二分辨率值;编解码参数调整模块向编码预备模块发送第二分辨率值;编码预备模块使用剩余编码器资源,按照第一帧率值和第二分辨率值执行第二任务。
第三方面,本申请还提供一种电子设备,包括:一个或多个处理器;存储器;以及一个或多个计算机程序,其中一个或多个计算机程序被存储在存储器中,一个或多个计算机程序包括指令,当指令被电子设备执行时,电子设备具体执行上述第一方面、第二方面及其任一种可能的设计方式中的方法。
第四方面,本申请还提供一种计算机可读存储介质,其特征在于,包括计算机指令,当计算机指令在计算机上运行时,使得计算机执行第一方面、第二方面及其任一种可能的设计方式中的拍照方法。
第五方面,本申请实施例提供了一种计算机程序产品,当计算机程序产品在计算机上运行时,使得计算机执行上述第一方面、第二方面及其任一种可能的设计中电子设备执行的方法。
第六方面,本申请实施例提供了一种芯片系统,该芯片系统应用于电子设备。该芯片系统包括一个或多个接口电路和一个或多个处理器;接口电路和处理器通过线路互联;接口电路用于从电子设备的存储器接收信号,并向处理器发送信号,信号包括存储器中存储的计算机指令;当处理器执行计算机指令时,使得电子设备执行上述第一方面、第二方面、及其任一种可能的设计中的方法。
可以理解的是,上述本申请提供的第二方面的资源调用方法,第三方面的电子设备,第四方面的计算机可读存储介质,第五方面的计算机程序产品和第六方面的芯片系统所能达到的有益效果,可参考如第一方面及其任一种可能的设计方式中的有益效果,此处不再赘述。
附图说明
图1为本申请实施例提供的一种电子设备的硬件结构示意图;
图2为本申请实施例提供的一种电子设备软件架构结构示意图;
图3为本申请实施例提供的一种电子设备的框架结构示意图;
图4为本申请实施例提供的一种生成内核层节点的框架结构示意图;
图5为本申请实施例提供的一种资源调用方法流程图;
图6为本申请实施例提供的一种芯片结构示意图。
具体实施方式
以下,术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本实施例的描述中,除非另有说明,“多个”的含义是两个或两个以上。
以调用电子设备的编码解码资源为例,一般而言,电子设备编码和解码时会共用一套宏块资源。这样,当电子设备运行第一视频应用,当电子设备的部分编解码资源被第一视频应用占用后。此时,如果电子设备运行第二应用,第二应用也需要占用部分编解码资源,在第一视频应用已经占用了部分编解码资源的情况下,编码解码器剩余的编解码资源可能不足以支持当前第二应用需要的编解码资源,使得第二应用无法正常启动编码解码器。
例如,电子设备是手机,手机运行第一视频应用,手机播放分辨率为1080p的视频。此时,第一视频应用占用了手机的部分解码资源,如果用户想要调用第一视频应用的投屏功能,由于解码资源已经部分被占用的,编码解码器剩余的编解码资源不足以支持当前投屏应用需要的编解码资源,使得投屏无法启动编码解码器,无法进行投屏。
本申请提供一种资源调用方法,提供内核层(kernel层)节点,该节点用于存储电子设备当前剩余的宏块数,且允许应用层访问kernel层节点。这样,应用层在获取到当前剩余的宏块数后可以根据剩余宏块数调整编码参数。以便电子设备在部分解码资源被占用的同时,应用层还可以调用剩余宏块数,并实现编码或解码功能。
请参考图1,为本申请实施例提供的电子设备100的结构示意图。
电子设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。其中传感器模块180可以包括压力传感器180A,陀螺仪传感器180B,气压传感器180C,磁传感器180D,加速度传感器180E,距离传感器180F,接近光传感器180G,指纹传感器180H,温度传感器180J,触摸传感器180K,环境光传感器180L,骨传导传感器180M等。
可以理解的是,本申请实施例示意的结构并不构成对电子设备100的具体限定。在本申请另一些实施例中,电子设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),控制器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合触摸传感器180K,充电器,闪光灯,摄像头193等。例如:处理器110可以通过I2C接口耦合触摸传感器180K,使处理器110与触摸传感器180K通过I2C总线接口通信,实现电子设备100的触摸功能。
I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过I2S接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过PCM总线接口耦合。在一些实施例中,音频模块170也可以通过PCM接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。所述I2S接口和所述PCM接口都可以用于音频通信。
UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与无线通信模块160。例如:处理器110通过UART接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过UART接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
MIPI接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。MIPI接口包括摄像头串行接口(camera serial interface,CSI),显示屏串行接口(displayserial interface,DSI)等。在一些实施例中,处理器110和摄像头193通过CSI接口通信,实现电子设备100的拍摄功能。处理器110和显示屏194通过DSI接口通信,实现电子设备100的显示功能。
GPIO接口可以通过软件配置。GPIO接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,GPIO接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。GPIO接口还可以被配置为I2C接口,I2S接口,UART接口,MIPI接口等。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为电子设备100充电,也可以用于电子设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他电子设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对电子设备100的结构限定。在本申请另一些实施例中,电子设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过电子设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为电子设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,显示屏194,摄像头193,和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
电子设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
天线1和天线2用于发射和接收电磁波信号。电子设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。例如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
移动通信模块150可以提供应用在电子设备100上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,移动通信模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,移动通信模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。应用处理器通过音频设备(不限于扬声器170A,受话器170B等)输出声音信号,或通过显示屏194显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器110,与移动通信模块150或其他功能模块设置在同一个器件中。
无线通信模块160可以提供应用在电子设备100上的包括无线局域网(wirelesslocal area networks,WLAN)(如无线保真(wireless fidelity,Wi-Fi)网络),蓝牙(bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。无线通信模块160可以是集成至少一个通信处理模块的一个或多个器件。无线通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。无线通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,电子设备100的天线1和移动通信模块150耦合,天线2和无线通信模块160耦合,使得电子设备100可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packet radio service,GPRS),码分多址接入(codedivision multiple access,CDMA),宽带码分多址(wideband code division multipleaccess,WCDMA),时分码分多址(time-division code division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),BT,GNSS,WLAN,NFC,FM,和/或IR技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidounavigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellitesystem,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
电子设备100通过GPU,显示屏194,以及应用处理器等实现显示功能。GPU为图像处理的微处理器,连接显示屏194和应用处理器。GPU用于执行数学和几何计算,用于图形渲染。处理器110可包括一个或多个GPU,其执行程序指令以生成或改变显示信息。
显示屏194用于显示图像,视频等。显示屏194包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),Miniled,MicroLed,Micro-oLed,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备100可以包括1个或N个显示屏194,N为大于1的正整数。
电子设备100可以通过ISP,摄像头193,视频编解码器,GPU,显示屏194以及应用处理器等实现拍摄功能。
ISP用于处理摄像头193反馈的数据。例如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将所述电信号传递给ISP处理,转化为肉眼可见的图像。ISP还可以对图像的噪点,亮度,肤色进行算法优化。ISP还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,ISP可以设置在摄像头193中。
摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV等格式的图像信号。在一些实施例中,电子设备100可以包括1个或N个摄像头193,N为大于1的正整数。
数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。例如,当电子设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
视频编解码器用于对数字视频压缩或解压缩。电子设备100可以支持一种或多种视频编解码器。这样,电子设备100可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备100的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展电子设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备100使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。处理器110通过运行存储在内部存储器121的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备100的各种功能应用以及数据处理。
电子设备100可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。电子设备100可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当电子设备100接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。电子设备100可以设置至少一个麦克风170C。在另一些实施例中,电子设备100可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,电子设备100还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
压力传感器180A用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180A可以设置于显示屏194。压力传感器180A
的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180A,电极之间的电容改变。电子设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,电子设备100根据压力传感器180A检测所述触摸操作强度。电子设备100也可以根据压力传感器180A的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。例如:当有触摸操作强度小于第一压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于第一压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
陀螺仪传感器180B可以用于确定电子设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180B确定电子设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180B可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180B检测电子设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消电子设备100的抖动,实现防抖。陀螺仪传感器180B还可以用于导航,体感游戏场景。
气压传感器180C用于测量气压。在一些实施例中,电子设备100通过气压传感器180C测得的气压值计算海拔高度,辅助定位和导航。
磁传感器180D包括霍尔传感器。电子设备100可以利用磁传感器180D检测翻盖皮套的开合。在一些实施例中,当电子设备100是翻盖机时,电子设备100可以根据磁传感器180D检测翻盖的开合。进而根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
加速度传感器180E可检测电子设备100在各个方向上(一般为三轴)加速度的大小。当电子设备100静止时可检测出重力的大小及方向。还可以用于识别电子设备姿态,应用于横竖屏切换,计步器等应用。
距离传感器180F,用于测量距离。电子设备100可以通过红外或激光测量距离。在一些实施例中,拍摄场景,电子设备100可以利用距离传感器180F测距以实现快速对焦。
接近光传感器180G可以包括例如发光二极管(LED)和光检测器,例如光电二极管。发光二极管可以是红外发光二极管。电子设备100通过发光二极管向外发射红外光。电子设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,可以确定电子设备100附近有物体。当检测到不充分的反射光时,电子设备100可以确定电子设备100附近没有物体。电子设备100可以利用接近光传感器180G检测用户手持电子设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180G也可用于皮套模式,口袋模式自动解锁与锁屏。
环境光传感器180L用于感知环境光亮度。电子设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180L也可用于拍照时自动调节白平衡。环境光传感器180L还可以与接近光传感器180G配合,检测电子设备100是否在口袋里,以防误触。
指纹传感器180H用于采集指纹。电子设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
温度传感器180J用于检测温度。在一些实施例中,电子设备100利用温度传感器180J检测的温度,执行温度处理策略。例如,当温度传感器180J上报的温度超过阈值,电子设备100执行降低位于温度传感器180J附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,电子设备100对电池142加热,以避免低温导致电子设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,电子设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
触摸传感器180K,也称“触控器件”。触摸传感器180K可以设置于显示屏194,由触摸传感器180K与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180K用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180K也可以设置于电子设备100的表面,与显示屏194所处的位置不同。
骨传导传感器180M可以获取振动信号。在一些实施例中,骨传导传感器180M可以获取人体声部振动骨块的振动信号。骨传导传感器180M也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180M也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于所述骨传导传感器180M获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于所述骨传导传感器180M获取的血压跳动信号解析心率信息,实现心率检测功能。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。电子设备100可以接收按键输入,产生与电子设备100的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和电子设备100的接触和分离。电子设备100可以支持1个或N个SIM卡接口,N为大于1的正整数。SIM卡接口195可以支持Nano SIM卡,Micro SIM卡,SIM卡等。同一个SIM卡接口195可以同时插入多张卡。所述多张卡的类型可以相同,也可以不同。SIM卡接口195也可以兼容不同类型的SIM卡。SIM卡接口195也可以兼容外部存储卡。电子设备100通过SIM卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,电子设备100采用eSIM,即:嵌入式SIM卡。eSIM卡可以嵌在电子设备100中,不能和电子设备100分离。
需要说明的,电子设备100可以是手机、平板电脑、桌面型计算机、膝上型计算机、手持计算机、笔记本电脑、超级移动个人计算机(ultra-mobile personal computer,UMPC)、上网本,以及蜂窝电话、个人数字助理(personal digital assistant,PDA)、增强现实(augmented reality,AR)设备、虚拟现实(virtual reality,VR)设备、人工智能(artificial intelligence,AI)设备、可穿戴式设备、车载设备、智能家居设备和/或智慧城市设备,本申请实施例对该电子设备的具体类型不作特殊限制。
电子设备100的软件系统可以采用分层架构,事件驱动架构,微核架构,微服务架构,或云架构。本申请实施例以分层架构的Android系统为例,示例性说明电子设备100的软件结构。
图2是本申请实施例的电子设备100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,将Android系统分为五层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和系统库,硬件抽象层,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息,第一应用等应用程序。
其中,第一应用包括编码预备模块、编码参数调整模块和场景选择模块等。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图系统,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿等。
视图系统包括可视控件,例如显示文字的控件,显示图片的控件等。视图系统可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供电子设备100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等等。
通知管理器使应用程序可以在状态栏中显示通知信息,可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在系统顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,电子设备振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓系统的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
系统库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(Media Libraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子系统进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D图形引擎是2D绘图的绘图引擎。
硬件抽象层是位于系统库与硬件电路之间的接口层,用于将硬件抽象化,为操作系统提供虚拟硬件使用平台。将电子设备的硬件以模块的方式设置,硬件抽象层可以包括模块,如,启动编码解码器模块等。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动、权限管控模块和宏块资源器节点等。
其中,权限管控模块用于控制访问内核层的权限,如,权限管控模块可以配置第一应用访问宏块资源器节点的访问权限,以及允许资源器节点被第一应用访问的权限。
以下将以电子设备运行第一应用,调用电子设备的资源为例,示例说明电子设备100软件及硬件的工作流程。以图2为例,说明电子设备中第一应用调用编码解码功能时软件及硬件的工作流程示意图。
电子设备100中安装第一应用,在电子设备应用程序层包括第一应用。电子设备运行第一应用,显示第一应用对应的界面。触摸传感器180K接收到触摸操作,相应的硬件中断被发给内核层。内核层将触摸操作加工成原始输入事件(包括触摸坐标,触摸操作的时间戳等信息)。原始输入事件被存储在内核层。应用程序框架层从内核层获取原始输入事件,识别该输入事件所对应的控件。
以该触摸操作用于指示电子设备进行投屏业务(或称为第二任务)为例,点击投屏,触发第二业务。第一应用在应用程序框架层创建med iacodec,med iacodec用于传递编解码参数,然后第一应用调用med iacodec传递编解码参数(分辨率和/或帧率)。然后应用程序框架层的med iacodec将编解码参数传递给硬件抽象层,然后硬件抽象层调用驱动层的编码解码器驱动,通过驱动层将编解码参数传递给内核层,内核层会基于接收到的第一应用的编解码参数(与编解码资源相对应,编解码资源可以是宏块数),确定当前宏块数能够支持当前第一应用请求的编解码资源,则向驱动层反馈能够启动编码解码器的消息,然后编码解码器驱动启动编解码。
框架层在接收到请求启动编码器的信息,向硬件抽象层发送调用编码解码器的信息。硬件抽象层在调用电子设备的编码解码器,需要向驱动层发送调用信息,驱动层调用编码解码器并为第一应用提供编码解码。其中,硬件抽象层和驱动是在电子设备中安装芯片的驱动下工作的。
本申请实施例提供一种资源调用方法,在kernel层设置一个节点(如,该节点名称为:宏块资源器节点),该节点用于存储驱动层中当前剩余的宏块资源的数量,并且,内核层中设置应用层对该节点的访问权限。即电子设备运行第一应用时,允许该应用在应用层访问kernel层的节点。具体地说,当电子设备运行第一应用时,第一应用运行第一功能,第一功能需要调用电子设备的宏块资源。那么,第一应用通过访问kernel层的编宏块资源器节点,以确定电子设备当前剩余的宏块资源数量。电子设备可以根据宏块资源数量判断电子设备是否能够满足第一应用的需求,如果剩余宏块资源可以满足第一应用的需求(即剩余宏块资源数量大于等于第一应用需要占用的宏块资源数),则第一应用可以运行第一功能。如果剩余宏块资源不能满足第一应用的需求(即剩余宏块资源数量小于第一应用需要占用的宏块资源数),应用层可以根据第一应用的需求调整需要的宏块资源数,使得电子设备能够实现第一功能。
以下将结合一个具体的应用场景说明本申请实施例提供的调用资源方法。
电子设备中安装第一应用,第一应用可以具有播放视频的功能,还可以具有投屏功能。在电子设备运行第一应用,第一应用播放视频(或称为第一任务),如果此时第一应用接收到用户操作,指示第一电子设备进行投屏(第二任务)功能。则第一电子设备的模块工作流程如图3所示。
应用层包括第一应用,第一应用包括编码预备模块,场景选择模块和编解码参数调整模块。第一应用中投屏功能被触发,则编码预备模块(CodecPrepareModule)被启动。具体地说,编码预备模块确定投屏业务对应的编解码参数(第一参数信息),例如,投屏业务是视频,编解码参数包括视频的分辨率(第二参数)和帧率值(第一参数)。示例性的,投屏业务对应的编解码参数可以由应用自己设定,当第一应用启动投屏功能时,编码预备模块可以确定投屏业务对应的编解码参数。需要说明的,当投屏业务被触发后,编码预备模块将包括分辨率(例如1080p)、帧率值(例如120fps)以及当前场景的可调整参数发送给场景选择模块(SceneChooseModule)。其中当前场景的可调整参数可以是分辨率或帧率。可调整参数可以预置到应用的配置文件中。当前场景的可调整参数为分辨率时,表示当前应用可以接受对分辨率进行调整,也就是说当编解码资源不足的情况下,可以降低分辨率。当前场景的可调整参数为帧率时,表示当前应用可以接受对帧率进行调整,也就是说当编解码资源不足的情况下,可以降低帧率。
当场景选择模块接收到来自编码预备模块的数据,则可以根据当前场景的可调整参数,调整投屏任务的分辨率或帧率值。例如,如果当前投屏场景需要高清投屏,则可调整参数为帧率,在编解码资源不足的情况下,场景选择模块可以降低投屏任务的帧率值。如果当前投屏场景需要连续流畅的高帧率投屏,则可调整参数为分辨率,在编解码资源不足的情况下,场景选择模块可以降低投屏任务的分辨率。其中,场景选择模块在作出选择之后,场景选择模块可以从内核层获取当前编码解码器剩余宏块数。当判断当前编码解码器剩余宏块数足以支持当前应用请求的编解码资源(与编解码参数对应)时,场景选择模块不需要对应用请求的编解码参数进行调整,可以将应用请求的编解码参数传递给编码器预备模块,以使编码器预备模块可以基于应用请求的编解码参数启动投屏业务。
当判断当前编码解码器剩余宏块数不足以支持当前应用请求的编解码资源(与编解码参数对应)时,场景选择模块确定需要对第一应用请求的编解码参数进行调整。然后将调整后的编解码参数传递给编码器预备模块,以使编码器预备模块可以基于调整后的编解码参数启动投屏业务。
上述,场景选择模块从内核层获取当前编码解码器剩余宏块数可以采用以下方式场景选择模块可以访问kernel层的宏块资源器节点。以获取电子设备当前剩余的宏块数。
在一些实现中,场景选择模块可以在获取到当前剩余宏块数之后,与第一应用所需要占用的编码参数进行比较,以判断剩余宏块数是否能够满足第一应用投屏的需求。
具体地说,以投屏视频文件为例,第一应用调用投屏功能所至少需要的宏块的计算方法可以参考如下公式1:
Figure BDA0003118236580000141
其中,S表示第一应用编解码需要的宏块数量;X表示视频文件长度像素数,如果X不是16的整数倍,则需要将X增大以使得X是16的整数倍。例如,假设X是1080,1080并不是16的整数倍,1080与16相除余数为8,则在1080的基础上加上(16-8)就是1080需要增加的数,则此处X就应该是1088;Y表示视频文件宽度像素数,如果Y不是16的整数倍,则需要将Y增大以使得Y是16的整数倍。具体增大Y的方法与上述增大X的方法相同,此处不予赘述。F表示视频文件的帧率值。
当计算得到的宏块数小于等于获取的剩余宏块数,则说明当前编码解码器剩余宏块数足以支持当前应用请求的编解码资源。当计算得到的宏块数大于获取的剩余宏块数,则说明当前编码解码器剩余宏块数不足以支持当前应用请求的编解码资源。
具体的,场景选择模块确定当前剩余宏块数不足够支持应用请求的编解码资源的情况下,场景选择模块向编码参数调整模块发送当前剩余宏块、应用请求的编解码参数(帧率120fps和分辨率1080x1920)和当前场景的可调整参数。其中,第一参数为120fps,第二参数为1080x1920编码参数调整模块可以计算当前剩余宏块数在编码时的最大参数(或称为最大第一参数),示例性的,当前剩余的宏块数为50万,如果当前场景的可调整参数为帧率(第一参数类型),则编码参数调整模块确定当前可调整帧率最大值为61pfs(最大第一参数),分辨率保持不变;如果当前场景的可调整参数为分辨率,则编码参数调整模块确定当前可调整分辨率为550x1920(第四参数),帧率保持不变。编码参数调整模块还可以根据当前的投屏场景进行投屏数据匹配,以当前剩余宏块与当前场景需要的宏块数进行帧率选择(如当前场景的可调整参数为帧率,则进行帧率选择)。例如,编码参数调整模块确定当前可调整帧率最大值为61pfs,第一应用调用的投屏业务的帧率列表(第一参数列表)为{240,90,60,30,20},依次从大到小进行匹配。选择小于编码参数调整模块确定当前可调整帧率最大值的帧率,如60,30,20。一般情况下为达到效果最优,可以基于从大到小匹配,选择到满足条件的帧率(60fps,即第三参数)则确定为调整后的帧率。其中投屏业务的帧率表可以预置在应用的配置文件中。
其中,如果当前剩余宏块数的帧率值与投屏业务的帧率表比较之后,投屏业务的帧率表中的数值均不匹配。也就是说,投屏业务的最小帧率值也无法满足投屏业务需求,则这种情况下,第一应用可以响应用户无法支持投屏业务。
场景选择模块在读取kernel层的宏块数时,场景选择模块先访问权限管理层中的安全增强模块(SepolicyModule),安全增强模块用于验证应用层中的场景选择模块是否具备访问Kernel层节点(如,该节点名称为宏块资源器节点)的权限。
需要明白的,此处场景选择模块没有直接与Kernel层节点交互是因为系统一般默认应用层不会直接访问Kernel,因此,在权限管理层时验证第一应用的权限,以判断第一应用是否可以访问Kernel节点。具体来说,在权限管理层中设置权限新增模块(Selinux),权限新增模块用于为第一应用配置访问Kernel节点的权限。实际上,可以理解为Selinux的配置构建了应用层访问Kernel节点的访问桥梁。其中,权限新增模块给出应用新增权限(SelinuxForApp),则表示第一应用具有访问Kernel节点的权限,权限新增模块给出节点新增权限(SelinuxForKernel),表示Kernel节点可以被应用层访问。基于上述权限识别之后,场景选择模块通过SelinuxForApp,以及SelinuxForKernel获取到Kernel节点中当前剩余宏块数。
内核层包括宏块资源器节点,用于计算当前设备所剩余宏块资源。其中,该节点可以是一个内核文件。可以将计算得到的剩余宏块资源作为内核文件的存储数据,以供访问。该节点需要实时根据电子设备调整当前剩余宏块资源。电子设备开机启动,创建宏块资源齐节点。当应用通过接口读取内核层的剩余宏块数时,内核层的宏块资源器节点获取全部宏块数总数,具体的电子设备支持的全部宏块数可以由芯片决定,然后宏块资源器节点可以获知当前已使用的宏块数,然后用宏块数总数减去已使用的宏块数得到剩余宏块数,存储在宏块资源器节点中。并且宏块资源器节点可以向应用返回剩余宏块数。
请参考图4,为本申请实施例示出的电子设备创建宏块资源器节点,以及计算剩余宏块数示意框图。
具体地说,如图4所示,电子设备开机启动,编码解码器驱动初始化,即开始使用电子设备的编码器,此时,电子设备可以创建宏块资源器节点。
其中,宏块资源器节点是创建在系统目录/sys/devices下的节点。系统是默认应用无法直接访问系统目录/sys/devices,则需要在应用权限层中设置应用新增权限,以开放第一应用直接访问系统目录/sys/devices下的节点。
当宏块资源器节点被创建之后,宏块资源器节点可以获取电子设备中全部的宏块数总数,宏块资源器节点根据全部宏块数总数和当前已使用的宏块数,计算出当前剩余宏块数。当第一应用请求获取剩余宏块数,则宏块资源器节点将当前存储的剩余宏块数发送给第一应用。
如图3所示,应用层中第一应用接收到投屏操作,向编码预备模块发送投屏操作,即如图3中1标注的流程。编码预备模块将投屏视频的分辨率(或称为第二参数类型)和帧率值(或称为第一参数类型)作为编码器参数值,以及当前场景的可调整参数,发送至场景选择模块,即如图3中2标注的流程。场景选择模块在获取到编码器参数值之后,根据分辨率和帧率值可以计算当前投屏业务所需要宏块数。场景选择模块在获取到编码器参数值和可调整参数之后,场景选择模块获取当前剩余宏块数,如图3中3-6标注的流程。其中,场景选择模块需要通过安全增加模块(或称为安全模块)。安全增加模块验证第一应用具有访问宏块资源器节点的权限,则第一应用可以通过安全增加模块,并获取到宏块资源器节点中存储的当前剩余宏块数。
一方面,场景选择模块获取到当前剩余宏块数之后,如果剩余宏块数可以满足投屏需求(即剩余宏块数大于等于投屏所需宏块数),可以将第一应用请求的编解码参数传递给编码器预备模块,如图3中8对应的流程。进一步的,编码器预备模块调用宏块数,进行编码解码,以使编码器预备模块可以基于应用请求的编解码参数值启动投屏业务。
另一方面,场景选择模块获取到当前剩余宏块数之后,计算当前投屏所需宏块数,如果剩余宏块数不能满足投屏需求(即剩余宏块数小于投屏所需宏块数),场景选择模块可以将当前剩余宏块数,以及当前场景投屏参数传输至编码参数调整模块,如图3中9标注的流程。编码参数调整模块计算当前剩余宏块下,执行投屏业务的最大参数,并与当前场景投屏参数进行参数匹配并确定参数,即图3中10标注的流程。编码参数调整模块依据剩余宏块的参数与投屏的参数进行比较之后做出决定参数。该决定参数可以是当前场景投屏参数中一个帧率值(或分辨率),也可以是无法支持投屏的信息。即图3中11标注的流程。
其中,如果该结果信息是一个帧率值(或分辨率),则编码预备模块按照该帧率值(或分辨率)调用宏块进行编码和解码,以实现投屏。如果该结果信息指示无法支持投屏,电子设备可以显示无法投屏的提示信息。
本申请提供的资源条用方法中,电子设备可以在开机时就创建Kernel节点,以便可以额实时计算当前电子设备剩余宏块数。
以下将以电子设备是手机,在手机上运行本申请提供的资源调用方法。如图5所示,为资源调用方法的流程图,该方法包括步骤601-步骤612。
其中,手机上安装第一应用,第一应用为视频类应用。当前手机运行第一应用,并播放视频(第一任务)。
步骤601:手机调用解码器解码,以实现播放视频的功能。
可以理解的,手机运行第一应用,在用户的操作下,手机播放第一应用中的视频文件。在播放视频文件的过程中,手机对视频文件进行解码。
步骤602:接收到投屏操作。
即手机接收到用户操作(第一操作),触发投屏(第二任务)。
步骤603:编码预备模块确定投屏视频的编码器参数。其中,编码器参数包括分辨率值和帧率值和当前场景的可调整参数类型(当前场景的可调整参数类型可以是分辨率类型或帧率类型)。
示例性的分辨率为1080x1920,帧率值为120fps(第一帧率值),当前场景的可调整参数类型为帧率类型。
另外,本申请实施例以投屏需要保证视频的清晰度(即分辨率是投屏业务需要满足的指标)为具体应用场景。也就是说,在投屏的过程中,为了维护视频的清晰度,可以调整视频的帧率。
步骤604:编码预备模块向场景选择模块发送应用请求的编解码参数。
具体的,编码预备模块向场景选择模块发送应用请求的分辨率为1080x1920(第二参数),帧率值为120fps(第一参数),当前场景的可调整参数类型为帧率类型。
步骤605:确定当前手机中剩余的宏块数(编解码资源)。
其中,当手机中第一应用在获取剩余宏块数时,需要通过安全增加模块(安全模块)验证权限。具体的步骤605包括605-1到605-6。
步骤605-1:场景选择模块向安全增加模块发送获取剩余宏块数的请求。
步骤605-2:安全增加模块确定第一应用具有访问宏块资源器节点的权限。
步骤605-3:安全增加模块通过宏块资源器节点获取剩余宏块数。
步骤605-4:宏块资源器计算手机中当前剩余宏块数。
步骤605-5:宏块资源器节点向安全增加模块返回剩余宏块数。
步骤605-6:安全增加模块向场景选择模块发送剩余宏块数。
需要说明的,上述安全增加模块的介绍说明中,对于场景选择模块获取剩余宏块数的具体操作已经进行说明,此处不与赘述。
步骤606:场景选择模块计算投屏功能所需的宏块数。
具体地说,场景选择模块根据编码器参数计算当前投屏功能所需的宏块数,编码器参数中,分辨率为1080x1920,帧率值为120fps。可以参考上述公式1计算得到投屏功能所需的宏块数。如,采用上述公式1计算得到,投屏业务所需的宏块数为:979200(记为最大宏块数,第一编解码资源)。
步骤607:场景选择模块判断剩余宏块数是否满足投屏功能。
其中,如果确定剩余宏块数不能满足投屏功能,也就是说,场景选择模块获取到当前剩余宏块数少于上述计算得到的最大宏块数。则可以执行步骤608。
另外,如果确定剩余宏块数可以满足投屏功能,也就是说,场景选择模块获取到剩余宏块数大于或等于上述计算得到的最大宏块数,则场景选择模块可以将编解码参数发送给编码器预备模块,以是编码器预备模块可以基于应用请求的编码器参数启动投屏功能。
步骤608:场景选择模块向编码参数调整模块发送应用请求的编解码参数和可调整参数。
编解码参数包括分辨率为1080x1920,帧率值为120fps。
步骤609:编码参数调整模块计算当前剩余宏块数对应的编辑器最大帧率。
其中,由于在当前投屏场景下,可以调整帧率值。因此,编码参数调整模块根据编解码参数和剩余宏块数计算当前投屏可以采用的最大帧率。
步骤610:编码参数调整模块判断最大帧率值是否与编码器参数中的帧率值列表中的帧率值匹配。
其中,参数调整模块将计算得到的最大帧率与投屏的帧率表中的帧率值进行比较,依次从帧率表中从大到小进行比较,选择小于最大帧率的帧率值(称为第二帧率值,第三参数)。
步骤611:编码参数调整模块确定最大帧率值与第二帧率值匹配,向编码预备模块发送第二帧率值。
可以理解的,当编解码参数调整为第二帧率时,剩余宏块数可以满足第一投屏功能。
步骤612:编码预备模块基于调整后的编解码参数执行投屏操作。
需要明白的,上述以调整帧率(第一参数类型)为场景说明,在具体实现中,编码参数调整模块可以调整分辨率(第二参数类型),根据分辨率列表(或称为第二参数列表)。其中,调整分辨率的方法与上述调整帧率的方法相似,此处不与赘述。
可以理解的,本申请实施例提供的资源调用方法,可以为应用层和内核层提供访问路径。内核层中包括有当前宏块数,应用层可以访问当前宏块数,使得应用层可以根据当前资源占用情况确定应用层中功能是否能够实现。解决了应用层中因为资源被部分占用而无法再次调用资源的问题,使得电子设备可以为用户提供多个功能,提高了电子设备的智能性。
以上是以电子设备是手机为例说明本申请实施例提供的方法,当电子设备为其他设备时,也可以采用上述的方法。此处不予赘述。
可以理解的是,本申请实施例提供的电子设备为了实现上述功能,其包含了执行各个功能相应的硬件结构和/或软件模块。本领域技术人员应该很容易意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,本申请实施例能够以硬件或硬件和计算机软件的结合形式来实现。某个功能究竟以硬件还是计算机软件驱动硬件的方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本申请实施例的范围。
本申请实施例可以根据上述方法示例对上述电子设备进行功能模块的划分,例如,可以对应各个功能划分各个功能模块,也可以将两个或两个以上的功能集成在一个处理模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。需要说明的是,本申请实施例中对模块的划分是示意性的,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式。
本申请实施例还提供一种芯片系统,如图6所示,该芯片系统包括至少一个处理器701和至少一个接口电路702。处理器701和接口电路702可通过线路互联。例如,接口电路702可用于从其它装置(例如电子设备的存储器)接收信号。又例如,接口电路702可用于向其它装置(例如处理器701)发送信号。示例性的,接口电路702可读取存储器中存储的指令,并将该指令发送给处理器701。当所述指令被处理器701执行时,可使得电子设备执行上述实施例中的各个步骤。当然,该芯片系统还可以包含其他分立器件,本申请实施例对此不作具体限定。
本申请实施例还提供一种计算机存储介质,该计算机存储介质包括计算机指令,当所述计算机指令在上述电子设备上运行时,使得该电子设备执行上述方法实施例中手机执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,当所述计算机程序产品在计算机上运行时,使得所述计算机执行上述方法实施例中手机执行的各个功能或者步骤。
通过以上实施方式的描述,所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。
在本申请所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个装置,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是一个物理单元或多个物理单元,即可以位于一个地方,或者也可以分布到多个不同地方。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个可读取存储介质中。基于这样的理解,本申请实施例的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该软件产品存储在一个存储介质中,包括若干指令用以使得一个设备(可以是单片机,芯片等)或处理器(processor)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上内容,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (15)

1.一种资源调用方法,其特征在于,应用于电子设备,所述方法包括:
接收到第一操作,所述第一操作用于触发第二任务,所述第二任务在执行过程中使用编解码资源;
获取所述电子设备当前剩余编解码资源;
确定所述剩余编解码资源是否满足执行所述第二任务所需的编解码资源;
若确定所述剩余编解码资源满足执行所述第二任务所需的编解码资源,使用所述剩余编解码资源执行所述第二任务。
2.根据权利要求1所述的方法,其特征在于,所述第二任务为投屏任务,所述获取所述电子设备当前剩余编解码资源之前,所述方法还包括:
确定执行所述第二任务的第一参数信息;
所述使用所述剩余编解码资源执行所述第二任务,具体为:使用所述剩余编码器资源,按照所述第一参数信息执行所述第二任务。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
若确定所述剩余编解码资源不满足执行所述第二任务的编解码资源,基于所述第一参数信息和所述剩余编解码资源,得到第二参数信息;
使用所述剩余编码器资源,按照所述第二参数信息执行所述第二任务。
4.根据权利要求1-3任一项所述的方法,其特征在于,所述方法还包括:
创建内核节点,所述内核节点用于存储所述当前剩余编码资源。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述获取所述电子设备当前剩余编解码资源,具体为:通过所述内核节点获取所述电子设备当前剩余编解码资源。
6.根据权利要求1-5任一项所述的方法,其特征在于,所述获取所述电子设备当前剩余编解码资源之后,所述方法还包括:
基于所述第一参数信息,确定执行所述第二任务对应的第一编解码资源;
所述确定剩余编解码资源满足执行所述第二任务所需的编解码资源,具体为:确定所述剩余编码器资源大于或等于所述第一编码器资源;
所述确定剩余编解码资源不满足执行所述第二任务所需的编解码资源,具体为:确定所述剩余编码器资源小于所述第一编码器资源。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述第一参数信息包括:第一参数、第二参数和可调整参数类型中一个或多个,所述可调整参数为第一参数类型和/或第二参数类型,所述第一参数类型和所述第二参数类型不同。
8.根据权利要求1-7任一项所述的方法,其特征在于,所述电子设备预置有第一参数列表和第二参数列表,所述第一参数列表包含有所述第一参数类型的多个参数,所述第二参数列表包含有所述第二参数类型的多个参数,所述确定剩余编解码资源不满足执行所述第二任务所需的编解码资源之后,所述方法还包括:
当所述可调整参数类型为第一参数类型时,确定所述剩余编解码资源对应的最大第一参数;
确定所述第一参数列表中与所述最大第一参数相匹配的第三参数,则所述第二参数信息包括所述第三参数和所述第二参数;
或者,当所述可调整参数类型为第二参数类型时,确定所述剩余编解码资源对应的最大第二参数;
确定所述第二参数列表中与所述最大第二参数相匹配的第四参数,则所述第二参数信息包括所述第二参数和所述第四参数。
9.根据权利要求1-8任一项所述的方法,其特征在于,所述电子设备包括第一应用,所述第一应用为投屏应用或者包含投屏功能的应用,所述第二任务为所述第一应用中的投屏任务,所述编解码资源为宏块数,所述第一参数类型为帧率,所述第二参数类型为分辨率。
10.根据权利要求1-9任一项所述的方法,其特征在于,所述方法还包括:
为所述第一应用配置访问所述内核节点的权限,所述访问所述内核节点的权限为允许访问内核节点;
为所述内核节点配置第一应用的访问权限,所述第一应用的访问权限为允许所述第一应用访问。
11.根据权利要求1-10任一项所述的方法,其特征在于,所述第一应用还包括所述第一任务,所述接收到第一操作之前,所述方法还包括:
所述电子设备执行第一任务,所述第一任务在执行过程中使用编解码资源。
12.根据权利要求1-11任一项所述的方法,其特征在于,所述第一任务是播放视频业务;
所述电子设备执行第一任务包括:所述电子设备调用部分宏块数执行所述播放视频业务。
13.一种资源调用方法,其特征在于,应用于电子设备,所述电子设备包括第一应用,所述第一应用包括编码预备模块,场景选择模块和编码参数调整模块,所述电子设备还包括有安全模块和内核节点,所述内核节点用于存储剩余宏块数,所述方法包括:
接收第一操作,所述用于触发所述第一应用的第二任务,所述第二任务为投屏任务;
所述编码预备模块确定执行所述第二任务的第一参数信息,所述第一参数信息包括第一帧率值、第一分辨率值和可调整参数类型,所述可调整参数类型为帧率类型和/或分辨率类型;
所述编码预备模块向所述场景选择模块发送所述第一参数信息;
响应于接收所述第一参数信息,所述场景选择模块通过所述安全模块获取剩余宏块数;
所述安全模块确认所述第一应用具有访问所述内核节点的权限;
所述安全模块通过所述内核节点获取剩余宏块数;
所述安全模块向所述场景选择模块发送所述剩余宏块数;
所述场景选择模块基于所述第一参数信息,确定执行所述第二任务对应的第一宏块数;
所述场景选择模块确定所述剩余宏块数小于所述第一宏块数;
所述场景选择模块向所述编解码参数调整模块发送所述第一参数信息;
响应于接收所述第一参数信息,当所述可调整参数为帧率类型时,所述编解码参数调整模块确定所述剩余编解码资源对应的最大帧率值;
所述编解码参数调整模块确定帧率列表中与所述最大帧率帧值相匹配的第二帧率值;
所述编解码参数调整模块向所述编码预备模块发送所述第二帧率值;
所述编码预备模块使用所述剩余编码器资源,按照所述第二帧率值和第一分辨率值执行所述第二任务;
或者,当所述可调整参数为分辨率类型时,所述编解码参数调整模块确定所述剩余编解码资源对应的最大分辨率;
所述编解码参数调整模块确定分辨率列表中与所述最大分辨率相匹配的第二分辨率值;
所述编解码参数调整模块向所述编码预备模块发送所述第二分辨率值;
所述编码预备模块使用所述剩余编码器资源,按照所述第一帧率值和第二分辨率值执行所述第二任务。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;存储器,所述存储器中存储有代码;
当所述代码被所述一个或多个处理器执行时,使得所述电子设备执行如权利要求1-13任一项所述的方法。
15.一种计算机可读存储介质,其特征在于,包括计算机指令,当所述计算机指令在电子设备上运行时,使得电子设备执行如权利要求1-13任一项所述的方法。
CN202110669547.0A 2021-06-16 2021-06-16 一种资源调用方法及电子设备 Active CN113722058B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110669547.0A CN113722058B (zh) 2021-06-16 2021-06-16 一种资源调用方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110669547.0A CN113722058B (zh) 2021-06-16 2021-06-16 一种资源调用方法及电子设备

Publications (2)

Publication Number Publication Date
CN113722058A true CN113722058A (zh) 2021-11-30
CN113722058B CN113722058B (zh) 2022-10-25

Family

ID=78672969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110669547.0A Active CN113722058B (zh) 2021-06-16 2021-06-16 一种资源调用方法及电子设备

Country Status (1)

Country Link
CN (1) CN113722058B (zh)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115065824A (zh) * 2022-08-18 2022-09-16 荣耀终端有限公司 解码器确定方法、装置、芯片、电子设备及介质
CN116027880A (zh) * 2022-05-16 2023-04-28 荣耀终端有限公司 资源调度方法和电子设备
CN116033158A (zh) * 2022-05-30 2023-04-28 荣耀终端有限公司 投屏方法和电子设备
CN116055715A (zh) * 2022-05-30 2023-05-02 荣耀终端有限公司 编解码器的调度方法及电子设备
CN116089055A (zh) * 2022-05-16 2023-05-09 荣耀终端有限公司 资源调度方法和装置
CN116781973A (zh) * 2022-03-09 2023-09-19 广州开得联智能科技有限公司 视频编解码方法、装置、存储介质和电子设备
WO2023246946A1 (zh) * 2022-06-24 2023-12-28 杭州海康威视数字技术股份有限公司 编解码资源分配方法、装置及电子设备

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215594A1 (en) * 2003-01-24 2004-10-28 Bea Systems, Inc. System for transaction processing with parallel execution
US20140362918A1 (en) * 2013-06-07 2014-12-11 Apple Inc. Tuning video compression for high frame rate and variable frame rate capture
US20160124672A1 (en) * 2014-10-31 2016-05-05 Xiaomi Inc. Method and device for optimizing memory
CN105959304A (zh) * 2016-06-30 2016-09-21 宇龙计算机通信科技(深圳)有限公司 一种帧率调整的方法及装置
CN106534915A (zh) * 2016-10-31 2017-03-22 努比亚技术有限公司 移动终端及移动终端播放电视的方法
CN108282696A (zh) * 2018-02-07 2018-07-13 北京易讯理想科技有限公司 一种序列帧图像播放的硬件资源分配方法
CN109213593A (zh) * 2017-07-04 2019-01-15 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN111526314A (zh) * 2020-04-24 2020-08-11 华为技术有限公司 视频拍摄方法及电子设备
CN112637672A (zh) * 2020-12-11 2021-04-09 深圳乐播科技有限公司 一种投屏方法、投屏接收终端及投屏发送终端

Patent Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040215594A1 (en) * 2003-01-24 2004-10-28 Bea Systems, Inc. System for transaction processing with parallel execution
US20140362918A1 (en) * 2013-06-07 2014-12-11 Apple Inc. Tuning video compression for high frame rate and variable frame rate capture
US20160124672A1 (en) * 2014-10-31 2016-05-05 Xiaomi Inc. Method and device for optimizing memory
CN105959304A (zh) * 2016-06-30 2016-09-21 宇龙计算机通信科技(深圳)有限公司 一种帧率调整的方法及装置
CN106534915A (zh) * 2016-10-31 2017-03-22 努比亚技术有限公司 移动终端及移动终端播放电视的方法
CN109213593A (zh) * 2017-07-04 2019-01-15 阿里巴巴集团控股有限公司 用于全景视频转码的资源分配方法、装置和设备
CN108282696A (zh) * 2018-02-07 2018-07-13 北京易讯理想科技有限公司 一种序列帧图像播放的硬件资源分配方法
CN111526314A (zh) * 2020-04-24 2020-08-11 华为技术有限公司 视频拍摄方法及电子设备
CN112637672A (zh) * 2020-12-11 2021-04-09 深圳乐播科技有限公司 一种投屏方法、投屏接收终端及投屏发送终端

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN116781973A (zh) * 2022-03-09 2023-09-19 广州开得联智能科技有限公司 视频编解码方法、装置、存储介质和电子设备
CN116781973B (zh) * 2022-03-09 2024-04-23 广州开得联智能科技有限公司 视频编解码方法、装置、存储介质和电子设备
CN116027880A (zh) * 2022-05-16 2023-04-28 荣耀终端有限公司 资源调度方法和电子设备
CN116089055A (zh) * 2022-05-16 2023-05-09 荣耀终端有限公司 资源调度方法和装置
CN116027880B (zh) * 2022-05-16 2023-11-24 荣耀终端有限公司 资源调度方法和电子设备
CN116089055B (zh) * 2022-05-16 2024-04-02 荣耀终端有限公司 资源调度方法和装置
CN116033158A (zh) * 2022-05-30 2023-04-28 荣耀终端有限公司 投屏方法和电子设备
CN116055715A (zh) * 2022-05-30 2023-05-02 荣耀终端有限公司 编解码器的调度方法及电子设备
CN116055715B (zh) * 2022-05-30 2023-10-20 荣耀终端有限公司 编解码器的调度方法及电子设备
CN116033158B (zh) * 2022-05-30 2024-04-16 荣耀终端有限公司 投屏方法和电子设备
WO2023246946A1 (zh) * 2022-06-24 2023-12-28 杭州海康威视数字技术股份有限公司 编解码资源分配方法、装置及电子设备
CN115065824A (zh) * 2022-08-18 2022-09-16 荣耀终端有限公司 解码器确定方法、装置、芯片、电子设备及介质

Also Published As

Publication number Publication date
CN113722058B (zh) 2022-10-25

Similar Documents

Publication Publication Date Title
CN113722058B (zh) 一种资源调用方法及电子设备
CN109559270B (zh) 一种图像处理方法及电子设备
CN112399390B (zh) 一种蓝牙回连的方法及相关装置
CN112130742A (zh) 一种移动终端的全屏显示方法及设备
CN113838490B (zh) 视频合成方法、装置、电子设备及存储介质
CN113704205B (zh) 日志存储的方法、芯片、电子设备和可读存储介质
CN114095599B (zh) 消息显示方法和电子设备
CN113448382A (zh) 多屏幕显示电子设备和电子设备的多屏幕显示方法
CN113254409A (zh) 文件共享方法、系统及相关设备
CN114125130A (zh) 控制通信服务状态的方法、终端设备和可读存储介质
CN114995715B (zh) 悬浮球的控制方法和相关装置
CN114125793A (zh) 一种蓝牙数据传输方法及相关装置
CN110286975B (zh) 一种前景元素的显示方法和电子设备
CN113126948A (zh) 一种音频播放方法及相关设备
CN114500901A (zh) 双景录像方法、装置和电子设备
CN114222020B (zh) 位置关系识别方法、设备及可读存储介质
CN114915721A (zh) 建立连接的方法与电子设备
CN112437341B (zh) 一种视频流处理方法及电子设备
CN113542574A (zh) 变焦下的拍摄预览方法、终端、存储介质及电子设备
CN113438366A (zh) 信息通知的交互方法、电子设备和存储介质
CN113590346B (zh) 处理业务请求的方法和电子设备
WO2022135195A1 (zh) 显示虚拟现实界面的方法、装置、设备和可读存储介质
WO2022170854A1 (zh) 视频通话的方法与相关设备
CN114827098A (zh) 合拍的方法、装置、电子设备和可读存储介质
CN114116073A (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
GR01 Patent grant
GR01 Patent grant