CN107402733A - 用于合成图形数据的电子设备及其方法 - Google Patents

用于合成图形数据的电子设备及其方法 Download PDF

Info

Publication number
CN107402733A
CN107402733A CN201710286340.9A CN201710286340A CN107402733A CN 107402733 A CN107402733 A CN 107402733A CN 201710286340 A CN201710286340 A CN 201710286340A CN 107402733 A CN107402733 A CN 107402733A
Authority
CN
China
Prior art keywords
layer
synthesis
synthesis type
graph data
electronic equipment
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
CN201710286340.9A
Other languages
English (en)
Other versions
CN107402733B (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.)
Samsung Electronics Co Ltd
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of CN107402733A publication Critical patent/CN107402733A/zh
Application granted granted Critical
Publication of CN107402733B publication Critical patent/CN107402733B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T5/00Image enhancement or restoration
    • G06T5/50Image enhancement or restoration using two or more images, e.g. averaging or subtraction
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • G06F1/3203Power management, i.e. event-based initiation of a power-saving mode
    • G06F1/3206Monitoring of events, devices or parameters that trigger a change in power modality
    • G06F1/3212Monitoring battery levels, e.g. power saving mode being initiated when battery voltage goes below a certain level
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4418Suspend and resume; Hibernate and awake
    • 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/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/60Memory management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • G06T15/50Lighting effects
    • G06T15/503Blending, e.g. for anti-aliasing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/10Segmentation; Edge detection
    • G06T7/194Segmentation; Edge detection involving foreground-background segmentation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T7/00Image analysis
    • G06T7/30Determination of transform parameters for the alignment of images, i.e. image registration
    • G06T7/37Determination of transform parameters for the alignment of images, i.e. image registration using transform domain methods
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/003Details of a display terminal, the details relating to the control arrangement of the display terminal and to the interfaces thereto
    • G09G5/006Details of the interface to the display terminal
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/363Graphics controllers
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/395Arrangements specially adapted for transferring the contents of the bit-mapped memory to the screen
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0261Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
    • H04W52/0274Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof
    • H04W52/0277Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level by switching on or off the equipment or parts thereof according to available power supply, e.g. switching off when a low battery condition is detected
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W52/00Power management, e.g. TPC [Transmission Power Control], power saving or power classes
    • H04W52/02Power saving arrangements
    • H04W52/0209Power saving arrangements in terminal devices
    • H04W52/0261Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level
    • H04W52/0287Power saving arrangements in terminal devices managing power supply demand, e.g. depending on battery level changing the clock frequency of a controller in the equipment
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/25Pc structure of the system
    • G05B2219/25289Energy saving, brown out, standby, sleep, powerdown modus for microcomputer
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T2207/00Indexing scheme for image analysis or image enhancement
    • G06T2207/20Special algorithmic details
    • G06T2207/20212Image combination
    • G06T2207/20221Image fusion; Image merging
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/10Mixing of images, i.e. displayed pixel being the result of an operation, e.g. adding, on the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/12Overlay of images, i.e. displayed pixel being the result of switching between the corresponding input pixels
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/08Power processing, i.e. workload management for processors involved in display operations, such as CPUs or GPUs
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/12Frame memory handling
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2360/00Aspects of the architecture of display systems
    • G09G2360/18Use of a frame buffer in a display terminal, inclusive of the display panel
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Signal Processing (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Human Computer Interaction (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Security & Cryptography (AREA)
  • User Interface Of Digital Computer (AREA)
  • Controls And Circuits For Display Device (AREA)
  • Digital Computer Display Output (AREA)

Abstract

一种电子设备包括:第一图形合成器,其合成与第一合成类型的层相关联的第一图形数据;第二图形合成器,其合成与不同于第一合成类型的第二合成类型的层相关联的第二图形数据。所述电子设备还包括处理器,其将与至少一个应用相关联的多个层中的每个层的合成类型设置到第一或第二合成类型;使用第一图形合成器来合成相应于设置到第一合成类型的层的图形数据;利用第二图形合成器来合成帧缓冲器中的合成的图形数据和相应于设置到第二合成类型的层的第二图形数据;通过与电子设备连接的显示器来显示合成的图形数据。

Description

用于合成图形数据的电子设备及其方法
相关申请的交叉引用
本申请要求于2016年4月27日在韩国知识产权局提交的并且被分配序列号10-2016-0051743的韩国专利申请的优先权,其全部公开内容通过引用并入本文。
背景技术
1.技术领域
本发明涉及一种用于合成图形数据的电子设备及其方法。
2.背景技术
随着信息和通信技术的发展,诸如基站等的网络设备安装在全国各地。电子设备通过网络向另一电子设备发送数据和从另一电子设备接收数据,因此用户在国内的任何地方自由地使用该网络。
各种电子设备提供各种功能以应对数字会聚的最近趋势。例如,智能电话支持通过网络连接到因特网的功能以及呼叫功能。此外,智能手机支持以下功能:播放音乐或视频的功能以及通过使用图像传感器拍摄视频和照片的功能。
为了执行上述功能,智能电话可以包括提供电力的电池。电子设备可消耗大量电流以执行上述功能。
发明概述
为了解决上述讨论的缺点,首要的是提供一种用于减小应用输出所需的电流消耗的电子设备和方法。
根据本发明的一个方面,一种电子设备包括:第一图形合成器,其合成与第一合成类型的层相关联的第一图形数据;第二图形合成器,其合成与不同于第一合成类型的第二合成类型的层相关联的第二图形数据;以及处理器。该处理器被配置用于将与至少一个应用相关联的多个层中的每一个的合成类型设置为第一合成类型或第二合成类型;通过使用第一图形合成器在帧缓冲器中合成多个层中的相应于被设置为第一合成类型的层的第一图形数据;通过使用第二图形合成器合成在帧缓冲器中合成的图形数据和多个层中的相应于被设置为第二合成类型的层的第二图形数据;经与电子设备操作上连接的显示器来显示通过使用第二图形合成器所合成的图形数据。
根据本发明的另一方面,电子设备的图形数据合成方法包括:将与至少一个应用相关联的多个层中的每一个的合成类型设置为第一合成类型或第二合成类型;通过使用第一图形合成器在帧缓冲器中合成多个层中的相应于被设置为第一合成类型的层的第一图形数据;通过使用第二图形合成器合成在帧缓冲器中合成的图形数据和多个层中相应于被设置为第二合成类型的层的第二图形数据;经与电子设备操作上连接的显示器来显示通过使用第二图形合成器所合成的图形数据。
根据本发明的另一方面,一种其上记录有程序的计算机可读记录介质,所述程序在被执行时执行一种方法,所述方法包括:将与至少一个应用相关联的多个层中的每一个的合成类型设置为第一合成类型或第二合成类型;通过使用第一图形合成器在帧缓冲器中合成多个层中的相应于被设置为第一合成类型的层的第一图形数据;通过使用第二图形合成器合成在帧缓冲器中合成的图形数据和多个层中相应于被设置为第二合成类型的层的第二图形数据;经与电子设备操作上连接的显示器来显示通过使用第二图形合成器所合成的图形数据。
从以下结合附图公开本发明的各种实施例的详细描述,本发明的其他方面、优点和显著特征对于本领域技术人员将变得显而易见。
在进行下面的具体实施方式之前,阐述在本专利文件中使用的某些词语和短语的定义可能是有利的:术语“包括”和“包含”及其派生词意味着包括但不限制;术语“或”是包括性的,意思是和/或;短语“与...相关联”和“与其相关联”以及其派生词可以意味着包括、被包括在内、互连、包含、被包含在内、连接到或与...耦合、耦合到或与...耦合、配合、交织、并置、接近、绑定到或与...绑定、具有、具有属性等;并且术语“控制器”是指控制至少一个操作的任何设备、系统或其一部分,这样的设备可以以硬件、固件或软件或其至少两个的某种组合来实现。应当注意,与任何特定控制器相关联的功能可以是集中式或分布式的,无论是本地还是远程的。在本专利文件中提供了某些词和短语的定义,本领域普通技术人员应当理解,在许多情况下(如果不是大多数情况),这样的定义适用于这样定义的词和短语的先前以及将来的使用。
附图说明
为了更完整地理解本发明及其优点,现在参考结合附图的以下描述,其中相同的附图标记表示相同的部分:
图1示出根据本发明的各种实施例的网络环境中的电子设备;
图2示出了根据本发明的各种实施例的电子设备;
图3示出根据本发明的各种实施例的程序模块;
图4示出了根据本发明的各种实施例的电子设备;
图5示出了根据本发明的各种实施例的电子设备;
图6示出根据本发明的各个实施例的其中电子设备执行图像合成并显示合成的图像的方法;
图7示出根据本发明的各种实施例的其中电子设备执行图像合成并显示合成的图像的方法;
图8示出根据本发明的各种实施例的其中电子设备执行图像合成并在第一垂直同步信号处显示合成的图像的方法;
图9示出根据本发明的各种实施例的其中电子设备执行图像合成并在第二垂直同步信号处显示合成的图像的方法;和
图10示出根据本发明的各种实施例的其中电子设备执行图像合成并显示合成的图像的方法。
应当注意:在整个附图中相同的附图标记用于描绘相同或相似的元件、特征和结构。
详细说明
以下讨论的图1至图10以及用于描述本专利文件中的本发明的原理的各种实施例仅仅是说明性的,并且不应以任何方式解释为限制本发明的范围。本领域技术人员将理解,本发明的原理可以在任何适当布置的电子设备中实现。
在下文中,参考附图公开本发明的各种实施例。然而,本发明不旨在由本发明的各种实施例限于特定实施例,并且意图是本发明覆盖本发明的所有修改、等同物和/或替代,只要它们在所附权利要求及其等同物的范围内。关于附图的描述,相同的附图标记表示相同的元件。
本文中使用的术语“包括”、“包括”和“具有”或“可包括”或“可包含”和“可具有”表示所公开的功能、操作或元件的存在,但不排除其他功能、操作或元素。
在本文公开的公开中,本文使用的表述“A或B”、“A或/和B中的至少一个”或“A或/和B中的一个或多个”等可以包括任何和所有组合的一个或多个相关联的所列项目。例如,术语“A或B”、“A和B中的至少一个”或“A或B中的至少一个”可以指其中包括至少一个A的情况(1)、包括至少一个B的情况(2)或包括至少一个A和至少一个B两者的情况(3)。
诸如本文中使用的术语“第一”、“第二”等可以指本发明的各种实施例的各种元件,但不限制元件。例如,“第一用户设备”和“第二用户设备”可以指示不同的用户设备,而不管其顺序或优先级。例如,在不脱离本发明的范围的情况下,第一元件可以被称为第二元件,并且类似地,第二元件可以被称为第一元件。
应当理解,当元件(例如第一元件)被称为“(可操作地或通信地)耦合到/耦合到”或“连接到”另一元件(例如第二元件)时,其可以是直接耦合到/到或连接到另一元件或者可以存在中间元件(例如第三元件)。相反,当元件(例如第一元件)被称为“直接耦合到/到”或“直接连接到”另一元件(例如第二元件)时,应当理解没有中间元素(例如第三元素)。
根据情况,本文使用的表述“配置用于”可以用作例如表述“适合于”、“具有能力”、“设计用于”、“适于”、“作出”、“或“能够”。术语“配置用于”不能仅仅意味着在硬件中“专门设计”。相反,措辞“被配置用于”的装置可以表示装置“能够”与另一装置或其他部件一起操作。例如,“配置用于(或设置用于)执行A、B和C的处理器”可以表示用于执行相应操作的专用处理器(例如嵌入式处理器)或通用处理器(例如中央处理器单元(CPU)或应用处理器),其通过执行存储在存储器装置中的一个或多个软件程序来执行相应的操作。
本发明中使用的术语用于描述指定的实施例,并且不旨在限制本发明的范围。除非另有说明,否则单数形式的术语可以包括复数形式。本文使用的包括技术或科学术语的所有术语可以具有本领域技术人员通常理解的相同的含义。还应当理解,在字典中定义并且通常使用的术语也应当被解释为相关相关技术中的习惯,而不是理想化或过度正式的检测,除非在本发明的各种实施例中明确地如此定义披露。在一些情况下,即使术语是在说明书中定义的术语,它们也不能被解释为排除本发明的实施例。
例如,根据本发明的各种实施例的电子设备可以包括智能电话、平板个人计算机(PC)、移动电话、视频电话、电子书阅读器、台式PC、膝上型PC、上网本计算机、工作站、服务器、个人数字助理(PDA)、便携式多媒体播放器(PMP)、运动图像专家组(MPEG-1或MPEG-2)音频层3(MP3)播放器、移动医疗设备、照相机或可穿戴设备。根据各种实施例,可穿戴设备可以包括附件类型的装置(例如钟表、戒指、手链、脚镯、项链、眼镜、隐形眼镜或头戴式耳机(HMD))、一体式织物或衣服类型的装置(例如电子衣服)、身体附接类型的装置(例如皮肤垫或纹身)或生物可植入类型的设备(例如可植入电路)中至少之一。
在本发明的一些各种实施例中,电子设备可以是家用电器。智能家电可以包括例如电视(TV)、数字多功能盘(DVD)播放器、音频、冰箱、空调、清洁器、烤箱、微波炉、洗衣机、空气净化器、机顶盒、家庭自动化控制面板、安全控制面板、TV盒(例如三星HomeSyncTM、Apple TVTM或Google TVTM)、游戏控制台(例如XboxTM或PlayStationTM)、电子词典、电子钥匙、摄像机或电子相框中至少之一。
在各种实施例中,电子设备可以包括各种医疗设备(例如各种便携式医疗测量设备(例如血糖仪、心率计、血压计或温度计等)、磁共振血管造影术(MRA)、磁共振成像(MRI)、计算机断层摄影(CT)、扫描仪或超声波装置等)、导航装置、全球导航卫星系统(GNSS)、事件数据记录器数据记录器(FDR)、车辆信息娱乐装置、用于船舶的电子设备(例如导航系统、陀螺罗盘等)、航空电子设备、安全装置、车辆的头部单元、工业或家庭机器人、自动柜员机(ATM)、销售终端(POS)或物联网(例如灯泡、各种传感器、电表或气表、喷水灭火装置、火警、恒温器、路灯、烤面包机、运动器材、热水箱、加热器、锅炉等等)中至少之一。
根据各种实施例,电子设备可包括家具或建筑物/结构的部件、电子板、电子签名接收装置、投影仪或各种测量仪器(例如水表、电表、煤气表或波浪米等等)中至少之一。根据本发明的各个实施例的电子设备可以是上述设备的一个或多个组合。根据本发明的各种实施例的电子设备可以是柔性电子设备。此外,根据本发明的各种实施例的电子设备不限于上述设备,并且可以包括根据技术开发的新电子设备。
在下文中,将参考附图更详细地描述根据本发明的各种实施例的电子设备。这里使用的术语“用户”可以指使用电子设备的人或者可以指使用电子设备的设备(例如人工智能电子设备)。
图1示出了根据本发明的实施例的网络环境中的电子设备。
将参考图1描述根据本发明的各种实施例的网络环境100中的电子设备101。电子设备101可以包括总线110、处理器120、存储器130、输入/输出接口150、显示器160和通信接口170。在本发明的各种实施例中,电子设备101中可以省略上述元件中至少之一或者可以向电子设备101添加另一元件。
总线110可以包括用于将上述元件110至170彼此连接并在上述元件之间传送通信(例如控制消息和/或数据)的电路。
处理器120可以包括中央处理单元(CPU)、应用处理器(AP)或通信处理器(CP)中的至少一个。处理器120可以执行与电子设备101的其它元件中的至少一个的通信和/或控制相关的数据处理或操作。
存储器130可以包括易失性存储器和/或非易失性存储器。存储器130可以存储与电子设备101的其他元件中的至少一个相关的指令或数据。根据本发明的实施例,存储器130可以存储软件和/或程序140。程序140可以包括,例如内核141、中间件143、应用程序编程接口(API)145和/或应用程序(或应用)147。内核141、中间件143或API 145的至少一部分可以被称为操作系统(OS)。
内核141可以控制或管理用于执行其他程序(例如中间件143、API 145或者应用程序147)的操作或功能的系统资源(例如总线110、处理器120、存储器130等)。此外,内核141可以提供用于允许中间件143、API 145或应用程序147访问电子设备101的各个元件以便控制或管理系统资源的接口。
中间件143可以用作中间媒介,使得API 145或应用程序147与内核141通信并交换数据。
此外,中间件143可以根据优先级顺序来处理从应用程序147接收的一个或多个任务请求。例如,中间件143可以向至少一个应用程序147分配使用电子设备101的系统资源(例如总线110、处理器120、存储器130等)的优先级。例如,中间件143可以根据分配给至少一个应用的优先级来处理一个或多个任务请求,从而相对于一个或多个任务请求执行调度或负载平衡。
作为用于允许应用147控制由内核141或中间件143提供的功能的接口,API 145可以包括例如用于文件控制、窗口控制、图像处理、字符控制等的至少一个接口或功能(例如指令)。
输入/输出接口150可以用于将从用户或另一外部设备输入的指令或数据传送到电子设备101的其他元件。此外,输入/输出接口150可以将从电子设备101的(一个或多个)其他元件接收到的指令或数据输出给用户或另一外部设备。
显示器160可以包括例如液晶显示器(LCD)、发光二极管(LED)显示器、有机发光二极管(OLED)显示器、微机电系统(MEMS)显示器或电子纸显示器。显示器160可以向用户呈现各种内容(例如文本、图像、视频、图标、符号等)。显示器160可以包括触摸屏,并且可以从电子笔或用户身体的一部分接收触摸、手势、接近或悬停输入。
通信接口170可以设置电子设备101和外部设备(例如第一外部电子设备102、第二外部电子设备104或服务器106)之间的通信。例如,通信接口170可以经由无线通信或有线通信连接到网络162,以便与外部设备(例如第二外部电子设备104或服务器106)通信。
无线通信可以采用至少一种蜂窝通信协议,诸如长期演进(LTE)、高级LTE(LTE-A)、码分多址(CDMA)、宽带CDMA(WCDMA)、通用移动电信系统(例如UMTS)、无线宽带(WiBro)或全球移动通信系统(GSM)。无线通信可以包括例如短距离通信164。短距离通信可以包括WI-FI、BLUETOOTH、蓝牙低功耗(BLE)、ZIGBEE、近场通信(NFC)/磁安全传输(MST)或GNSS中至少之一。GNSS可以包括例如全球定位系统(GPS)、全球导航卫星系统(GLONASS)、北斗导航卫星系统(BEIDOU)或者GALILEO(根据使用区域或带宽的欧洲全球卫星导航系统)中至少之一。在下文中,术语“GPS”和术语“GNSS”可以互换使用。
有线通信可以包括通用串行总线(USB)、高清晰度多媒体接口(HDMI)、推荐标准232(RS-232)、普通老式电话服务(POTS)等中的至少一个。网络162可以包括电信网络中的至少一个,例如计算机网络(例如局域网(LAN)或广域网(WAN))、因特网或电话网络。
第一外部电子设备102和第二外部电子设备104的类型可以与电子设备101的类型相同或不同。根据本发明的实施例,服务器106可以包括一组或更多服务器。在电子设备101中执行的操作的一部分或全部可以在一个或多个其他电子设备(例如第一电子设备102、第二外部电子设备104或服务器106)中执行。当电子设备101应当自动地或响应于请求而执行某个功能或服务时,电子设备101不是其自身执行该功能或服务或者在其自身执行该功能或服务之外,电子设备101可以从另一个设备(例如第一电子设备102、第二外部电子设备104或服务器106)请求与功能或服务相关的功能的至少一部分。其他电子设备(例如第一电子设备102、第二外部电子设备104或服务器106)可以执行所请求的功能或附加功能,并且可以将执行结果传送到电子设备101。电子设备101可以使用接收的结果本身或者额外地处理接收的结果以提供所请求的功能或服务。为此,例如,可以使用云计算技术、分布式计算技术或客户端-服务器计算技术。
图2示出了根据本发明的实施例的电子设备。
参考图2,电子设备201可以包括例如图1所示的电子设备101的一部分或全部。电子设备201可以包括至少一个处理器(例如AP)210、通信模块220、用户识别模块(SIM)224、存储器230、传感器模块240、输入设备250、显示器260、接口270、音频模块280、相机模块291、电源管理模块295、电池296、指示器297和电机298。
处理器210可以运行操作系统或应用程序,以便控制连接到处理器210的多个硬件或软件元件,并且可以处理各种数据并执行操作。处理器210可以用例如片上系统(SoC)来实现。根据本发明的实施例,处理器210还可以包括图形处理单元(GPU)和/或图像信号处理器。处理器210可以包括图2中所示的元件的至少一部分(例如蜂窝模块221)。处理器210可以在易失性存储器上加载从至少一个其它元件(例如非易失性存储器)接收的指令或数据以处理该指令或数据,并且可以将各种数据存储在非易失性存储器中。
通信模块220可以具有与图1的通信接口170相同或相似的配置。通信模块220可以包括例如蜂窝模块221、Wi-Fi模块223、蓝牙模块225、GNSS模块227(例如GPS模块、GLONASS模块、BeiDou模块或伽利略模块)、NFC模块228和射频(RF)模块229。
蜂窝模块221可以通过通信网络提供例如语音呼叫服务、视频呼叫服务、文本消息服务或因特网服务。蜂窝模块221可以使用订户识别模块224(例如SIM卡)来识别和认证通信网络中的电子设备201。蜂窝模块221可以执行可以由处理器210提供的功能的至少一部分。蜂窝模块221可以包括通信处理器(CP)。
Wi-Fi模块223、蓝牙模块225、GNSS模块227和NFC模块228中的每一个可以包括例如用于处理通过模块发送/接收的数据的处理器。根据本发明的一些各种实施例,蜂窝模块221、Wi-Fi模块223、蓝牙模块225、GNSS模块227和NFC模块228的至少一部分(例如两个或更多个)可以是包括在单个集成芯片(IC)或IC封装中。
RF模块229可以发送/接收例如通信信号(例如RF信号)。RF模块229可以包括例如收发器、功率放大器模块(PAM)、频率滤波器、低噪声放大器(LNA)、天线等。根据本发明的另一实施例,蜂窝模块221、Wi-Fi模块223、蓝牙模块225、GNSS模块227和NFC模块228中的至少一个可以通过单独的RF模块发送/接收RF信号。
SIM 224可以包括例如嵌入的SIM和/或包含用户识别模块的卡,并且可以包括唯一的标识信息(例如集成电路卡标识符(ICCID))或用户信息(例如国际移动用户身份(IMSI))。
存储器230(例如存储器130)可以包括例如内部存储器232或外部存储器234。内部存储器232可以包括易失性存储器(例如动态RAM(DRAM)、静态RAM(SRAM)、同步动态RAM(SDRAM)等)、非易失性存储器(例如一次可编程ROM(OTPROM)、可编程ROM(PROM)、可擦除可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)、掩模ROM、闪存ROM、闪存(例如NAND闪存、NOR闪存等))、硬盘驱动器或固态驱动器(SSD)。
外部存储器234可以包括诸如紧凑型闪存(CF)、安全数字(SD)、微型SD、迷你SD、极端数字(xD)、多媒体卡(MMC)、存储器棒等等的闪速驱动器。外部存储器234可以通过各种接口可操作地和/或物理地连接到电子设备201。
传感器模块240可以例如测量电子设备201的物理量或检测电子设备201的操作状态,以将测量或检测的信息转换为电信号。传感器模块240可以包括例如手势传感器240A、陀螺仪传感器240B、大气压力传感器240C、磁传感器240D、加速度传感器240E、握持传感器240F、接近传感器240G、颜色传感器240H(例如红/绿/蓝(RGB)传感器)、生物测定传感器240I、温度/湿度传感器240J、照明传感器240K或紫外(UV)传感器240M中至少之一。附加地或替代地,传感器模块240可以包括例如嗅觉传感器(E鼻传感器)、肌电图(EMG)传感器、脑电图(EEG)传感器、心电图(ECG)传感器、红外(IR)传感器、虹膜识别传感器和/或指纹传感器。传感器模块240还可以包括用于控制其中包括的至少一个传感器的控制电路。在本发明的一些各种实施例中,电子设备201还可以包括处理器,其被配置用于作为处理器210的一部分或单独地控制传感器模块240,使得在处理器210处于睡眠状态时传感器模块240被控制。
输入设备250可以包括例如触摸面板252、(数字)笔传感器254、键256或超声波输入设备258。触摸面板252可以采用电容性、电阻性、红外线、和紫外线感测方法中至少之一。触摸面板252还可以包括控制电路。触摸面板252还可以包括触觉层,以便向用户提供触觉反馈。
(数字)笔传感器254可以包括例如用于识别的薄片,其是触摸面板的一部分或者是单独的。键256可以包括例如物理按钮、光学按钮或键盘。超声输入设备258可以通过麦克风288感测由输入工具产生的超声波,以便识别与所感测的超声波相对应的数据。
显示器260(例如显示器160)可以包括面板262、全息图设备264或投影仪266。面板262可以具有与图1的显示器160的配置相同或类似的配置。面板262可以是例如柔性的、透明的或可佩戴的。面板262和触摸面板252可以集成到单个模块中。全息图设备264可以使用光干涉现象在空间中显示立体图像。投影仪266可以将光投射到屏幕上,以便显示图像。屏幕可以设置在电子设备201的内部或外部。根据本发明的实施例,显示器260还可以包括用于控制面板262、全息图设备264或投影仪266的控制电路。
接口270可以包括例如HDMI 272、USB 274、光学接口276或者D-微型(D-sub)278。例如,接口270可以包括在图1所示的通信接口170中。附加地或替代地,接口270可以包括例如移动高清晰度链路(MHL)接口、SD卡/多媒体卡(MMC)接口或红外数据协会(IrDA)接口。
音频模块280可以将例如声音转换为电信号,反之亦然。音频模块280的元件的至少一部分可以包括在图1所示的输入/输出接口150中。音频模块280可以处理通过扬声器282、接收器284、耳机286或麦克风288输入或输出的声音信息。
相机模块291例如是用于拍摄静止图像或视频的设备。根据本发明的实施例,相机模块291可以包括至少一个图像传感器(例如前传感器或后传感器)、透镜、图像信号处理器(ISP)或闪光灯(例如LED或氙灯)。
电源管理模块295可以管理电子设备201的电源。根据本发明的实施例,电源管理模块295可以包括电源管理集成电路(PMIC)、充电器集成电路(IC)或电池或量表。PMIC可以采用有线和/或无线充电方法。无线充电方法可以包括例如磁共振方法、磁感应方法、电磁方法等。还可以包括用于无线充电的附加电路,诸如线圈回路、谐振电路、整流器等。电池量表可以测量例如电池296的剩余容量和在电池充电时的电压、电流或温度。电池296可以包括例如可再充电电池和/或太阳能电池。
指示器297可以显示电子设备201或其一部分(例如处理器210)的特定状态,诸如启动状态、消息状态、充电状态等。马达298可以将电信号转换为机械振动,并且可以产生振动或触觉效果。尽管未示出,但是用于支持移动TV的处理设备(例如GPU)可以被包括在电子设备201中。用于支持移动TV的处理设备可以根据数字多媒体广播(DMB)的标准来处理媒体数据、数字视频广播(DVB)、MEDIAFLOTM等。
图3示出了根据本发明的实施例的程序模块。
参考图3,程序模块310(例如程序140)可以包括用于控制与电子设备(例如电子设备101)相关的资源的操作系统(OS)和/或在OS上运行的各种应用(例如应用程序147)。操作系统可以是例如SYMBIANTM等。
程序模块310可以包括内核320、中间件330、API 360和/或应用370。程序模块310的至少一部分可以预加载在电子设备上或者可以从外部电子设备(例如第一电子设备102、第二外部电子设备104或服务器106)下载。
内核320(例如内核141)可以包括例如系统资源管理器321或设备驱动器323。系统资源管理器321可以执行系统资源的控制、分配或检索。根据本发明的实施例,系统资源管理器321可以包括进程管理单元、存储器管理单元、文件系统管理单元等。设备驱动器323可以包括例如显示驱动器、相机驱动器、蓝牙驱动器、共享存储器驱动器、USB驱动器、键盘驱动器、Wi-Fi驱动器、音频驱动器或者进程间通信(IPC)驱动器。
中间件330例如可以提供应用370共同需要的功能或者可以经API 360向应用370提供各种功能,使得应用370可以有效地使用电子设备中的有限系统资源。根据本发明的实施例,中间件330(例如中间件143)可以包括运行时库335、应用管理器341、窗口管理器342、多媒体管理器343、资源管理器344、电源管理器345、数据库管理器346、包管理器347、连接性管理器348、通知管理器349、位置管理器350、图形管理器351和安全管理器352中至少之一。
运行时库335可以包括例如编译器使用的在应用370运行时通过编程语言添加新功能的库模块。运行时库335可以执行用于输入/输出管理、存储器管理或算术功能的功能。
应用管理器341可以管理例如应用370中的至少一个的生命周期。窗口管理器342可以管理在屏幕中使用的GUI资源。多媒体管理器343可以识别播放各种媒体文件所需的格式,并且可以使用与格式匹配的编解码器对媒体文件进行编码或解码。资源管理器344可以管理诸如应用370中的至少一个的源代码、存储器或存储空间的资源。
电源管理器345例如可以与基本输入/输出系统(BIOS)一起操作以管理电池或电力,并且可以提供操作电子设备所需的电力信息。数据库管理器346可以生成、搜索或修改要在应用370中的至少一个中使用的数据库。数据包管理器347可以管理以数据包文件格式分发的应用的安装或更新。
连接性管理器348可以管理Wi-Fi、蓝牙等的无线连接。通知管理器349可以以不干扰用户的方式来显示或通知事件,例如消息到达、约会和邻近警报。位置管理器350可以管理电子设备的位置信息。图形管理器351可以管理要提供给用户或与其相关的用户界面的图形效果。安全管理器352可以提供系统安全或用户认证所需的各种安全功能。根据本发明的实施例,在电子设备(例如电子设备101)包括电话功能的情况下,中间件330还可以包括电话管理器,用于管理电子设备的语音或视频通话功能。
中间件330可以包括用于形成上述元件的各种功能的组合的中间件模块。中间件330可以提供专用于每种类型的操作系统的模块以提供有区别的功能。此外,中间件330可以删除现有元件的一部分或者可以动态地添加新元件。
可以根据操作系统以不同的配置来提供API 360(例如API 145),其是例如一组API编程功能。例如,在Android或iOS的情况下可以为每个平台提供一个API组,并且在Tizen的情况下可以为每个平台提供至少两个API组。
例如,应用370(例如应用程序147)可以包括能够执行诸如主页371、拨号器372、SMS/MMS 373、即时消息(IM)374、浏览器375、相机376、警报377、联系人378、语音拨号379、电子邮件380、日历381、媒体播放器382、相册383、时计384、健康保健(例如测量运动量或血糖)或环境信息提供(例如提供气压、湿度或温度信息)中的至少一个应用。
根据本发明的实施例,应用370可以包括用于支持在电子设备(例如电子设备101)和外部电子设备(例如第一电子设备102或者第二电子设备104)之间的信息交换的信息交换应用。信息交换应用可以包括例如用于将特定信息中继到外部电子设备的通知中继应用或用于管理外部电子设备的设备管理应用。
例如,通知中继应用可以具有用于向外部电子设备(例如第一电子设备102或第二外部电子设备104)中继在电子设备的另一应用(例如SMS/MMS应用、电子邮件应用、保健应用、环境信息应用等)中生成的通知信息的功能。此外,通知中继应用可以从外部电子设备接收通知信息,并且可以向用户提供接收到的通知信息。
设备管理应用例如可以管理(例如安装、删除或更新)与电子设备通信的外部电子设备(例如第一电子设备102或第二外部电子设备104)的至少一个功能(例如外部电子设备本身(或一些元件)的打开/关闭或者显示器的亮度(或分辨率)调整)、在外部电子设备中运行的应用或者从外部电子设备提供的服务(例如呼叫服务、消息服务等)。
根据本发明的实施例,应用370可以根据外部电子设备(例如第一电子设备102或第二外部电子设备104)的属性而包括指定的应用(例如移动医疗设备的保健应用)。应用370可以包括从外部电子设备(例如第一电子设备102或第二外部电子设备104)接收的应用。应用370可以包括预加载的应用或可从服务器下载的第三方应用。所示的程序模块310的元件的名称可以随操作系统的类型而变化。
根据本发明的各种实施例,程序模块310的至少一部分可以用软件、固件、硬件或其组合来实现。例如,程序模块310的至少一部分可以由处理器(例如处理器210)实现(例如执行)。程序模块310的至少一部分可以包括例如模块、程序、例程、指令集或用于执行至少一个功能的进程。
图4示出了根据本发明的各种实施例的电子设备。
参考图4,电子设备400(例如图1的电子设备101)可以包括至少一个应用(例如第一应用404和第二应用405)、多个层(例如第一层401、第二层402和第三层403)、窗口合成器410、显示控制器420和显示面板430。根据本发明的各种实施例,第一层401可以包括在第一应用404中,或者可以相应于第一应用404被创建;第二层402和第三层403可以包括在第二应用405中或者可以相应于第二应用405被创建。根据实施例,层(例如第一层401到第三层403)可以是包括在应用(例如第一应用404和第二应用405)的外部(例如窗口合成器410)上。此外,窗口合成器410可以包括缓冲器管理模块412、层选择模块414、合成模块416和层管理器模块418。根据本发明的各种实施例,多个应用404和405、多个层401、402和403、窗口合成器410、显示控制器420和显示面板430可以由处理器(例如图1的处理器120)操作。
根据本发明的各种实施例,窗口合成器410可以用作一个术语,意味着基于一种框架(或操作系统)的合成模块416。例如,缓冲器管理模块412或层选择模块414可以设置在窗口合成器410的外部。根据各种实施例,多个模块410、412、414、416和418可以是集成的或单独的用一个或多个模块实现。例如,合成模块416和层管理器模块418可以用一个模块(例如界面投递器(surface flinger))来实现。
在由电子设备执行应用(例如第一应用404或第二应用405)的情况下,应用可以从框架(例如窗口合成器410)请求要在其中绘制应用图像的屏幕的部分区域。框架(例如窗口合成器410)可以响应于每个应用的请求来分配屏幕的部分区域,并且可以管理关于所分配的区域的信息(例如层)。
层是指用于管理与应用相对应的屏幕区域(例如层区域或界面区域)的信息。例如,作为相应于指定数据结构的对象或实例的层可以由应用请求而被创建和删除。在一个实施例中,层可以包括关于图形缓冲器的地址(在该图形缓冲器中应用将绘制图像(或图形数据))、框架区域(框架缓冲器的整个区域中的层占用位置)等的信息。在本说明书中使用的术语“层”不限于特定术语,并且可以使用任何其它术语(例如界面和窗口)来代替该层。作为实施例,图4表明相应于第一应用而生成的第一层401以及相应于第二应用而生成的第二层402和第三层403。图4所示的每个层设置在应用中。然而,根据各种实施例,层的实质可以位于不同的模块中,例如窗口合成器410。
层管理器模块418(例如处理器)可以管理由应用生成的至少一个层。例如,层管理器模块418可以响应于应用的请求来创建或删除层,并且可以通过使用列表来管理至少一个层。
根据实施例,在执行应用的情况下,层管理器模块418(例如处理器)可以创建与应用相对应的至少一个层。根据实施例,在应用改变屏幕配置的情况下,层管理器模块418可以基于屏幕配置的改变来改变层信息。例如,在地图应用的情况下,层管理器模块418可以创建层以提供在地图应用中使用的地图数据和菜单层。此外,层管理器模块418可以创建要与地图应用一起显示在显示面板430中的状态栏层。
根据本发明的各种实施例,应用可以包括要通过应用图标执行的应用和包括应用图标的主屏幕应用(或启动应用)。在主屏幕应用的执行期间,层管理器模块418可以创建启动器层、壁纸层和状态栏层。此外,在应用的执行期间生成通知的情况下,层管理器模块418还可以创建用于通知的层。
根据实施例,缓冲器管理模块412可以创建和管理图形缓冲器。应用或层可以从缓冲器管理模块412请求(或出队)缓冲器。缓冲器管理模块412可以为请求缓冲器的应用或层创建(或分配)图形缓冲器。图形缓冲器可以相应于由内核(例如图3的内核320)分配给缓冲器管理模块412的图形缓冲器。可以为每个层分配图形缓冲器。例如,可以彼此独立地分配与第二应用405的第二层402对应的图形缓冲器和与第二应用405的第三层403对应的图形缓冲器。缓冲器管理模块412可以根据多个缓冲操作(例如双缓冲器或三缓冲器)将多个图形缓冲器分配给一个层。可以以垂直同步信号周期交替地(例如以翻转方式)使用分配给一个层的多个缓冲器。
根据本发明的各种实施例,如果请求用于层的缓冲器,则缓冲器管理模块412可以确定请求缓冲器的层是否是目标层。目标层可以相应于由显示控制器420中包括的混合器424在其上执行合成的层。非目标层可以相应于例如由窗口合成器410中包括的合成模块416在其上执行合成的层。层是否为目标层可以由层选择模块414确定。
根据本发明的各种实施例,层选择模块414可以确定由层管理器模块418管理的层是否为目标层(或者该目标是否为非目标层)。根据实施例,层选择模块414可以基于图像的更新频率、图像的大小(例如要在其中显示图像的区域的大小)、图像的位置(例如图像要在其上显示的区域的位置)、是否预先指定了层(例如层是否具有特定名称或功能)和z-顺序中至少之一确定目标层。例如,层选择模块414可以确定其图像的更新频率不小于指定条件的层、其图像的大小不小于指定尺寸的层或者其z-顺序是最低的层作为目标层。根据实施例,层选择模块414可以将图像的更新频率高的层设置为目标层。例如,层选择模块414可以通过从合成模块416查询其中包括关于运行层(或运行的应用)的信息的层列表阵列来获知更新频率。根据实施例,层选择模块414可以将图像区域(大小)宽(大)的层设置为目标层。根据实施例,层选择模块414可以参考存储在存储器中的目标层列表来设置目标层。例如,层选择模块414可以将包括在目标层列表中的层设置为目标层。根据实施例,相应于视频播放屏幕的层、相应于web浏览屏幕的层、相应于导航地图屏幕的层、相应于相机预览屏幕的层、相应于呼叫屏幕的层等等可以被设置为目标层。
根据实施例,在具有不同层的图像之间的z-顺序中,层选择模块414可以设置目标层,使得非目标层存在于目标层之间或目标层不存在于非目标层之间。根据本发明的各种实施例,z-顺序可以仅包括在OS中执行合成时使用的z-顺序,而在层之间的顺序可变的情况下也可以包括改变顺序的z-顺序。例如,即使两个层的图像所占据的区域(大小)相同,如果在实际图像中绘制的层的区域彼此不重叠,则相应层之间的z-顺序可以是可变的。
根据实施例,层选择模块414可以参考存储在存储器中的目标层列表来设置目标层。例如,层选择模块414可以将由层管理器模块418管理的层与目标层列表进行比较,并且可以将包括在目标层列表中的层设置为目标层。
根据实施例,考虑到显示控制器420的平面数量,层选择模块414可以确定目标层的数量。根据实施例,作为包括在显示控制器420中的模块的平面可以通过利用直接存储器访问(DMA)获取具有特定存储器地址的图形缓冲器或帧缓冲器,并且可将所获取的缓冲器发送到混合器或显示接口(例如MIPI-DSI(移动工业处理器接口-显示器串行接口))。根据实施例,合成模块416可以将图形缓冲器的地址设置到平面。例如,显示控制器420的平面之一可以用于在其上执行GPU合成的帧缓冲器,并且层选择模块414可以确定目标层的数量以相应于显示控制器420的剩余平面。一个目标层可以分配给一个平面。
层选择模块414可以以指定的间隔重复地确定层是否为目标层。也就是说,特定层是否为目标层可以在时间过程中改变。例如,如果被确定为不是目标层的层的更新频率不小于指定条件,则可以将该层确定为目标层。
根据本发明的各种实施例,层选择模块414可以基于层是目标层还是非目标层将各个层分类成第一合成类型和第二合成类型。例如,层选择模块414可以将非目标层分类为第一合成类型,并且可以将目标层分类为第二合成类型。也就是说,第一合成类型可以指由在窗口合成器410中包括的合成模块416在其上执行合成的类型,并且第二合成类型可以指由显示控制器420中包括的混合器424在其上执行合成的类型。在根据本发明的实施例的AndroidOS中,第一合成类型可以指GLES(或openGLES)类型,并且第一合成类型可以指硬件合成器(HWC)。
应用404和405可以在分配给层401、402和403的缓冲器中绘制图像。绘图可以意味着例如将图像(或图形数据)发送到(或写入)缓冲器的操作。图像可以是应用打算通过显示面板430提供的图像。根据实施例,可以基于整个帧区域中的由层所占据的区域的坐标而在图形缓冲器中绘制图像。例如,如果特定层的帧区域相对于800×1280的分辨率具有xstart=0,x end=800,y start=25和y end=1280的坐标,则应用可以在分配给层的图形缓冲器中在相应的坐标处绘制要显示的最终图像。应用(或层)可以将关于其中绘制图像的图形缓冲器的信息(例如坐标信息)发送到缓冲器管理模块412。例如,应用可以请求缓冲器管理模块412输出绘制完成图形缓冲区(队列)。缓冲器管理模块412可以响应于图形缓冲器输出请求而在合成等待状态下管理对应的图形缓冲器。
合成模块416可以针对每个层整体地管理其中存储了由应用(或层)最终生成的图像相关信息的图形缓冲器的地址、帧区域(在帧缓冲器的整个区域中的层区域所占据的位置)等。根据本发明的各种实施例,合成模块416可以管理其中包括关于运行层(或正在运行的应用)的信息的层列表阵列。例如,当执行应用(或层)时,应用可以将诸如帧间隔、源图片裁剪(source crop)和像素格式的信息发送到合成模块416。另外,在诸如帧间隔、源图片裁剪和像素格式)的信息在应用的执行期间被改变的情况下,可以向合成模块416通知改变的信息。
根据实施例,合成模块416可以确定是否存在合成等待状态的图形缓冲器。在帧速率为60Hz的情况下,合成模块416可以由每16.6ms生成的垂直同步信号触发,并且可以确定是否存在合成等待状态的图形缓冲器。如果不存在合成等待状态的图形缓冲器,则合成模块416进入睡眠状态直到下一个垂直同步信号,并且可以在存在合成等待状态的图形缓冲器时执行合成。根据实施例,合成模块416可以通过使用图形库440来执行合成。图形库可以包括例如OpenGL ES、、Stage3D等。图形库440可以例如通过使用GPU 450来执行合成。
根据实施例,合成模块416可以确定合成等待状态的每个图形缓冲器是否为与非目标层相关联的图形缓冲器。例如,合成模块416可以确定第一层401和第二层402为非目标层,并且第三层403为目标层。根据实施例,合成模块416可以仅在与非目标层相关联的合成等待状态的图形缓冲器上执行合成。例如,合成模块416可以在帧缓冲器中合成绘制在与作为非目标层的第一层401和第二层402相对应的图形缓冲器中的图像。合成模块416可以向显示控制器420发送与第三层403相对应的图形缓冲器的信息,而不对在与作为目标层的第三层403相对应的图形缓冲器中绘制的图像执行单独的合成操作。
根据实施例,如果存在与非目标层相关联的合成等待状态的图形缓冲器,则合成模块416可以在所有图形缓冲器上执行合成。例如,如果作为非目标层的第一层401或第二层402的图形缓冲器处于合成等待状态,则合成模块416可以在帧缓冲器中合成在图形缓冲器中绘制的所有图像,所述图形缓冲器相应于第一层401到第三层404。
根据实施例,合成模块416可以根据多缓冲操作(例如双缓冲或三缓冲)方案使用多个帧缓冲器。合成模块416可以在垂直同步信号周期(例如以翻转方式)交替地使用多个帧缓冲器。
合成模块416可以在一个帧缓冲器中合成第一合成类型的层的图形缓冲器,并且可以将合成的帧缓冲器的信息(诸如存储器开始地址、宽度、高度和步幅的信息)发送到显示控制器420。例如,合成模块416可以通过内核将关于合成完成的帧缓冲器的信息发送到显示控制器420。
在存在未由合成模块416合成的合成等待状态的图形缓冲器的情况下,显示控制器420可以将合成等待状态的图形缓冲器与由合成模块416合成的帧缓冲器的图像合成。例如,第一平面421可以通过使用DMA将其中合成了第一层401和第二层402的图像的帧缓冲器提取到混合器424。如上所述,同样,第二平面422可以通过使用DMA将相应于第三层403的图形缓冲器提取到混合器424。在合成模块416合成了合成等待状态的所有图形缓冲器的情况下,显示控制器420可以不执行单独合成。
混合器424可以合成由第一平面421和第二平面422提取的帧缓冲器和图形缓冲器(或者帧缓冲器和图形缓冲器的图像),并且可以将作为合成结果的最终图像的至少一部分存储在内部存储器426中。例如,混合器424可以在合成缓冲器时以确定的量(例如2个像素行)重复地执行合成,并且可以将合成结果存储在内部存储器426中。例如,内部存储器426的大小可相应于若干像素行的图像数据的大小。
混合器424可以按照每个垂直同步信号执行上述合成。例如,混合器424可以在第一垂直同步信号合成第一平面421的帧缓冲器和第二平面422的图形缓冲器,并且可以在第二垂直同步信号合成第一平面421的帧缓冲器和第二平面422的图形缓冲器。
然而,根据本发明的各种实施例,在仅在第二垂直同步信号更新第三层403的图像而不更新第一层401和第二层402的图像的情况下,由于与合成等待状态的非目标层相关联的图形缓冲器不存在,因此合成模块416可以不对第一层401和第二层402的图像执行合成。再者,在这种情况下,混合器424可以在第一垂直同步信号重新使用帧缓冲器(第一层401和第二层402的合成图像)以与其图像被更新的第三层403的图形缓冲区进行合成。
显示控制器420可以开始将内部存储器426中的图像发送到与其物理连接的显示面板430。这样,作为合成结果的最终图像可以通过内部存储器426发送到显示面板430。
物理地连接显示控制器420和显示面板430的接口可以包括例如MIPI-DSI、HDMI、嵌入式显示端口(eDP)等。显示控制器420可以打包帧缓冲器的图像以相应于每个接口的协议,并且可以将打包的图像发送到显示面板430。
在各种实施例中,显示面板430可以是通过有线或无线接口与电子设备连接的外部显示设备。由于GPU合成增加了电流消耗并且总体上降低了图形性能,因此如果其中图像更新不频繁发生的非目标层在每个垂直同步信号被绘制在图形缓冲器中之后被与帧缓冲器合成,这可能引起过大的电流消耗并降低图形性能。因此,为了解决问题,本发明的各种实施例可以通过重新使用其中绘制非目标层的帧缓冲器来最小化GPU合成。
图5示出根据本发明的各种实施例的电子设备。
参考图5,应用处理器(AP)500(例如图1的处理器120)可以包括程序模块510、第一合成器520和第二合成器530。AP 500可以利用片上系统SoC)实施,以便第一合成器520和第二合成器530嵌入在AP 500中。
根据本发明的各种实施例,第一合成器520可以是图形处理单元(GPU)、通用处理器或数字信号处理器(DSP)。第二合成器530可以在显示控制器中实现。与此不同,第二合成器530可以在输入/输出(I/O)控制器中实现。根据本发明的各种实施例,第二合成器530可以在AP 500上实现为独立IP。
根据本发明的各种实施例的电子设备可以包括:第一图形合成器,其合成与第一合成类型的层相关联的第一图形数据;第二图形合成器,其合成与第二合成类型(与第一合成类型不同)的层相关联的第二图形数据;以及处理器。处理器可以被配置用于将与至少一个应用相关联的多个层中的每一个的合成类型设置为第一合成类型或第二合成类型、通过使用第一图形合成器在帧缓冲器中合成多个层中的相应于被设置为第一合成类型的层的第一图形数据、通过利用第二图形合成器将在帧缓冲器中合成的图形数据与来自多个层的相应于设置为第二合成类型的层的第二图形数据进行合成、经与所述电子设备可操作地连接的显示器来显示通过使用所述第二图形合成器所合成的图形数据。
根据实施例,第一图形合成器可以是软件合成器,并且第二图形合成器可以是硬件合成器。
根据实施例,处理器可以被配置用于如果关于第一图形数据未生成更新并且关于第二图形数据生成了更新,则禁止使用第一图形合成器的合成,并且通过使用第二图形合成器将帧缓冲器中的合成的图形数据与相应于更新的第二图形数据的第三图形数据进行合成。
根据实施例,处理器可以被配置用于基于以下信息中至少之一来设置多个层中的每个层的合成类型,这些信息包括:与多个层中的每个层相对应的图形数据的更新频率信息、相应于多个层中的每个层的z-顺序信息、大小信息及其中将显示与所述多个层中的每一个相对应的图形数据的区域的位置信息。
根据实施例,处理器可以被配置用于将多个层中的图形数据的更新频率不小于指定值的层的合成类型设置为第二合成类型,并且将所述多个层中的图形数据的更新频率小于所述指定值的层的合成类型设置为第一合成类型。
根据实施例,处理器可以被配置用于将多个层中的图形数据的大小不小于指定值的层的合成类型设置为第二合成类型,并且将多个层中的图形数据的大小小于指定值的层的合成类型设置为第一合成类型。
根据实施例,处理器可以被配置用于:确定多个层中的每一个是否被包括在事先存储在存储器中的列表中;从多个层中将包括在列表中的层的合成类型设置为第二合成类型;将多个层中的不包括在所述列表中的层的合成类型设置为第一合成类型。
根据实施例,处理器可以被配置用于验证多个层中的每个层的z-次序,并且设置多个层中的每个层的合成类型以便第二合成类型的层存在于第一合成类型的层之间或第一合成类型的层不存在于第二合成类型的层之间。
根据实施例,可以基于包括在第二图形合成器中的平面的数量来确定第一合成类型的层数和第二合成类型的层数。
根据实施例,多个层可以分别相应于由处理器执行的不同应用。
图6示出根据本发明的各个实施例的其中电子设备执行图像合成并显示合成的图像的方法。
在操作610中,电子设备400(例如层管理器模块418)可以获取关于根据应用的执行而生成的每个层的信息。例如,层管理器模块418可以获取每一层的图像的更新频率、图像的大小(例如其中将显示图像的区域的大小)、图像的位置(例如要在其中显示图像的区域的位置)、层名称和z顺序中至少之一。根据本发明的各种实施例,操作610可以周期性地或随机地重复执行。例如,当由层管理器模块418管理的层的配置改变(例如层创建和删除)时,可以执行操作610。或者,即使由层管理器模块418管理的层的配置没有改变,也可以周期性地执行操作610。
在操作620中,电子设备400(例如层选择模块414)可以通过使用在操作610中获取的关于每个层的信息来选择层的至少一个或多个目标层。目标层的数量可以基于显示控制器420中的平面421和422的数量来确定。根据实施例,目标层的数量可以被确定为小于显示控制器420中的平面421和422的数量。例如,如果可选为目标层的候选层的数量大于平面421和422的数量,则可以通过将与候选层对应的一些层设置为非目标层来调整目标层的数量。
在操作630中,电子设备400(例如层选择模块414)可以为在操作620中分类的每个目标层和非目标层设置合成类型。例如,非目标层可以被设置为具有第一合成类型,目标层可以被设置为具有第二合成类型。
在操作640中,电子设备400(例如合成模块416)可以确定是否相对于第一合成类型的层(非目标层)的图像生成了更新。如果关于第一合成类型的层的图像生成更新,则进程可以进行到操作650。如果没有关于第一合成类型的层的图像生成更新,则该进程可以进行到操作660。
在操作650中,电子设备400(例如合成模块416)可以执行第一合成。例如,在操作650中,电子设备400可以在其上生成了图像更新的第一合成类型的层(例如非目标层)上执行软件合成(例如相应于第一合成类型的合成)。软件合成可以指由GPU或CPU执行的合成。
在操作660中,在操作620中选择目标层之后,电子设备400(例如合成模块416)可以确定第一合成类型的层是否为在帧缓冲器中要合成的第一帧。
如果第一合成类型的层是在选择目标层之后要在帧缓冲器中合成的第一帧,则该进程可以在执行操作660之后前进到操作650。例如,在选择目标层之后,第一合成类型的层是在帧缓冲器中要合成的第一帧的情况可以意味着要重复使用的帧缓冲器(或要重复使用的合成图像)不存在,因此进程可以进行到操作650。在操作620中选择目标层之后当前帧不是第一帧的情况可以意味着存在要重复使用的帧缓冲器,于是进程可以进行到操作670。
根据本发明的各种实施例,操作640和操作660可以按顺序互换。
在操作670中,电子设备400(例如显示控制器420)可以执行第二合成。例如,电子设备400可以在操作650中执行图形缓冲器(例如与目标层相对应的图形缓冲器)与执行图像合成的帧缓冲器的合成。相应于混合器424(作为显示控制器420中包括的硬件部件)的合成(例如相应于第二合成类型的合成)的操作670的合成可以不同于操作650的合成。
在操作680中,电子设备400(例如显示控制器420)可以将在操作670中合成的最终图像输出到显示面板430。
图7示出根据本发明的各种实施例的其中电子设备执行图像合成并显示合成的图像的方法。
在操作710中,电子设备400(例如层管理器模块418)可以获取关于根据应用的执行而生成的每个层的信息。例如,层管理器模块418可以获取每一层的图像的更新频率、图像的大小(例如其中将显示图像的区域的大小)、图像位置(例如要在其中显示图像的区域的位置)、层名称和z-顺序。根据本发明的各种实施例,操作710可以周期性地或随机地重复执行。例如,当由层管理器模块418管理的层的配置改变(例如层创建和删除)时,可以执行操作710。或者,即使由层管理器模块418管理的层的配置没有改变,也可以周期性地执行操作720。在操作720中,电子设备400(例如层选择模块414)可以通过使用在操作710中获取的关于每个层的信息来选择层的至少一个或多个目标层。目标层的数量可以基于显示控制器420中的平面421和422的数量确定。
在操作730中,电子设备400(例如层选择模块414)可以为在操作720中分类的每个目标层和非目标层设置合成类型。例如,非目标层可以被设置为具有第一合成类型,目标层可以被设置为具有第二合成类型。根据实施例,目标层的数量可以被确定为小于显示控制器420中的平面421和422的数量。例如,如果可选择为目标层的候选层的数量大于平面421和422的数量,可以通过将与候选层对应的一些层设置为非目标层来调整目标层的数量。
在操作740中,电子设备400(例如合成模块416)可以确定是否相对于第一合成类型的层(非目标层)的图像生成了更新。如果关于第一合成类型的层的图像生成更新,则该进程可以进行到操作750。如果没有关于第一合成类型的层的图像生成更新,则进程可以进行到操作760。
在操作750中,电子设备400(例如合成模块416)可以将在操作730中设置的所有层的合成类型再次设置为第一合成类型。在执行操作750之后,该进程可以进行到操作770。
在操作770中,电子设备400(例如合成模块416)可以在第一合成类型的层(所有层)上执行GPU合成。GPU合成可以指软件组合。
在操作760中,在操作720中选择目标层之后,电子设备400(例如合成模块416)可以确定第一合成类型的层是否为在帧缓冲器中要合成的第一帧。如果在选择了目标层之后,第一合成类型的层是要在帧缓冲器中被合成的第一帧,则进程可以进行到操作770。例如,在选择了目标层之后第一合成类型的层是要在帧缓冲器中合成的第一帧的情况可以意味着不存在要重复使用的帧缓冲器(或要重复使用的合成图像),于是进程可以进行到操作770。如果当前帧不是选择目标层之后的第一帧,则该进程可以进行到操作780。
在操作780中,电子设备400(例如合成模块416)可以将在操作770中合成的最终图像输出到显示面板430。例如,合成的最终图像可以通过显示控制器420输出到显示面板430。
根据参考图6和7描述的实施例,在将低更新频率的层设置为非目标层并且将高更新频率的层设置为目标层的情况下,仅在目标层上执行第二类型(例如HWC类型)的合成的情况很多,因此伴随GPU合成的第一类型(例如GLES类型)的合成频率可能降低。
图8示出根据本发明的各种实施例的其中电子设备执行图像合成并且在第一垂直同步信号显示合成图像的方法。
在操作810中,层选择模块414可以选择与所执行的应用404和405相对应的多个层(例如第一层401、第二层402和第三层403)中的目标层/非目标层。例如,层选择模块414可以选择第一层401和第二层402作为非目标层,并且可以选择第三层403作为目标层。
在操作820中,缓冲器管理模块412可以响应于应用的请求(例如出队列缓冲器)向第一层401、第二层402和第三层403中的每一个分配图形缓冲器。第一层401、第二层402和第三层403可以分别在所分配的图形缓冲器中绘制第一图像801、第二图像802和第三图像803。在这种情况下,关于其中绘制图像的每个图形缓冲器的信息可以被发送到合成模块416(例如入队列缓冲器)。
在操作830中,合成模块416可以在帧缓冲器中合成与被选择为非目标层的第一层401和第二层402相对应的第一图像801和第二图像802。合成模块416可以通过使用图形库440来执行合成。在这种情况下,图形库440可以使用GPU 450。操作830的合成可以是例如GPU合成。
在操作840中,合成模块416可以将在操作830中在帧缓冲器中合成的合成图像804和第三图像803发送到显示控制器420。例如,合成模块416可以将关于其中合成了图像的帧缓冲器的信息(例如存储器开始地址、宽度、高度和步长)以及其中绘制了第三图像803的图形缓冲器的信息提供给显示控制器420。
在操作850中,显示控制器420可以通过合成合成图像804和第三图像803来生成最终图像805。
在操作860中,显示控制器420可以将最终图像805发送到显示面板430,以便提供给用户。
图9示出根据本发明的各种实施例的其中电子设备执行图像合成并且在第二垂直同步信号显示合成图像的方法。在图9中示例了一个实施例,在第一垂直同步信号和第二垂直同步信号之间,第一图像901和第二图像902不被更新,第三图像903被更新。
在操作910中,缓冲器管理模块412可以向其上生成了图像更新的第三层403分配图形缓冲器。第三层403可以在所分配的图形缓冲器中绘制第三图像903。
在操作920中,其中绘制了第三图像903的图形缓冲器可以被发送到合成模块416。
在操作930中,其中绘制了第三图像903的图形缓冲器可以被发送到显示控制器420。由于针对第一合成类型的层(例如非目标层)未生成图像更新,因此合成模块416可以不执行合成。
在操作930中,显示控制器420可通过重复使用在第一垂直同步信号合成的合成图像904来执行与第三图像903的合成以产生最终图像905。
在操作960中,显示控制器420可以将最终图像905发送到显示面板430,以便提供给用户。
图10示出根据本发明的各种实施例的其中电子设备执行图像合成并显示合成的图像的方法。
在操作1010中,电子设备可以获取关于每个层的信息。
在操作1020中,电子设备可以基于在操作1010中获取的信息将每个层分类为第一合成类型的层或第二合成类型的层。
在操作1030中,电子设备可以将在操作1020中被分类为第一合成类型的层的多个层的图形数据合成为一个,并且可以将合成的图形数据存储在第一存储器缓冲器(例如帧缓冲器)中。
在操作1040中,电子设备可以将在操作1020中存储在第一存储器缓冲器中的图形数据和被分类为第二合成类型的层的至少一个或多个层的图形数据合成为一个,并且可以存储合成的图形数据到第二存储器缓冲器(例如内部存储器426)中。
在操作1050中,电子设备可以将存储在第二存储器缓冲器中的图形数据输出到显示面板。
根据本发明的各个实施例的电子设备的图形数据合成方法可以包括将与至少一个应用相关联的多个层中的每一个的合成类型设置为第一合成类型或第二合成类型、通过使用第一图形合成器在帧缓冲器中合成多个层中的相应于设置为第一合成类型的层的第一图形数据、通过使用第二图形合成器将帧缓冲器中合成的图形数据与多个层中的设置为第二合成类型的层相对应的第二图形数据进行合成、经与电子设备可操作地连接的显示器显示通过使用第二图形合成器合成的图形数据。
根据实施例,第一图形合成器可以是软件合成器,第二图形合成器可以是硬件合成器。
根据实施例,该方法还可以包括:如果相对于第一图形数据未生成更新并且相对于第二图形数据生成更新,则禁止使用第一图形合成器的合成,并且利用第二图形合成器将帧缓冲器中合成的图形数据和相应于更新的第二图形数据的第三图形数据进行合成。
根据实施例,多个层中的每个层的合成类型的设置可以包括:基于以下至少之一设置多个层中的每个层的合成类型:与多个层中的每个层相对应的图形数据的更新频率信息、相应于多个层中的每个层的z-顺序信息、尺寸信息以及其中将显示与多个层中的每个层相对应的图形数据的区域的位置信息。
根据实施例,多个层中的每个层的合成类型的设置可以包括:将多个层中的其图形数据的更新频率不小于指定值的层的合成类型设置到第二合成类型,并且将多个层中的其图形数据的更新频率小于指定值的层的合成类型设置到第一合成类型。
根据实施例,多个层中的每个层的合成类型的设置可以包括:将多个层中的其图形数据的大小不小于指定值的层的合成类型设置到第二合成类型,将多个层中的其图形数据的大小小于指定值的层的合成类型设置到第一合成类型。
根据实施例,多个层中的每个层的合成类型的设置可以包括:确定多个层中的每个层是否包含在预先存储在存储器中的列表中;将多个层中的包括在列表中的层的合成类型设置到第二合成类型;以及将多个层中未包括在列表中的层的合成类型设置到第一合成类型。
根据实施例,多个层中的每一个的合成类型的设置可以包括验证多个层中的每个层的z-顺序,并且设置多个层中的每个层的合成类型使得第二合成类型的层存在于第一合成类型的层之间或者第一合成类型的层不存在于第二合成类型的层之间。
根据实施例,可以基于包括在第二合成器中的平面的数量来确定第一合成类型的层的数量和第二合成类型的层的数量。
这里使用的术语“模块”可以表示例如包括硬件、软件和固件的一个或多个组合的单元。术语“模块”可以与术语“单元”、“逻辑”、“逻辑块”、“组件”和“电路”可互换地使用。“模块”可以是集成部件的最小单元或者可以是其一部分。“模块”可以是用于执行一个或多个功能的最小单元或其一部分。“模块”可以机械地或电子地实现。例如,“模块”可以包括用于执行一些操作的专用IC(ASIC)芯片、现场可编程门阵列(FPGA)和可编程逻辑器件中的至少一个,其是已知的或将要开发的。
根据各种实施例,装置的至少一部分(例如其模块或功能)或方法(例如操作)的至少一部分可以例如由存储在计算机可读存储介质中的程序模块形式的指令实现。所述指令在由处理器执行时可致使所述一个或一个以上处理器执行相应于所述指令的功能。计算机可读存储介质例如可以是存储器。
计算机可读记录介质可以包括硬盘、磁介质、软盘、磁介质(例如磁带)、光介质(例如光盘只读存储器(CD-ROM)和数字通用盘(DVD)、磁光介质(例如软盘)和硬件设备(例如只读存储器(ROM)、随机存取存储器(RAM)或闪存)。再者,程序指令不仅可以包括诸如由编译器生成的事物的机械代码,而且可以包括可以使用编译器在计算机上可执行的高级语言代码。上述硬件设备可以被配置用于作为一个或多个软件模块操作以执行根据本发明的各种实施例的操作,反之亦然。
根据本发明的各种实施例,一种其上记录有程序的计算机可读记录介质,所述程序在被执行时执行一种方法,所述方法包括:将与至少一个应用相关联的多个层中的每个层的合成类型设置为第一合成类型或第二合成类型;通过使用第一图形合成器,在帧缓冲器中合成与多个层中的设置为第一合成类型的层相对应的图形数据;通过使用第二图形合成器,将帧缓冲器中的合成的图形数据与相应于多个层中的设置为第二合成类型的层的第二图形数据进行合成;通过可操作地与电子设备连接的显示器来显示通过使用第二图形合成器合成的图形数据。
根据本发明的各种实施例的模块或程序模块可以包括上述元件中的至少一个,或者可以省略一些元件或可以添加其他附加元件。由根据本发明的各种实施例的模块、程序模块或其他元件执行的操作可以以顺序、并行、迭代或启发的方式执行。此外,一些操作可以以另一顺序执行或者可以被省略,或者可以添加其他操作。
根据本发明的各种实施例的电子设备和方法可以通过减少用于应用的图形合成的存储器复制操作的数量来减少与应用的图形相关处理相关联的电流消耗。
虽然已经利用示例性实施例描述了本发明,但是可以向本领域技术人员提出各种改变和修改。本发明旨在涵盖落入所附权利要求的范围内的这样的改变和修改。

Claims (15)

1.一种电子设备,包括:
第一图形合成器,被配置用于合成与第一合成类型的层相关联的第一图形数据;
第二图形合成器,被配置用于合成与不同于所述第一合成类型的第二合成类型的层相关联的第二图形数据;和
处理器,被配置用于:
将与至少一个应用相关联的多个层中的每个层的合成类型设置为所述第一合成类型或所述第二合成类型;
通过使用所述第一图形合成器,在帧缓冲器中合成与所述多个层中的设置为所述第一合成类型的层相对应的第一图形数据;
通过使用所述第二图形合成器,将所述帧缓冲器中的合成的图形数据与相应于多个层中的设置为所述第二合成类型的层的第二图形数据进行合成;和
通过与所述电子设备可操作地连接的显示器来显示通过使用所述第二图形合成器所合成的图形数据。
2.根据权利要求1所述的电子设备,其中所述第一图形合成器是软件合成器,所述第二图形合成器是硬件合成器。
3.根据权利要求1所述的电子设备,其中所述处理器被配置用于:
当相对于所述第一图形数据没有生成更新并且相对于所述第二图形数据生成更新时,禁止利用所述第一图形合成器的合成,并且通过利用所述第二图形合成器将所述帧缓冲器中的合成的数据与相应于所述更新的第二图形数据的第三图形数据进行合成。
4.根据权利要求1所述的电子设备,其中所述处理器被配置用于:
基于以下信息中至少之一来设置所述多个层中的每个层的合成类型:与所述多个层中的每个层相对应的图形数据的更新频率信息、与所述多个层中的每个层相对应的z-顺序信息、大小信息以及其中将显示与所述多个层中的每个层相对应的图形数据的区域的位置信息。
5.根据权利要求4所述的电子设备,其中所述处理器被配置用于:
将所述多个层中的其中的图形数据的更新频率不小于指定值的层的合成类型设置为所述第二合成类型,以及
将所述多个层中的其中的图形数据的更新频率小于所述指定值的层的合成类型设置为所述第一合成类型。
6.根据权利要求4所述的电子设备,其中所述处理器被配置用于:
将所述多个层中的其中的图形数据的大小不小于指定值的层的合成类型设置为所述第二合成类型,以及
将所述多个层中的其中的图形数据的大小小于所述指定值的层的合成类型设置为所述第一合成类型。
7.根据权利要求4所述的电子设备,其中所述处理器被配置用于:
确定所述多个层中的每个层是否包括在预先存储在存储器中的列表中,
将所述多个层中的包括在所述列表中的层的合成类型设置为所述第二合成类型,以及
将所述多个层中的不包括在所述列表中的层的合成类型设置为所述第一合成类型。
8.根据权利要求4所述的电子设备,其中所述处理器被配置用于:
验证所述多个层中的每个层的z-次序,以及
设置所述多个层中的每个层的合成类型,使得在所述第一合成类型的层之间存在所述第二合成类型的层,或者在所述第二合成类型的层之间不存在所述第一合成类型的层。
9.根据权利要求1所述的电子设备,其中基于包括在所述第二图形合成器中的平面的数量来确定所述第一合成类型的层的数量和所述第二合成类型的层的数量。
10.根据权利要求1所述的电子设备,其中所述多个层分别相应于由所述处理器执行的不同应用。
11.一种电子设备的图形数据合成方法,所述方法包括:
将与至少一个应用相关联的多个层中的每个层的合成类型设置为第一合成类型或第二合成类型;
通过使用第一图形合成器,在帧缓冲器中合成与多个层中的设置为第一合成类型的层相对应的第一图形数据;
通过使用第二图形合成器,将所述帧缓冲器中的合成的图形数据与相应于多个层中的设置为第二合成类型的层的第二图形数据进行合成;和
通过与所述电子设备可操作地连接的显示器来显示通过使用所述第二图形合成器所合成的图形数据。
12.根据权利要求11所述的方法,其中所述第一图形合成器是软件合成器,所述第二图形合成器是硬件合成器。
13.根据权利要求11所述的方法,还包括:
如果相对于所述第一图形数据未生成更新并且相对于所述第二图形数据生成更新,则禁止使用所述第一图形生成器的合成;和
通过使用第二图形合成器来将所述帧缓冲器中的合成的图形数据与相应于所述更新的第二图形数据的第三图形数据进行合成。
14.根据权利要求11所述的方法,其中所述多个层中的每个层的合成类型的设置包括:
基于以下信息中至少之一来设置所述多个层中的每个层的合成类型:与所述多个层中的每个层相对应的图形数据的更新频率信息、与所述多个层中的每个层相对应的z-顺序信息、大小信息以及其中将显示与所述多个层中的每个层相对应的图形数据的区域的位置信息。
15.根据权利要求14所述的方法,其中所述多个层中的每个层的合成类型的设置包括:
将所述多个层中的其中的图形数据的更新频率不小于指定值的层的合成类型设置为所述第二合成类型;和
将所述多个层中的其中的图形数据的更新频率小于所述指定值的层的合成类型设置为所述第一合成类型。
CN201710286340.9A 2016-04-27 2017-04-27 用于合成图形数据的电子设备及其方法 Active CN107402733B (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR10-2016-0051743 2016-04-27
KR1020160051743A KR102488333B1 (ko) 2016-04-27 2016-04-27 그래픽 데이터를 합성하는 전자 장치 및 방법

Publications (2)

Publication Number Publication Date
CN107402733A true CN107402733A (zh) 2017-11-28
CN107402733B CN107402733B (zh) 2022-04-12

Family

ID=58744994

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201710286340.9A Active CN107402733B (zh) 2016-04-27 2017-04-27 用于合成图形数据的电子设备及其方法

Country Status (4)

Country Link
US (1) US10565672B2 (zh)
EP (1) EP3287895B1 (zh)
KR (1) KR102488333B1 (zh)
CN (1) CN107402733B (zh)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107995974A (zh) * 2016-09-28 2018-05-04 深圳市柔宇科技有限公司 系统性能提升方法、系统性能提升装置及显示装置
US10748244B2 (en) * 2017-06-09 2020-08-18 Samsung Electronics Co., Ltd. Systems and methods for stereo content detection
EP3438965A1 (en) 2017-08-04 2019-02-06 NXP USA, Inc. Method and apparatus for blending layers within a graphics display component
EP3438936B1 (en) * 2017-08-04 2022-03-30 NXP USA, Inc. Method and apparatus for managing graphics layers within a data processing system
US10354623B1 (en) * 2018-01-02 2019-07-16 Qualcomm Incorporated Adaptive buffer latching to reduce display janks caused by variable buffer allocation time
CN108762128B (zh) * 2018-04-13 2021-09-07 大族激光科技产业集团股份有限公司 一种电气控制集成系统以及装置
US10838468B2 (en) * 2019-01-28 2020-11-17 EMC IP Holding Company LLC Mounting a camera behind a transparent organic light emitting diode (TOLED) display
JP2020177074A (ja) * 2019-04-16 2020-10-29 株式会社デンソー 車両用装置、車両用装置の制御方法
CN110363831B (zh) * 2019-07-17 2023-04-07 Oppo广东移动通信有限公司 图层合成方法、装置、电子设备及存储介质
CN110377263B (zh) * 2019-07-17 2021-08-17 Oppo广东移动通信有限公司 图像合成方法、装置、电子设备及存储介质
US11227359B2 (en) * 2019-10-15 2022-01-18 Adobe Inc. User-defined image compositing on graphics processing units
KR20220028698A (ko) 2020-08-31 2022-03-08 삼성전자주식회사 고해상도 디스플레이를 위한 영상 처리 장치, 영상 처리 방법 및 이를 포함하는 어플리케이션 프로세서
CN116830146A (zh) * 2021-02-12 2023-09-29 高通股份有限公司 基于动态优先级和运行时间统计的合成策略搜索
CN115145513A (zh) * 2021-03-31 2022-10-04 华为技术有限公司 一种投屏方法、系统及相关装置
CN112988357B (zh) * 2021-04-14 2021-07-27 湖北亿咖通科技有限公司 全景影像显示方法、计算机存储介质及电子设备
US11705091B2 (en) * 2021-09-30 2023-07-18 Qualcomm Incorporated Parallelization of GPU composition with DPU topology selection
US11776507B1 (en) * 2022-07-20 2023-10-03 Ivan Svirid Systems and methods for reducing display latency
KR20240062268A (ko) * 2022-10-28 2024-05-09 주식회사 엘지유플러스 Iptv 또는 ott 앱의 홈 메뉴를 위한 그래픽 사용자 인터페이스 제공 방법 및 장치

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918921A (zh) * 2008-01-27 2010-12-15 思杰系统有限公司 用于远程提供三维图形的方法和系统
US20130328922A1 (en) * 2012-06-11 2013-12-12 Qnx Software Systems Limited Cell-based composited windowing system
US20150161754A1 (en) * 2013-12-10 2015-06-11 Joel Solomon Isaacson System and method for remote graphics using non-pixel rendering interfaces

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2001054400A1 (en) * 2000-01-24 2001-07-26 Matsushita Electric Industrial Co., Ltd. Image synthesizing device, recorded medium, and program
US7274370B2 (en) 2003-12-18 2007-09-25 Apple Inc. Composite graphics rendered using multiple frame buffers
US7652678B2 (en) 2004-06-25 2010-01-26 Apple Inc. Partial display updates in a windowing system using a programmable graphics processing unit
US8218091B2 (en) * 2006-04-18 2012-07-10 Marvell World Trade Ltd. Shared memory multi video channel display apparatus and methods
US8130226B2 (en) 2006-08-04 2012-03-06 Apple Inc. Framework for graphics animation and compositing operations
US8477143B2 (en) 2008-03-04 2013-07-02 Apple Inc. Buffers for display acceleration
US8384738B2 (en) * 2008-09-02 2013-02-26 Hewlett-Packard Development Company, L.P. Compositing windowing system
JP2010181573A (ja) * 2009-02-04 2010-08-19 Nec Corp 画像処理装置、情報処理装置、携帯端末装置及び画像処理方法
JP2011133649A (ja) * 2009-12-24 2011-07-07 Denso Corp 画像表示制御装置
KR101717783B1 (ko) * 2010-01-29 2017-03-17 엘지전자 주식회사 복수의 그래픽 이미지 레이어의 중첩 순서 제어 방법
US9881592B2 (en) * 2013-10-08 2018-01-30 Nvidia Corporation Hardware overlay assignment
GB2521170A (en) * 2013-12-11 2015-06-17 Advanced Risc Mach Ltd Method of and apparatus for displaying an output surface in data processing systems
US9953620B2 (en) * 2015-07-29 2018-04-24 Qualcomm Incorporated Updating image regions during composition

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101918921A (zh) * 2008-01-27 2010-12-15 思杰系统有限公司 用于远程提供三维图形的方法和系统
US20130328922A1 (en) * 2012-06-11 2013-12-12 Qnx Software Systems Limited Cell-based composited windowing system
US20150161754A1 (en) * 2013-12-10 2015-06-11 Joel Solomon Isaacson System and method for remote graphics using non-pixel rendering interfaces

Also Published As

Publication number Publication date
KR102488333B1 (ko) 2023-01-13
CN107402733B (zh) 2022-04-12
EP3287895B1 (en) 2023-09-06
KR20170122580A (ko) 2017-11-06
US10565672B2 (en) 2020-02-18
EP3287895A3 (en) 2018-03-21
EP3287895A2 (en) 2018-02-28
US20170316541A1 (en) 2017-11-02

Similar Documents

Publication Publication Date Title
CN107402733A (zh) 用于合成图形数据的电子设备及其方法
CN105388931B (zh) 基于内部温度的波动控制装置性能的装置及其方法
CN107257954A (zh) 用于提供屏幕镜像服务的设备和方法
CN106354451A (zh) 用于操作电子设备的方法和电子设备
CN108713314A (zh) 服务器和由服务器控制用户环境的方法
CN107566693A (zh) 电子设备及其图像捕获方法
CN107665485A (zh) 用于显示图形对象的电子装置和计算机可读记录介质
CN108509168A (zh) 设备及其控制方法
CN107079063A (zh) 共享内容的方法及其电子设备
CN107390967A (zh) 用于显示应用的方法及其电子装置
CN107101665A (zh) 运动信息提供方法及支持所述方法的电子装置
CN109478393A (zh) 显示图像的电子装置和方法
CN108475171A (zh) 具有柔性显示器的电子设备以及用于操作电子设备的方法
CN108351697A (zh) 包括多个显示器的电子设备和用于操作其的方法
CN108604432A (zh) 电子设备及用于控制其的方法
CN106293055A (zh) 电子设备以及用于提供其触觉反馈的方法
CN108388782A (zh) 用于认证生物计量数据的电子设备和系统
CN110168471A (zh) 电子设备以及用于显示其运行的应用的历史的方法
CN107016950A (zh) 用于操作电子设备的方法和支持该方法的电子设备
CN108513060A (zh) 使用外部电子设备的拍摄方法和支持该方法的电子设备
CN107491177A (zh) 用于识别旋转体的旋转的方法及用于处理该方法的电子设备
CN107085507A (zh) 数据收发方法及装置
CN106372102A (zh) 电子装置和用于管理电子装置上的文件夹中的对象的方法
CN108700995A (zh) 电子设备和用于切换和对齐其应用的方法
CN107548486A (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