User interface for controlling media capture settings
An efficient media capture setting interface for electronic devices uses environmental sensing to dynamically display settings, addressing inefficiencies in existing interfaces and conserving energy.
Patent Information
- Authority / Receiving Office
- JP · JP
- Patent Type
- Applications
- Current Assignee / Owner
- APPLE INC
- Filing Date
- 2024-04-26
- Publication Date
- 2026-06-23
AI Technical Summary
Existing techniques for controlling media capture settings on electronic devices are cumbersome and inefficient, requiring complex user interfaces that consume time and energy, particularly in battery-operated devices.
A method and interface that utilize environmental sensing to dynamically display and hide media capture settings based on depth capture criteria, reducing user interaction and processing power.
The solution reduces cognitive burden on users, saves device energy, and extends battery life by optimizing the display of media capture settings based on environmental conditions.
Smart Images

Figure 2026520321000001_ABST
Abstract
Description
[Technical Field]
[0001] This disclosure relates, in general terms, to computer user interfaces, and more specifically, to techniques for controlling media capture settings.
[0002] (Cross-reference of related applications) This application is a tribute to U.S. Patent Application No. 18 / 373,158, titled "USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS", filed on September 26, 2023; U.S. Patent Application No. 18 / 373,163, titled "USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS", filed on September 26, 2023; U.S. Patent Application No. 18 / 373,168, titled "USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS", filed on September 26, 2023; U.S. Patent Application No. 18 / 373171, titled "USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS", filed on September 11, 2023. This application claims priority to U.S. Patent Provisional Application No. 63 / 537800, entitled “CONTROLLING MEDIA CAPTURE SETTINGS”, U.S. Patent Provisional Application No. 63 / 470539, entitled “USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS”, filed on 2 June 2023, and U.S. Patent Provisional Application No. 63 / 464,528, entitled “USER INTERFACES FOR CONTROLLING MEDIA CAPTURE SETTINGS”, filed on 5 May 2023, all of which are incorporated herein by reference. The contents of each of these applications are incorporated herein by reference in their entirety. [Background technology]
[0003] Since the emergence of virtual cameras, such as camera applications on smartphones and other personal electronic devices, the range of functionality available to users for capturing, storing, and editing photographic and video media has expanded significantly. For example, virtual cameras can offer numerous options for focus settings, zoom settings, lens settings, lighting settings, color settings, media size, media format, visual effects, and other aspects of media capture and management. [Overview of the project]
[0004] However, some techniques for controlling media capture settings using electronic devices are generally cumbersome and inefficient. For example, some existing techniques for controlling media capture settings use complex and time-consuming user interfaces that may involve numerous inputs for access and use. Existing techniques require more time and effort than necessary to find, control, and manage media capture settings, wasting user time and device energy. This latter consideration is particularly important in battery-powered devices.
[0005] Therefore, this technology provides an electronic device having a faster and more efficient method and interface for controlling media capture settings. Such a method and interface optionally complements or replaces other methods for controlling media capture settings. Such a method and interface reduces the cognitive burden on the user and creates a more efficient human-machine interface. Such a method and interface reduces the processing power used by the device to display the user interface, receive input through the user interface, and respond to user input. In the case of battery-operated computing devices, such a method and interface saves power and increases the interval between battery charging.
[0006] A method is described according to several embodiments. The method is performed by a computer system communicating with a display generation component, one or more cameras, and one or more sensors, and includes: obtaining information about the physical environment corresponding to the field of view of one or more cameras based on information from one or more sensors of the computer system while displaying a camera preview via the display generation component; and, in response to obtaining information about the physical environment corresponding to the field of view of one or more cameras, according to the computer system's determination that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, displaying a first selectable user interface object via the display generation component, which, if selected, initiates a process for performing a first depth-based media capture function; and, if the depth capture criteria are not met, discontinuing the display of the first selectable user interface object.
[0007] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, the one or more programs include instructions to obtain information about the physical environment corresponding to the field of view of one or more cameras based on information from one or more sensors of the computer system while displaying a camera preview via the display generation component, and, in accordance with the computer system's determination that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, the display generation component, if selected, to display a first selectable user interface object, which, if selected, initiates a process for performing a first depth-based media capture function, and to discontinue displaying the first selectable user interface object if the depth capture criteria are not met.
[0008] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, the one or more programs include instructions to obtain information about the physical environment corresponding to the field of view of one or more cameras based on information from one or more sensors of the computer system while displaying a camera preview via the display generation component, and, in accordance with the computer system's determination that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, the display generation component, if selected, to display a first selectable user interface object, which, if selected, initiates a process for performing a first depth-based media capture function, and to discontinue displaying the first selectable user interface object if the depth capture criteria are not met.
[0009] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component, one or more cameras, and one or more sensors, and the computer system comprises one or more processors and memory for storing one or more programs configured to be executed by the one or more processors, the one or more programs, via the display generation component, acquire information about the physical environment corresponding to the field of view of one or more cameras based on information from one or more sensors of the computer system while displaying a camera preview, and, in response to acquiring information about the physical environment corresponding to the field of view of one or more cameras, the computer system determines that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, and, if selected, displays a first selectable user interface object via the display generation component, which, if selected, initiates a process for performing a first depth-based media capture function, and, if the depth capture criteria are not met, discontinues displaying the first selectable user interface object.
[0010] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component, one or more cameras, and one or more sensors, and the computer system includes means for acquiring information about the physical environment corresponding to the field of view of one or more cameras, based on information from one or more sensors of the computer system, while displaying a camera preview via the display generation component; means for displaying a first selectable user interface object, which, if selected, initiates a process for performing a first depth-based media capture function, in accordance with the computer system's determination that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, in response to acquiring information about the physical environment corresponding to the field of view of one or more cameras; and means for discontinuing the display of the first selectable user interface object in accordance with the determination that the depth capture criteria are not met.
[0011] According to some embodiments, a computer program product is described. The computer program product stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, the one or more programs, via the display generation component, acquire information about the physical environment corresponding to the field of view of one or more cameras based on information from one or more sensors of the computer system while displaying a camera preview, and, in accordance with the acquisition of information about the physical environment corresponding to the field of view of one or more cameras, the computer system determines that depth capture criteria are met based on the information about the physical environment corresponding to the field of view of one or more cameras, and, if selected, displays a first selectable user interface object via the display generation component, which, if selected, starts a process for performing a first depth-based media capture function, and, if the depth capture criteria are not met, stops displaying the first selectable user interface object.
[0012] According to several embodiments, the method is described. The method is performed in a computer system communicating with a display generation component and a camera, and includes, via the display generation component, displaying a camera user interface, the camera user interface includes a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states, including the first state, are available for the first media capture setting; detecting a first user input corresponding to the selectable user interface object; and, in response to detecting the first user input, switching the first media capture setting to a second state different from the first state among a plurality of states, according to the determination that the first user input is a first type of input; and, according to the determination that the first user input is a second type of input, displaying a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, the selectable user interface object corresponding to the third state, which, when selected, causes the first media capture setting to switch to a third state, the third state being different from the first state and different from the second state.
[0013] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, the one or more programs, via the display generation component, display a camera user interface, the camera user interface includes selectable user interface objects corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states including the first state are available for the first media capture setting, displaying the camera user interface and the first user corresponding to the selectable user interface objects The system detects an input, and upon detecting a first user input, it determines that the first user input is of a first type, and switches the first media capture setting to a second state which is different from the first state among a plurality of states. The system also includes a command to display a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, which, when selected, causes the first media capture setting to switch to the third state, and the third state is different from both the first and second states.
[0014] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, the one or more programs, via the display generation component, display a camera user interface, the camera user interface includes selectable user interface objects corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states including the first state are available for the first media capture setting, displaying the camera user interface and the first user corresponding to the selectable user interface objects The system detects an input, and upon detecting a first user input, it determines that the first user input is of a first type, and switches the first media capture setting to a second state which is different from the first state among a plurality of states. The system also includes a command to display a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, which, when selected, causes the first media capture setting to switch to the third state, and the third state is different from both the first and second states.
[0015] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and a camera, and the computer system comprises one or more processors and a memory that stores one or more programs configured to be executed by the one or more processors, the one or more programs via the display generation component, a camera user interface, the camera user interface includes selectable user interface objects corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states including the first state are available for the first media capture setting, the camera user interface displays, and the selectable user interface objects The system includes a command to detect a first user input corresponding to a to, and in response to the detection of the first user input, to switch the first media capture setting to a second state which is different from the first state among a plurality of states, in accordance with the determination that the first user input is a first type of input, and in accordance with the determination that the first user input is a second type of input, to display a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object corresponding to the third state causes the first media capture setting to switch to the third state, and the third state displays a selectable user interface object which is different from the first state and different from the second state.
[0016] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and a camera, and the computer system, via the display generation component, includes means for displaying a camera user interface, the camera user interface including a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting being a first state, and a plurality of states including the first state being available for the first media capture setting; means for detecting a first user input corresponding to a selectable user interface object; means for switching the first media capture setting to a second state different from the first state among a plurality of states, in response to the detection of the first user input, according to the determination that the first user input is a first type of input; and means for displaying a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, the selectable user interface object corresponding to the third state, which, when selected, causes the first media capture setting to switch to a third state, the third state being different from the first state and different from the second state.
[0017] According to several embodiments, a computer program product is described. The computer program product stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, and the one or more programs, via the display generation component, display a camera user interface, the camera user interface includes selectable user interface objects corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states including the first state are available for the first media capture setting, display the camera user interface, and the first user interface corresponding to the selectable user interface objects The system includes a command that, upon detecting force and detecting a first user input, determines that the first user input is of a first type, and switches the first media capture setting to a second state which is different from the first state among a plurality of states, and, upon determining that the first user input is of a second type, displays a selectable user interface object corresponding to a third state among a plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object causes the first media capture setting to switch to the third state, and the third state displays a selectable user interface object which is different from both the first and second states.
[0018] A method is described according to several embodiments. The method is performed in a computer system communicating with a display generation component and one or more cameras, and includes detecting a first input corresponding to a request to zoom the camera preview while displaying a camera preview at a first zoom level, which includes a first representation of the field of view of one or more cameras including a first portion of the environment, via the display generation component; displaying a camera preview at a second zoom level and a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a larger portion of the environment included in the camera preview at the second zoom level, in response to the detection of the first input, according to the determination that the first input corresponds to a request to zoom to a second zoom level higher than an individual zoom threshold; and displaying a camera preview at a third zoom level, which includes a second representation of the field of view of one or more cameras including a second portion of the environment, according to the determination that the first input corresponds to a request to zoom to a third zoom level lower than an individual zoom threshold, wherein the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras including a second portion of the environment, without displaying a secondary representation of the field of view of one or more cameras.
[0019] According to some embodiments, a non - transient computer - readable storage medium is described. The non - transient computer - readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system in communication with a display generation component and one or more cameras. The one or more programs, while displaying a camera preview including a first representation of the field of view of one or more cameras including a first part of the environment at a first zoom level via the display generation component, detect a first input corresponding to a request to zoom the camera preview. In response to detecting the first input, according to a determination that the first input corresponds to a request to zoom to a second zoom level higher than an individual zoom threshold, display the camera preview at the second zoom level and a secondary representation of the field of view of one or more cameras that is smaller than the camera preview and includes a representation of a larger part of the environment included in the camera preview at the second zoom level. And according to a determination that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, display the camera preview at the third zoom level, where the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras including a second part of the environment without displaying a secondary representation of the field of view of one or more cameras.
[0020] According to some embodiments, a temporary computer-readable storage medium is described. A temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, the one or more programs include instructions to detect a first input corresponding to a request to zoom the camera preview while displaying a camera preview at a first zoom level, which includes a first representation of the field of view of one or more cameras including a first part of the environment, via the display generation component; and, in response to detecting the first input, displaying a camera preview at a second zoom level and a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger part of the environment included in the camera preview at the second zoom level, according to the determination that the first input corresponds to a request to zoom at a second zoom level higher than an individual zoom threshold; and displaying a camera preview at a third zoom level, which includes a second representation of the field of view of one or more cameras including a second part of the environment, according to the determination that the first input corresponds to a request to zoom at a third zoom level lower than an individual zoom threshold, the camera preview at the third zoom level includes instructions to display a camera preview at a third zoom level, which includes a second representation of the field of view of one or more cameras including a second part of the environment, without displaying a secondary representation of the field of view of one or more cameras.
[0021] According to some embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and one or more cameras, and the computer system includes one or more processors and a memory storing one or more programs configured to be executed by the one or more processors. The one or more programs detect a first input corresponding to a request to zoom the camera preview while displaying, via the display generation component, a camera preview including a first representation of a field of view of one or more cameras that includes a first portion of an environment at a first zoom level. In response to detecting the first input, according to a determination that the first input corresponds to a request to zoom to a second zoom level that is higher than an individual zoom threshold, display a camera preview at the second zoom level and a secondary representation of the field of view of one or more cameras that is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level. According to a determination that the first input corresponds to a request to zoom to a third zoom level that is lower than the individual zoom threshold, display a camera preview at the third zoom level, where the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras that includes a second portion of the environment without displaying a secondary representation of the field of view of one or more cameras.
[0022] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and one or more cameras, and the computer system includes means for detecting a first input corresponding to a request to zoom a camera preview, while displaying a camera preview at a first zoom level, which includes a first representation of the field of view of one or more cameras including a first portion of the environment, via the display generation component; means for displaying a camera preview at a second zoom level and a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a larger portion of the environment included in the camera preview at the second zoom level, in response to the detection of the first input, according to the determination that the first input corresponds to a request to zoom to a second zoom level higher than an individual zoom threshold; and means for displaying a camera preview at a third zoom level, according to the determination that the first input corresponds to a request to zoom to a third zoom level lower than an individual zoom threshold, wherein the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras including a second portion of the environment, without displaying a secondary representation of the field of view of one or more cameras.
[0023] According to some embodiments, a computer program product is described. The computer program product stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, and the one or more programs include instructions to detect a first input corresponding to a request to zoom the camera preview while displaying a camera preview at a first zoom level, which includes a first representation of the field of view of one or more cameras including a first part of the environment, via the display generation component, and, in response to the detection of the first input, display a camera preview at a second zoom level and a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger part of the environment included in the camera preview at the second zoom level, according to the determination that the first input corresponds to a request to zoom at a second zoom level higher than an individual zoom threshold, and to display a camera preview at a third zoom level, which includes a second representation of the field of view of one or more cameras including a second part of the environment, without displaying a secondary representation of the field of view of one or more cameras.
[0024] A method is described according to several embodiments. The method is performed on a computer system communicating with a display generation component and a camera, and includes detecting a request to view recently captured media while displaying a camera user interface via the display generation component, and, in response to detecting a request to view recently captured media, displaying a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and is not added to a media library associated with the computer system, according to a determination that one or more sets of external storage criteria are not met, and displaying a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0025] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, the one or more programs include instructions to detect a request to view recently captured media while displaying a camera user interface via the display generation component, and, in response to detecting a request to view recently captured media, display a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and is not added to a media library associated with the computer system, and, in response to a determination that one or more sets of external storage criteria are not met, display a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0026] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, the one or more programs include instructions to detect a request to view recently captured media while displaying a camera user interface via the display generation component, and, in response to detecting a request to view recently captured media, display a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and is not added to a media library associated with the computer system, and, in response to a determination that one or more sets of external storage criteria are not met, display a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0027] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and a camera, and the computer system comprises one or more processors and memory storing one or more programs configured to run by the one or more processors, the one or more programs including instructions to detect a request to view recently captured media while displaying a camera user interface via the display generation component, and in response to detecting a request to view recently captured media, display a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and has not been added to a media library associated with the computer system, and, in accordance with a determination that one or more external storage criteria are not met, display a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0028] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and a camera, and the computer system, via the display generation component, detects a request to view recently captured media while displaying a camera user interface, and in response to detecting a request to view recently captured media, displays a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and is not added to a media library associated with the computer system, according to a determination that one or more sets of external storage criteria are not met, and displays a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0029] According to several embodiments, a computer program product is described. The computer program product stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, and the one or more programs include instructions to detect a request to view recently captured media while displaying a camera user interface via the display generation component, and, in response to detecting a request to view recently captured media, display a representation of a first set of one or more captured media items, wherein the first set of one or more captured media items is stored on an external storage device communicating with the computer system and has not been added to a media library associated with the computer system, and, in response to a determination that one or more sets of external storage criteria are not met, display a representation of a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in a media library associated with the computer system.
[0030] A method is described according to several embodiments. The method is performed in a computer system communicating with a display generation component and one or more cameras, and while displaying a camera user interface via the display generation component that includes a representation of a portion of the field of view of one or more cameras, the method includes, according to a determination that the portion of the field of view of one or more cameras satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of one or more cameras, displaying the representation of the portion of the field of view of one or more cameras via the display generation component, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, according to a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria, displaying the representation of the portion of the field of view of one or more cameras without displaying level indicators.
[0031] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, the one or more programs include instructions to display, via the display generation component, a representation of the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras satisfies a set of content criteria, the set of content criteria comprising a first criterion based on whether a first type of content is detected within the portion of the field of view of one or more cameras, the representation of the portion of the field of view of one or more cameras, without displaying the level indicators, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
[0032] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, the one or more programs include instructions to display, via the display generation component, a representation of the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras satisfies a set of content criteria, the set of content criteria comprising a first criterion based on whether a first type of content is detected within the portion of the field of view of one or more cameras, the representation of the portion of the field of view of one or more cameras, without displaying the level indicators, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
[0033] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component, one or more cameras, and one or more sensors, and the computer system comprises one or more processors and a memory for storing one or more programs configured to be executed by the one or more processors, the one or more programs include instructions to display, via the display generation component, a representation of the portion of the field of view of one or more cameras, while displaying a camera user interface including a representation of a portion of the field of view of one or more cameras, in accordance with a determination that the portion of the field of view of one or more cameras satisfies a set of content criteria, the set of content criteria including a first criterion based on whether a first type of content is detected within the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria, and to display a representation of the portion of the field of view of one or more cameras without displaying level indicators.
[0034] According to several embodiments, a computer system is described. The computer system is configured to communicate with a display generation component and one or more cameras, and while the computer system is displaying a camera user interface via the display generation component that includes a representation of a portion of the field of view of one or more cameras, the computer system includes means for displaying, via the display generation component, a representation of the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria, the computer system displays, via the display generation component, a representation of the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
[0035] According to some embodiments, a computer program product is described. The computer program product stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, and the one or more programs include instructions to display, via the display generation component, a representation of the portion of the field of view of one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of one or more cameras to individual orientations, in accordance with a determination that the portion of the field of view of one or more cameras satisfies a set of content criteria, the set of content criteria comprising a first criterion based on whether a first type of content is detected within the portion of the field of view of one or more cameras, and in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria, a representation of the portion of the field of view of one or more cameras without displaying level indicators.
[0036] A method is described according to several embodiments. The method includes, in a computer system communicating with a display generation component and one or more input devices, detecting an input via one or more input devices while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, and, in response to detecting the input, selecting a particular location of the representation of the media item corresponding to the particular part of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, according to a determination that the input includes a selection of a particular part of the representation of the media item, and adjusting the control elements to change the magnitude of the simulated depth of field effect on the media item, according to a determination that the input includes a selection of a control element.
[0037] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions to detect input via one or more input devices while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, and, in response to detecting input, to select a particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, according to a determination that the input includes a selection of a particular portion of the representation of the media item, and to adjust the control elements and change the magnitude of the simulated depth of field effect on the media item, according to a determination that the input includes a selection of control elements.
[0038] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions to detect input via one or more input devices while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, and, in response to detecting input, to select a particular location of the representation of the media item corresponding to the particular part of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, in accordance with the determination that the input includes a selection of a particular part of the representation of the media item, and to adjust the control elements and change the magnitude of the simulated depth of field effect on the media item, in accordance with the determination that the input includes a selection of control elements.
[0039] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system comprises one or more processors and a memory that stores one or more programs configured to be executed by one or more processors. The one or more programs include instructions to detect input via one or more input devices while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, and, in response to detecting input, to select a particular location of the representation of the media item corresponding to the particular part of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, in accordance with the determination that the input includes a selection of a particular part of the representation of the media item, and to adjust the control elements and change the magnitude of the simulated depth of field effect on the media item, in accordance with the determination that the input includes a selection of control elements.
[0040] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system, while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, includes means for detecting input via one or more input devices, and, in response to detecting input, selecting a particular location of the representation of the media item corresponding to the particular part of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, according to a determination that the input includes a selection of a particular part of the representation of the media item, and adjusting the control elements to change the magnitude of the simulated depth of field effect on the media item, according to a determination that the input includes a selection of control elements.
[0041] According to several embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs, while simultaneously displaying a representation of a media item and control elements for adjusting the simulated depth of field effect of the media item via the display generation component, detect an input via one or more input devices, and, in response to the detection of the input, select a particular location of the representation of the media item corresponding to the particular part of the representation of the media item selected by the input as a focus location for the simulated depth of field effect on the representation of the media item, according to the determination that the input includes the selection of a particular part of the representation of the media item, and adjust the control elements according to the determination that the input includes the selection of a control element, thereby changing the magnitude of the simulated depth of field effect on the media item.
[0042] A method is described according to several embodiments. The method includes, in a computer system communicating with a display generation component and one or more input devices, detecting a request via one or more input devices to display controls for editing a representation of a media item, and, in response to detecting a request to display controls for editing a representation of a media item, simultaneously displaying via the display generation component a first control element for editing the features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth of field effect for the representation of the media item.
[0043] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions that, upon detecting a request to display controls for editing a representation of a media item via one or more input devices, and in response to detecting a request to display controls for editing a representation of a media item, simultaneously display via the display generation component a first control element for editing features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth-of-field effect for the representation of the media item.
[0044] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions to detect a request via one or more input devices to display controls for editing a representation of a media item, and in response to detecting a request to display controls for editing a representation of a media item, to simultaneously display via the display generation component a first control element for editing features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth-of-field effect for the representation of the media item.
[0045] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system comprises one or more processors and a memory storing one or more programs configured to be executed by the one or more processors. One or more programs detect a request via one or more input devices to display controls for editing a representation of a media item, and in response to detecting a request to display controls for editing a representation of a media item, includes instructions via the display generation component to simultaneously display a first control element for editing features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth of field effect for the representation of the media item.
[0046] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes means for detecting a request to display controls for editing a representation of a media item via one or more input devices, and means for simultaneously displaying, via the display generation component, a first control element for editing the features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth of field effect for the representation of the media item.
[0047] According to several embodiments, a computer program product is described. The computer program product comprises one or more programs configured to run by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs detect a request via one or more input devices to display controls for editing a representation of a media item, and in response to detecting a request to display controls for editing a representation of a media item, the program includes instructions via the display generation component to simultaneously display a first control element for editing the features of one or more sets of images available to be displayed in a sequence of images when the representation of the media item is displayed via the display generation component, and a second control element for editing a simulated depth of field effect for the representation of the media item.
[0048] A method is described according to several embodiments. The method includes, in a computer system communicating with a display generation component and one or more input devices, detecting input directed to the representation of a media item including a simulated depth of field effect via one or more input devices while displaying a representation of a media item including a simulated depth of field effect via the display generation component, and, in response to detecting input directed to the representation of the media item, displaying a plurality of images corresponding to the media item via the display generation component, wherein the display includes displaying the plurality of images sequentially over time.
[0049] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions to detect input directed to the representation of a media item including a simulated depth of field effect via one or more input devices while displaying a representation of the media item including a simulated depth of field effect via the display generation component, and in response to detecting input directed to the representation of the media item, to display a plurality of images corresponding to the media item via the display generation component, the display including displaying the plurality of images sequentially over time.
[0050] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs include instructions to detect input directed to the representation of a media item including a simulated depth of field effect via one or more input devices while displaying a representation of the media item including a simulated depth of field effect via the display generation component, and in response to detecting input directed to the representation of the media item, to display a plurality of images corresponding to the media item via the display generation component, the display including displaying the plurality of images sequentially over time.
[0051] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system comprises one or more processors and a memory storing one or more programs configured to be executed by one or more processors. One or more programs include instructions to, while displaying a representation of a media item including a simulated depth of field effect via the display generation component, detect input directed to the representation of the media item including a simulated depth of field effect via one or more input devices, and, in response to detecting input directed to the representation of the media item, display via the display generation component a plurality of images corresponding to the media item, the display including displaying the plurality of images sequentially over time.
[0052] According to some embodiments, a computer system configured to communicate with a display generation component and one or more input devices is described. The computer system includes means for detecting input directed to the representation of a media item including a simulated depth of field effect via one or more input devices while displaying a representation of the media item including a simulated depth of field effect via the display generation component, and for displaying a plurality of images corresponding to the media item via the display generation component in response to detecting input directed to the representation of the media item, wherein displaying includes displaying the plurality of images sequentially over time.
[0053] According to several embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices. The one or more programs, while displaying a representation of a media item including a simulated depth of field effect via the display generation component, detect input directed to the representation of the media item including a simulated depth of field effect via one or more input devices, and, in response to detecting input directed to the representation of the media item, include instructions to display a plurality of images corresponding to the media item via the display generation component, wherein displaying includes displaying the plurality of images sequentially over time.
[0054] A method is described according to several embodiments. The method is a computer system having one or more cameras, the computer system communicating with a display generating component and one or more input devices, the computer system including a camera user interface via the display generating component that includes one or more selectable controls for managing zoom levels for capturing media, detecting a first input directed to an individual selectable control, including movement, and navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level in accordance with the movement in response to the detection of the first input directed to an individual selectable control, wherein navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels, snapping to a third zoom level while navigating the plurality of candidate zoom levels in accordance with the determination that a third zoom level between the first and second zoom levels is selected as a snap zoom level, and ceasing to snap to a third zoom level while navigating the plurality of candidate zoom levels in accordance with the determination that a third zoom level between the first and second zoom levels is not selected as a snap zoom level.
[0055] According to some embodiments, a non-temporary computer-readable storage medium is described. The non-temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices. One or more programs, via a display generation component, display a camera user interface including one or more selectable controls for managing zoom levels for capturing media; detect a first input directed to an individual selectable control, including movement; and, in response to detecting the first input directed to an individual selectable control, include instructions to navigate through a plurality of candidate zoom levels from a first zoom level to a second zoom level, wherein navigating includes snapping to one or more zoom levels while navigating through the plurality of candidate zoom levels; snapping to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has been selected as the snap zoom level; and ceasing to snap to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has not been selected as the snap zoom level.
[0056] According to some embodiments, a temporary computer-readable storage medium is described. The temporary computer-readable storage medium stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices. One or more programs, via a display generation component, display a camera user interface including one or more selectable controls for managing zoom levels for capturing media; detect a first input directed to an individual selectable control, including movement; and, in response to detecting the first input directed to an individual selectable control, include instructions to navigate through a plurality of candidate zoom levels from a first zoom level to a second zoom level, wherein navigating includes snapping to one or more zoom levels while navigating through the plurality of candidate zoom levels; snapping to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has been selected as the snap zoom level; and ceasing to snap to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has not been selected as the snap zoom level.
[0057] According to some embodiments, a computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices is described. The computer system comprises one or more processors and memory for storing one or more programs configured to be executed by the one or more processors. One or more programs, via a display generation component, display a camera user interface including one or more selectable controls for managing zoom levels for capturing media; detect a first input directed to an individual selectable control, including movement; and, in response to detecting the first input directed to an individual selectable control, include instructions to navigate through a plurality of candidate zoom levels from a first zoom level to a second zoom level, wherein navigating includes snapping to one or more zoom levels while navigating through the plurality of candidate zoom levels; snapping to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has been selected as the snap zoom level; and ceasing to snap to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has not been selected as the snap zoom level.
[0058] According to some embodiments, a computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices is described. The computer system includes means for displaying a camera user interface via the display generation component, which includes one or more selectable controls for managing zoom levels for capturing media; means for detecting a first input directed to an individual selectable control, which includes movement; and means for navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level in accordance with movement in response to the detection of the first input directed to an individual selectable control, wherein navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels, snapping to a third zoom level while navigating the plurality of candidate zoom levels in accordance with the determination that a third zoom level between the first and second zoom levels is selected as a snap zoom level, and de-snaping to a third zoom level while navigating the plurality of candidate zoom levels in accordance with the determination that a third zoom level between the first and second zoom levels is not selected as a snap zoom level.
[0059] According to some embodiments, a computer program product is described. The computer program product comprises one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices. One or more programs, via a display generation component, display a camera user interface including one or more selectable controls for managing zoom levels for capturing media; detect a first input directed to an individual selectable control, including movement; and, in response to detecting the first input directed to an individual selectable control, include instructions to navigate through a plurality of candidate zoom levels from a first zoom level to a second zoom level, wherein navigating includes snapping to one or more zoom levels while navigating through the plurality of candidate zoom levels; snapping to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has been selected as the snap zoom level; and ceasing to snap to a third zoom level while navigating through the plurality of candidate zoom levels, in accordance with a determination that a third zoom level between the first and second zoom levels has not been selected as the snap zoom level.
[0060] The executable instructions that perform these functions are optionally contained within a non-temporary computer-readable storage medium or other computer program product configured to be executed by one or more processors.
[0061] Therefore, the device is provided with a faster and more efficient method and interface for controlling media capture settings, thereby increasing the effectiveness, efficiency, and user satisfaction of such a device. Such a method and interface can complement or replace other methods for controlling media capture settings. [Brief explanation of the drawing]
[0062] To better understand the various embodiments described, the following “Modes for Carrying Out the Invention” should be referenced in conjunction with the following drawings, and similar reference numbers throughout the following drawings refer to the corresponding parts.
[0063] [Figure 1A] This is a block diagram showing a portable multifunctional device with a touch-sensitive display, according to several embodiments.
[0064] [Figure 1B] This is a block diagram showing exemplary components for event handling according to several embodiments.
[0065] [Figure 2] Several embodiments of a portable multifunctional device having a touchscreen are shown.
[0066] [Figure 3] This is a block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface, according to several embodiments.
[0067] [Figure 4A] This document illustrates an exemplary user interface for an application menu on a portable multifunction device, according to several embodiments.
[0068] [Figure 4B]This document illustrates exemplary user interfaces for multifunctional devices having a touch-sensitive surface separate from the display, according to several embodiments.
[0069] [Figure 5A] This document describes personal electronic devices according to several embodiments.
[0070] [Figure 5B] A Studio of Personal Electronic Devices in Several Embodiments.
[0071] [Figure 5C] The following are exemplary components of a personal electronic device having a touch-sensitive display and an intensity sensor, according to several embodiments. [Figure 5D] The following are exemplary components of a personal electronic device having a touch-sensitive display and an intensity sensor, according to several embodiments.
[0072] [Figure 5E] This figure shows exemplary components and user interfaces of a personal electronic device according to several embodiments. [Figure 5F] This figure shows exemplary components and user interfaces of a personal electronic device according to several embodiments. [Figure 5G] This figure shows exemplary components and user interfaces of a personal electronic device according to several embodiments. [Figure 5H] This figure shows exemplary components and user interfaces of a personal electronic device according to several embodiments.
[0073] [Figure 6A] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6B]This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6C] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6D] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6E] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6F] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6G] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6H] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6I] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6J] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6K] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6L]This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6M] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6N] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6O] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6P] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6Q] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6R] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6S] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6T] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments. [Figure 6U] This document describes exemplary techniques and user interfaces for controlling the capture of media having associated depth information, according to several embodiments.
[0074] [Figure 7]This is a flowchart of a method for controlling the capture of media having associated depth information, according to several embodiments.
[0075] [Figure 8A] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8B] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8C] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8D] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8E] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8F] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8G] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8H] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8I] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8J] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8K] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8L]This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8M] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8N] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8O] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8P] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8Q] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8R] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8S] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments. [Figure 8T] This document illustrates exemplary techniques and user interfaces for controlling media capture settings according to several embodiments.
[0076] [Figure 9] This is a flowchart illustrating a method for controlling media capture settings according to several embodiments.
[0077] [Figure 10A] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10B]This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10C] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10D] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10E] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10F] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10G] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10H] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments. [Figure 10I] This document illustrates exemplary techniques and user interfaces for controlling zoom settings for media capture, according to several embodiments.
[0078] [Figure 11] This is a flowchart of a method for controlling zoom settings for media capture, according to several embodiments.
[0079] [Figure 12A] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12B]This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12C] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12D] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12E] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12F] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12G] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12H] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12I] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12J] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12K] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12L]This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12M] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12N] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12O] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12P] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12Q] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12R] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12S] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments. [Figure 12T] This document illustrates exemplary techniques and user interfaces for capturing and viewing media using internal and external media storage, according to several embodiments.
[0080] [Figure 13]This is a flowchart illustrating a method for capturing and viewing media using internal and external media storage, according to several embodiments.
[0081] [Figure 14A] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14B] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14C] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14D] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14E] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14F] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14G] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14H] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14I]This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14J] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14K] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14L] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14M] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14N] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14O] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14P] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments. [Figure 14Q] This document illustrates exemplary techniques and user interfaces for conditionally displaying level indicators based on media capture content, according to several embodiments.
[0082] [Figure 15]This is a flowchart of a method for conditionally displaying a level indicator based on media capture content, according to several embodiments.
[0083] [Figure 16A] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16B] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16C] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16D] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16E] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16F] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16G] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16H] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16I] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16J]This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16K] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16L] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments. [Figure 16M] This document illustrates exemplary techniques and user interfaces for capturing, viewing, and / or editing media items, according to several embodiments.
[0084] [Figure 17] This is a flowchart illustrating methods for capturing, viewing, and / or editing media items according to several embodiments.
[0085] [Figure 18A] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18B] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18C] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18D] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18E] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18F]This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18G] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18H] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18I] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18J] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18K] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18L] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18M] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18N] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18O] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18P] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18Q]This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18R] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18S] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments. [Figure 18T] This document illustrates exemplary techniques and user interfaces for displaying, editing, and / or controlling media item settings according to several embodiments.
[0086] [Figure 19] This is a flowchart illustrating methods for displaying, editing, and / or controlling media item settings according to several embodiments.
[0087] [Figure 20A] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20B] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figures 20C-20E] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20F] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20G] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20H] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20I]This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20J-20L] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20M] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20N-20P] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20Q] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments. [Figure 20R-20T] This document illustrates exemplary techniques and user interfaces for displaying media items according to several embodiments.
[0088] [Figure 21] This is a flowchart of a method for displaying media items according to several embodiments.
[0089] [Figure 22A] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22B] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22C] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22D] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22E] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22F]This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22G] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22H] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22I] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22J] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22K] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22L] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22M] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22N] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22O] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22P] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22Q] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22R] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22S] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22T] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22U] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22V] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22W] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22X] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22Y] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22Z] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AA] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AB] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AC] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AD] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AE]This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AF] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AG] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AH] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AI] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AJ] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AK] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments. [Figure 22AL] This document illustrates exemplary techniques and user interfaces for controlling the zoom level of a camera, according to several embodiments.
[0090] [Figure 23] This is a flowchart of a method for controlling the zoom level of a camera, according to several embodiments. [Modes for carrying out the invention]
[0091] The following description includes exemplary methods, parameters, etc. However, it should be noted that such descriptions are not intended to limit the scope of this disclosure, but rather are provided to describe exemplary embodiments.
[0092] There is a need for electronic devices that provide efficient methods and interfaces for controlling media capture settings. For example, automatically providing a depth capture indicator when depth capture criteria are met provides quick access to depth effect controls when relevant and hides them when they are unlikely to be used. For example, providing a control schema that switches between a limited set of states depending on one type of input and provides access to additional states depending on another type of input provides quick and intuitive access to media controls without cluttering the user interface. For example, displaying a secondary zoom-out camera preview when the primary camera preview is zoomed in beyond a certain threshold helps users configure and capture media based on a wider view of the environment. For example, displaying different media based on whether external storage criteria are met provides quick access to relevant media. For example, conditionally displaying a level indicator based on whether specific content is automatically present provides capture guidance when relevant and avoids cluttering the user interface when the conditions for display are not met. Such techniques can reduce the cognitive burden on the user while capturing and managing media, thereby improving productivity. Such technology reduces the processing power used by the device to display the user interface, receive input through the user interface, and respond to user input. Furthermore, such technology can reduce the power of the processor and battery that would normally be wasted on redundant user input.
[0093] Figures 1A-1B, 2, 3, 4A-4B, and 5A-5H below provide a description of exemplary devices for performing techniques for managing event notifications. Figures 6A-6U show exemplary user interfaces for controlling the capture of media with associated depth information. Figure 7 is a flowchart showing a method for controlling the capture of media with associated depth information according to several embodiments. The user interfaces in Figures 6A-6U are used to illustrate processes described later, including the process in Figure 7. Figures 8A-8T show exemplary user interfaces for controlling media capture settings. Figure 9 is a flowchart showing a method for controlling media capture settings according to several embodiments. The user interfaces in Figures 8A-8T are used to illustrate processes described later, including the process in Figure 9. Figures 10A-10I show exemplary user interfaces for controlling zoom settings for media capture. Figure 11 is a flowchart showing a method for controlling the capture of media with associated depth information according to several embodiments. The user interfaces in Figures 10A to 10I are used to illustrate processes described later, including the process in Figure 11. Figures 12A to 12T show user interfaces for capturing and viewing media using internal and external media storage. Figure 13 is a flowchart illustrating how to capture and view media using internal and external media storage according to several embodiments. The user interfaces in Figures 12A to 12T are used to illustrate processes described later, including the process in Figure 13. Figures 14A to 14Q show exemplary user interfaces for conditionally displaying level indicators based on media capture content. Figure 15 is a flowchart illustrating how to conditionally display level indicators based on media capture content according to several embodiments. The user interfaces in Figures 14A to 14Q are used to illustrate processes described later, including the process in Figure 15. Figures 16A to 16M show exemplary user interfaces for capturing, viewing, and / or editing media items.Figure 17 is a flowchart illustrating how to capture, view, and / or edit media items according to several embodiments. The user interfaces in Figures 16A to 16M are used to illustrate processes described later, including the process in Figure 17. Figures 18A to 18T show exemplary user interfaces for viewing, editing, and / or controlling the settings of media items. Figure 19 is a flowchart illustrating how to view, edit, and / or control the settings of media items according to several embodiments. The user interfaces in Figures 18A to 18T are used to illustrate processes described later, including the process in Figure 19. Figures 20A to 20T show exemplary user interfaces for displaying media items. Figure 21 is a flowchart illustrating how to display media items according to several embodiments. The user interfaces in Figures 20A to 20T are used to illustrate processes described later, including the process in Figure 21. Figures 22A to 22AK show exemplary user interfaces for controlling the camera zoom level. Figure 23 is a flowchart illustrating how to control the camera zoom level according to several embodiments. The user interfaces in Figures 22A to 22AK are used to illustrate the processes described later, including the process shown in Figure 23.
[0094] The processes described below enhance the usability of the device and streamline the user-device interface by providing users with improved visual feedback, reducing the number of inputs required to perform actions, offering additional control options without cluttering the user interface with additional displayed controls, performing actions without requiring further user input when a set of conditions is met, and / or additional technologies. These technologies also reduce power consumption and improve the device's battery life by enabling users to use the device more quickly and efficiently.
[0095] Furthermore, in any method described herein that is conditional on one or more conditions being met in one or more steps, it should be understood that the method described can be repeated in multiple iterations such that all the conditions that the steps of the method are conditional on are met in different iterations of the method. For example, if a method requires that a first step be performed if a condition is met, and a second step be performed if the condition is not met, a person skilled in the art will understand that the steps described in the claim are repeated in an unspecified order until the conditions are met and then not met. Thus, a method described in one or more steps that depends on one or more conditions being met can be rewritten as a method that is repeated until each of the conditions described in the method is met. However, this is not required for a claim of a system or computer-readable medium that includes instructions that perform a conditional action based on the satisfaction of the corresponding one or more conditions, and thus can determine whether a contingency has been met without explicitly repeating the steps of the method until all the conditions that the steps of the method are conditional on are met. Those skilled in the art will also understand that, as with a method having conditional steps, a system or computer-readable storage medium may repeat the steps of the method as many times as necessary to ensure that all of the conditional steps have been performed.
[0096] In the following description, terms such as “first,” “second,” etc., are used to describe various elements, but these elements should not be limited by these terms. In some embodiments, these terms are used to distinguish one element from another. For example, without departing from the scope of the various embodiments described, the first touch may be called the second touch, and similarly, the second touch may be called the first touch. In some embodiments, the first touch and the second touch are two distinct references to the same touch. In some embodiments, both the first touch and the second touch are touches, but they are not the same touch.
[0097] The terminology used in the descriptions of the various embodiments described herein is intended solely to describe specific embodiments and is not intended to be limiting. In the descriptions of the various embodiments and the accompanying claims, the singular forms “a,” “an,” and “the” are intended to include the plural forms as well, unless otherwise explicitly stated in the context. Furthermore, it should be understood that, as used herein, the term “and / or” refers to and includes any and all possible combinations of one or more of the enumerated items relating to the description. It will be further understood that, as used herein, the terms “includes,” “comprises,” and / or “comprising” specify the presence of the described features, integers, steps, actions, elements, and / or components, but do not exclude the presence or addition of one or more other features, integers, steps, actions, elements, components, and / or groups thereof.
[0098] The term "if" can be interpreted, at will, depending on the context, as meaning "when" or "upon," or "in response to determining" or "in response to detecting." Similarly, the phrases "if it is determined" or "[a stated condition or event] is detected" can be interpreted, at will, depending on the context, as meaning "upon determining" or "in response to determining," or "[the stated condition or event] is detected" or "[the stated condition or event] is detected."
[0099] Embodiments of electronic devices, user interfaces for such devices, and associated processes for using such devices are described. In some embodiments, the device is a portable communication device, such as a mobile phone, which also includes other functions such as PDA functionality and / or music player functionality. Exemplary embodiments of portable multifunction devices include, but are not limited to, the iPhone®, iPod Touch®, and iPad® devices from Apple Inc., Cupertino, California. Optionally, other portable electronic devices such as laptop computers or tablet computers having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad) are also used. It should also be understood that in some embodiments, the device is not a portable communication device but a desktop computer having a touch-sensitive surface (e.g., a touchscreen display and / or touchpad). In some embodiments, the electronic device is a computer system communicating with a display generation component (e.g., via wired communication, via wireless communication). The display generation component is configured to provide visual output, such as a display via a CRT display, a display via an LED display, or a display via image projection. In some embodiments, the display generation component is integrated with the computer system. In some embodiments, the display generation component is separate from the computer system. As used herein, "display" content includes transmitting data (e.g., image data or video data) via a wired or wireless connection to an integrated or external display generation component to display content (e.g., video data rendered or decoded by the display controller 156) in order to visually generate the content.
[0100] The following discussion describes electronic devices including displays and touch-sensitive surfaces. However, it should be understood that electronic devices optionally include one or more other physical user interface devices such as physical keyboards, mice, and / or joysticks.
[0101] The device typically supports a variety of applications, including drawing applications, presentation applications, word processing applications, website creation applications, disk authoring applications, spreadsheet applications, game applications, telephone applications, video conferencing applications, email applications, instant messaging applications, training support applications, photo management applications, digital camera applications, digital video camera applications, web browsing applications, digital music player applications, and / or digital video player applications.
[0102] Various applications running on this device optionally utilize at least one common physical user interface device, such as a touch-sensitive surface. One or more functions of the touch-sensitive surface, as well as the corresponding information displayed on the device, are optionally adjusted and / or modified on an application-by-application basis and / or within individual applications. In this way, the device's common physical architecture (such as the touch-sensitive surface) optionally supports a variety of applications with intuitive and transparent user interfaces for the user.
[0103] Here, we turn our attention to embodiments of portable devices equipped with touch-sensitive displays. Figure 1A is a block diagram of a portable multifunction device 100 having a touch-sensitive display system 112 according to several embodiments. The touch-sensitive display 112 may be referred to for convenience as a “touchscreen” and may be known or referred to as a “touch-sensitive display system”. Device 100 includes a memory 102 (optionally including one or more computer-readable storage media), a memory controller 122, one or more processing units (CPUs) 120, a peripheral interface 118, an RF circuit 108, an audio circuit 110, a speaker 111, a microphone 113, an input / output (I / O) subsystem 106, other input control devices 116, and an external port 124. Device 100 optionally includes one or more optical sensors 164. Device 100 optionally includes one or more contact intensity sensors 165 (e.g., touch-sensitive surfaces such as the touch-sensitive display system 112 of Device 100) that detect the intensity of contact on Device 100. Device 100 optionally includes one or more tactile output generators 167 that generate tactile outputs on Device 100 (for example, on touch-sensitive surfaces such as the touch-sensitive display system 112 of Device 100 or the touchpad 355 of Device 300). These components optionally communicate via one or more communication buses or signal lines 103.
[0104] As used herein and in the claims, the term “strength” of contact on a touch-sensitive surface refers to the force or pressure (force per unit area) of contact on the touch-sensitive surface (e.g., finger contact), or a proxy for the force or pressure of contact on the touch-sensitive surface. The strength of contact has a range of values, including at least four distinct values, and more typically, including several hundred (e.g., at least 256) distinct values. The strength of contact is optionally determined (or measured) using various methods and various sensors or combinations of sensors. For example, one or more force sensors below or adjacent to the touch-sensitive surface are optionally used to measure the force at various points on the touch-sensitive surface. In some implementations, force measurements from multiple force sensors are combined (e.g., weighted averaged) to determine the estimated force of contact. Similarly, the pressure-sensitive tip of a stylus is optionally used to determine the pressure of the stylus on the touch-sensitive surface. Alternatively, the size and / or modification of the contact area detected on the touch-sensing surface, the capacitance and / or modification of the touch-sensing surface adjacent to the contact, and / or the resistance and / or modification of the touch-sensing surface adjacent to the contact may optionally be used as a substitute for the force or pressure of the contact on the touch-sensing surface. In some implementations, the substitute measurement of the contact force or pressure is used directly to determine whether or not an intensity threshold is exceeded (e.g., the intensity threshold is described in units corresponding to the substitute measurement). In some implementations, the substitute measurement of the contact force or pressure is converted into an estimate of the force or pressure, which is then used to determine whether or not an estimate of the force or pressure exceeds an intensity threshold (e.g., the intensity threshold is a pressure threshold measured in units of pressure). By using the intensity of contact as an attribute of user input, it becomes possible for users to access additional device functions that may otherwise be inaccessible (e.g., on a touch-sensitive display) and / or receive user input (e.g., via a touch-sensitive display, touch-sensitive surface, or physical / mechanical control such as a knob or button) on reduced-size devices where the implementation area for displaying affordances is limited.
[0105] As used herein and in the claims, the term “tactile output” means a physical displacement of the device relative to its previous position, a physical displacement of a component of the device (e.g., a touch-sensitive surface) relative to another component of the device (e.g., a housing), or a displacement of a component relative to the center of mass of the device, which will be detected by the user through the user’s sense of touch. For example, in a situation where the device or a component of the device is in contact with the touch-sensitive surface of the user (e.g., the user’s fingers, palm, or other part of their hand), the tactile output generated by the physical displacement will be interpreted by the user as a tactile sensation corresponding to a perceived change in the physical properties of the device or a component of the device. For example, movement of a touch-sensitive surface (e.g., a touch-sensitive display or trackpad) may be optionally interpreted by the user as a “down-click” or “up-click” of a physical actuator button. In some cases, the user may feel a tactile sensation such as a “down-click” or “up-click” even when there is no movement of a physical actuator button associated with a touch-sensitive surface that has been physically pressed (e.g., displaced) by the user’s action. In another embodiment, movement of a touch-sensitive surface may be optionally interpreted or perceived by the user as "roughness" of the touch-sensitive surface, even if there is no change in the smoothness of the touch-sensitive surface. Such user interpretations of touch depend on the user's personal sensory perception, but there are many touch sensory perceptions common to the majority of users. Therefore, when a tactile output is described as corresponding to a user's specific sensory perception (e.g., "up-click," "down-click," "roughness"), unless otherwise stated, the generated tactile output corresponds to the physical displacement of the device or its components that produce the described sensory perception of a typical (or average) user.
[0106] It should be understood that device 100 is merely an example of a portable multifunction device, and that device 100 may optionally have more or fewer components than those shown, may optionally combine two or more components, or may optionally have different configurations or arrangements of those components. The various components shown in Figure 1A are implemented in hardware, software, or a combination of both hardware and software, including one or more signal processing circuits and / or application-specific integrated circuits.
[0107] Memory 102 optionally includes high-speed random-access memory and optionally includes non-volatile memory such as one or more magnetic disk storage devices, flash memory devices, or other non-volatile solid-state memory devices. Memory controller 122 optionally controls access to memory 102 by other components of device 100.
[0108] The peripheral interface 118 can be used to connect the device's input and output peripherals to the CPU 120 and memory 102. One or more processors 120 operate or execute various software programs (such as computer programs (including instructions)) and / or instruction sets stored in memory 102 to perform various functions for device 100 and process data. In some embodiments, the peripheral interface 118, CPU 120, and memory controller 122 are optionally implemented on a single chip, such as chip 104. In some other embodiments, they are optionally implemented on separate chips.
[0109] The RF (radio frequency) circuit 108 transmits and receives RF signals, also known as electromagnetic signals. The RF circuit 108 converts electrical signals to electromagnetic signals or electromagnetic signals to electrical signals and communicates with communication networks and other communication devices via electromagnetic signals. The RF circuit 108 optionally includes well-known circuits for performing these functions, which include, but are not limited to, antenna systems, RF transceivers, one or more amplifiers, tuners, one or more oscillators, digital signal processors, CODEC chipsets, subscriber identity module (SIM) cards, and memory. The RF circuit 108 optionally communicates wirelessly with networks such as the Internet, also known as the World Wide Web (WWW), intranets, and / or wireless networks such as cellular telephone networks, wireless local area networks (LANs), and / or metropolitan area networks (MANs), as well as with other devices. The RF circuit 108 optionally includes a well-known circuit for detecting a near-field communication (NFC) field using a short-range communication radio. Wireless communication is not limited to this, but optionally includes Global System for Mobile Communications (GSM), Enhanced Data GSM Environment (EDGE), high-speed downlink packet access (HSDPA), high-speed uplink packet access (HSUPA), Evolution, Data-Only (EV-DO), HSPA, HSPA+, Dual-Cell HSPA (DC-HSPADA), and long-term evolution.Evolution (LTE), Near Field Communication (NFC), Wideband Code Division Multiple Access (W-CDMA), Code Division Multiple Access (CDMA), Time Division Multiple Access (TDMA), Bluetooth, Bluetooth Low Energy (BTLE), Wireless Fidelity (Wi-Fi) (e.g., IEEE 802.11a, IEEE 802.11b, IEEE 802.11g, IEEE 802.11n, and / or IEEE 802.11ac), Voice over Internet Protocol (VoIP), Wi-MAX, Email protocols (e.g., Internet Message Access Protocol (IMAP) and / or Post Office Protocol (POP)), Instant messaging (e.g., Extensible Messaging and Presence Protocol) Using any of several communication standards, protocols, and technologies, including the XMPP protocol, the Session Initiation Protocol for Instant Messaging and Presence Leveraging Extensions (SIMPLE), the Instant Messaging and Presence Service (IMPS), and / or the Short Message Service (SMS), or any other suitable communication protocol, including a communication protocol not yet developed as of the filing date of this specification.
[0110] The audio circuit 110, speaker 111, and microphone 113 provide an audio interface between the user and the device 100. The audio circuit 110 receives audio data from the peripheral interface 118, converts this audio data into an electrical signal, and transmits this electrical signal to the speaker 111. The speaker 111 converts the electrical signal into human audible sound waves. The audio circuit 110 also receives the electrical signal converted from the sound waves by the microphone 113. The audio circuit 110 converts the electrical signal into audio data and transmits this audio data to the peripheral interface 118 for processing. The audio data is optionally retrieved from and / or transmitted to the memory 102 and / or RF circuit 108 by the peripheral interface 118. In some embodiments, the audio circuit 110 also includes a headset jack (e.g., 212 in Figure 2). The headset jack provides an interface between the audio circuit 110 and detachable audio input / output peripherals such as output-only headphones or headsets that have both output (e.g., headphones for one or both ears) and input (e.g., a microphone).
[0111] The I / O subsystem 106 connects input / output peripherals on device 100, such as the touchscreen 112 and other input control devices 116, to the peripheral interface 118. The I / O subsystem 106 optionally includes a display controller 156, an optical sensor controller 158, a depth camera controller 169, an intensity sensor controller 159, a haptic feedback controller 161, and one or more input controllers 160 for other input or control devices. One or more input controllers 160 receive electrical signals from / transmit electrical signals to other input control devices 116. The other input control devices 116 optionally include physical buttons (e.g., push buttons, rocker buttons), dials, slider switches, joysticks, click wheels, etc. In some embodiments, one or more input controllers 160 are optionally connected to (or not connected to) one of the following: a keyboard, an infrared port, a USB port, and a pointer device such as a mouse. One or more buttons (e.g., 208 in Figure 2) optionally include up / down buttons for volume control of speaker 111 and / or microphone 113. One or more buttons optionally include push buttons (e.g., 206 in Figure 2). In some embodiments, the electronic device is a computer system communicating with one or more input devices (e.g., via wireless communication over wired communication). In some embodiments, one or more input devices include a touch-sensitive surface (e.g., a trackpad as part of a touch-sensitive display). In some embodiments, one or more input devices include one or more camera sensors (e.g., one or more optical sensors 164 and / or one or more depth camera sensors 175), for example, to track user gestures as input (e.g., hand gestures and / or air gestures). In some embodiments, one or more input devices are integrated with the computer system. In some embodiments, one or more input devices are separate from the computer system.In some embodiments, an air gesture is a gesture detected without the user touching (or independently of) an input element that is part of the device, and is based on detected movement of a part of the user's body in the air, including movement of the user's body relative to an absolute reference (e.g., the angle of the user's arm relative to the ground, or the distance of the user's hand relative to the ground), movement of the user's body relative to another part of the user's body (e.g., movement of the user's hand relative to the user's shoulder, movement of the user's other hand relative to one hand, and / or movement of the user's fingers relative to another finger or part of the user's hand), and / or absolute movement of a part of the user's body (e.g., a tap gesture involving movement of the hand in a predetermined pose by a predetermined amount and / or speed, or a shake gesture involving rotation of a part of the user's body by a predetermined speed or amount).
[0112] As described in U.S. Patent Application No. 11 / 322,549, “Unlocking a Device by Performing Gestures on an Unlock Image,” filed December 23, 2005, U.S. Patent No. 7,657,849, which is incorporated herein by reference in its entirety, a quick press of a push button optionally releases the lock on the touchscreen 112, or optionally initiates a process to unlock the device using gestures on the touchscreen. A longer press of a push button (e.g., 206) optionally turns power on or off the device 100. The functionality of one or more of the buttons is optionally customizable by the user. The touchscreen 112 is used to implement virtual or soft buttons and one or more soft keyboards.
[0113] The touch-sensitive display 112 provides input and output interfaces between the device and the user. The display controller 156 receives electrical signals from and / or transmits electrical signals to the touchscreen 112. The touchscreen 112 displays visual output to the user. This visual output optionally includes graphics, text, icons, videos, and any combination thereof (collectively, “graphics”). In some embodiments, some or all of the visual output optionally corresponds to user interface objects.
[0114] The touchscreen 112 has a touch-sensing surface, sensor, or set of sensors that accept user input based on touch and / or tactile contact. The touchscreen 112 and the display controller 156 (along with any associated modules and / or instruction sets in memory 102) detect contact (and any movement or interruption of contact) on the touchscreen 112 and translate the detected contact into interaction with user interface objects displayed on the touchscreen 112 (e.g., one or more soft keys, icons, web pages, or images). In an exemplary embodiment, the point of contact between the touchscreen 112 and the user corresponds to the user's finger.
[0115] The touchscreen 112 optionally uses LCD (liquid crystal display) technology, LPD (polymer light-emitting display) technology, or LED (light-emitting diode) technology, but other display technologies may also be used in other embodiments. The touchscreen 112 and the display controller 156 optionally, but not limited to, use any of a number of currently known or future-developed touch sensing technologies, including capacitive, resistive, infrared, and surface acoustic technologies, as well as other proximity sensor arrays or other elements that determine one or more points of contact with the touchscreen 112, to detect contact and any movement or interruption thereof. In exemplary embodiments, projected mutual capacitive sensing technology is used, such as that found in the iPhone® and iPod Touch® from Apple Inc. of Cupertino, California.
[0116] The touch-sensitive displays in some embodiments of the touchscreen 112 are optionally similar to the multi-touch-sensitive touchpads described in U.S. Patent No. 6,323,846 (Westerman et al.), No. 6,570,557 (Westerman et al.), and / or No. 6,677,932 (Westerman), and / or U.S. Patent Application Publication 2002 / 0015024(A1), which are each incorporated herein by reference in their entirety. However, the touchscreen 112 displays visual output from device 100, whereas the touch-sensitive touchpad does not provide visual output.
[0117] The touch-sensitive displays in some embodiments of the touchscreen 112 are described in the following applications: (1) U.S. Patent Application No. 11 / 381,313, filed May 2, 2006, "Multipoint Touch Surface Controller"; (2) U.S. Patent Application No. 10 / 840,862, filed May 6, 2004, "Multipoint Touchscreen"; (3) U.S. Patent Application No. 10 / 903,964, filed July 30, 2004, "Gestures For Touch Sensitive Input Devices"; (4) U.S. Patent Application No. 11 / 048,264, filed January 31, 2005, "Gestures For Touch Sensitive Input Devices"; (5) U.S. Patent Application No. 11 / 038,590, filed January 18, 2005, "Mode-Based Graphical User Interfaces For Touch Sensitive Input These are described in (6) U.S. Patent Application No. 11 / 228,758, filed September 16, 2005, "Virtual Input Device Placement On A Touch Screen User Interface", (7) U.S. Patent Application No. 11 / 228,700, filed September 16, 2005, "Operation Of A Computer With A Touch Screen Interface", (8) U.S. Patent Application No. 11 / 228,737, filed September 16, 2005, "Activating Virtual Keys Of A Touch-Screen Virtual Keyboard", and (9) U.S. Patent Application No. 11 / 367,749, filed March 3, 2006, "Multi-Functional Hand-Held Device". All of these applications are incorporated herein by reference in their entirety.
[0118] The touchscreen 112 optionally has a video resolution greater than 100 dpi. In some embodiments, the touchscreen has a video resolution of approximately 160 dpi. The user optionally touches the touchscreen 112 using any suitable object or attachment such as a stylus or finger. In some embodiments, the user interface is designed to operate primarily using finger-based touch and gestures, which may be less precise than stylus-based input due to the larger contact area of the finger on the touchscreen. In some embodiments, the device translates coarse finger input into a precise pointer / cursor position or command to perform an action desired by the user.
[0119] In some embodiments, in addition to the touchscreen, the device 100 optionally includes a touchpad for activating or deactivating specific functions. In some embodiments, the touchpad is a touch-sensitive area of the device that, unlike the touchscreen, does not display a visual output. The touchpad is optionally a touch-sensitive surface separate from the touchscreen 112 or an extension of the touch-sensitive surface formed by the touchscreen.
[0120] Device 100 also includes a power system 162 that supplies power to various components. The power system 162 optionally includes a power management system, one or more power sources (e.g., battery, alternating current (AC)), a recharge system, a power failure detection circuit, a power converter or inverter, a power status indicator (e.g., a light-emitting diode (LED)), and any other components associated with generating, managing, and distributing power within the portable device.
[0121] The device 100 also optionally includes one or more optical sensors 164. Figure 1A shows an optical sensor coupled to an optical sensor controller 158 in the I / O subsystem 106. The optical sensor 164 optionally includes a charge-coupled device (CCD) or a complementary metal-oxide semiconductor (CMOS) phototransistor. The optical sensor 164 receives light from the environment projected through one or more lenses and converts that light into data representing an image. The optical sensor 164 works in conjunction with an imaging module 143 (also called a camera module) to optionally capture still images or video. In some embodiments, the optical sensor is located on the back of the device 100 opposite the touchscreen display 112 on the front of the device, so that the touchscreen display can be used as a viewfinder for acquiring still images and / or video. In some embodiments, the optical sensor is located on the front of the device so that the user's image is optionally acquired for video conferencing while the user is viewing other video conferencing participants on the touchscreen display. In some embodiments, the position of the optical sensor 164 can be changed by the user (for example, by rotating the lens and sensor within the device housing), so that a single optical sensor 164 can be used for both video conferencing and still image and / or video acquisition, together with the touchscreen display.
[0122] Device 100 also optionally includes one or more depth camera sensors 175. Figure 1A shows a depth camera sensor coupled to a depth camera controller 169 in the I / O subsystem 106. The depth camera sensor 175 receives data from the environment to create a three-dimensional model of an object in the scene (e.g., a face) from a viewpoint (e.g., the depth camera sensor). In some embodiments, in conjunction with an imaging module 143 (also called a camera module), the depth camera sensor 175 is optionally used to determine the depth map of different parts of an image captured by the imaging module 143. In some embodiments, the depth camera sensor is positioned on the front of Device 100 to optionally acquire an image of the user with depth information for video conferencing while the user is viewing other video conferencing participants on a touchscreen display, and also to capture a selfie image with depth map data. In some embodiments, the depth camera sensor 175 is positioned on the back of the device, or on both the back and front of Device 100. In some embodiments, the position of the depth camera sensor 175 can be changed by the user (for example, by rotating the lens and sensor within the device housing), so that the depth camera sensor 175, together with the touchscreen display, can be used for both video conferencing and the acquisition of still and / or video images.
[0123] In some embodiments, the depth map (e.g., a depth map image) includes information (e.g., values) about the distance of objects in the scene from a viewpoint (e.g., a camera, optical sensor, or depth camera sensor). In one embodiment of the depth map, each depth pixel defines the position where the corresponding 2D pixel is located on the Z-axis of the viewpoint. In some embodiments, the depth map is composed of pixels, each pixel defined by a value (e.g., 0 to 255). For example, a value of "0" represents the furthest pixel located in the "3D" scene, and a value of "255" represents the pixel located closest to the viewpoint (e.g., a camera, optical sensor, or depth camera sensor) in that "3D" scene. In other embodiments, the depth map represents the distance between objects in the scene and the plane of the viewpoint. In some embodiments, the depth map includes information about the relative depth of various feature parts of the target object as seen from the depth camera (e.g., the relative depth of the user's eyes, nose, mouth, and ears). In some embodiments, the depth map includes information that allows the device to determine the contour of the target object in the z-direction.
[0124] Device 100 also optionally includes one or more contact intensity sensors 165. Figure 1A shows a contact intensity sensor coupled to an intensity sensor controller 159 in the I / O subsystem 106. The contact intensity sensor 165 optionally includes one or more piezoresistive strain gauges, capacitive force sensors, electric force sensors, pressure-power sensors, optical force sensors, capacitive touch-sensing surfaces, or other intensity sensors (e.g., sensors used to measure the force (or pressure) of contact on a touch-sensing surface). The contact intensity sensor 165 receives contact intensity information (e.g., pressure information, or a proxy for pressure information) from the environment. In some embodiments, at least one contact intensity sensor is positioned juxtaposed with or adjacent to a touch-sensing surface (e.g., a touch-sensing display system 112). In some embodiments, at least one contact intensity sensor is located on the back of Device 100, opposite the touchscreen display 112 located on the front of Device 100.
[0125] The device 100 also optionally includes one or more proximity sensors 166. Figure 1A shows a proximity sensor 166 coupled to a peripheral interface 118. Alternatively, the proximity sensor 166 is optionally coupled to an input controller 160 in the I / O subsystem 106. The proximity sensor 166 optionally functions as described in U.S. Patent Applications 11 / 241,839, “Proximity Detector In Handheld Device,” 11 / 240,788, “Proximity Detector In Handheld Device,” 11 / 620,702, “Using Ambient Light Sensor To Augment Proximity Sensor Output,” 11 / 586,862, “Automated Response To And Sensing Of User Activity In Portable Devices,” and 11 / 638,251, “Methods And Systems For Automatic Configuration Of Peripherals,” which are all incorporated herein by reference. In some embodiments, if the multifunction device is placed near the user's ear (for example, when the user is making a phone call), the proximity sensor turns off and disables the touchscreen 112.
[0126] Device 100 also optionally includes one or more tactile output generators 167. Figure 1A shows a tactile output generator coupled to a tactile feedback controller 161 in the I / O subsystem 106. The tactile output generators 167 optionally include one or more electroacoustic devices such as speakers or other audio components, and / or electromechanical devices that convert energy into linear motion, such as motors, solenoids, electroactive polymers, piezoelectric actuators, electrostatic actuators, or other tactile output generating components (e.g., components that convert electrical signals into tactile output on the device). The contact intensity sensor 165 receives a tactile feedback generation command from the tactile feedback module 133 and generates a tactile output on device 100 that can be sensed by the user of device 100. In some embodiments, at least one tactile output generator is positioned alongside or adjacent to a touch-sensing surface (e.g., a touch-sensing display system 112) and optionally generates a tactile output by moving the touch-sensing surface vertically (e.g., inward / outward from the surface of device 100) or horizontally (e.g., forward / backward in the same plane as the surface of device 100). In some embodiments, at least one tactile output generator sensor is located on the back of device 100, opposite the touchscreen display 112 located on the front of device 100.
[0127] The device 100 also optionally includes one or more accelerometers 168. Figure 1A shows an accelerometer 168 coupled to a peripheral interface 118. Alternatively, the accelerometer 168 is optionally coupled to an input controller 160 in the I / O subsystem 106. The accelerometer 168 optionally functions as described in U.S. Patent Application Publication 20050190059, "Acceleration-based Theft Detection System for Portable Electronic Devices," and U.S. Patent Application Publication 20060017692, "Methods And Apparatuses For Operating A Portable Device Based On An Accelerometer," both of which are incorporated herein by reference in their entirety. In some embodiments, information is displayed on a touchscreen display in portrait or landscape orientation based on an analysis of data received from one or more accelerometers. Device 100 optionally includes, in addition to one or more accelerometers 168, a magnetometer and a GPS (or GLONASS or other global navigation system) receiver for acquiring information regarding the location and orientation of Device 100 (e.g., longitudinal or transverse).
[0128] In some embodiments, the software components stored in memory 102 include an operating system 126, a communications module (or instruction set) 128, a contact / motion module (or instruction set) 130, a graphics module (or instruction set) 132, a text input module (or instruction set) 134, a Global Positioning System (GPS) module (or instruction set) 135, and an application (or instruction set) 136. Furthermore, in some embodiments, memory 102 (Figure 1A) or 370 (Figure 3) stores device / global internal state 157, as shown in Figures 1A and 3. The device / global internal state 157 includes one or more of the following: active application state, indicating which application is active if there is an application currently active; display state, indicating which application, view, or other information occupies various areas of the touchscreen display 112; sensor state, including information obtained from various sensors and input control devices 116 of the device; and location information relating to the device's location and / or orientation.
[0129] An operating system 126 (for example, an embedded operating system such as Darwin, RTXC, LINUX, UNIX, OS X, iOS, WINDOWS, or VxWorks) includes various software components and / or drivers that control and manage general system tasks (e.g., memory management, storage device control, power management, etc.) and facilitate communication between various hardware components and software components.
[0130] The communication module 128 facilitates communication with other devices via one or more external ports 124 and also includes various software components for processing data received by the RF circuit 108 and / or external ports 124. The external ports 124 (e.g., Universal Serial Bus (USB), FireWire, etc.) are adapted to connect to other devices directly or indirectly via a network (e.g., the Internet, Wi-Fi, etc.). In some embodiments, the external ports are multi-pin (e.g., 30-pin) connectors that are the same as and / or compatible with the 30-pin connector used on iPod® (a trademark of Apple Inc.) devices.
[0131] The contact / motion module 130 optionally detects contact with the touchscreen 112 and other touch-sensitive devices (e.g., a touchpad or physical click wheel) (in cooperation with the display controller 156). The contact / motion module 130 includes various software components for performing various operations related to contact detection, such as determining whether contact has occurred (e.g., detecting a finger down event), determining the intensity of the contact (e.g., the force or pressure of the contact, or a substitute for the force or pressure of the contact), determining whether there is movement of contact and tracking movement across the touch-sensitive surface (e.g., detecting one or more events of a finger dragging), and determining whether contact has been terminated (e.g., detecting a finger up event or interruption of contact). The contact / motion module 130 receives contact data from the touch-sensitive surface. Determining the movement of the contact point, represented by a series of contact data, optionally includes determining the speed (magnitude), velocity (magnitude and direction), and / or acceleration (change in magnitude and / or direction) of the contact point. These actions can be optionally applied to a single contact (e.g., a single finger contact) or multiple simultaneous contacts (e.g., "multi-touch" / multiple finger contacts). In some embodiments, the contact / motion module 130 and the display controller 156 detect contact on the touchpad.
[0132] In some embodiments, the contact / motion module 130 uses a set of one or more intensity thresholds to determine whether an action has been performed by a user (for example, to determine whether a user has "clicked" on an icon). In some embodiments, at least a subset of the intensity thresholds is determined according to software parameters (for example, the intensity thresholds can be adjusted without modifying the physical hardware of device 100, rather than being determined by the activation threshold of a particular physical actuator). For example, the mouse "click" threshold for a trackpad or touchscreen display can be set to one of a range of default thresholds without modifying the trackpad or touchscreen display hardware. In addition, some implementations provide the user of the device with software settings to adjust one or more of the set of intensity thresholds (for example, by adjusting individual intensity thresholds and / or by adjusting multiple intensity thresholds at once using a system-level click "intensity" parameter).
[0133] The contact / motion module 130 optionally detects gesture input from the user. Different gestures on the touch-sensitive surface have different contact patterns (e.g., different motion, timing, and / or intensity of the detected contact). Therefore, gestures are optionally detected by detecting a specific contact pattern. For example, detecting a finger tap gesture involves detecting a finger down event, followed by a finger up (lift-off) event at the same position (or substantially the same position) as the finger down event (e.g., the position of an icon). As another example, detecting a finger swipe gesture on the touch-sensitive surface involves detecting a finger down event, followed by one or more finger drag events, and then a finger up (lift-off) event.
[0134] The graphics module 132 includes various known software components for rendering and displaying graphics on the touchscreen 112 or other display, including components that modify the visual effects of the displayed graphics (e.g., brightness, transparency, saturation, contrast, or other visual properties). In this specification, the term “graphics” includes, but is not limited to, any object that can be displayed to the user, including characters, web pages, icons (such as user interface objects including soft keys), digital images, videos, animations, etc.
[0135] In some embodiments, the graphics module 132 stores data representing the graphics to be used. Each graphic is optionally assigned a corresponding code. The graphics module 132 receives one or more codes from an application or the like, as needed, specifying the graphics to be displayed, along with coordinate data and other graphic property data, and then generates screen image data to output to the display controller 156.
[0136] The haptic feedback module 133 includes various software components for generating commands used by a tactile output generator(s) 167, and generates tactile outputs at one or more locations on the device 100 in response to the user's interaction with the device 100.
[0137] The text input module 134 is optionally a component of the graphics module 132 and provides a soft keyboard for entering text in various applications (e.g., contacts 137, email 140, IM 141, browser 147, and any other applications that require text input).
[0138] The GPS module 135 determines the device's location and provides this information for use in various applications (for example, to the phone 138 for use in location-based dialing, to the camera 143 as picture / video metadata, and to applications that provide location-based services such as weather widgets, local yellow pages widgets, and map / navigation widgets).
[0139] Application 136 optionally includes the following modules (or instruction sets) or subsets or supersets thereof: ● Contact module 137 (sometimes called address book or contact list), ● Telephone module 138, ● Video conferencing module 139, ● Email client module 140, ● Instant messaging (IM) module 141, ● Training support module 142, ● Camera module 143 for still images and / or video images, ● Image management module 144, ● Video playback module, ● Music playback module, ● Browser module 147, ● Calendar module 148, ● A widget module 149 that optionally includes one or more of the following: weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, dictionary widget 149-5, other widgets obtained by the user, and user-created widgets 149-6. ● Widget creator module 150 for creating user-created widget 149-6, ● Search module 151, ● A video and music playback module 152 that integrates a video playback module and a music playback module. ● Memo Module 153, ● Map module 154, and / or ● Online video module 155.
[0140] Examples of other applications 136 that may be optionally stored in memory 102 include other word processing applications, other image editing applications, drawing applications, presentation applications, Java-enabled applications, encryption, digital rights management, speech recognition, and speech duplication.
[0141] Together with the touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, the contact module 137 is optionally used to manage an address book or contact list (stored, for example, in the application internal state 192 of the contact module 137 in memory 102 or memory 370), which includes adding names(s) to the address book, deleting names(s) from the address book, associating telephone numbers(s) to names, email addresses(s) to names, addresses(s) to names, or other information, associating images to names, categorizing and sorting names, and providing telephone numbers or email addresses to initiate and / or facilitate communication via telephone 138, video conferencing module 139, email 140, or IM 141.
[0142] The telephone module 138 works in conjunction with the RF circuit 108, audio circuit 110, speaker 111, microphone 113, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134 to optionally input character sequences corresponding to telephone numbers, access one or more telephone numbers in the contact module 137, modify entered telephone numbers, dial individual telephone numbers, make calls, and disconnect and terminate calls at the end of a call. As previously mentioned, wireless communication may optionally use any of several communication standards, protocols, and technologies.
[0143] The video conferencing module 139 works in conjunction with the RF circuit 108, audio circuit 110, speaker 111, microphone 113, touchscreen 112, display controller 156, optical sensor 164, optical sensor controller 158, contact / motion module 130, graphics module 132, text input module 134, contact module 137, and telephone module 138 to include executable commands for starting, running, and ending video conferences between the user and one or more other participants in accordance with the user's commands.
[0144] The email client module 140, in conjunction with the RF circuit 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, includes executable commands for creating, sending, receiving, and managing emails in response to user commands. In conjunction with the image management module 144, the email client module 140 makes it extremely easy to create and send emails containing still or video images captured by the camera module 143.
[0145] The instant messaging module 141, in conjunction with the RF circuit 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134, includes executable commands for inputting character sequences corresponding to instant messages, modifying previously entered characters, sending individual instant messages (e.g., using Short Message Service (SMS) or Multimedia Message Service (MMS) protocols for telephone-based instant messaging, or XMPP, SIMPLE, or IMPS for internet-based instant messaging), receiving instant messages, and viewing received instant messages. In some embodiments, the transmitted and / or received instant messages optionally include graphics, photographs, audio files, video files, and / or other attachments, such as those supported by MMS and / or Enhanced Messaging Service (EMS). In this specification, “instant messaging” refers to both telephone-based messaging (e.g., messages sent using SMS or MMS) and internet-based messaging (e.g., messages sent using XMPP, SIMPLE, or IMPS).
[0146] In conjunction with the RF circuit 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, GPS module 135, map module 154, and music player module, the training support module 142 includes executable commands, which create training (e.g., having time, distance, and / or calorie burn goals), communicate with training sensors (sports devices), receive training sensor data, calibrate sensors used to monitor training, select and play music for training, and display, store, and transmit training data.
[0147] The camera module 143 works in conjunction with the touchscreen 112, display controller 156, optical sensor(s) 164, optical sensor controller 158, contact / motion module 130, graphics module 132, and image management module 144 to include executable commands for capturing still images or videos (including video streams) and storing them in memory 102, modifying the characteristics of still images or videos, or deleting still images or videos from memory 102.
[0148] The image management module 144 works in conjunction with the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, text input module 134, and camera module 143 to include executable commands for arranging, modifying (e.g., editing), or otherwise manipulating still images and / or videos, labeling, deleting, presenting (e.g., in a digital slideshow or album), and storing them.
[0149] The browser module 147 works in conjunction with the RF circuit 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, and text input module 134 to include executable commands for browsing the internet according to user commands, including searching, linking, receiving, and displaying web pages or parts thereof, as well as attachments and other files linked to web pages.
[0150] The calendar module 148 works in conjunction with the RF circuit 108, touchscreen 112, display controller 156, contact / motion module 130, graphics module 132, text input module 134, email client module 140, and browser module 147 to include executable commands for creating, displaying, modifying, and storing a calendar and data associated with the calendar (e.g., calendar entries, to-do lists, etc.) in accordance with user commands.
[0151] The widget module 149 works in conjunction with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, and optionally includes mini applications (e.g., weather widget 149-1, stock price widget 149-2, calculator widget 149-3, alarm clock widget 149-4, and dictionary widget 149-5) that are downloaded and used by the user, or mini applications created by the user (e.g., user-created widget 149-6). In some embodiments, the widget includes HTML (Hypertext Markup Language) files, CSS (Cascading Style Sheets) files, and JavaScript files. In some embodiments, the widget includes XML (Extensible Markup Language) files and JavaScript files (e.g., Yahoo! widget).
[0152] The widget creator module 150 works in conjunction with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, and browser module 147, and is used by the user to optionally create a widget (e.g., make a user-specified portion of a web page into a widget).
[0153] The search module 151 works in conjunction with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, and includes executable instructions for searching for characters, music, sound, images, videos, and / or other files in the memory 102 that match one or more search criteria (e.g., one or more user-specified search terms) according to the user's instructions.
[0154] The video and music player module 152, in cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, audio circuit 110, speaker 111, RF circuit 108, and browser module 147, includes executable instructions that enable a user to download and play recorded music and other sound files stored in one or more file formats such as MP3 or AAC files, and executable instructions for displaying, presenting, or otherwise playing videos (e.g., on the touch screen 112 or on an external display connected via the external port 124). In some embodiments, the device 100 optionally includes the functionality of an MP3 player such as an iPod (trademark of Apple Inc.).
[0155] The memo module 153, in cooperation with the touch screen 112, display controller 156, contact / motion module 130, graphic module 132, and text input module 134, includes executable instructions for creating and managing memos, to-do lists, etc. according to user instructions.
[0156] The map module 154, in cooperation with the RF circuit 108, touch screen 112, display controller 156, contact / motion module 130, graphic module 132, text input module 134, GPS module 135, and browser module 147, is optionally used to receive, display, modify, and store maps and map-related data (e.g., driving routes, data about stores and other attractions near a particular location or its vicinity, and other location-based data) according to user instructions.
[0157] The online video module 155, in conjunction with the touchscreen 112, display controller 156, touch / motion module 130, graphics module 132, audio circuit 110, speaker 111, RF circuit 108, text input module 134, email client module 140, and browser module 147, includes instructions that enable the user to access, browse, receive (e.g., by streaming and / or downloading), play (e.g., on the touchscreen or on an external display connected via external port 124), send emails with links to specific online videos, and perform other management of online videos in one or more file formats such as H.264. In some embodiments, an instant messaging module 141 is used instead of the email client module 140 to send links to specific online videos. Further descriptions of online video applications can be found in U.S. Provisional Patent Application No. 60 / 936,562, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed June 20, 2007, and U.S. Patent Application No. 11 / 968,067, “Portable Multifunction Device, Method, and Graphical User Interface for Playing Online Videos,” filed December 31, 2007, the entirety of which is incorporated herein by reference.
[0158] Each of the modules and applications identified above corresponds to a set of executable instructions that perform one or more of the functions described above and the methods described in this application (e.g., the computer methods and other information processing methods described herein). These modules (e.g., instruction sets) do not need to be implemented as separate software programs (e.g., computer programs containing instructions), procedures, or modules, and therefore in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. For example, a video player module is optionally combined with a music player module to form a single module (e.g., the video and music player module 152 in Figure 1A). In some embodiments, memory 102 optionally stores subsets of the modules and data structures identified above. Furthermore, memory 102 optionally stores additional modules and data structures not described above.
[0159] In some embodiments, device 100 is a device in which the operation of a default set of functions in the device is performed solely via a touchscreen and / or touchpad. By using a touchscreen and / or touchpad as the primary input control device for device 100 to operate, the number of physical input control devices (push buttons, dials, etc.) on device 100 is optionally reduced.
[0160] A default set of functions, which are performed only through the touchscreen and / or touchpad, optionally includes navigation between user interfaces. In some embodiments, the touchpad, when touched by the user, navigates the device 100 from any user interface displayed on the device 100 to the main menu, home menu, or root menu. In such embodiments, a “menu button” is implemented using the touchpad. In some other embodiments, the menu button is a physical push button or other physical input control device, rather than a touchpad.
[0161] Figure 1B is a block diagram showing exemplary components for event processing according to several embodiments. In some embodiments, memory 102 (Figure 1A) or 370 (Figure 3) includes an event sorting unit 170 (e.g., within the operating system 126) and individual applications 136-1 (e.g., any of the aforementioned applications 137-151, 155, 380-390).
[0162] The event sorting unit 170 receives event information and determines the application 136-1 that distributes the event information, and the application view 191 of application 136-1. The event sorting unit 170 includes an event monitor 171 and an event dispatcher module 174. In some embodiments, application 136-1 includes an application internal state 192 that indicates the current application view(s) displayed on the touch-sensitive display 112 when the application is active or running. In some embodiments, a device / global internal state 157 is used by the event sorting unit 170 to determine which application(s) are currently active, and the application internal state 192 is used by the event sorting unit 170 to determine the application view(s) to which the event information is distributed.
[0163] In some embodiments, the application internal state 192 includes additional information such as resume information to be used when the application 136-1 resumes execution, user interface state information that indicates or is ready to display information displayed by the application 136-1, a state queue that allows the user to return to a previous state or view of the application 136-1, and one or more redo / undo queues of previous actions performed by the user.
[0164] The event monitor 171 receives event information from the peripheral interface 118. The event information includes information about sub-events (for example, user touch as part of a multi-touch gesture on the touch-sensitive display 112). The peripheral interface 118 transmits information received from the I / O subsystem 106, or from sensors such as the proximity sensor 166, one or more accelerometers 168, and / or the microphone 113 (via the audio circuit 110). The information received by the peripheral interface 118 from the I / O subsystem 106 includes information from the touch-sensitive display 112 or the touch-sensitive surface.
[0165] In some embodiments, the event monitor 171 sends requests to the peripheral interface 118 at predetermined intervals. In response, the peripheral interface 118 transmits event information. In other embodiments, the peripheral interface 118 transmits event information only when there is a significant event (e.g., reception of input exceeding a predetermined noise threshold and / or exceeding a predetermined duration).
[0166] In some embodiments, the event sorting unit 170 also includes a hit view determination module 172 and / or an active event recognition determination module 173.
[0167] The hit view determination module 172 provides a software procedure for determining where in one or more views a sub-event occurred when the touch-sensitive display 112 is displaying two or more views. A view consists of control devices and other elements that the user can see on the display.
[0168] Another aspect of the user interface associated with an application is a set of views, sometimes referred to herein as application views or user interface windows, in which information is displayed and touch-based gestures occur. The application view (of an individual application) in which a touch is detected optionally corresponds to the program level within the application's program hierarchy or view hierarchy. For example, the lowest-level view in which a touch is detected optionally refers to a hit view, and the set of events recognized as appropriate input is optionally determined at least in part based on the hit view of the initial touch that initiates a touch gesture.
[0169] The hit view determination module 172 receives information related to sub-events of touch-based gestures. When an application has multiple views arranged in a hierarchy, the hit view determination module 172 identifies the hit view as the lowest-level view in the hierarchy from which sub-events should be processed. In most situations, the hit view is the lowest-level view from which the initiating sub-event (e.g., the first sub-event in a sequence of sub-events that form an event or potential event) occurs. Once a hit view is identified by the hit view determination module 172, the hit view typically receives all sub-events related to the same touch or input source identified as the hit view.
[0170] The active event recognition determination module 173 determines which view(s) in the view hierarchy should receive a particular sequence of sub-events. In some embodiments, the active event recognition determination module 173 determines that only the hit view should receive a particular sequence of sub-events. In other embodiments, the active event recognition determination module 173 determines that all views, including the physical location of the sub-event, are actively involved views, and therefore all actively involved views should receive a particular sequence of sub-events. In other embodiments, even if the touch sub-event is entirely confined to an area associated with one particular view, higher-level views in the hierarchy still remain actively involved views.
[0171] The event dispatcher module 174 dispatches event information to an event recognition unit (e.g., an event recognition unit 180). In embodiments including an active event recognition unit determination module 173, the event dispatcher module 174 distributes the event information to the event recognition unit determined by the active event recognition unit determination module 173. In some embodiments, the event dispatcher module 174 stores event information retrieved by individual event receiving units 182 in an event queue.
[0172] In some embodiments, the operating system 126 includes an event sorting unit 170. Alternatively, application 136-1 includes an event sorting unit 170. In yet another embodiment, the event sorting unit 170 is a standalone module or part of another module stored in memory 102, such as a contact / motion module 130.
[0173] In some embodiments, application 136-1 includes a plurality of event processing units 190 and one or more application views 191, each containing instructions for handling touch events occurring within a separate view of the application's user interface. Each application view 191 of application 136-1 includes one or more event recognition units 180. Typically, a separate application view 191 includes a plurality of event recognition units 180. In other embodiments, one or more of the event recognition units 180 are part of a separate module, such as a user interface kit or a higher-level object from which application 136-1 inherits methods and other properties. In some embodiments, a separate event processing unit 190 includes one or more event data 179 received from a data update unit 176, an object update unit 177, a GUI update unit 178, and / or an event sorting unit 170. The event processing unit 190 optionally uses or calls the data update unit 176, the object update unit 177, or the GUI update unit 178 to update the application's internal state 192. Alternatively, one or more application views 191 include one or more event processing units 190. In some embodiments, one or more of the data update unit 176, object update unit 177, and GUI update unit 178 are included in individual application views 191.
[0174] Each individual event recognition unit 180 receives event information (e.g., event data 179) from the event sorting unit 170 and identifies events from the event information. The event recognition unit 180 includes an event receiving unit 182 and an event comparison unit 184. In some embodiments, the event recognition unit 180 also includes at least a subset of metadata 183 and event distribution commands 188 (optionally including sub-event distribution commands).
[0175] The event receiving unit 182 receives event information from the event sorting unit 170. The event information includes information about sub-events, such as touches or the movement of touches. Depending on the sub-event, the event information also includes additional information such as the location of the sub-event. When the sub-event involves the movement of a touch, the event information also optionally includes the speed and direction of the sub-event. In some embodiments, an event includes a rotation of the device from one orientation to another (e.g., from a vertical orientation to a horizontal orientation, or vice versa), and the event information includes corresponding information about the current orientation of the device (also called the device's orientation).
[0176] The event comparison unit 184 compares the event information with the definition of a predefined event or sub-event and, based on the comparison, determines an event or sub-event or determines or updates the state of an event or sub-event. In some embodiments, the event comparison unit 184 includes an event definition 186. The event definition 186 includes definitions of events (such as a predefined sequence of predefined sub-events), such as event 1 (187-1) and event 2 (187-2). In some embodiments, the sub-events within the event (187-1 and / or 187-2) include, for example, start of touch, end of touch, movement of touch, cancellation of touch, and multiple touches. In one example, the definition for event 1 (187-1) is a double-tap on a displayed object. The double-tap includes, for example, a first touch (touch start) on the displayed object for a predetermined stage, a first lift-off (touch end) for a predetermined stage, a second touch (touch start) on the displayed object for a predetermined stage, and a second lift-off (touch end) for a predetermined stage. In another example, the definition of event 2 (187-2) is a drag on a displayed object. The drag includes, for example, a touch (or contact) on the displayed object for a predetermined stage, movement of the touch across the touch-sensitive display 112, and lift-off of the touch (touch end). In some embodiments, an event also includes information regarding one or more associated event processing units 190.
[0177] In some embodiments, the event definition 186 includes event definitions for individual user interface objects. In some embodiments, the event comparison unit 184 performs a hit test to determine which user interface object is associated with a sub-event. For example, in an application view where three user interface objects are displayed on the touch-sensitive display 112, when a touch is detected on the touch-sensitive display 112, the event comparison unit 184 performs a hit test to determine which of the three user interface objects is associated with the touch (sub-event). If each displayed object is associated with an individual event processing unit 190, the event comparison unit uses the results of the hit test to determine which event processing unit 190 should be activated. For example, the event comparison unit 184 selects the sub-event and the event processing unit associated with the object that triggers the hit test.
[0178] In some embodiments, the definition of an individual event 187 also includes a delay action that delays the delivery of event information until it is determined whether the sequence of sub-events corresponds to the event type of the event recognition unit.
[0179] If an individual event recognition unit 180 determines that a series of sub-events does not match any of the events in the event definition 186, the individual event recognition unit 180 enters an event impossible, event failed, or event terminated state, and thereafter ignores subsequent sub-events of the touch-based gesture. In this situation, if there are other event recognition units that remain active for the hit view, those event recognition units continue to track and process the sub-events of the ongoing touch-based gesture.
[0180] In some embodiments, an individual event recognition unit 180 includes metadata 183 having configurable properties, flags, and / or lists that indicate to the actively involved event recognition unit how the event distribution system should perform sub-event distribution. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists that indicate how the event recognition units interact with each other, or how they can interact with each other. In some embodiments, the metadata 183 includes configurable properties, flags, and / or lists that indicate how sub-events are distributed to various levels in the view hierarchy or program hierarchy.
[0181] In some embodiments, an individual event recognition unit 180 activates an event processing unit 190 associated with an event when one or more specific sub-events of an event are recognized. In some embodiments, the individual event recognition unit 180 delivers event information associated with the event to the event processing unit 190. Activating the event processing unit 190 is separate from sending (and delaying the sending of) sub-events to individual hit views. In some embodiments, the event recognition unit 180 sets a flag associated with the recognized event, and the event processing unit 190 associated with that flag captures the flag and executes a default process.
[0182] In some embodiments, the event distribution command 188 includes a sub-event distribution command that distributes event information about a sub-event without activating an event processing unit. Instead, the sub-event distribution command distributes event information to an event processing unit associated with a set of sub-events, or to an actively involved view. The event processing unit associated with the set of sub-events or the actively involved view receives the event information and executes a predetermined process.
[0183] In some embodiments, the data update unit 176 creates and updates data used in application 136-1. For example, the data update unit 176 updates telephone numbers used in contact module 137 or stores video files used in video player module. In some embodiments, the object update unit 177 creates and updates objects used in application 136-1. For example, the object update unit 177 creates new user interface objects or updates the positions of user interface objects. The GUI update unit 178 updates the GUI. For example, the GUI update unit 178 prepares display information and sends it to graphics module 132 for display on touch-sensitive display.
[0184] In some embodiments, the event processing unit(s) 190 includes or has access to a data update unit 176, an object update unit 177, and a GUI update unit 178. In some embodiments, the data update unit 176, the object update unit 177, and the GUI update unit 178 are contained in a single module of an individual application 136-1 or application view 191. In other embodiments, they are contained in two or more software modules.
[0185] The foregoing description regarding the handling of user touch events on a touch-sensitive display also applies to other forms of user input for operating the multifunction device 100 using input devices, but it should be understood that not all of these begin on the touchscreen. For example, mouse movement and mouse button presses, touch movements such as taps, drags, and scrolls on a touchpad, pen stylus input, device movement, verbal commands, detected eye movements, biometric input, and / or any combination thereof may be optionally used as inputs corresponding to sub-events that define the events to be recognized.
[0186] Figure 2 shows a portable multifunction device 100 having a touchscreen 112 according to several embodiments. The touchscreen optionally displays one or more graphics within a user interface (UI) 200. In this embodiment, and in other embodiments described below, the user can select one or more of the graphics by performing gestures on the graphics using, for example, one or more fingers 202 (not shown in the figure to an exact scale) or one or more styluses 203 (not shown in the figure to an exact scale). In some embodiments, the selection of one or more graphics is performed when the user interrupts contact with that one or more graphics. In some embodiments, the gesture optionally includes one or more taps, one or more swipes (from left to right, right to left, upward and / or downward) and / or rolling (from right to left, left to right, upward and / or downward) with a finger in contact with the device 100. In some implementations or situations, accidental contact with a graphic does not constitute a selection of that graphic. For example, if the gesture corresponding to selection is a tap, a swipe gesture sweeping over an application icon does not arbitrarily select the corresponding application.
[0187] Device 100 also optionally includes one or more physical buttons, such as a "Home" button or a menu button 204. As previously mentioned, the menu button 204 is optionally used to navigate to any application 136 within the set of applications running on device 100. Alternatively, in some embodiments, the menu button is implemented as a soft key in a GUI displayed on the touchscreen 112.
[0188] In some embodiments, device 100 includes a touchscreen 112, a menu button 204, a push button 206 for turning the device on / off and locking the device, one or more volume buttons 208, a subscriber identification module (SIM) card slot 210, a headset jack 212, and an external port 124 for docking / charging. The push button 206 is optionally used to turn the device on / off by pressing down and holding the button down for a predetermined period of time, to lock the device by pressing down and releasing the button before a predetermined period of time has elapsed, and / or to unlock the device or initiate an unlocking process. In alternative embodiments, device 100 also accepts verbal input via a microphone 113 to activate or deactivate certain functions. Device 100 also optionally includes one or more contact intensity sensors 165 for detecting the intensity of contact on the touchscreen 112, and / or one or more tactile output generators 167 for generating tactile output to the user of device 100.
[0189] Figure 3 is a block diagram of an exemplary multifunctional device having a display and a touch-sensitive surface, according to several embodiments. Device 300 does not need to be portable. In some embodiments, device 300 is a laptop computer, desktop computer, tablet computer, multimedia player device, navigation device, educational device (such as a children's learning toy), game system, or control device (e.g., a home or commercial controller). Device 300 typically includes one or more processing units (CPUs) 310, one or more network or other communication interfaces 360, memory 370, and one or more communication buses 320 that interconnect these components. The communication buses 320 optionally include circuitry (sometimes referred to as a chipset) that interconnects and controls communication between system components. Device 300 includes an input / output (I / O) interface 330, which includes a display 340, and the display 340 is typically a touchscreen display. The I / O interface 330 also optionally includes a keyboard and / or mouse (or other pointing device) 350 and a touchpad 355, a tactile output generator 357 that generates tactile output on device 300 (for example, similar to the tactile output generator(s) 167 described above with reference to Figure 1A), and a sensor 359 (for example, light, acceleration, proximity, touch sensing, and / or a contact intensity sensor similar to the contact intensity sensor(s) 165 described above with reference to Figure 1A). The memory 370 includes high-speed random access memory such as DRAM, SRAM, DDR RAM, or other random access solid-state memory devices, and optionally includes non-volatile memory such as one or more magnetic disk storage devices, optical disk storage devices, flash memory devices, or other non-volatile solid-state storage devices. The memory 370 optionally includes one or more storage devices located remotely from the CPU(s) 310.In some embodiments, memory 370 stores programs, modules, and data structures similar to, or subsets thereof, that are stored in memory 102 of the portable multifunction device 100 (Figure 1A). Furthermore, memory 370 optionally stores additional programs, modules, and data structures that are not present in memory 102 of the portable multifunction device 100. For example, memory 370 of device 300 optionally stores a drawing module 380, a presentation module 382, a word processing module 384, a website creation module 386, a disk authoring module 388, and / or a spreadsheet module 390, whereas memory 102 of the portable multifunction device 100 (Figure 1A) optionally does not store these modules.
[0190] Each of the elements identified above in Figure 3 is optionally stored in one or more of the memory devices described above. Each of the modules identified above corresponds to an instruction set that performs the function described above. The modules or computer programs (e.g., instruction sets or instructions) identified above do not need to be implemented as separate software programs (e.g., computer programs (including instructions)), procedures, or modules, and therefore in various embodiments, various subsets of these modules are optionally combined or otherwise reconfigured. In some embodiments, memory 370 optionally stores subsets of the modules and data structures identified above. Furthermore, memory 370 optionally stores additional modules and data structures not described above.
[0191] Next, we optionally turn our attention to an embodiment of a user interface implemented in, for example, a portable multi-functional device 100.
[0192] Figure 4A shows an exemplary user interface for an application menu on a portable multifunction device 100 according to several embodiments. A similar user interface is optionally implemented on device 300. In some embodiments, the user interface 400 includes the following elements, or subsets or supersets thereof. ● Signal strength indicators (single or multiple) for wireless communication (single or multiple) such as cellular signals and Wi-Fi signals 402, ● Time 404, ● Bluetooth indicator 405, ● Battery status indicator 406, ● Tray 408 containing icons for frequently used applications, as shown below: ○ An icon 416 of the phone module 138, labeled "Phone," optionally including an indicator 414 for the number of missed calls or voicemail messages. ○ An icon 418 of the email client module 140, labeled "Mail," optionally including an indicator 410 of the number of unread emails. ○ Icon 420 of browser module 147, labeled as "Browser", and ○ Icon 422 of the video and music playback module 152, also known as the iPod (trademark of Apple Inc.) module 152, labeled "iPod", and ● Icons for other applications, such as the following: ○ Icon 424 of IM module 141, labeled "Message", ○ Icon 426 of calendar module 148, labeled "Calendar", ○ Icon 428 of image management module 144, labeled as "Photo" ○ Icon 430 of camera module 143, labeled "Camera", ○ Icon 432 of online video module 155, labeled "online video" ○ Icon 434 of stock price widget 149-2, labeled as "Stock Price" ○ Icon 436 of map module 154, labeled "Map" ○ Icon 438 of weather widget 149-1, labeled as "Weather" ○ Icon 440 of the alarm clock widget 149-4, labeled as "Clock", ○ Icon 442 of training support module 142, labeled "Training Support" ○ Icon 444 of memo module 153, which is labeled as "Memo", and ○ An icon 446 labeled "Settings" for a settings application or module, which provides access to settings for device 100 and its various applications 136.
[0193] Please note that the icon labels shown in Figure 4A are for illustrative purposes only. For example, the icon 422 for the video and music player module 152 is labeled "Music" or "Music Player". Other labels are optionally used for various application icons. In some embodiments, the label for an individual application icon includes the name of the application to which that individual application icon corresponds. In some embodiments, the label for a particular application icon is different from the name of the application to which that particular application icon corresponds.
[0194] Figure 4B shows an exemplary user interface on a device (e.g., device 300 in Figure 3) having a touch-sensitive surface 451 (e.g., tablet or touchpad 355 in Figure 3) separate from the display 450 (e.g., touchscreen display 112). Device 300 also optionally includes one or more contact intensity sensors (e.g., one or more of sensors 359) for detecting the intensity of contact on the touch-sensitive surface 451, and / or one or more tactile output generators 357 for generating tactile output to the user of device 300.
[0195] Some of the following embodiments are given by reference to input on a touchscreen display 112 (a combination of a touch-sensing surface and a display), but in some embodiments, the device detects input on a touch-sensing surface separate from the display, as shown in Figure 4B. In some embodiments, the touch-sensing surface (e.g., 451 in Figure 4B) has a primary axis (e.g., 452 in Figure 4B) corresponding to a primary axis (e.g., 453 in Figure 4B) on the display (e.g., 450). According to these embodiments, the device detects contact with the touch-sensing surface 451 (e.g., 460 and 462 in Figure 4B) at locations corresponding to each location on the display (e.g., 460 corresponds to 468 and 462 corresponds to 470 in Figure 4B). In this way, user input (e.g., touches 460 and 462, and their movement) detected by the device on a touch-sensitive surface (e.g., 451 in Figure 4B) is used by the device to operate the user interface on the display of the multifunction device (e.g., 450 in Figure 4B) when the touch-sensitive surface is separate from the display. It should be understood that a similar method may be optionally used for other user interfaces described herein.
[0196] In addition, while the following examples are given primarily with reference to finger input (e.g., finger touch, finger tap gesture, finger swipe gesture), it should be understood that in some embodiments, one or more of the finger inputs may be replaced by input from another input device (e.g., mouse-based input or stylus input). For example, a swipe gesture may optionally be replaced by a mouse click (e.g., instead of touch), followed by a mouse click with cursor movement along the swipe path (e.g., instead of touch movement). As another example, a tap gesture may optionally be replaced by a mouse click (e.g., instead of touch detection and subsequent cessation of touch detection) while the cursor is located over the tap gesture location. Similarly, it should be understood that when multiple user inputs are detected simultaneously, multiple computer mice may optionally be used simultaneously, or mouse and finger touch may optionally be used simultaneously.
[0197] Figure 5A shows an exemplary personal electronic device 500. Device 500 includes a body 502. In some embodiments, device 500 may include some or all of the functions described with respect to devices 100 and 300 (e.g., Figures 1A to 4B). In some embodiments, device 500 has a touch-sensitive display screen 504, hereafter referred to as touchscreen 504. Alternatively, or in addition to touchscreen 504, device 500 may have a display and a touch-sensitive surface. Similar to devices 100 and 300, in some embodiments, touchscreen 504 (or touch-sensitive surface) optionally includes one or more intensity sensors that detect the intensity of the applied contact (e.g., touch). One or more intensity sensors on touchscreen 504 (or touch-sensitive surface) may provide output data representing the intensity of the touch. The user interface of device 500 may respond to touches based on their intensity, meaning that touches of different intensity may invoke different user interface behaviors on device 500.
[0198] For example, see, for instance, International Patent Application PCT / US2013 / 040061, “Device, Method, and Graphical User Interface for Displaying User Interface Objects Corresponding to an Application,” filed 8 May 2013, published as International Publication WO / 2013 / 169849, and International Patent Application PCT / US2013 / 069483, “Device, Method, and Graphical User Interface for Transitioning Between Touch Input to Display Output Relationships,” filed 11 November 2013, published as International Publication WO / 2014 / 105276.
[0199] In some embodiments, the device 500 has one or more input mechanisms 506 and 508. The input mechanisms 506 and 508 may be physical, if included. Examples of physical input mechanisms include push buttons and rotatable mechanisms. In some embodiments, the device 500 has one or more attachment mechanisms. Such attachment mechanisms, if included, can allow the device 500 to be attached to, for example, hats, eyeglasses, earrings, necklaces, shirts, jackets, bracelets, watch bands, chains, trousers, belts, shoes, wallets, backpacks, etc. These attachment mechanisms allow the user to wear the device 500.
[0200] Figure 5B shows an exemplary personal electronic device 500. In some embodiments, the device 500 may include some or all of the components described with respect to Figures 1A, 1B, and 3. The device 500 has a bus 512 that operably connects an I / O section 514 to one or more computer processors 516 and memory 518. The I / O section 514 may be connected to a display 504, which may have a touch-sensing component 522 and optionally an intensity sensor 524 (e.g., a contact intensity sensor). In addition, the I / O section 514 may be connected to a communication unit 530 that receives application and operating system data using Wi-Fi, Bluetooth, near-field communication (NFC), cellular, and / or other wireless communication technologies. The device 500 may include input mechanisms 506 and / or 508. The input mechanism 506 may optionally be, for example, a rotatable input device or a pressable and rotatable input device. In some embodiments, the input mechanism 508 is optionally a button.
[0201] In some embodiments, the input mechanism 508 is optionally a microphone. The personal electronic device 500 optionally includes various sensors such as a GPS sensor 532, an accelerometer 534, a direction sensor 540 (e.g., a compass), a gyroscope 536, a motion sensor 538, and / or a combination thereof, all of which can be operably connected to the I / O section 514.
[0202] The memory 518 of the personal electronic device 500 may include one or more non-temporary computer-readable storage media for storing computer executable instructions, which, when executed by one or more computer processors 516, can cause the computer processors to execute techniques described later, including methods 700, 900, 1100, 1300, 1500, 1700, 1900, 2100, and 2300 (Figures 7, 9, 11, 13, 15, 17, 19, 21, and 23). The computer-readable storage media may be any media that can tangibly contain or store computer executable instructions used by or in connection with an instruction execution system, apparatus, or device. In some examples, the storage media is temporary computer-readable storage media. In some examples, the storage media is non-temporary computer-readable storage media. Non-temporary computer-readable storage media may include, but are not limited to, magnetic storage devices, optical storage devices, and / or semiconductor storage devices. Examples of such storage devices include magnetic disks, CDs, DVDs, or optical disks based on Blu-ray technology, as well as persistent solid-state memory such as flash and solid-state drives. The personal electronic device 500 is not limited to the components and configurations shown in Figure 5B, and may include other or additional components in multiple configurations.
[0203] As used herein, the term “affordance” refers to user interaction graphical user interface objects that are optionally displayed on the display screens of devices 100, 300, and / or 500 (Figures 1A, 3, and 5A-5B). For example, images (e.g., icons), buttons, and text (e.g., hyperlinks) each optionally constitute an affordance.
[0204] As used herein, the term “focus selector” refers to an input element that indicates the current portion of the user interface with which the user is interacting. In some implementations, including a cursor or other location marker, the cursor acts as a “focus selector,” and therefore, when an input (e.g., a press input) is detected on a touch-sensitive surface (e.g., touchpad 355 in Figure 3 or touch-sensitive surface 451 in Figure 4B) while the cursor is positioned over a particular user interface element, the particular user interface element is adjusted according to the detected input. In some implementations, including a touchscreen display that allows direct interaction with user interface elements on the touchscreen display (e.g., touch-sensitive display system 112 in Figure 1A or touchscreen 112 in Figure 4A), a detected contact on the touchscreen acts as a “focus selector,” and therefore, when an input (e.g., a press input by touch) is detected at the location of a particular user interface element (e.g., a button, window, slider, or other user interface element) on the touchscreen display, the particular user interface element is adjusted according to the detected input. In some implementations, focus is moved from one area of the user interface to another without corresponding cursor movement or touch movement on the touchscreen display (for example, by using the tab key or arrow keys to move focus from one button to another), and in these implementations, the focus selector moves in accordance with the movement of focus between different areas of the user interface. Regardless of the specific form the focus selector takes, the focus selector is generally a user interface element (or touch on the touchscreen display) controlled by the user to communicate the user's intended interaction with the user interface (for example, by pointing to the device an element of the user interface through which the user intends to interact).For example, the location of a focus selector (e.g., cursor, touch, or selection box) over an individual button while pressure input is detected on a touch-sensitive surface (e.g., a touchpad or touchscreen) indicates that the user intends to activate that individual button (rather than other user interface elements displayed on the device's display).
[0205] As used herein and in the claims, the term “characteristic intensity” of a contact refers to the characteristics of that contact based on one or more intensities of the contact. In some embodiments, the characteristic intensity is based on multiple intensity samples. The characteristic intensity is optionally based on a set of intensity samples collected over a predetermined time period (e.g., 0.05, 0.1, 0.2, 0.5, 1, 2, 5, 10 seconds) associated with a predetermined event (e.g., after detection of contact, before detection of lift-off of contact, before or after detection of the start of movement of contact, before detection of the end of contact, before or after detection of an increase in contact intensity, and / or before or after detection of a decrease in contact intensity). The characteristic intensity of a contact is optionally based on one or more of the following: the maximum value of the contact intensity, the mean value of the contact intensity, the average value of the contact intensity, the top 10 percentile value of the contact intensity, the maximum half value of the contact intensity, the maximum 90 percent value of the contact intensity, and so on. In some embodiments, the duration of contact is used when determining characteristic intensity (for example, when characteristic intensity is the average intensity of contact over time). In some embodiments, characteristic intensity is compared to a set of one or more intensity thresholds to determine whether an action has been performed by the user. For example, the set of one or more intensity thresholds optionally includes a first intensity threshold and a second intensity threshold. In this embodiment, contact with a characteristic intensity not exceeding the first threshold results in a first action, contact with a characteristic intensity above the first intensity threshold but not exceeding the second intensity threshold results in a second action, and contact with a characteristic intensity above the second threshold results in a third action. In some embodiments, the comparison between characteristic intensity and one or more thresholds is not used to determine whether a first action should be performed or a second action should be performed, but rather to determine whether one or more actions should be performed at all (for example, whether individual actions should be performed or whether individual actions should be withheld).
[0206] Figure 5C shows that multiple intensity sensors 524A-524D detect multiple contacts 552A-552E on a touch-sensitive display screen 504. Figure 5C also includes an intensity diagram showing the current intensity measurements of intensity sensors 524A-524D against intensity units. In this example, the intensity measurements of intensity sensors 524A and 524D are 9 intensity units each, and the intensity measurements of intensity sensors 524B and 524C are 7 intensity units each. In some implementations, the aggregate intensity is the sum of the intensity measurements of the multiple intensity sensors 524A-524D, which in this example is 32 intensity units. In some embodiments, each contact is assigned an individual intensity that is a portion of the aggregate intensity. Figure 5D shows that the aggregate intensity is assigned to contacts 552A-552E based on their distance from the center of force 554. In this example, contacts 552A, 552B, and 552E are each assigned a contact intensity of 8 intensity units of the aggregate intensity, and contacts 552C and 552D are each assigned a contact intensity of 4 intensity units of the aggregate intensity. More generally, in some implementations, each contact j is assigned an individual intensity Ij, which is a portion of the aggregate intensity A, according to a predetermined mathematical function Ij=A(Dj / ΣDi), where Dj is the distance from the center of force to the individual contact j, and ΣDi is the sum of the distances from the center of force to each of the contacts (e.g., from i=1 to the end). The operations described with reference to Figures 5C-5D can be performed using electronic devices similar to or identical to devices 100, 300, or 500. In some embodiments, the characteristic intensity of a contact is based on one or more intensities of the contact. In some embodiments, an intensity sensor is used to determine a single characteristic intensity (e.g., a single characteristic intensity of a single contact). Please note that the intensity diagrams are not part of the display user interface, but are included in Figures 5C-5D to assist the reader.
[0207] In some embodiments, a portion of the gesture is identified for the purpose of determining characteristic intensity. For example, the touch-sensitive surface optionally receives a series of swipe contacts that transition from a starting location to an ending location, where the intensity of contact increases. In this example, the characteristic intensity of the contact at the ending location is optionally based only on a portion of the series of swipe contacts (e.g., only the portion of the swipe contact that reaches the ending location), rather than the entire swipe contact. In some embodiments, optionally, a smoothing algorithm is applied to the intensity of the swipe contact before determining the characteristic intensity of the contact. For example, the smoothing algorithm optionally includes one or more of the following: an unweighted moving average smoothing algorithm, a triangular smoothing algorithm, a median filter smoothing algorithm, and / or an exponential smoothing algorithm. In some situations, these smoothing algorithms eliminate narrow spikes or drops in the swipe contact intensity for the purpose of determining characteristic intensity.
[0208] The intensity of contact on the touch-sensitive surface is optionally characterized to one or more intensity thresholds, such as a contact detection intensity threshold, a light press intensity threshold, a deep press intensity threshold, and / or one or more other intensity thresholds. In some embodiments, the light press intensity threshold corresponds to the intensity at which the device performs an action typically associated with clicking a physical mouse button or trackpad. In some embodiments, the deep press intensity threshold corresponds to the intensity at which the device performs an action different from the action typically associated with clicking a physical mouse button or trackpad. In some embodiments, when a contact with a characteristic intensity below the light press intensity threshold (for example, above a nominal contact detection intensity threshold below which contact is no longer detected) is detected, the device moves the focus selector in accordance with the movement of the contact on the touch-sensitive surface without performing an action associated with the light press intensity threshold or the deep press intensity threshold. Generally, unless otherwise specified, these intensity thresholds are consistent across different sets of user interface values.
[0209] An increase in the characteristic intensity of contact from an intensity below a light pressure intensity threshold to an intensity between the light and deep pressure intensity thresholds is sometimes referred to as a "light pressure" input. An increase in the characteristic intensity of contact from an intensity below a deep pressure intensity threshold to an intensity above a deep pressure intensity threshold is sometimes referred to as a "deep pressure" input. An increase in the characteristic intensity of contact from an intensity below a contact detection intensity threshold to an intensity between the contact detection intensity threshold and the light pressure intensity threshold is sometimes referred to as detection of contact on the touch surface. A decrease in the characteristic intensity of contact from an intensity above a contact detection intensity threshold to an intensity below a contact detection intensity threshold is sometimes referred to as detection of contact lift-off from the touch surface. In some embodiments, the contact detection intensity threshold is zero. In some embodiments, the contact detection intensity threshold is greater than zero.
[0210] In some embodiments described herein, one or more actions are performed in response to the detection of a gesture including an individual press input, or in response to the detection of an individual press input performed by an individual contact (or multiple contacts), wherein the individual press input is detected at least in part on the detection of an increase in the intensity of the contact (or multiple contacts) above a press input intensity threshold. In some embodiments, the individual action is performed in response to the detection of an increase in the intensity of the individual contact above a press input intensity threshold (e.g., a "downstroke" of the individual press input). In some embodiments, the press input includes an increase in the intensity of the individual contact above a press input intensity threshold, followed by a decrease in the intensity of the contact below the press input intensity threshold, and the individual action is performed in response to the detection of a subsequent decrease in the intensity of the individual contact below the press input threshold (e.g., an "upstroke" of the individual press input).
[0211] Figures 5E to 5H show the light pressure intensity threshold in Figure 5E (for example, "IT L From an intensity below ) to the deep pressing intensity threshold in Figure 5H (for example, "IT DThe device indicates the detection of a gesture including a pressing input corresponding to an increase in the intensity of contact 562 to an intensity exceeding a deep pressing intensity threshold (e.g., "IT"). The gesture performed by contact 562 is detected on the touch-sensitive surface 560, and on the display user interface 570, which includes application icons 572A-572D displayed within a predetermined area 574, a cursor 576 is displayed over the application icon 572B corresponding to app 2. In some embodiments, the gesture is detected on the touch-sensitive display 504. An intensity sensor detects the intensity of contact on the touch-sensitive surface 560. The device indicates that the intensity of contact 562 exceeds a deep pressing intensity threshold (e.g., "IT"). D It is determined that the pressure has reached its peak by exceeding the threshold (e.g., "IT"). Contact 562 is maintained on the touch sensing surface 560. In response to the detection of the gesture, a deeper pressure intensity threshold (e.g., "IT") is set during the gesture. D According to a contact 562 having an intensity exceeding '', a scaled representation 578A-578C (e.g., thumbnail) of the recently opened document is displayed for app 2, as shown in Figures 5F-5H. In some embodiments, this intensity, compared to one or more intensity thresholds, is the characteristic intensity of the contact. Note that the intensity diagram for contact 562 is not part of the display user interface but is included in Figures 5E-5H to assist the reader.
[0212] In some embodiments, the display of representations 578A to 578C includes animation. For example, as shown in Figure 5F, representation 578A is initially displayed close to the application icon 572B. As the animation progresses, as shown in Figure 5G, representation 578A moves upward and representation 578B is displayed close to the application icon 572B. Then, as shown in Figure 5H, representation 578A moves upward and representation 578B moves upward toward representation 578A and representation 578C is displayed close to the application icon 572B. Representations 578A to 578C form an array above the icon 572B. In some embodiments, as shown in Figures 5F to 5G, the animation progresses according to the intensity of the contact 562, where the intensity of the contact 562 reaches a deep pressing intensity threshold (e.g., "IT").D As it increases toward (), expressions 578A-578C appear and move upward. In some embodiments, the intensity on which the animation progresses is based is the characteristic intensity of the contact. The actions described with reference to Figures 5E-5H can be performed using electronic devices similar to or identical to devices 100, 300, or 500.
[0213] In some embodiments, the device employs intensity hysteresis to avoid accidental inputs, which may be referred to as “jitter,” and the device defines or selects a hysteresis intensity threshold that has a predetermined relationship with a press input intensity threshold (for example, the hysteresis intensity threshold is X intensity units lower than the press input intensity threshold, or the hysteresis intensity threshold is 75%, 90%, or some reasonable percentage of the press input intensity threshold). Thus, in some embodiments, the press input includes an increase in the intensity of an individual contact above the press input intensity threshold, followed by a decrease in the intensity of the contact below the hysteresis intensity threshold corresponding to the press input intensity threshold, and the individual action is performed in response to the detection of a subsequent decrease in the intensity of an individual contact below the hysteresis intensity threshold (for example, an “upstroke” of the individual press input). Similarly, in some embodiments, a press input is detected only when the device detects an increase in contact intensity from an intensity below a hysteresis intensity threshold to an intensity above a press input intensity threshold, and optionally a decrease in contact intensity to an intensity below the hysteresis intensity thereafter, and individual actions are performed in response to the detection of a press input (e.g., an increase in contact intensity or a decrease in contact intensity, depending on the situation).
[0214] For the sake of clarity, the description of an action performed in response to a press input associated with a press input intensity threshold, or a gesture involving a press input, is optionally triggered in response to the detection of any of the following: an increase in contact intensity above the press input intensity threshold, an increase in contact intensity from below the hysteresis intensity threshold to above the press input intensity threshold, a decrease in contact intensity below the press input intensity threshold, and / or a decrease in contact intensity below the hysteresis intensity threshold corresponding to the press input intensity threshold. Furthermore, in examples where an action is described to be performed in response to the detection of a decrease in contact intensity below the press input intensity threshold, the action is optionally performed in response to the detection of a decrease in contact intensity below a hysteresis intensity threshold corresponding to and lower than the press input intensity threshold.
[0215] In this specification, “installed application” refers to a software application that has been downloaded onto an electronic device (e.g., device 100, 300, and / or 500) and is ready to be launched on the device (e.g., opened). In some embodiments, a downloaded application becomes an installed application by an installation program that extracts the program portion from the downloaded package and integrates the extracted portion with the operating system of the computer system.
[0216] In this specification, the terms “open application” or “running application” refer to a software application that has retained state information (e.g., as part of the device / global internal state 157 and / or application internal state 192). An open or running application is optionally one of the following types of applications: ● The active application currently displayed on the display screen of the device on which the application is being used. ● Background applications (or background processes) that are not currently displayed but whose processes are handled by one or more processors, as well as ● An application that is not running but has state information stored in memory (volatile and non-volatile, respectively) that can be used to resume the execution of the application, either suspended or suspended.
[0217] In this specification, the term “closed application” refers to a software application that does not retain state information (for example, state information for a closed application is not stored in the device’s memory). Therefore, closing an application involves stopping and / or removing the application process for the application and removing the state information for the application from the device’s memory. Generally, opening a second application while a first application is running does not close the first application. When the second application is displayed and the first application is stopped from being displayed, the first application becomes a background application.
[0218] Next, we will focus on embodiments of user interfaces ("UI") and related processes implemented on electronic devices such as portable multifunction device 100, device 300, or device 500.
[0219] Figures 6A–6U show exemplary user interfaces for controlling the capture of media with associated depth information, according to several embodiments. These user interfaces are used to illustrate the processes described below, including the process shown in Figure 7.
[0220] Figures 6A and 6B show the computer system 600 (e.g., a mobile phone device) as viewed from the rear (e.g., Figure 6A) and the front (e.g., Figure 6B). The computer system 600 includes a display 608 and a plurality of cameras, including a first camera 604A visible from the front as seen in Figure 6B, a second camera 604B, a third camera 604C, and a fourth camera 604D visible from the rear of the device as seen in Figure 6A. In some embodiments, the plurality of cameras have different optical specifications (e.g., fixed and / or variable / configurable) such as different focal lengths (e.g., 24mm, 35mm, and / or 55mm), different aperture sizes (e.g., f / 1.8, f / 2.4, and / or f / 8), and / or different fields of view (e.g., 46°, 84°, and / or 120°). The computer system 600 includes a plurality of input devices, including hardware buttons 606 and touch-sensitive surfaces of a display 608. In some embodiments, the computer system 600 includes one or more sensors, such as an optical sensor and / or a depth sensor. In some embodiments, the computer system 600 includes one or more hardware input ports, such as a Mini USB, Micro USB, and / or a USB-C port. In some embodiments, the methods described herein using the computer system 600 are implemented (for example, together with the computer system 600) using one or more user devices (e.g., mobile phones, tablet computers, laptop computers, and / or wearable electronic devices (e.g., smartwatches)), remote devices (e.g., servers and / or network-connected devices), and / or peripheral devices (e.g., external storage drives, microphones, speakers, and / or hardware input devices). In some embodiments, the computer system 600 includes one or more features of devices 100, 300, or 500 (e.g., the first camera 604A is an optical sensor 164).
[0221] In Figure 6B, the computer system 600 displays a camera user interface 610 (e.g., a user interface for using a camera application, e.g., for media capture) via a display 608. The camera user interface 610 includes a camera preview 612 representing a portion of the field of view of at least one of the first camera 604A, second camera 604B, third camera 604C, and fourth camera 604D that are currently included in (e.g., being captured by) the media capture. As shown in Figure 6A, the portion of the camera field of view currently included in the camera preview 612 captures a portion of the physical environment, including the midground dogs and cats, as well as the background fence and sky. In some embodiments, the computer system 600 detects additional information about the physical environment. For example, by using one or more depth sensors and / or by comparing the fields of view of the first camera 604A, second camera 604B, and / or third camera 604C, the computer system 600 can obtain depth information about the physical environment, such as the distance from the dogs and cats to the computer system 600.
[0222] The camera user interface 610 further includes a flash affordance 614, a media format affordance 616, a multi-frame photo affordance 618, a zoom affordance 620, a capture mode menu 622, a shutter affordance 624, and a captured media icon 626. As indicated by the zoom affordance 620, the zoom level is set to a magnification of 0.5x (e.g., ultra-wide-angle zoom setting), and as indicated by the capture mode menu 622, the current capture mode is photo capture mode.
[0223] In Figure 6B, the computer system 600 detects an input 627 on the zoom affordance 620 (e.g., a tap input via the touch-sensitive surface of the display 608) that requests an increase in the zoom level. In response to input 627, in Figure 6C, the computer system 600 sets the zoom level to a 2x magnification and zooms in on the camera preview 612 over the physical environment so that the dog and cat appear in the foreground of the camera preview 612. At a zoom level of 2x magnification, the computer system 600 detects the cat and dog as media capture targets and indicates the detection using target indicators 628A and 628B that frame the faces of the cat and dog (respectively). As the current zoom level increases beyond a 1x magnification and it is determined (e.g., based on acquired depth information) that the cat and dog (e.g., media capture targets) are within a certain distance range (e.g., 2 to 8 feet from the computer system 600), the computer system 600 displays the depth indicator 630. The depth indicator 630 indicates that the computer system 600 is capturing depth information (for example, using one or more sensors) for use when capturing media.
[0224] In Figure 6C, the computer system detects input 632 (e.g., a tap input via the touch-sensitive surface of the display 608) to select the "Portrait" capture mode (e.g., a photo capture mode in which content recognition simulated visual effects (e.g., depth effect) are applied to the captured media) from the capture mode menu 622. In response to input 632, in Figure 6D, the computer system 600 displays a camera preview 612 with a simulated depth-of-field effect (e.g., simulated blur) based on acquired depth information about the physical environment, so that the further the physical environment is from the focal plane, the more out of focus it appears (e.g., more blurred), and the closer it is to the focal plane, the more in focus it appears (e.g., sharper). As shown in Figure 6D, the simulated depth-of-field effect applied to the camera preview 612 makes the dog appear in focus, but the parts of the environment in front of and behind the dog (e.g., further from the focal plane), including the cat and the fence, are blurred (e.g., represented by cross-hatching in Figure 6D and elsewhere). While the cross-hatching representing the blur effect in these figures appears uniform, it should be understood that parts of the environment further from the focal plane are more blurred than parts of the environment closer to the focal plane (for example, in Figure 6D, the fence appears more blurred than the cat). In some embodiments, the simulated depth of field effect simulates the depth of field for a specific aperture setting (e.g., an f-stop value that defines the ratio between the focal length and aperture diameter of a photographic lens, such as f / 1.4, f / 2.8, or f / 8), and the computer system 600 displays f-stop affordances 633 that can be selected to adjust the aperture setting in portrait capture mode (as well as adjusting the aperture setting, for example, which will be described in more detail below). The degree to which the focus decreases as the distance from the focal plane increases (e.g., the degree to which the appearance is blurred) is proportionally greater for lower f-stop values (e.g., f / 1.4) than for higher f-stop values (e.g., f / 8) (e.g., the lower the f-stop, the more dramatically distance affects the blur).Additionally, in portrait capture mode, the computer system displays the lighting effects menu 634 (for example, a menu for selecting the simulated lighting effects to apply).
[0225] In Figure 6D, the computer system 600 detects an input 636 (for example, a tap input via the touch-sensitive surface of the display 608) that selects a photo capture mode from the capture mode menu 622. In response to the input 636, in Figure 6E, the computer system 600 displays a camera user interface 610 as described with respect to Figure 6B, which includes displaying a camera preview 612 without the simulated depth-of-field effect applied and displaying a depth indicator 630.
[0226] In Figure 6E, the computer system 600 detects an input 638 that selects the depth indicator 630. For example, input 638 includes a short tap and / or click input via the touch-sensitive surface of the display 608, as will be described in more detail below with respect to Figures 8A-8T and Figure 9. Depending on the input 638, in Figure 6F, the computer system 600 displays the camera preview 612 with a simulated depth-of-field effect while still in photo capture mode. As shown in Figure 6F, when the simulated depth-of-field effect is applied to the camera preview 612, the dogs and cats appear in focus, but parts of the environment in front of and / or behind the dogs and cats (e.g., further from the focal plane) are blurred. For example, the simulated depth-of-field effect applied to the camera preview 612 simulates an aperture setting of f / 2.8. Additionally, in response to input 638, the computer system 600 updates the appearance of the depth indicator 630, for example, by changing the color, shading, and / or visual emphasis of the depth indicator 630 (represented, for example, by shading in Figure 6F and elsewhere) to indicate that the depth indicator 630 is selected.
[0227] In Figure 6F, the computer system 600 detects an input 640 that selects the depth indicator 630. For example, input 640 includes a long press input via the touch-sensitive surface of the display 608, as will be described in more detail below with respect to Figures 8A-8T and 9. Depending on the input 640, in Figure 6G, the computer system 600 displays the aperture setting slider 644. In some embodiments, the computer system 600 displays the aperture setting slider 644 extending from the depth indicator 630 (e.g., animated). While the aperture setting slider 644 is displayed, as shown in Figure 6G, the computer system 600 stops displaying the zoom affordance 620. The aperture setting slider 644 includes an aperture setting indicator 646 that indicates the current simulated aperture setting is f / 2.8. In some embodiments, the computer system 600 stops displaying the aperture setting slider 644 after detecting a finger-up (lift-off) event of input 640 after a threshold period, without detecting an input on the aperture setting slider 644. In some embodiments, the computer system 600 stops displaying the aperture setting slider 644 in response to detecting an input at a location other than the location of the aperture setting slider 644.
[0228] In Figure 6G, the computer system 600 detects an input 642 (e.g., drag and / or gesture input via the touch-sensitive surface of the display 608) that adjusts the aperture setting via the aperture setting slider 644. In some embodiments, in response to dragging input 642 to the left, the computer system 600 increases the f-stop value of the aperture setting. For example, as shown in Figure 6H, the computer system 600 increases the current simulated aperture setting to f / 3.5, as indicated by the aperture setting indicator 646. When the simulated depth-of-field effect is applied to the camera preview 612 with a simulated aperture setting of f / 3.5, the computer system 600 displays a camera preview 612 in focus on the dog, cat, and part of the background, but the sky and fence are still blurred. In some embodiments, in response to dragging input 642 to the right, the computer system 600 decreases the f-stop value of the aperture setting. For example, as shown in Figure 6I, the computer system 600 reduces the current simulated aperture setting to f / 1.4, as indicated by the aperture setting indicator 646. When the simulated depth of field effect is applied to the camera preview 612 with a simulated aperture setting of f / 1.8, the computer system 600 displays the camera preview 612 in which the dog is in focus, but the cat, fence, and other parts of the background and foreground are blurred. In some embodiments, the aperture setting slider 644 represents multiple f-stop values. For example, the checkmarks on the aperture setting slider 644 can represent discrete f-stop values within the overall aperture size range (e.g., steps in the range of f / 1.4 to f / 32). In some embodiments, the computer system 600 determines the adjusted aperture setting (e.g., f-stop value) based on the distance traveled by the input 642 (e.g., net and / or normalized distance).For example, the aperture setting can be adjusted from f / 2.4 to f / 3.5 by dragging the distance to the left, which corresponds to the distance between the tick marks representing f / 2.4 and f / 3.5, and the aperture setting can be adjusted from f / 2.4 to f / 1.8 by dragging the distance to the right, which corresponds to the distance between the tick marks representing f / 2.4 and f / 1.8.
[0229] As shown in Figure 6J, when input 642 is released (for example, when it is lifted from the touch-sensitive surface of display 608), the computer system 600 stops displaying aperture setting slider 644 and displays depth indicator 630 along with aperture setting indicator 648 showing the adjusted aperture setting value (e.g., f / 1.4). In some embodiments, aperture setting indicator 648 is displayed within depth indicator 630. If depth indicator 630 remains selected, the computer system 600 continues to display camera preview 612 with simulated depth of field (e.g., simulating an adjusted f-stop value of f / 1.4), as described with respect to Figure 6I.
[0230] In Figure 6J, the computer system 600 detects an input 650 on the shutter affordance 624 (for example, a tap input via the touch-sensitive surface of the display 608, and in some embodiments, the input 650 may include a press of a hardware button 606). In response to detecting the input 650, the computer system 600 initiates media capture with the currently selected capture settings, including a simulated depth-of-field effect with a simulated aperture setting of f / 1.4. After capturing the media, as shown in Figure 6K, the computer system 600 updates the captured media icon 626 to show a thumbnail of the captured media. The simulated depth-of-field effect applied to the captured media is visible in the thumbnail shown in the captured media icon 626.
[0231] In Figure 6K, the computer system 600 detects input 652 (e.g., a short tap input via the touch-sensitive surface of the display 608, as described with respect to input 638) that selects the depth indicator 630. In response to detecting input 652, in Figure 6L, the computer system 600 stops displaying the camera preview 612 with the simulated depth-of-field effect. However, since the current zoom level remains above 1x magnification and the cat and dog are still within a certain distance range (e.g., as described with respect to Figure 6C), the computer system 600 continues to display the depth indicator 630, indicating that the computer system 600 is still capturing depth information. Additionally, in response to input 652, the computer system 600 updates the appearance of the depth indicator 630, for example, by changing the color, shading, and / or visual emphasis of the depth indicator 630 (e.g., reverting the appearance changes described with respect to Figure 6F) to indicate that the depth indicator 630 has been deselected.
[0232] In Figure 6L, the computer system 600 detects an input 654 on the shutter affordance 624 (for example, a tap input via the touch-sensitive surface of the display 608; in some embodiments, input 650 may include a press of a hardware button 606). In response to detecting input 654, the computer system 600 starts media capture with the currently selected capture settings. After capturing the media, as shown in Figure 6M, the computer system 600 updates the captured media icon 626 to show a thumbnail of the captured media. Because the depth indicator 630 was deselected when the media capture was performed and the simulated depth-of-field effect was not applied to the camera preview 612, the thumbnail of the captured media does not appear with the simulated depth-of-field effect.
[0233] In Figure 6M, the computer system 600 detects input 656 on the capture media icon 626 (e.g., a tap input via the touch-sensitive surface of the display 608). In response to detecting input 656, in Figure 6N, the computer system 600 displays a media user interface 657 which includes the captured media 658 (e.g., media captured in response to input 654 in Figure 6L) and a captured media roll 660 which includes thumbnails of the captured media 658. Because the depth indicator 630 was displayed in the camera user interface 610 when media capture was performed (e.g., indicating that depth information was captured), the computer system 600 displays the media user interface 657 which includes the f-aperture affordance 662. Because the depth indicator 630 was deselected when the media capture was performed and the simulated depth-of-field effect was not applied to the camera preview 612, the captured media 658 is displayed without the simulated depth-of-field effect (for example, in both the larger view of the captured media 658 and the thumbnail of the captured media 658 in the captured media roll 660), and the f-aperture affordance 662 is displayed in a deselected state (for example, as described with respect to the appearance of the depth indicator 630 in Figure 6L).
[0234] In Figure 6N, the computer system 600 detects an input 664 that selects an f-aperture affordance 662. For example, input 664 includes a short tap and / or click input via the touch-sensitive surface of the display 608, as will be described in more detail below with respect to Figures 8A-8T and 9. Depending on the input 664, in Figure 6O, the computer system 600 displays the captured media 658 with a simulated depth-of-field effect. As shown in Figure 6O, the simulated depth-of-field effect is applied to the captured media 658 with a simulated aperture setting of f / 1.4, which is the simulated f-aperture value selected (for example, in Figure 6H) before the depth indicator 630 is deselected (for example, in Figure 6K), thereby making the dog appear in focus while the cat, background, and foreground, which are further away from the dog, are blurred. The simulated depth-of-field effect is also applied to the thumbnail of the captured media 658 in the captured media roll 660. Additionally, in response to input 664, the computer system 600 updates the appearance of the f-aperture affordance 662, for example, by changing the color, shading, and / or visual emphasis of the depth indicator 630 (represented, for example, by shading in Figure 6F and elsewhere) to indicate that the depth indicator 630 is selected.
[0235] In Figure 6O, the computer system detects an input 664 to select an f-aperture affordance 662. For example, input 664 includes a long press input via the touch-sensitive surface of the display 608, as will be described in more detail below with respect to Figures 8A-8T and 9. In response to input 664, in Figure 6P, the computer system 600 displays an aperture setting menu 666 indicating that the current simulated aperture setting is f / 1.4. In Figure 6P, the computer system 600 detects an input 668 (e.g., a drag and / or gesture input via the touch-sensitive surface of the display 608) to adjust the aperture setting via the aperture setting menu 666 (as described, for example, with respect to Figures 6G-6I).
[0236] As shown in Figure 6Q, when input 668 is released (for example, when it is lifted from the touch-sensitive surface of display 608), the computer system 600 discontinues displaying aperture setting menu 666 and displays f-aperture affordance 662 with aperture setting indicator 670 showing the adjusted aperture setting value (e.g., f / 2.8). In some embodiments, the computer system 600 discontinues displaying aperture setting indicator 670 after a predetermined period of no input. In response to the release of input 668, the computer system 600 updates the simulated depth-of-field effect applied to the captured media 658 to reflect the adjusted simulated aperture setting of f / 2.8. As shown in Figure 6Q, when the simulated depth-of-field effect is applied to the captured media 658, the dogs and cats appear in focus, but parts of the environment in front of and / or behind the dogs and cats (e.g., further from the focal plane) are blurred.
[0237] In Figure 6R, the computer system 600 displays the camera user interface 610, including the camera preview 612. As shown in Figure 6R, the portion of the camera's field of view currently included in the camera preview 612 captures a portion of the physical environment, including flowers, which occupy most of the area of the camera preview 612. The current zoom level is at least 1x magnification, but the computer system 600 does not display the depth indicator 630, indicating that no depth information has been captured, because it has not determined that a particular subject (e.g., a person, an animal, and / or other predetermined type of content) is within a specific distance range (e.g., 2 to 8 feet from the computer system 600). In Figure 6R, the computer system 600 detects an input 672 on the shutter affordance 624 (e.g., a tap input via the touch-sensitive surface of the display 608, and in some embodiments, input 650 may include a press of a hardware button 606) and, accordingly, initiates media capture.
[0238] As shown in Figure 6S, the computer system 600 displays a media user interface 657 that includes the captured media 676 (e.g., media captured in response to input 672 in Figure 6R) and multi-frame photo capture affordances 674. Because the depth indicator 630 was not displayed in the camera user interface 610 when the media capture was performed (e.g., indicating that depth information was not captured), the computer system 600 does not display the f-aperture affordances 662. Therefore, unlike the captured media 658, the computer system 600 does not provide the option to apply a simulated depth-of-field effect to the captured media 676 after the capture.
[0239] As shown in Figure 6T, the portion of the camera's field of view currently included in the camera preview 612 captures a part of the physical environment, including the flowers. As explained with respect to Figure 6R, the current zoom level is at least 1x magnification, but the computer system 600 does not display the depth indicator 630, indicating that no depth information has been captured, because it has not determined that a particular object (e.g., a person and / or animal) is within a certain distance range (e.g., 2 to 8 feet from the computer system 600).
[0240] In Figure 6T, the computer system 600 detects an input 678 (e.g., a tap input via the touch-sensitive surface of the display 608) directed at the location of the flower in the camera preview 612. Although the camera preview 612 still does not contain a specific subject (e.g., a person, an animal, and / or other predetermined types of content), in response to the input 678, in Figure 6U, the computer system 600 detects the flower as a media capture subject and indicates the detection with the subject indicator 680. Additionally, the computer system 600 displays the depth indicator 630 to indicate that depth information is being captured. Thus, after detecting the input 678, the simulated depth-of-field effect can be applied and controlled as described with respect to Figures 6C to 6Q (e.g., applying and modifying the simulated depth-of-field effect in the camera preview 612 and / or the media user interface 657 to the media captured while the depth indicator 630 is displayed).
[0241] Figure 7 is a flowchart illustrating a method for controlling the capture of media having associated depth information using a computer system, according to several embodiments. Method 700 is performed on a computer system (e.g., 100, 300, 500, and / or 600) communicating with a display generation component (e.g., 608) (e.g., a display controller, a touch-sensitive display system, a display (e.g., integrated and / or connected), a 3D display, a transparent display, a projector, and / or a head-up display), one or more cameras (e.g., 604A, 604B, 604C, and / or 604D) (in some embodiments, the computer system has one or more cameras such as a rear (e.g., user-facing) camera and a front (e.g., environment-facing) camera, and / or multiple front cameras (e.g., having different lenses such as a standard camera, a telephoto camera, and / or wide-angle camera)), and one or more sensors (in some embodiments, the computer system has one or more depth sensors). In method 700, some operations are combined at will, the order of some operations is changed at will, and some operations are omitted at will.
[0242] As described below, Method 700 provides an intuitive method for controlling the capture of media with associated depth information. The method reduces the cognitive burden on the user to control the capture of media with associated depth information, thereby creating a more efficient human-machine interface. With respect to battery-operated computing devices, enabling users to control the capture of media with associated depth information more quickly and efficiently saves power and increases the time between battery charges.
[0243] The computer system (e.g., 600) obtains information about the physical environment corresponding to the field of view of one or more cameras (e.g., a live preview of at least a portion of the field of view of one or more cameras; in some embodiments, a camera preview in which depth information (e.g., information about the distance between one or more cameras and / or one or more objects or features within the field of view of one or more cameras) is not currently displayed and / or captured in the preview; in some embodiments, a camera preview in which depth-based features (e.g., simulated depth of field effect) are not currently used) via a display generation component (e.g., 608) (702), based on information from one or more sensors of the computer system (e.g., one or more cameras and / or one or more depth sensors) (704).
[0244] The computer system, having acquired information about the physical environment corresponding to the field of view of one or more cameras (706), determines (e.g., without user intervention) that depth capture criteria (e.g., portrait criteria, in some embodiments the depth capture criteria include the current zoom setting being 1x or greater, and in some embodiments the depth capture criteria include detecting a specific object (e.g., a person and / or pet) within a certain distance (e.g., 2 to 8 feet away, 3 feet away, and / or 10 feet away) from the camera(s)(one or more) are met (e.g., as shown in Figure 6C) (e.g., automatic determination and / or determination made without explicit user input requesting the display of a first user-selectable user interface object), via a display generation component (e.g., 608), that it has been selected (e.g., via user input such as a tap gesture or air gesture). In response to detecting user input directed towards a face object, and in some embodiments, selecting a first selectable user interface object, the computer system toggles the depth affordance between states of depth affordance (e.g., with a first type of input such as a tap and / or short input), initiates the process of performing a first depth-based media capture function (in some embodiments, the first selectable user interface object is displayed, and if the depth capture criteria continue to be met, the display of the first selectable user interface object is maintained), displays the first selectable user interface object (e.g., 630) (e.g., depth indicators / affordances such as an f-aperture icon and / or another indicator, displayed as part of the camera UI and / or superimposed on the camera preview) (708) (e.g., as shown in Figure 6F) (e.g., displaying and / or discontinuing the display of a simulated depth-of-field preview).In some embodiments, the computer system initiates a process to perform a first depth-based media capture function (in response to detecting user input selecting a first selectable user interface object, which captures media to which a simulated depth of field is applied and / or controls the simulated depth of field setting).
[0245] The computer system, upon acquiring information about the physical environment corresponding to the field of view of one or more cameras (706), discontinues displaying the first selectable user interface object (710) (for example, as shown in Figures 6B, 6R and 6T) (e.g., maintain the camera preview without displaying information about the distance between one or more cameras and one or more objects or features within the field of view of the cameras, or discontinue displaying the first selectable user interface object if it is displayed and the depth capture criteria are no longer met). Providing depth capture affordances that allow the user to initiate depth-based media capture functionality (e.g., capturing depth information and / or using depth information for media capture) when the current media capture preview meets the depth capture criteria provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls. Doing so also helps users configure media capture events, reducing the risk of temporary media capture opportunities being missed or captured in unintended settings (e.g., without capturing depth information when desired by the user), which improves system usability and makes the user-system interface more efficient (e.g., by helping users provide appropriate input when operating / interacting with the system and reducing user errors), and additionally reduces power consumption and improves system battery life by enabling users to use the system more quickly and efficiently. Additionally, by displaying depth capture affordances, it provides users with real-time visual feedback on the state of the computer system (e.g., whether depth information is being captured and / or whether depth-based media capture functionality is available).For example, the initial display of depth capture affordances indicates that depth information can and / or will be captured, allowing the user to quickly access the relevant functions for media capture as needed.
[0246] In some embodiments, a first selectable user interface object (e.g., 630) indicates the state of capture of depth information relating to the physical environment corresponding to the field of view of one or more cameras (e.g., information relating to the distance between one or more cameras and objects in the physical environment and / or the distance between different objects in the physical environment, in some embodiments, a depth map) (e.g., displaying the first selectable user interface object indicates that depth information is currently being captured; in some embodiments, a depth indicator indicates that depth information is currently being captured; in some embodiments, a depth indicator indicates that depth information is being captured). In some embodiments, the method further includes capturing (e.g., caching and / or storing) depth information relating to the physical environment corresponding to the field of view of one or more cameras (e.g., information relating to the distance between one or more cameras and objects in the physical environment and / or the distance between different objects in the physical environment, in some embodiments, a depth map) while the first selectable user interface object is being displayed (e.g., displaying the first selectable user interface object indicates that depth information is currently being captured). Capturing depth information while displaying depth capture affordances provides the user with real-time visual feedback on the state of the computer system (e.g., whether depth information is being captured). Doing so also helps the user configure media capture events and reduces the risk of temporary media capture opportunities being missed (e.g., due to the user trying to confirm whether depth information is being captured) or captured in unintended settings (e.g., without capturing depth information / effects when desired by the user).
[0247] In some embodiments, depth information is based on information from one or more depth sensors (e.g., structural light sensors, time-of-flight sensors (e.g., LiDAR and / or ultrasonic sensors), and / or stereoscopic camera sensors) among one or more sensors.
[0248] In some embodiments, depth information is based on a comparison between first image data acquired from a first camera among one or more cameras and second image data acquired from a second camera among one or more cameras (e.g., 604B, 604C, and / or 604D) (for example, the two cameras are facing substantially the same direction but separated from each other by a known distance, and as a result, depth information can be derived from discrepancies between the first and second image data (e.g., the closer the object is to the two cameras, the more image data corresponding to the object differs between the first and second image data)).
[0249] In some embodiments, the computer system detects an input (e.g., 638, 640, and / or 652) to select a first selectable user interface object (e.g., 630), and in response to detecting an input to select a first selectable user interface object, the computer system starts a process for performing a first depth-based media capture function, the process for performing the first depth-based media capture function, which is a simulated depth-of-field capture mode (e.g., a mode in which depth information is captured and / or used while capturing media (e.g., to apply a live preview of depth effects)), as shown (e.g., in Figures 6E-6F and 6K-6L). This includes switching between enabled and disabled states (for example, enabling the depth capture mode according to the determination that the depth capture mode is disabled when a selection of a first user-selectable user interface object is detected, and disabling the depth capture mode according to the determination that the depth capture mode is enabled when a selection of a first user-selectable user interface object is detected, and in some embodiments, enabling the depth capture mode includes initializing the depth capture mode setting (e.g., f-aperture setting) to a first value, where in some embodiments, the first value is the last used value, and in some embodiments, the first value is the default value). By toggling the depth capture mode using the first selectable user interface object, control over media capture settings is improved without cluttering the media capture interface with unnecessary controls. Doing so also helps users configure media capture events and reduces the risk of temporary media capture opportunities being missed or captured with unintended settings (e.g., without capturing depth information when desired by the user), which improves system usability and makes the user-system interface more efficient.
[0250] In some embodiments, upon detecting an input (e.g., 638, 640, and / or 652) for selecting a first selectable user interface object, and in accordance with the determination that a simulated depth-of-field capture mode is enabled, the computer system displays a camera preview (e.g., 612) (e.g., live capture preview) having a simulated depth-of-field effect (e.g., as shown in Figures 6F to 6K) (e.g., applying blur and / or other depth-based visual effects to image data being captured using one or more cameras; in some embodiments, the simulated depth-of-field effect is applied only when a specific object (e.g., a person and / or animal of a certain size in the camera preview) is detected (e.g., blurring the portion of the camera preview corresponding to elements of the physical environment further away from one or more cameras than the portion of the camera preview corresponding to elements of the physical environment closer to one or more cameras). In some embodiments, in response to the computer system detecting an input (e.g., 638, 640, and / or 652) for selecting a first selectable user interface object, and in accordance with the determination that the simulated depth-of-field capture mode is disabled (e.g., before the first user-selectable user interface object is initially selected, or after the first selectable user interface object has been deselected (e.g., in response to the detection of a selection of the first selectable user interface object while the depth-of-field capture mode is already enabled)), the computer system displays a camera preview without the simulated depth-of-field effect (e.g., as shown in Figure 6L).When depth capture mode is enabled, applying a simulated depth-of-field effect to the live camera preview provides the user with real-time visual feedback on the state of the computer system. For example, the simulated depth-of-field effect indicates to the user that depth information is being captured and allows the user to preview how the captured media will look with the simulated depth-of-field effect applied. Doing so also helps the user configure media capture events and reduces the risk of missing or capturing transient media capture opportunities or capturing with unintended settings, which improves system usability and makes the user-system interface more efficient.
[0251] In some embodiments, initiating the process for performing a first depth-based media capture function involves switching a simulated depth-of-field capture mode between an enabled and disabled state (as shown, for example, in Figures 6E-6F and 6K-6L) according to the determination that the input for selecting a first selectable user interface object is an input of a first input type (e.g., 638, 640, and / or 652) (e.g., a short press and / or tap). In some embodiments, initiating the process for performing a first depth-based media capture function includes, upon determination that the input for selecting a first selectable user interface object is a second type of input (e.g., long / held press and / or tap) different from a first type (e.g., 640), displaying a second selectable user interface object (e.g., 644) (in some embodiments, a slider, in some embodiments, a selectable menu, in some embodiments, a platter with multiple affordances) via a display generation component, which, once selected (e.g., via input 642), simulates depth of field capture (e.g., via user input such as a tap gesture or air gesture directed towards the second selectable user interface object). The capture mode settings (for example, as shown in Figures 6G to 6I) (in some embodiments, the simulated f-stop values for the simulated depth of field effect; in some embodiments, the user can select between multiple f-stop values by dragging a slider affordance (e.g., left and right and / or up and down); in some embodiments, a selectable menu and / or platter contains selectable affordances for each of the multiple f-stop values; in some embodiments, in response to detecting user input to select a second selectable user interface object, the computer system changes the settings of the simulated depth of field capture mode based on the user input (e.g., the selected affordance and / or the range over which the slider is dragged) (for example, allowing the user to set and / or select values).Toggle the depth capture mode using the first selectable user interface object and access additional options for the depth capture mode provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls. Doing so also helps the user configure media capture events and reduces the risk of temporary media capture opportunities being missed or captured with unintended settings, which improves system usability and makes the user-system interface more efficient.
[0252] In some embodiments, while displaying a camera preview (e.g., 612), the computer system displays, via a display generation component, at least one selectable user interface object different from the first selectable user interface object (e.g., 614, 616, 618, 620, and / or 622), which, when selected (e.g., via user input such as a tap gesture or air gesture directed towards the at least one selectable user interface object different from the first selectable user interface object), initiates a process for performing a media capture function different from the first depth-based media capture function (e.g., the different media capture function controls flash settings (e.g., setting the flash on, off, and / or to auto), controls multi-frame capture settings (e.g., toggling live photo and / or burst mode on or off), controls exposure settings (e.g., This includes enabling longer exposure times (e.g., low light settings) and / or setting maximum exposure times, controlling zoom settings (e.g., zoom in or zoom out), selecting a media capture mode (e.g., selecting between modes for capturing standard photos, standard videos, portrait mode photos, high frame rate videos, and / or panoramic photos), and / or selecting a camera from one or more cameras (in some embodiments, a user-facing camera or an environment-facing camera; in some embodiments, a selection between different environment-facing cameras), and in some embodiments, upon detecting user input to select at least one selectable user interface object, the computer system initiates a process for performing a media capture function different from the first depth-based media capture function (in some embodiments, at least one selectable user interface object functions as described with respect to Figures 8A-8T and Figure 9).
[0253] In some embodiments, while displaying a camera preview, the computer system displays a third selectable user interface object (e.g., 624) (e.g., shutter affordance) different from the first selectable user interface object via a display generation component (e.g., via inputs 650, 654, and / or 672) (e.g., via user input such as a tap gesture or air gesture directed towards the third selectable user interface object), and when selected, initiates the process for capturing media (e.g., as shown in Figures 6J-6M and 6R-6S) (e.g., capturing photo media and / or video media using one or more cameras). The system captures the media and stores the captured media (in some embodiments, along with any relevant metadata such as depth information) in a media library (in some embodiments, a media library stored in the internal storage of the computer system; in some embodiments, a media library stored in remote storage (e.g., a cloud library); in some embodiments, a media library stored on an external storage device, as described with reference to Figures 12A to 12T and Figure 13; in some embodiments, the computer system initiates the capture of photo and / or video media in response to detecting user input to select a third selectable user interface object).
[0254] In some embodiments, the computer system captures first media (for example, as shown in Figures 6K, 6M, and 6S) (for example, by using one or more cameras to capture photo media and / or video media, and stores the captured media (in some embodiments, along with any relevant metadata such as depth information) in a media library (in some embodiments, a media library stored in the computer system's internal storage, in some embodiments, a media library stored in remote storage (e.g., a cloud library), and in some embodiments, the media library is stored on external storage, as described with respect to Figures 12A to 12T and Figure 13)). In some embodiments, after capturing the first media (in some embodiments, automatically after capturing the first media, in some embodiments, in response to user input requesting to browse the first media (in some embodiments, a selection of a photowell, in some embodiments, input to navigate to a photo roll)), the computer system displays a representation of the first media (e.g., included in 658 and / or 676 and / or 626) via a display generation component (e.g., a thumbnail of the first media, a still frame of the first media (e.g., for video media and / or multi-frame photo captures), and / or the media itself; in some embodiments, the representation of the first media is displayed while displaying a camera preview (e.g., a thumbnail of the captured media in a photowell); in some embodiments, the display of the camera preview is stopped and the representation of the first media is displayed in a different UI (e.g., a collection of recently captured media and / or the user's media library). Displaying the captured media provides the user with real-time visual feedback on the state of the computer system and assists the user in configuring media capture events.For example, a user can check how captured media looks with the current media capture settings and adjust the settings as needed for additional media capture.
[0255] In some embodiments, displaying a representation of the first media includes, upon determination that a first selectable user interface object is displayed in a first state (e.g., selected, enabled, and / or on state; in some embodiments, depth affordances are placed in the first state in response to user input selecting depth affordances while depth affordances are in a second state), based on depth information (e.g., distances between one or more cameras and objects in the physical environment, and / or distances between different objects in the physical environment, e.g., blur and / or other depth-based visual effects applied to media, still images, and / or thumbnails), when capturing the first media is initiated (e.g., as shown in Figure 6J), displaying a representation of the first media having a simulated depth-of-field effect (e.g., as shown by the captured media icon 626 in Figures 6K-6L). In some embodiments, a depth map of the physical environment corresponding to the field of view of one or more cameras (e.g., blurring the portion of the camera preview corresponding to elements of the physical environment farther from one or more cameras than the portion of the camera preview corresponding to elements of the physical environment closer to one or more cameras). In some embodiments, displaying a representation of the first media includes, when the capture of the first media is initiated (for example, as shown in Figure 6L), determining that the first selectable user interface object is not displayed in a first state (in some embodiments, when the first selectable user interface object is displayed in a (second) deselected / disabled state, for example, in response to user input selecting a depth affordance while the depth affordance is in a first state, in some embodiments, when the first selectable interface object is not displayed), displaying a representation of the first media without a simulated depth-of-field effect (for example, as shown by the captured media icon 626 and captured media 658 in Figures 6M-6N).By displaying a representation of the captured media, regardless of whether simulated depth effects are applied depending on whether depth affordances are selected or deselected, the system provides the user with real-time visual feedback on the state of the computer system and assists the user in configuring media capture events. For example, the user can check how the captured media looks with the current depth capture settings and adjust the depth capture settings for additional media captures as needed.
[0256] In some embodiments, the computer system displays a representation of a first media (e.g., 658) (in some embodiments, within the Camera Roll and / or Media Library UI) and, when selected (e.g., via input 664) (e.g., via user input such as a tap gesture or air gesture directed to a fourth selectable user interface object), displays a fourth selectable user interface object (e.g., 662) (e.g., depth and / or portrait mode affordance) (in some embodiments, the simulated depth of field effect is based on depth information (e.g., information relating to the distance between one or more cameras and objects in the physical environment, and / or the distance between different objects in the physical environment). In some embodiments, the physical environment corresponding to the field of view of one or more cameras In some embodiments, in response to detecting user input to select a fourth selectable user interface object, the computer system displays media with a simulated depth-of-field effect according to a determination that the fourth selectable user interface object is displayed in a deselected / disabled state when the user input is selected, and displays media without a simulated depth-of-field effect according to a determination that the fourth selectable user interface object is displayed in a selected / enabled state when the user input is selected.
[0257] In some embodiments, following the determination that a first selectable user interface object was displayed when the capture of the first media was initiated (for example, as shown in Figures 6J and 6L), depth information relating to the physical environment corresponding to the field of view of one or more cameras (e.g., blurring the portion of the camera preview corresponding to elements of the physical environment farther away from one or more cameras than the portion of the camera preview corresponding to elements of the physical environment closer to one or more cameras) (e.g., information relating to the distance between one or more cameras and objects in the physical environment, and / or the distance between different objects in the physical environment; in some embodiments, a depth map) is available for use to display the representation of the first media with a simulated depth-of-field effect (e.g., blur and / or other depth-based visual effects applied to the media), as shown (e.g., as shown in Figures 6N to 6Q). In some embodiments, following the determination that a first selectable user interface object was not displayed when the capture of the first media was initiated (e.g., as shown in Figure 6R), the depth information is not available for use to display the representation of the first media with a simulated depth-of-field effect (e.g., as shown in Figure 6S). Providing the option to apply a simulated depth-of-field effect after media capture offers users improved media capture control options without cluttering the media capture user interface with additional displayed controls. Doing so also helps users configure media capture events and reduces the risk of missed or unintended media capture opportunities, which improves system usability and makes the user-system interface more efficient.
[0258] In some embodiments, the computer system detects a first user input (e.g., 678) directed towards a first area of the camera preview (in some embodiments, a tap on the camera preview) (in some embodiments, while the display of a first selectable user interface object is disabled (e.g., while depth capture criteria are not met)). In some embodiments, in response to detecting a first user input and determining that the first area of the camera preview contains a representation of a distinct object in the physical environment (e.g., an identifiable person, animal, and / or object, detected in some embodiments based on information about the physical environment corresponding to the field of view of one or more cameras (e.g., camera data and / or depth information)) (in some embodiments, while the display of a first selectable user interface object is disabled (e.g., while depth capture criteria are not met)), the computer system obtains depth information about the physical environment corresponding to the field of view of one or more cameras (e.g., distance between one or more cameras and objects in the physical environment, and / or information relating to distances between different objects in the physical environment, etc.). In some embodiments, depth information (e.g., cached and / or stored) (e.g., as shown in Figure 6U) (for example, if depth affordances are not displayed and / or depth capture criteria are not met, the user can instead enable the capture of depth information by tapping an object in the camera preview, and in some embodiments, the capture of depth information is stopped while the display of a first selectable user interface object is stopped (e.g., while depth capture criteria are not met) according to the determination that a first area of the camera preview does not contain a representation of an individual object). Capturing depth information in response to detecting a tap on an object in the camera preview provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls.Doing so also helps users configure media capture events and reduces the risk of missed or unintended media capture opportunities being captured (e.g., without capturing depth information when desired by the user), which improves system usability and makes the user-system interface more efficient.
[0259] In some embodiments, the computer system captures (e.g., caches and / or stores) depth information relating to the physical environment corresponding to the field of view of one or more cameras (e.g., information relating to the distance between one or more cameras and objects in the physical environment, and / or the distance between different objects in the physical environment, in some embodiments, depth maps) upon determining that a portrait capture mode (e.g., a mode in which captured media items are presented with a composite depth-of-field effect) is enabled (in some embodiments, regardless of whether depth capture affordances are displayed and / or whether depth capture criteria are met) (e.g., information relating to the distance between one or more cameras and objects in the physical environment, and / or the distance between different objects in the physical environment, in some embodiments, depth maps) (e.g., as shown in Figure 6D) (e.g., regardless of whether objects are detected, regardless of whether objects are selected based on user input and / or regardless of whether the user has adjusted any portrait mode settings) (e.g., depth information is always captured in portrait capture mode). In some embodiments, media items captured while in portrait capture mode include depth information (e.g., which can be used to present one or more depth effects (e.g., composite depth-of-field)). Capturing depth information while in portrait capture mode provides users with improved media capture control options without cluttering the media capture user interface with additional displayed controls. Doing so also helps users configure media capture events and reduces the risk of missed or unintended media capture opportunities being captured (e.g., without capturing depth information / effects when desired by the user), which improves system usability and makes the user-system interface more efficient.
[0260] In some embodiments, the computer system displays a camera preview (e.g., live capture preview) with a simulated depth-of-field effect (e.g., applying blur and / or other depth-based visual effects to image data captured using one or more cameras) (e.g., as shown in Figure 6D) (e.g., blurring the portion of the camera preview corresponding to elements of the physical environment further away from one or more cameras than the portion of the camera preview corresponding to elements of the physical environment closer to one or more cameras). The camera preview includes representations of individual subjects (e.g., people, animals, and / or objects, detected in some embodiments based on information about the physical environment corresponding to the field of view of one or more cameras (e.g., camera data and / or depth information)) (e.g., according to the determination that the portrait capture mode is enabled (e.g., using mode selection affordances (e.g., for selecting between standard photo, standard video, portrait, panorama, and high frame rate video modes)) based on depth information about the physical environment corresponding to the field of view of one or more cameras (e.g., information relating to the distance between one or more cameras and subjects in the physical environment, and / or distances between different subjects in the physical environment, in some embodiments, depth maps). In some embodiments, the computer system displays the camera preview (e.g., live capture preview) without a simulated depth of field effect (as shown, for example, in Figures 6C, 6E, 6L, and 6M) based on the determination that the portrait capture mode is not enabled (e.g., the mode is disabled and / or another mode (e.g., standard photo mode) is enabled) and the first selectable user interface object (e.g., depth affordance) is not enabled (in some embodiments, the first selectable user interface object is displayed but not selected; in some embodiments, the first selectable user interface object is not displayed).Displaying a live preview of the simulated depth effect when a subject is detected and the camera is capturing in portrait mode provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls. Doing so also helps the user configure media capture events and reduces the risk of temporary media capture opportunities being missed or captured with unintended settings (e.g., without capturing depth information when desired by the user), which improves system usability and makes the user-system interface more efficient.
[0261] In some embodiments, the depth capture criteria include criteria that are met when the zoom setting is set to at least a threshold magnification (e.g., as shown in Figures 6C and 6U) (e.g., depth affordances are displayed when the camera is zoomed in above a threshold zoom level (e.g., 0.75x zoom, 1x zoom, and / or 2x zoom), but not when the camera is zoomed below the threshold zoom level, and in some embodiments, depth affordances are displayed at any zoom level (e.g., the depth capture criteria do not include criteria that are met by meeting a threshold magnification)). Displaying depth capture affordances when zoomed in above a certain threshold provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls, for example, when additional displayed controls are unlikely to be useful and / or desired by the user given the current configuration of media capture.
[0262] In some embodiments, the depth capture criteria include a first criterion that is met when a representation of an individual object (e.g., a person, an animal, and / or other specific object) is detected in the camera preview, and a second criterion that is met when the distance from one or more cameras to the individual object in the physical environment is within a distance range (e.g., the object is 2–8 feet, 0–10 feet, and / or 5–15 feet away) (for example, as shown in Figure 6C) (In some embodiments, the depth capture criteria include a third criterion that is met when the lighting quality of the camera preview (e.g., brightness, contrast, and / or the currently selected flash setting) meets a quality criterion (e.g., the individual object is or will be sufficiently brightly lit in the media capture)). Displaying depth capture affordances when zoomed in beyond a certain threshold provides the user with improved media capture control options without cluttering the media capture user interface with additional displayed controls, for example, when additional displayed controls are unlikely to be useful and / or desired by the user given the current configuration of the media capture.
[0263] In some embodiments, while displaying a first selectable user interface object (e.g., 630), the computer system displays a zoom interface object (e.g., 620) (e.g., a button, slider, and / or menu / platter with multiple selectable options) that controls the zoom level of the camera preview (e.g., as shown in Figures 6B-6C) when selected (e.g., via user input such as a tap gesture or air gesture directed towards the zoom interface object) (in some embodiments, the depth affordance and zoom controller are displayed close to each other within the same area of the camera UI (e.g., both are at the bottom of the camera preview, with the depth indicator in the lower left corner and the zoom controller in the lower center, and / or both are on the same side of the camera preview, with the depth indicator in the corner and the zoom controller in the center), and in some embodiments, in response to detecting an input to select the zoom interface object, the computer system changes the zoom level of the camera preview based on the input (e.g., based on the extent to which the slider or wheel affordance is dragged and / or based on a particular option selected in the input). Displaying zoom controls alongside depth affordances helps users configure media capture events, reducing the risk of missing temporary media capture opportunities or capturing with unintended settings, thereby improving system usability and making the user-system interface more efficient. For example, users can check both depth capture settings and zoom settings without having to search extensively for different controls.
[0264] In some embodiments, the computer system detects a distinct type of input (e.g., 640) (e.g., a long / held input) directed to a first selectable user interface object (e.g., 630). In some embodiments, in response to detecting a distinct type of input directed to the first selectable user interface object, the computer system discontinues displaying the zoom interface object (e.g., 620) and displays a fifth selectable user interface object (e.g., 644) (e.g., an extended option affordance for depth capture operations such as a menu and / or slider) (e.g., as shown in Figures 6G to 6I) (e.g., an f-stop value for applying a simulated depth-of-field effect; in some embodiments, the slider affordance can be dragged (e.g., left and right and / or up and down) to select between multiple f-stop values; in some embodiments, the selectable menu and / or platter includes selectable affordances for each of multiple f-stop values that can be selected by tap and / or click inputs). Hiding the zoom controls and providing additional media capture settings offers users improved media capture control options without cluttering the media capture user interface with extra visible controls.
[0265] In some embodiments, a first selectable user interface object (e.g., 630) includes an indication (e.g., 648) of the current value of a depth-based media capture setting (e.g., the currently selected aperture size (f-stop) value) when displayed in an active state (e.g., when selected). In some embodiments, the indication of the current value of the depth-based media capture setting is updated (e.g., as shown in Figures 6J-6K and 8M-8O) in response to a detection of a change in the current value of the depth-based media capture setting. In some embodiments, according to a determination that the current value of the depth-based media capture setting has a first value, the indication of the current value of the depth-based media capture setting has a first appearance (for example, the indication of the current value of the depth-based media capture setting includes a first number indicating a simulated depth stop setting), and according to a determination that the current value of the depth-based media capture setting has a second value different from the first value, the indication of the current value of the depth-based media capture setting has a second appearance different from the first appearance (for example, the indication of the current value of the depth-based media capture setting includes a second number indicating a simulated depth stop setting, or does not include a number indicating that the default value of the depth-based media capture setting is being used). By displaying and updating depth affordances in the indication of the currently selected value of the depth-based media capture setting, the system provides the user with real-time visual feedback on the state of the computer system and assists the user in configuring media capture events.
[0266] It should be noted that the process details described above with respect to Method 700 (e.g., Figure 7) are also applicable to methods similar to those described later. For example, Method 700 optionally includes one or more characteristics of the various methods described below with reference to Methods 900, 1100, 1300, 1700, 1900, 2100, and / or 2300. For example, while capturing media with (or without) associated depth information according to Method 700, both the capture of depth information and other media capture settings can be controlled as described with respect to Method 900. For example, a camera user interface incorporating depth affordances in Method 700 can also incorporate the zoom user interface described with respect to Method 1100 and the external storage user interface described with respect to Method 1300. For brevity, these details will not be repeated below.
[0267] Figures 8A to 8T show exemplary user interfaces for controlling media capture settings in several embodiments. These user interfaces are used to illustrate the processes described below, including the process shown in Figure 9.
[0268] In Figure 8A, the computer system 600 displays a camera settings user interface 802 via display 608 for selecting and configuring controls for a set of camera settings provided to the camera user interface (e.g., camera user interface 610). As shown in Figure 8A, the set of camera settings includes a media format (e.g., “media type”) setting (e.g., for media capture resolution and / or compression codec), a depth capture setting (e.g., for simulated depth of field effect, as will be described in detail with respect to Figures 6A-6U and 7), a camera flash setting, and a low light (e.g., “night mode”) capture setting (e.g., for exposure time).
[0269] The camera settings user interface 802 includes toggle affordances 804A, 804B, 804C, and 804D corresponding to media format settings, depth capture settings, camera flash settings, and low light capture settings, respectively. When selected, toggle affordances 804A, 804B, 804C, and 804D control whether the corresponding camera setting control affordances are included in the camera user interface 610. As shown in Figure 8A, each of the toggle affordances 804A, 804B, 804C, and 804D is set to the "on" state. Thus, temporarily referring to Figure 8D, the computer system 600 displays the camera user interface 610 having media format affordance 616, depth indicator 630, flash affordance 614, and night mode affordance 816. In some embodiments, even when the toggle affordance 804B is set to the "on" position, the depth indicator 630 is displayed only when the depth capture criteria (e.g., detection of a specific object (e.g., a person or animal) within a specific distance range and / or a zoom level of at least 1x magnification) are met, as described above with respect to Figures 6A-6U and 7. Referring again to Figure 8A, the camera settings user interface 802 includes default affordances 806A and 806B corresponding to the media type setting and aperture setting, respectively. Default affordance 806A indicates the currently selected default media format setting of 12 megapixel resolution and High Efficiency Image Coding (HEIC) compression (e.g., "HEIC 12"). Default affordance 806B indicates the currently selected default f / 2.4 aperture value (e.g., "2.4").
[0270] In Figure 8A, the computer system 600 detects an input 808 (e.g., a tap input via the touch-sensitive surface of the display 608) that selects a default affordance 806A. In response to the detection of input 808, in Figure 8B, the computer system 600 displays a default settings user interface 810 for media format settings. The default settings user interface 810 includes a default settings menu 812 that enumerates default settings options that can be selected for media format settings, including 12-megapixel HEIC (e.g., "HEIC 12"), 48-megapixel HEIC (e.g., "HEIC 48"), 12-megapixel RAW coding (e.g., "RAW 12"), and 48-megapixel RAW coding (e.g., "RAW 48"). The computer system 600 displays a selection indicator 814A indicating that 12-megapixel HEIC is currently selected as the default value for media format settings.
[0271] In Figure 8B, the computer system 600 detects input 813 (e.g., a tap input via the touch-sensitive surface of the display 608) to select the 48-megapixel HEIC option for media format settings. In response to detecting input 813, in Figure 8C, the computer system 600 displays a selection indicator 814B indicating that 48-megapixel HEIC is selected as the additional default value for media format settings.
[0272] In Figure 8D, the computer system 600 displays the camera user interface 610, which includes the camera preview 612, zoom affordance 620, capture mode menu 622, shutter affordance 624, and captured media icon 626 (as described above, for example, with respect to Figures 6A to 6U), in addition to the media format affordance 616, depth indicator 630, flash affordance 614, and night mode affordance 816. As shown in Figure 8D, the portion of the camera's field of view currently included in the camera preview 612 includes a cactus in the foreground, a person in the midground, and landscape features and the sky in the background. The computer system 600 detects the person as a media capture target and indicates this detection using the target indicator 817. As described above, in some embodiments, the computer system 600 displays the depth indicator 630 due to both the toggle affordance 804B being set to the "on" state and the depth capture criteria being met (for example, the zoom level is at least 1x magnification and a person is detected within a distance range of 2 to 8 feet from the computer system 600).
[0273] In Figure 8D, the camera flash setting is currently off (e.g., disabled), and therefore, when media capture is initiated, the flash will not be used. Consequently, the computer system 600 displays the flash affordance 614 in the "off" state, shows line-through, and visually de-highlights the flash affordance 614. The low-light capture setting is currently off (e.g., disabled), and therefore, when capturing media, shorter standard exposure times (e.g., 0.05 seconds, 0.1 seconds, and / or 0.5 seconds) will be used. Consequently, the computer system 600 displays the night mode affordance 816 in the "off" state, shows line-through, and visually de-highlights the night mode affordance 816. The depth capture setting is currently deselected, and therefore the computer system 600 does not display the camera preview 612 with a simulated depth of field effect (however, in some embodiments, the computer system 600 still captures depth information, as indicated by the display of the depth indicator 630 (as described above with respect to Figures 6A-6U and 7, for example)). Therefore, the computer system 600 displays the depth indicator 630 in a deselected state and visually de-highlights the depth indicator 630 (as described above with respect to Figure 6L, for example). The media format setting is currently set to 12-megapixel HEIC (e.g., one of the previously selected default media format options), as indicated by the text "HEIC 12" contained in the media format affordance 616.
[0274] In Figure 8D, the computer system 600 detects an input 818 directed to a location with a night mode affordance 816. Input 818 is an input of a first input type. For example, the first input type includes a “short” tap and / or click input via the touch-sensitive surface of the display 608, where a finger-down event is detected followed by a finger-up (lift-off) event within a limited time (e.g., 0.05 seconds, 0.1 seconds, and / or 0.5 seconds). In response to detecting input 818 (e.g., an input of the first type), in Figure 8E, the computer system 600 changes the low-light capture setting to an ON (e.g., enabled) state, specifically an ON state where media capture is performed with a maximum exposure time of 1 second. In some embodiments, while the low-light capture setting is ON, the computer system 600 dynamically adjusts the exposure time used for media capture up to the maximum exposure time based, for example, the detected ambient light and / or the determined brightness of the camera preview 612. In response to detecting input 818 (for example, and changing the low-light capture setting to an ON state with a maximum exposure time of 1 second), the computer system 600 updates the appearance of the night mode affordance 816, for example, by removing lines passing through the night mode affordance 816 and / or visually highlighting the night mode affordance 816 to indicate that the low-light capture mode is enabled, and including text indication of the maximum exposure time (e.g., "1 second").
[0275] In some embodiments, in response to detecting additional input of the first input type, the computer system 600 cycles through low-light capture settings between a predetermined set of states. For example, as shown in sidebar 822, the predetermined set of states may include an ON state with a maximum exposure time of 1 second, an ON state with a maximum exposure time of 3 seconds, and / or an OFF (e.g., disabled) state, so that the user can enable, disable, and / or adjust the maximum exposure time with a short tap input on the night mode affordance 816.
[0276] In Figure 8E, the computer system 600 detects an input 820 directed to a location of night mode affordance 816. Input 820 is an input of a second input type, distinct from a first input type. For example, the first input type includes a “long” press input via the touch-sensitive surface of the display 608, in which case a finger-down event is detected and no finger-up (lift-off) event is detected for at least a threshold period (e.g., the input is held for at least 0.5 seconds, 1 second, and / or 1.5 seconds).
[0277] In response to detecting input 820 (e.g., a second type of input), in Figure 8F, the computer system 600 displays the exposure slider 824. The exposure slider 824 indicates the current maximum exposure time of 1 second. In some embodiments, the computer system 600 displays the exposure slider 824 extending from the night mode affordance 816 (e.g., by animating it). In some embodiments, the exposure slider 824 represents multiple maximum exposure times. For example, the checkmarks on the exposure slider 824 may represent discrete increments of the maximum exposure time within the full exposure range (e.g., 0.1 seconds, 0.5 seconds, and / or 1 second) within the full exposure range (e.g., 0.5 to 3.0 seconds, 1 to 5 seconds, and / or 0 to 10 seconds). As shown in Figure 8F, while the exposure slider 824 is displayed, the computer system 600 discontinues displaying other user interface elements within the area of the exposure slider 824, such as the media format affordance 616. In some embodiments, the computer system 600 stops displaying the exposure slider 824 after detecting a finger-up (lift-off) event of input 820 following a threshold period, without detecting an input on the exposure slider 824 and / or the night mode affordance 816. In some embodiments, the computer system 600 stops displaying the exposure slider 824 in response to detecting an input at a location other than the location of the exposure slider 824.
[0278] As shown in Figure 8F, while the exposure slider 824 is displayed, the computer system 600 detects inputs 826 along the exposure slider 824 (e.g., drag and / or gesture inputs via the touch-sensitive surface of the display 608). In some embodiments, input 826 is a continuation of input 820 (e.g., a gesture detected after a finger-down event and before any finger-up event is detected). In some embodiments, input 826 is a separate input detected while the exposure slider 824 is still displayed (e.g., a gesture detected after a finger-up event of input 818 is detected). In some embodiments, depending on whether input 826 is detected as a drag to the left, the computer system 600 increases the maximum exposure time for the low-light capture setting, and depending on whether input 826 is detected as a drag to the right, the computer system 600 decreases the maximum exposure time for the low-light capture setting. In some embodiments, the computer system 600 determines an adjusted maximum exposure time based on the distance input 826 has moved (e.g., net and / or normalized distance). For example, input 826 is a leftward drag corresponding to the distance between the checkmark on exposure slider 824 representing a maximum exposure time of 1 second and the checkmark on exposure slider 824 representing a maximum exposure time of 2 seconds.
[0279] As shown in Figure 8F, upon detecting input 826, the computer system 600 changes the low-light capture setting to an ON state with a maximum exposure time of 2 seconds. Temporarily referring to the sidebar 822 shown in Figure 8E, the ON state with a maximum exposure time of 2 seconds is not included in a predetermined set of states that can be selected using the first type of input (e.g., cyclically between). Therefore, in response to input 820 (e.g., an input of the second type of input), the computer system 600 provides additional states for the low-light capture setting via the exposure slider 824. As shown in Figure 8G, after input 826 is released, the computer system 600 stops displaying the exposure slider 824 and displays a night mode affordance 816 with an activated appearance and text indication of the maximum exposure time (e.g., "2 seconds") (e.g., as described with respect to Figure 8E).
[0280] In Figure 8G, the computer system 600 detects an input 828 directed to the location of the night mode affordance 816. Input 828 is an input of a first input type (e.g., as described above with respect to input 818). In response to detecting input 828 (e.g., an input of the first type), in Figure 8H, the computer system 600 changes the low light capture setting to the off (e.g., disabled) state. Additionally, in response to input 828, the computer system 600 updates the appearance of the night mode affordance 816, e.g., the line passing through the night mode affordance 816, and / or visually highlights the night mode affordance 816 (e.g., reverting the appearance change described with respect to Figure 8E) to indicate that the low light capture mode is off.
[0281] In Figure 8H, the computer system 600 detects input 830 directed to the location of media format affordance 616. Input 830 is an input of a first input type (e.g., a “short” tap and / or click input via the touch-sensitive surface of display 608, as described with respect to input 818). In response to detecting input 830 (e.g., an input of the first type), in Figure 8I, the computer system 600 changes the media format setting from 12 megapixel HEIC (e.g., the initially selected default media format option) to 48 megapixel HEIC (e.g., another default media format option enabled in Figure 8C) and updates the appearance of media format affordance 616 to include the text “HEIC 48” indicating the updated media format setting. In Figure 8I, the computer system 600 detects input 832, which is another input of the first input type directed to the location of media format affordance 616. In response to detecting input 832, in Figure 8J, the computer system 600 changes the media format setting from 48-megapixel HEIC to 12-megapixel HEIC (for example, another default media format option enabled in Figure 8C) and updates the appearance of the media format affordance 616 to include the text "HEIC 12". Thus, in response to the first type of input, the computer system 600 cycles the media format setting between a predetermined set of states selected by the default setting user interface 810 with respect to the media format setting.
[0282] In Figure 8I, the computer system 600 detects an input 834 directed to the location of the media format affordance 616. Input 834 is an input of a second input type (e.g., a “long” press input via the touch-sensitive surface of the display 608, as described with respect to input 820). In response to detecting input 834 (e.g., a second type input), in Figure 8K, the computer system 600 displays the media format menu 836. In some embodiments, the computer system 600 displays the media format menu 836 extending from the night mode affordance 816 (e.g., by animating it). As shown in Figure 8F, while displaying the media format menu 836, the computer system 600 discontinues displaying other user interface elements within the media format menu 836 area, such as the flash affordance 614 and the night mode affordance 816. The media format menu 836 includes selectable options corresponding to 12-megapixel HEIC (e.g., "HEIC 12"), 48-megapixel HEIC (e.g., "HEIC 48"), 12-megapixel RAW coding (e.g., "RAW 12"), and 48-megapixel RAW coding (e.g., "RAW 48"). In some embodiments, as described with respect to the exposure slider 824, the computer system 600 stops displaying the media format menu 836 after a threshold period without detecting input on the media format menu 836 and / or after detecting input at a location other than the media format menu 836 location.
[0283] In Figure 8K, while displaying the media format menu 836, the computer system 600 detects input 838 on the media for...
Claims
1. It is a method, In a computer system communicating with a display generation component, one or more cameras, and one or more sensors, Through the display generation component, while displaying the camera preview, information about the physical environment corresponding to the field of view of the one or more cameras is acquired based on information from one or more sensors of the computer system, In response to obtaining the information about the physical environment corresponding to the field of view of one or more cameras, In accordance with the computer system's determination that the depth capture criteria are met, based on the information relating to the physical environment corresponding to the field of view of one or more cameras, the display generation component, when selected, displays a first selectable user interface object that initiates a process for performing a first depth-based media capture function. A method comprising: discontinuing the display of the first selectable user interface object in accordance with the failure to satisfy the depth capture criteria.
2. The method according to claim 1, wherein the first selectable user interface object indicates the state of capturing depth information relating to the physical environment corresponding to the field of view of one or more cameras.
3. The method according to claim 2, wherein the depth information is based on information from one or more depth sensors among the one or more sensors.
4. The method according to claim 2 or 3, wherein the depth information is based on a comparison of a first image data obtained from a first camera among the one or more cameras and a second image data obtained from a second camera among the one or more cameras.
5. To detect input for selecting the first selectable user interface object, In response to detecting the input for selecting the first selectable user interface object, the process for performing the first depth-based media capture function, the process for performing the first depth-based media capture function includes starting the process for performing the first depth-based media capture function, which includes switching a simulated depth-of-field capture mode between an enabled state and a disabled state. The method according to any one of claims 1 to 4, further comprising:
6. In response to detecting the input that selects the first selectable user interface object, In accordance with the determination that the simulated depth-of-field capture mode is in the enabled state, the camera preview is displayed with a simulated depth-of-field effect based on depth information relating to the physical environment corresponding to the field of view of one or more cameras. In accordance with the determination that the simulated depth-of-field capture mode is in the disabled state, the camera preview is displayed without the simulated depth-of-field effect. The method according to claim 5, further comprising:
7. Initiating the process for performing the first depth-based media capture function is: In accordance with the determination that the input for selecting the first selectable user interface object is an input of the first input type, the simulated depth-of-field capture mode is switched between the enabled state and the disabled state, The method according to claim 5 or 6, further comprising, upon determination that the input for selecting the first selectable user interface object is a second type of input different from the first type, displaying a second selectable user interface object via the display generation component, which, when selected, controls the settings of the simulated depth-of-field capture mode.
8. While the camera preview is being displayed, the display generation component will, when selected, display at least one selectable user interface object different from the first selectable user interface object, which will initiate a process for executing a media capture function different from the first depth-based media capture function. The method according to any one of claims 1 to 7, further comprising:
9. While the camera preview is being displayed, a third selectable user interface object, different from the first selectable user interface object, is displayed via the display generation component, which, when selected, initiates a process for capturing media. The method according to any one of claims 1 to 8, further comprising:
10. The first is to capture the media, After capturing the first media, the representation of the first media is displayed via the display generation component. The method according to any one of claims 1 to 9, further comprising:
11. Displaying the aforementioned representation of the first medium is, In accordance with the determination that the first selectable user interface object is displayed in a first state when the capture of the first media is started, the representation of the first media is displayed with a simulated depth-of-field effect based on depth information for the physical environment corresponding to the field of view of one or more cameras, The method according to claim 10, comprising displaying the representation of the first media without a simulated depth of field effect, based on the determination that the first selectable user interface object is not displayed in the first state when the capture of the first media is initiated.
12. While the representation of the first medium is being displayed, When selected, a fourth selectable user interface object is displayed that controls whether the representation of the first media is displayed with or without a simulated depth of field effect. The method according to claim 11, further comprising:
13. Upon determination that the first selectable user interface object is displayed when the capture of the first media is initiated, depth information relating to the physical environment corresponding to the field of view of one or more cameras is available for use in displaying the representation of the first media with a simulated depth of field effect. In accordance with the determination that the first selectable user interface object was not displayed when the capture of the first media was initiated, the depth information is not available for use in displaying the representation of the first media with the simulated depth of field effect. The method according to any one of claims 10 to 12.
14. To detect a first user input directed towards the first area of the camera preview, In response to detecting the first user input, In accordance with the determination that the first region of the camera preview includes representations of individual objects within the physical environment, depth information relating to the physical environment corresponding to the field of view of one or more cameras is captured. The method according to any one of claims 1 to 13, further comprising:
15. In accordance with the determination that portrait capture mode is enabled, capture depth information relating to the physical environment corresponding to the field of view of one or more cameras. The method according to any one of claims 1 to 14, further comprising:
16. While the camera preview includes representations of individual objects, In accordance with the determination that the portrait capture mode is enabled, the camera preview is displayed with a simulated depth-of-field effect based on depth information relating to the physical environment corresponding to the field of view of one or more cameras. In accordance with the determination that the portrait capture mode is not enabled and the first selectable user interface object is not in an enabled state, the camera preview is displayed without the simulated depth of field effect. The method according to claim 15, further comprising:
17. The method according to any one of claims 1 to 16, wherein the depth capture criterion includes a criterion that is satisfied when the zoom setting is set to at least a threshold magnification.
18. The aforementioned depth capture criteria are: A first criterion that is met when a representation of an individual object is detected within the camera preview, The method according to any one of claims 1 to 17, further comprising: a second criterion that is satisfied when the distance from one or more cameras to the individual objects in the physical environment is within a distance range.
19. While the first selectable user interface object is displayed, when selected, a zoom interface object that controls the zoom level of the camera preview is displayed. The method according to any one of claims 1 to 18, further comprising:
20. Detecting individual types of input directed to the first selectable user interface object, In response to detecting the individual type of input directed to the first selectable user interface object To stop displaying the aforementioned zoom interface object, Displaying a fifth selectable user interface object that controls the media capture settings associated with the first selectable user interface object, The method according to any one of claims 1 to 19, further comprising:
21. When the first selectable user interface object is displayed in the enabled state, it includes an indication of the current value of the depth-based media capture setting. The method according to any one of claims 1 to 20, further comprising updating the indication of the current value of the depth-based media capture setting in response to detection of a change in the current value of the depth-based media capture setting.
22. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, wherein the one or more programs include instructions for performing the method according to any one of claims 1 to 21.
23. A computer system configured to communicate with a display generation component, one or more cameras, and one or more sensors, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 1 to 21.
24. A computer system configured to communicate with a display generation component, one or more cameras, and one or more sensors, wherein the computer system is A computer system comprising means for performing the method described in any one of claims 1 to 21.
25. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, wherein the one or more programs include instructions to perform the method according to any one of claims 1 to 21.
26. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, wherein the one or more programs are While displaying the camera preview via the display generation component, information about the physical environment corresponding to the field of view of the one or more cameras is acquired based on information from one or more sensors of the computer system. In response to obtaining the information about the physical environment corresponding to the field of view of one or more cameras, In accordance with the computer system's determination that the depth capture criteria are met, based on the information relating to the physical environment corresponding to the field of view of one or more cameras, the display generation component, when selected, displays a first selectable user interface object that initiates a process for performing a first depth-based media capture function. A non-temporary computer-readable storage medium containing instructions for discontinuing the display of the first selectable user interface object in accordance with the failure to meet the aforementioned depth capture criteria.
27. A computer system configured to communicate with a display generation component, one or more cameras, and one or more sensors, wherein the computer system is One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While displaying the camera preview via the display generation component, information about the physical environment corresponding to the field of view of the one or more cameras is acquired based on information from one or more sensors of the computer system. In response to obtaining the information about the physical environment corresponding to the field of view of one or more cameras, In accordance with the computer system's determination that the depth capture criteria are met, based on the information relating to the physical environment corresponding to the field of view of one or more cameras, the display generation component, when selected, displays a first selectable user interface object that initiates a process for performing a first depth-based media capture function. A computer system including an instruction to stop displaying the first selectable user interface object if the depth capture criteria are not met.
28. A computer system configured to communicate with a display generation component, one or more cameras, and one or more sensors, wherein the computer system is Means for acquiring information about the physical environment corresponding to the field of view of one or more cameras, based on information from one or more sensors of the computer system, while displaying a camera preview via the display generation component, In response to obtaining the information about the physical environment corresponding to the field of view of one or more cameras, In accordance with the computer system's determination that the depth capture criteria are met, based on the information relating to the physical environment corresponding to the field of view of one or more cameras, the display generation component, when selected, displays a first selectable user interface object that initiates a process for performing a first depth-based media capture function. A computer system comprising means for discontinuing the display of the first selectable user interface object in accordance with the failure to satisfy the depth capture criteria.
29. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more sensors, wherein the one or more programs are While displaying the camera preview via the display generation component, information about the physical environment corresponding to the field of view of the one or more cameras is acquired based on information from one or more sensors of the computer system. In response to obtaining the information about the physical environment corresponding to the field of view of one or more cameras, In accordance with the computer system's determination that the depth capture criteria are met, based on the information relating to the physical environment corresponding to the field of view of one or more cameras, the display generation component, when selected, displays a first selectable user interface object that initiates a process for performing a first depth-based media capture function. A computer program product that includes instructions to stop displaying the first selectable user interface object if the depth capture criteria are not met.
30. It is a method, In a computer system that communicates with a display generation component and a camera, The camera user interface is displayed via the display generation component, wherein the camera user interface includes a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states, including the first state, are available for the first media capture setting. To detect a first user input corresponding to the selectable user interface object, In response to detecting the first user input, In accordance with the determination that the first user input is a first type of input, the first media capture setting is switched to a second state which is different from the first state among the multiple states. A method comprising: determining that the first user input is of a second type of input, a selectable user interface object corresponding to a third state among the plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object corresponding to the third state causes the first media capture setting to switch to the third state, the third state being different from the first state and different from the second state, and displaying a selectable user interface object.
31. The camera user interface includes a second selectable user interface object corresponding to the current state of a second media capture setting different from the first media capture setting, wherein the current state of the second media capture setting is the first state. To detect a second user input corresponding to the second selectable user interface object, In response to detecting the second user input, In accordance with the determination that the second user input is of the first type, the second media capture setting is switched to a second state different from the first state, The method according to claim 30, further comprising: displaying a selectable user interface object corresponding to a third state of the second media capture setting in accordance with the determination that the second user input is an input of the second type, wherein, when selected, the selectable user interface object corresponding to the third state causes the second media capture setting to switch to the third state, the third state being different from the first state and different from the second state, and displaying a selectable user interface object.
32. The method according to claim 30 or 31, wherein switching the first media capture settings to individual states is performed while the camera user interface is displayed.
33. The method according to claim 32, wherein the camera user interface includes a camera preview that includes a representation of the camera's field of view.
34. The method according to claim 32 or 33, wherein the camera user interface includes at least one selectable user interface object that, when selected, starts capturing media.
35. The method according to any one of claims 30 to 34, wherein the first type of input includes a selection input, the start and end of the selection input occur within a first threshold period.
36. The method according to any one of claims 30 to 35, wherein the second type of input includes a press input, and the initial touch of the press input is maintained for at least a second threshold period.
37. The first media capture setting described above is a simulated depth-of-field capture setting, The multiple states of the first media capture setting are, Inactive state, A first enabled state in which the simulated aperture size of the simulated depth-of-field capture setting is set to a first value in the first enabled state, A second enabled state, wherein the simulated aperture size of the simulated depth-of-field capture setting is set to a second value different from the first value in the second enabled state, The method according to any one of claims 30 to 36, including the method described in any one of claims 30 to 36.
38. The first media capture setting described above is a flash setting, The multiple states of the first media capture setting are, Inactive state, The first enabled state is, and while the first media capture setting is in the first enabled state, initiating an individual media capture operation triggers a camera flash, the first enabled state and A second enabled state, in which the first media capture setting is in the second enabled state, starts the individual media capture operation, triggering the camera flash based on the acquired luminance data, according to the determination to enable the camera flash, and The method according to any one of claims 30 to 37, including the method described in any one of claims 30 to 37.
39. The first media capture setting is a low-light capture setting. The multiple states of the first media capture setting are, In the disabled state, the exposure duration for media capture is set to a first duration value in the disabled state, A first active state in which the exposure duration value for media capture that does not exceed a first maximum exposure duration is determined based on acquired luminance data, A second active state, in which the exposure duration value for media capture is determined based on the acquired luminance data, wherein the exposure duration value for media capture does not exceed a second maximum exposure duration different from the first maximum exposure duration. The method according to any one of claims 30 to 38, including the method described in any one of claims 30 to 38.
40. The first media capture setting described above is the media size setting. The plurality of states of the first media capture setting include a state for capturing media of a first media capture size, a state for capturing media of a second media capture size, and a state for capturing media of a third media capture size, wherein the first media capture size, the second media capture size, and the third media capture size are all different. The method according to any one of claims 30 to 39.
41. The first media capture setting described above is a media format setting. The plurality of states of the first media capture setting described above include a state for capturing media using a first media capture format, a state for capturing media using a second media capture format, and a state for capturing media using a third media capture format, wherein the first media capture format, the second media capture format, and the third media capture format are all different. The method according to any one of claims 30 to 40.
42. The method according to any one of claims 30 to 41, wherein at least one of the first state of the first media capture setting and the second state of the first media capture is a state selected by the user of the computer system.
43. The method according to any one of claims 30 to 42, wherein switching the first media capture setting between a first state and a second state includes switching the first media capture setting between an enabled state and a disabled state.
44. The method according to claim 43, wherein switching the first media capture setting to the enabled state includes setting the first media capture setting to a first value, the first value being a previously applied value.
45. Switching the first media capture setting between the first state and the second state includes switching the first media capture setting between a first enabled state and a second enabled state that is different from the first enabled state. While in the first enabled state, the first media capture setting is set to the first value. The method according to any one of claims 30 to 44, wherein while in the second enabled state, the first media capture setting is set to a second value different from the first value.
46. The method according to any one of claims 30 to 45, wherein the third state of the first media capture setting is not selected in response to the detection of individual user input of the first type corresponding to the selectable user interface object.
47. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs include instructions for performing the method according to any one of claims 30 to 46.
48. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 30 to 46.
49. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is A computer system comprising means for performing the method described in any one of claims 30 to 46.
50. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs include instructions to perform the method according to any one of claims 30 to 46.
51. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs are The camera user interface is displayed via the display generation component, wherein the camera user interface includes a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states, including the first state, are available for the first media capture setting. The system detects a first user input corresponding to the selectable user interface object, In response to detecting the first user input, In accordance with the determination that the first user input is a first type of input, the first media capture setting is switched to a second state which is different from the first state among the multiple states. A non-temporary computer-readable storage medium including a command that, in accordance with the determination that the first user input is of a second type of input, a selectable user interface object corresponding to a third state among the plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object corresponding to the third state causes the first media capture setting to switch to the third state, the third state being different from the first state and different from the second state, and displays a selectable user interface object.
52. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are The camera user interface is displayed via the display generation component, wherein the camera user interface includes a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states, including the first state, are available for the first media capture setting. The system detects a first user input corresponding to the selectable user interface object, In response to detecting the first user input, In accordance with the determination that the first user input is a first type of input, the first media capture setting is switched to a second state which is different from the first state among the multiple states. A computer system including a command that, upon determination that the first user input is of a second type, selectable user interface object corresponding to a third state among the plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object corresponding to the third state causes the first media capture setting to switch to the third state, and displays a selectable user interface object in which the third state is different from the first state and different from the second state.
53. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is Means for displaying a camera user interface via the display generation component, wherein the camera user interface includes selectable user interface objects corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states including the first state are available for the first media capture setting. Means for detecting a first user input corresponding to the selectable user interface object, In response to detecting the first user input, In accordance with the determination that the first user input is a first type of input, the first media capture setting is switched to a second state which is different from the first state among the multiple states. A computer system comprising: a selectable user interface object corresponding to a third state among the plurality of states of the first media capture setting, which, when selected, causes the first media capture setting to switch to the third state, and a means for displaying a selectable user interface object, in accordance with the determination that the first user input is of a second type of input; and the selectable user interface object corresponding to the third state, which, when selected, causes the first media capture setting to switch to the third state, wherein the third state is different from the first state and different from the second state.
54. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs are The camera user interface is displayed via the display generation component, wherein the camera user interface includes a selectable user interface object corresponding to the current state of a first media capture setting, the current state of the first media capture setting is a first state, and a plurality of states, including the first state, are available for the first media capture setting. The system detects a first user input corresponding to the selectable user interface object, In response to detecting the first user input, In accordance with the determination that the first user input is a first type of input, the first media capture setting is switched to a second state which is different from the first state among the multiple states. A computer program product comprising instructions that, in accordance with the determination that the first user input is of a second type of input, a selectable user interface object corresponding to a third state among the plurality of states of the first media capture setting, wherein, when selected, the selectable user interface object corresponding to the third state causes the first media capture setting to switch to the third state, and displays a selectable user interface object in which the third state is different from the first state and different from the second state.
55. It is a method, In a computer system that communicates with a display generation component and one or more cameras, While a camera preview including a first representation of the field of view of one or more cameras, including a first portion of the environment, is displayed at a first zoom level via the display generation component, a first input corresponding to a request to zoom the camera preview is detected. In response to detecting the first input, According to the determination that the first input corresponds to a request to zoom to a second zoom level higher than the individual zoom threshold, The camera preview at the second zoom level, Displaying a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level, A method comprising: determining that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, displaying the camera preview at the third zoom level, wherein the camera preview at the third zoom level includes a second representation of the field of view of the one or more cameras, including a second portion of the environment, without displaying the secondary representation of the field of view of the one or more cameras.
56. The method according to claim 55, wherein the secondary representation of the field of view of one or more cameras is displayed as an overlay on at least a first area of the camera preview.
57. The method according to claim 55 or 56, wherein the camera preview is displayed occupying a first display area, and the secondary representation of the field of view of one or more cameras is displayed occupying a second display area smaller than the first display area.
58. The method according to any one of claims 55 to 57, wherein the larger portion of the environment is centered on the portion of the environment included in the camera preview at the second zoom level.
59. The method according to any one of claims 55 to 58, wherein displaying the secondary representation of the field of view of one or more cameras includes displaying a visual indication, the visual indication framing a region of the secondary representation of the field of view of one or more cameras, and the region of the secondary representation of the field of view of one or more cameras includes a representation of a portion of the environment included in the camera preview at a second zoom level.
60. While the camera preview at the second zoom level is displayed, the visual indication is displayed at the first dimension, To detect a second input corresponding to a request to zoom in on the camera preview, In response to detecting the second input, In accordance with the determination that the second input corresponds to a request to zoom to a fourth zoom level higher than the individual zoom threshold and the second zoom level, the display of the visual indication having the first dimensions is maintained. The method according to claim 59, further comprising:
61. Displaying the camera preview at individual zoom levels, where the individual zoom levels are higher than the individual zoom threshold, and displaying the visual indication having the respective dimensions, where the respective dimensions are within the size range. The method according to claim 59 or 60, further comprising:
62. While the camera preview is displayed at the respective individual zoom thresholds, the visual indication is displayed at each of the first dimensions. A second individual zoom threshold, wherein the second individual zoom threshold displays the visual indication with each of the second dimensions smaller than each of the first dimensions while the camera preview is displayed at a zoom level greater than the second individual zoom threshold. The method according to claim 61, further comprising:
63. To detect a third input corresponding to a request to zoom in on the camera preview, In response to detecting the third input, In accordance with the determination that the third input corresponds to a request to zoom to a fifth zoom level higher than the individual zoom threshold, Displaying the camera preview at the fifth zoom level, The further includes displaying the secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the fifth zoom level, In accordance with the determination that the fifth zoom level is higher than the second zoom level, the representation of the larger portion of the environment included in the camera preview at the fifth zoom level is smaller than the representation of the larger portion of the environment included in the camera preview at the second zoom level. In accordance with the determination that the fifth zoom level is higher than the second zoom level, the representation of the larger portion of the environment included in the camera preview at the fifth zoom level is larger than the representation of the larger portion of the environment included in the camera preview at the second zoom level. The method according to any one of claims 55 to 62.
64. While the camera preview and the secondary representation of the field of view of one or more cameras are displayed, To detect changes in the field of view of one or more cameras, In response to detecting the change in the field of view of one or more cameras, To change the individual appearance of the aforementioned camera preview, To change the individual appearance of the secondary representation of the field of view of one or more cameras, The method according to any one of claims 55 to 63, further comprising:
65. While displaying the secondary representation of the field of view of one or more cameras, To detect a fourth input corresponding to a request to zoom in on the camera preview, In response to the detection of the fourth input, In accordance with the determination that the fourth input corresponds to a request to zoom to a sixth zoom level lower than a second individual zoom threshold, the display of the secondary representation of the field of view of one or more cameras is discontinued. The method according to any one of claims 55 to 64, further comprising:
66. To detect a fifth input corresponding to a request to zoom in on the camera preview, In response to the detection of the fifth input, In accordance with the determination that the fifth input corresponds to a request to zoom to the individual zoom threshold, The camera preview at the individual zoom thresholds, A secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the individual zoom thresholds, wherein displaying the secondary representation includes displaying a visual indication bordering a first region of the secondary representation of the field of view of one or more cameras; To detect a sixth input corresponding to a request to zoom in on the camera preview, In response to the detection of the sixth input, In accordance with the determination that the sixth input corresponds to a request to zoom to a seventh zoom level higher than the individual zoom threshold, the system displays the visual indication framing the second region of the secondary representation of the field of view of one or more cameras, wherein the second region is smaller than the first region. The method according to any one of claims 55 to 65, further comprising:
67. In response to the detection of the sixth input, In accordance with the determination that the sixth input corresponds to a request to zoom to a seventh zoom level higher than the individual zoom threshold, the system further includes displaying a secondary representation of the field of view of one or more cameras that is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the seventh zoom level, wherein the representation of the larger portion of the environment included in the camera preview at the seventh zoom level and the representation of the larger portion of the environment included in the camera preview at the individual zoom threshold are displayed at the same magnification. The method according to claim 66.
68. To detect a seventh input corresponding to a request to zoom in on the camera preview, In response to detecting the seventh input, The seventh input further includes displaying the secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the eighth zoom level, in accordance with the determination that the seventh input is higher than the individual zoom threshold and is an additional zoom threshold, the additional zoom threshold corresponds to a request to zoom to an eighth zoom level higher than the additional zoom threshold, which is higher than the individual zoom threshold, wherein the representation of the larger portion of the environment included in the camera preview at the eighth zoom level is displayed at a higher magnification than the representation of the larger portion of the environment included in the camera preview at the individual zoom threshold. The method according to claim 66 or 67.
69. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs include instructions to perform the method according to any one of claims 55 to 68.
70. A computer system configured to communicate with a display generation component and one or more cameras, One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 55 to 68.
71. A computer system configured to communicate with a display generation component and one or more cameras, A computer system comprising means for performing the method described in any one of claims 55 to 68.
72. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs include instructions to perform the method according to any one of claims 55 to 68.
73. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs are While a camera preview including a first representation of the field of view of one or more cameras, including a first portion of the environment, is displayed at a first zoom level via the display generation component, a first input corresponding to a request to zoom the camera preview is detected. In response to detecting the first input, According to the determination that the first input corresponds to a request to zoom to a second zoom level higher than the individual zoom threshold, The camera preview at the second zoom level, Display a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level. A non-temporary computer-readable storage medium includes an instruction to display the camera preview at the third zoom level, which, in accordance with the determination that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras, including a second portion of the environment, without displaying the secondary representation of the field of view of one or more cameras.
74. A computer system configured to communicate with a display generation component and one or more cameras, One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While a camera preview including a first representation of the field of view of one or more cameras, including a first portion of the environment, is displayed at a first zoom level via the display generation component, a first input corresponding to a request to zoom the camera preview is detected. In response to detecting the first input, According to the determination that the first input corresponds to a request to zoom to a second zoom level higher than the individual zoom threshold, The camera preview at the second zoom level, Display a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level. A computer system including a command to display the camera preview at the third zoom level, which, in accordance with the determination that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, the camera preview at the third zoom level includes a second representation of the field of view of the one or more cameras, including a second portion of the environment, without displaying the secondary representation of the field of view of the one or more cameras.
75. A computer system configured to communicate with a display generation component and one or more cameras, Means for detecting a first input corresponding to a request to zoom the camera preview while a camera preview including a first representation of the field of view of one or more cameras including a first portion of the environment is displayed at a first zoom level via the display generation component, In response to detecting the first input, According to the determination that the first input corresponds to a request to zoom to a second zoom level higher than the individual zoom threshold, The camera preview at the second zoom level, Display a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level. A computer system comprising: means for displaying the camera preview at the third zoom level, wherein, in accordance with the determination that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, the camera preview at the third zoom level includes a second representation of the field of view of one or more cameras, including a second portion of the environment, without displaying the secondary representation of the field of view of one or more cameras.
76. A computer program product comprising a display generation component and one or more programs configured to be executed by one or more processors of a computer system communicating with one or more cameras, wherein the one or more programs are While a camera preview including a first representation of the field of view of one or more cameras, including a first portion of the environment, is displayed at a first zoom level via the display generation component, a first input corresponding to a request to zoom the camera preview is detected. In response to detecting the first input, According to the determination that the first input corresponds to a request to zoom to a second zoom level higher than the individual zoom threshold, The camera preview at the second zoom level, Display a secondary representation of the field of view of one or more cameras, which is smaller than the camera preview and includes a representation of a larger portion of the environment included in the camera preview at the second zoom level. A computer program product comprising an instruction to display the camera preview at the third zoom level, which, in accordance with the determination that the first input corresponds to a request to zoom to a third zoom level lower than the individual zoom threshold, the camera preview at the third zoom level includes a second representation of the field of view of the one or more cameras, including a second portion of the environment, without displaying the secondary representation of the field of view of the one or more cameras.
77. It is a method, In a computer system that communicates with a display generation component and a camera, The display generation component detects a request to view recently captured media while the camera user interface is being displayed, In response to detecting the request to view the recently captured media, In accordance with the determination that one or more sets of external storage criteria are met, a representation of a first set of one or more captured media items is displayed, wherein the first set of one or more captured media items is stored on an external storage device that communicates with the computer system and is not added to a media library associated with the computer system. A method comprising, in accordance with the determination that the set of one or more external storage criteria is not met, displaying a representation of the second set of one or more captured media items, which is different from the first set of one or more captured media items, and which is included in the media library associated with the computer system.
78. It is a method, The storage of at least a portion of the content in the media library associated with the computer system is synchronized with the storage of at least a portion of the content in the online media library. The storage of the contents of the external storage device is not synchronized with the storage in the online media library. The method according to claim 77.
79. The method according to claim 77 or 78, wherein the camera user interface includes a first selectable user interface object, and detecting the request to view the recently captured media includes detecting an input directed to the first selectable user interface object.
80. The method according to any one of claims 77 to 79, wherein the camera user interface includes a second selectable user interface object that, when selected, starts capturing media.
81. While the camera user interface is displayed, input directed to the second selectable user interface object is detected, In response to detecting the input directed to the second selectable user interface object, To begin capturing the first media, The first medium is stored on the external storage device in accordance with the determination that one or more of the set of external storage criteria are satisfied. In accordance with the determination that one or more of the set of external storage criteria are not met, the first media is stored in the media library associated with the computer system, The method according to claim 80, further comprising:
82. The method according to any one of claims 77 to 81, wherein the set of one or more external storage criteria includes criteria that are satisfied when the external storage device is communicating with the computer system.
83. The method according to any one of claims 77 to 82, wherein the set of one or more external storage criteria includes criteria that are satisfied when individual media capture settings are enabled for the camera user interface.
84. The method according to any one of claims 77 to 83, wherein displaying the first set of one or more captured media items includes selecting the first set of one or more captured media items from a plurality of captured media items stored on the external storage device, the first set of one or more captured media items includes at least a first media item from the plurality of captured media items stored on the external storage device, and does not include at least a second media item from the plurality of captured media items stored on the external storage device.
85. The method according to claim 84, wherein the selection of the first set of one or more captured media items is based on a determination of whether the individual captured media items were captured during the individual capture session, the first media items were captured during the individual capture session, and the second media items were not captured during the individual capture session.
86. Detecting a request to view additional media while displaying the first set of one or more captured media items, In response to detecting the request to view additional media, the system displays a file storage user interface that includes a representation of at least the second media item among the plurality of captured media items, The method according to claim 85, further comprising:
87. The method according to claim 85 or 86, wherein the first set of one or more captured media items includes at least a third media item from the plurality of captured media items, the third media item was not captured during the individual capture session.
88. While displaying the first set of one or more captured media items, a third selectable user interface object is displayed, which, when selected, initiates a process for importing one or more captured media items stored on the external storage device into the media library associated with the computer system. The method according to any one of claims 77 to 87, further comprising:
89. While displaying the camera user interface, further includes displaying a representation of recently captured media, wherein displaying a representation of recently captured media includes displaying a representation of at least one media item stored on the external storage device, in accordance with the determination that the set of one or more external storage criteria is met. The method according to any one of claims 77 to 88.
90. Displaying a representation of recently captured media includes, in accordance with the determination that one or more external storage criteria set are not met, displaying a representation of at least one media item contained in the media library associated with the computer system. The method according to claim 89.
91. Detecting a disconnection of the external storage device while displaying the representation of recently captured media, which includes the representation of the at least one media item stored in the external storage device, In response to detecting the disconnection of the external storage device, To stop displaying the representation of the at least one media item stored in the external storage device, Displaying a representation of recently captured media, including the representation of at least one media item included in the media library associated with the computer system, The method according to claim 89 or 90, further comprising:
92. Detecting a change in the state of the computer system while one or more external storage criteria are not met, In response to detecting the change in the state of the computer system, In accordance with the determination that one or more external storage criteria in the set are met, the appearance of the recently captured media representation is changed. The method according to any one of claims 89 to 91, further comprising:
93. In accordance with the determination that one or more of the aforementioned sets of external storage criteria are met, an indication of the available storage capacity on the external storage device is displayed. The method according to any one of claims 77 to 92, further comprising:
94. The external storage device is connected to the computer system via a cable port located near a separate area of content displayed by the display generation component. The indication of available storage capacity is displayed in the individual area. The method according to claim 93.
95. The method according to claim 93 or 94, wherein the indication of the available storage capacity includes a fraction corresponding to the available storage capacity.
96. While the aforementioned camera user interface is displayed, In accordance with the determination that one or more of the aforementioned sets of external storage criteria are not met, selectable user interface objects corresponding to individual capture modes are displayed, In accordance with the determination that one or more of the set of external storage criteria are satisfied, the display of the selectable user interface object corresponding to the individual capture mode is discontinued. The method according to any one of claims 77 to 95, further comprising:
97. After determining that one or more of the aforementioned sets of external storage criteria are met, the disconnection of the external storage device is detected. In response to detecting the disconnection of the external storage device, the user interface is updated to indicate that one or more of the external storage criteria in the set are not met, The method according to any one of claims 77 to 96, further comprising:
98. While the aforementioned camera user interface is displayed, Displaying selectable user interface objects corresponding to individual capture modes, To detect the selection of the selectable user interface object corresponding to the individual capture mode, In response to detecting the selection of the selectable user interface object corresponding to the individual capture mode, the user interface is updated to indicate that the set of one or more external storage criteria is not met. The method according to any one of claims 77 to 97, further comprising:
99. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs include instructions for performing the method according to any one of claims 77 to 98.
100. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 77 to 98.
101. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is A computer system comprising means for performing the method described in any one of claims 77 to 98.
102. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs include instructions to perform the method according to any one of claims 77 to 98.
103. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs are While the camera user interface is being displayed via the aforementioned display generation component, a request to view recently captured media is detected. In response to detecting the request to view the recently captured media, In accordance with the determination that one or more sets of external storage criteria are met, a representation of a first set of one or more captured media items is displayed, wherein the first set of one or more captured media items is stored on an external storage device that communicates with the computer system and is not added to a media library associated with the computer system. In accordance with the determination that the set of one or more external storage criteria is not met, a non-temporary computer-readable storage medium comprising a second set of one or more captured media items, different from the first set of one or more captured media items, wherein the second set of one or more captured media items includes instructions for displaying a representation of the second set, which is contained in the media library associated with the computer system.
104. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While the camera user interface is being displayed via the aforementioned display generation component, a request to view recently captured media is detected. In response to detecting the request to view the recently captured media, In accordance with the determination that one or more sets of external storage criteria are met, a representation of a first set of one or more captured media items is displayed, wherein the first set of one or more captured media items is stored on an external storage device that communicates with the computer system and is not added to a media library associated with the computer system. A computer system comprising instructions to display a representation of the second set of one or more captured media items, which is different from the first set of one or more captured media items, in accordance with the determination that the set of one or more external storage criteria is not met.
105. A computer system configured to communicate with a display generation component and a camera, wherein the computer system is The means for detecting a request to view recently captured media while the camera user interface is being displayed via the aforementioned display generation component, In response to detecting the request to view the recently captured media, In accordance with the determination that one or more sets of external storage criteria are met, a representation of a first set of one or more captured media items is displayed, wherein the first set of one or more captured media items is stored on an external storage device that communicates with the computer system and is not added to a media library associated with the computer system. A computer system comprising means for displaying a representation of the second set of one or more captured media items, which is different from the first set of one or more captured media items, in accordance with the determination that the set of one or more external storage criteria is not met, wherein the second set of one or more captured media items is included in the media library associated with the computer system.
106. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and a camera, wherein the one or more programs are While the camera user interface is being displayed via the aforementioned display generation component, a request to view recently captured media is detected. In response to detecting the request to view the recently captured media, In accordance with the determination that one or more sets of external storage criteria are met, a representation of a first set of one or more captured media items is displayed, wherein the first set of one or more captured media items is stored on an external storage device that communicates with the computer system and is not added to a media library associated with the computer system. A computer program product comprising instructions that, in accordance with the determination that one or more sets of external storage criteria are not met, a second set of one or more captured media items different from the first set of one or more captured media items, wherein the second set of one or more captured media items is included in the media library associated with the computer system, and the second set of captured media items is included in the computer program product comprising instructions that display a representation of the second set.
107. It is a method, In a computer system that communicates with a display generation component and one or more cameras, While displaying a camera user interface that includes a representation of a portion of the field of view of one or more cameras via the display generation component, The display generation component displays the representation of the portion of the field of view of the one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of the one or more cameras for individual orientations, in accordance with a determination that the set of content criteria satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of the one or more cameras. A method comprising displaying the representation of the portion of the field of view of one or more cameras without displaying the level indicator, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
108. The method according to claim 107, wherein the first type of content includes a face occupying at least an area of the representation of the portion of the field of view of one or more cameras of individual sizes.
109. The method according to claim 107 or 108, wherein the set of content criteria includes a second criterion based on the difference between the orientation of the field of view of one or more cameras and the direction of gravity.
110. The method according to claim 109, wherein the second criterion is satisfied when the difference between the orientation of the field of view of one or more cameras and the direction of gravity is within a threshold range, and the maximum difference within the threshold range is the first threshold amount.
111. The method according to claim 110, wherein the minimum difference in the threshold range is a second threshold amount that is lower than the first threshold amount.
112. The method according to any one of claims 107 to 111, wherein the set of content criteria includes a third criterion that is satisfied when a first type of user input is detected.
113. The method according to claim 112, wherein the first type of user input includes an input that enables a level indicator setting.
114. The method according to claim 112 or 113, wherein the first type of user input includes activating a hardware button that communicates with the computer system.
115. While the level indicator setting is enabled, the third criterion is met. While the level indicator setting is not enabled, the third criterion is met while the activation of a hardware button communicating with the computer system is detected, and the activation of the hardware button applies pressure below a threshold to the hardware button. The method according to any one of claims 112 to 114.
116. The method according to any one of claims 107 to 115, wherein displaying the camera user interface includes displaying the camera user interface in a vertical or horizontal orientation.
117. While the representation of a portion of the field of view of one or more cameras is displayed simultaneously with the level indicator, a change in the orientation of the field of view of one or more cameras is detected. In response to detecting the change in the orientation of the field of view of one or more cameras, Displaying the representation of the portion of the field of view of the one or more cameras without the level indicator, according to the determination that the orientation of the field of view of the one or more cameras satisfies a set of alignment criteria, the set of alignment criteria includes a criterion that is satisfied when the difference between the orientation of the field of view of the one or more cameras and a predetermined orientation is within a threshold range, The method according to any one of claims 107 to 116, further comprising:
118. While the aforementioned camera user interface is displayed, Detecting media capture user input and In response to detecting the media capture user input, media capture is started using one or more cameras, regardless of whether the level indicator is displayed or not. The method according to any one of claims 107 to 117, further comprising:
119. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs include instructions for performing the method according to any one of claims 107 to 118.
120. A computer system configured to communicate with a display generation component and one or more cameras, One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 107 to 118.
121. A computer system configured to communicate with a display generation component and one or more cameras, A computer system comprising means for performing the method described in any one of claims 107 to 118.
122. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs include instructions to perform the method according to any one of claims 107 to 118.
123. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more cameras, wherein the one or more programs are While displaying a camera user interface that includes a representation of a portion of the field of view of one or more cameras via the display generation component, The display generation component displays the representation of the portion of the field of view of the one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of the one or more cameras for individual orientations, in accordance with a determination that the set of content criteria satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of the one or more cameras. A non-temporary computer-readable storage medium including instructions for displaying the representation of the portion of the field of view of one or more cameras without displaying the level indicator, in accordance with the determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
124. A computer system configured to communicate with a display generation component and one or more cameras, wherein the computer system is One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While displaying a camera user interface that includes a representation of a portion of the field of view of one or more cameras via the display generation component, The display generation component displays the representation of the portion of the field of view of the one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of the one or more cameras for individual orientations, in accordance with a determination that the set of content criteria satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of the one or more cameras. A computer system including instructions to display the representation of the portion of the field of view of one or more cameras without displaying the level indicator, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
125. A computer system configured to communicate with a display generation component and one or more cameras, wherein the computer system is While displaying a camera user interface that includes a representation of a portion of the field of view of one or more cameras via the display generation component, The display generation component displays the representation of the portion of the field of view of the one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of the one or more cameras for individual orientations, in accordance with a determination that the set of content criteria satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of the one or more cameras. A computer system comprising means for displaying the representation of the portion of the field of view of one or more cameras without displaying the level indicator, in accordance with a determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
126. A computer program product comprising a display generation component and one or more programs configured to be executed by one or more processors of a computer system communicating with one or more cameras, wherein the one or more programs are While displaying a camera user interface that includes a representation of a portion of the field of view of one or more cameras via the display generation component, The display generation component displays the representation of the portion of the field of view of the one or more cameras, simultaneously with level indicators indicating the orientation of the field of view of the one or more cameras for individual orientations, in accordance with a determination that the set of content criteria satisfies a set of content criteria, the set of content criteria includes a first criterion based on whether a first type of content is detected within the portion of the field of view of the one or more cameras. A computer program product including instructions to display the representation of the portion of the field of view of one or more cameras without displaying the level indicator, in accordance with the determination that the portion of the field of view of one or more cameras does not satisfy the set of content criteria.
127. It is a method, In a computer system that communicates with a display generation component and one or more input devices, While simultaneously displaying the representation of a media item and control elements for adjusting the simulated depth-of-field effect of the media item via the aforementioned display generation component, The input is detected via one or more input devices. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a particular portion of the representation of the media item, the particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. A method comprising adjusting the control element and changing the magnitude of the simulated depth of field effect on the media item, in accordance with the determination that the input includes the selection of the control element.
128. Before detecting the input, the previously selected location of the representation of the media item is selected as the focus location for the simulated depth of field effect on the representation of the media item, and the previously selected location of the representation of the media item is different from the individual locations of the media item. Selecting the individual locations of the media item corresponding to the individual portions of the representation of the media item selected by the input as the focus locations for the simulated depth-of-field effect for the representation of the media item includes modifying the appearance of the representation of the media item such that the individual locations of the representation of the media item are more in focus than before the input was detected, and the previously selected locations of the representation of the media item are less in focus than before the input was detected. The method according to claim 127.
129. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a first portion of the representation of the media item, the first location of the representation of the media item corresponding to the first portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. The method further includes, in accordance with the determination that the input includes the selection of a second portion of the representation of the media item, selecting a second location of the representation of the media item corresponding to the second portion of the representation of the media item selected by the input as the focus location for the simulated depth of field effect on the representation of the media item, Unlike the second part, the first part described above is The first location is different from the second location. The method according to claim 127 or 128.
130. Changing the magnitude of the simulated depth of field effect is, In accordance with the determination that the input has the first characteristic, the magnitude of the simulated depth of field effect is changed by the magnitude of the first change, The method according to any one of claims 127 to 129, comprising: determining that the input has a second characteristic different from the first characteristic, changing the magnitude of the simulated depth of field effect by a second magnitude different from the magnitude of the first change.
131. Changing the magnitude of the simulated depth of field effect is, In accordance with the determination that the input has a third characteristic, the magnitude of the simulated depth of field effect is increased, The method according to any one of claims 127 to 130, comprising: reducing the magnitude of the simulated depth of field effect according to a determination that the input has a fourth characteristic different from the third characteristic.
132. The method according to any one of claims 127 to 131, wherein the selection of the control element includes moving the input.
133. The method according to any one of claims 127 to 132, wherein changing the magnitude of the simulated depth of field effect includes changing the magnitude of the simulated depth of field effect based on the magnitude of the input.
134. The method according to any one of claims 127 to 133, wherein changing the magnitude of the simulated depth of field effect includes changing the magnitude of the simulated depth of field effect based on the direction of the input.
135. The selection of the control element includes adjusting the control element to the limits of the control element, Changing the magnitude of the simulated depth of field effect includes removing the simulated depth of field effect. The method according to any one of claims 127 to 134.
136. The process further includes, before detecting the input, displaying the representation of the media item without the simulated depth-of-field effect via the display generation component, Changing the magnitude of the simulated depth of field effect includes displaying the representation of the media item with the simulated depth of field effect. The method according to any one of claims 127 to 135.
137. While the control element is being displayed, the display generation component is used to display an indication of the simulated depth of field effect state. The method according to any one of claims 127 to 136, further comprising:
138. While displaying the representation of the media item, display the indication of the focus location for the simulated depth of field effect via the display generation component. The method according to any one of claims 127 to 137, further comprising:
139. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of the individual parts of the representation of the media item, To discontinue the display of the indication of the focus location in the previous location of the representation of the media item, which is different from the individual location, To display the indication of the focus location at the individual locations of the representation of the media item via the display generation component, The method according to any one of claims 127 to 137, further comprising:
140. The representation of the media item includes a first element corresponding to a first depth and a second element corresponding to a second depth different from the first depth, Displaying the aforementioned representation of the media item means Displaying the first element with a first blur amount, This includes displaying the second element with a second blur amount different from the first blur amount, The method according to any one of claims 127 to 139.
141. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 127 to 140.
142. A computer system configured to communicate with a display generation component and one or more input devices, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 127 to 140.
143. A computer system configured to communicate with a display generation component and one or more input devices, A computer system comprising means for performing the method described in any one of claims 127 to 140.
144. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 127 to 140.
145. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are While simultaneously displaying the representation of a media item and control elements for adjusting the simulated depth-of-field effect of the media item via the aforementioned display generation component, The input is detected via one or more input devices. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a particular portion of the representation of the media item, the particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. A non-temporary computer-readable storage medium including instructions for adjusting the control element and changing the magnitude of the simulated depth-of-field effect on the media item, in accordance with the determination that the input includes the selection of the control element.
146. A computer system configured to communicate with a display generation component and one or more input devices, One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While simultaneously displaying the representation of a media item and control elements for adjusting the simulated depth-of-field effect of the media item via the aforementioned display generation component, The input is detected via one or more input devices. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a particular portion of the representation of the media item, the particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. A computer system including instructions for adjusting the control element and changing the magnitude of the simulated depth of field effect on the media item, in accordance with the determination that the input includes the selection of the control element.
147. A computer system configured to communicate with a display generation component and one or more input devices, While simultaneously displaying the representation of a media item and control elements for adjusting the simulated depth-of-field effect of the media item via the aforementioned display generation component, The input is detected via one or more input devices. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a particular portion of the representation of the media item, the particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. A computer system comprising means for adjusting the control element and changing the magnitude of the simulated depth of field effect on the media item, in accordance with a determination that the input includes the selection of the control element.
148. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are While simultaneously displaying the representation of a media item and control elements for adjusting the simulated depth-of-field effect of the media item via the aforementioned display generation component, The input is detected via one or more input devices. In response to detecting the aforementioned input, In accordance with the determination that the input includes the selection of a particular portion of the representation of the media item, the particular location of the representation of the media item corresponding to the particular portion of the representation of the media item selected by the input is selected as the focus location for the simulated depth of field effect on the representation of the media item. A computer program product including instructions for adjusting the control element and changing the magnitude of the simulated depth of field effect on the media item, in accordance with the determination that the input includes the selection of the control element.
149. It is a method, In a computer system that communicates with a display generation component and one or more input devices, The process involves detecting a request to display controls for editing the representation of a media item via one or more input devices, Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, A first control element for editing the features of one or more sets of images available for display within a sequence of images when the representation of the media item is displayed via the display generation component, A method comprising simultaneously displaying a second control element for editing a simulated depth-of-field effect for the representation of the media item.
150. While the first control element and the second control element are displayed simultaneously, a first input is detected via one or more input devices. In response to detecting the first input, In accordance with the determination that the first input includes the selection of the first control element, when the representation of the media item is displayed via the display generation component, the characteristics of the set of one or more images available for display in a sequence of images are edited. Edit the simulated depth of field effect on the representation of the media item in accordance with the determination that the first input includes the selection of the second control element, The method according to claim 149, further comprising:
151. While the first control element and the second control element are displayed simultaneously, a second input is detected via one or more input devices. In response to detecting the second input, In accordance with the determination that the second input includes the selection of the first control element, the display generation component displays a first set of one or more control elements for editing the features of the one or more sets of images available for display in a sequence of images when the representation of the media item is displayed through the display generation component, In accordance with the determination that the second input includes the selection of the second control element, the display generation component displays a second set of one or more control elements for editing the simulated depth of field effect on the representation of the media item, The method according to claim 149 or 150, further comprising:
152. The method according to any one of claims 149 to 151, wherein the request to display controls for editing the representation of the media item includes the selection of a media item status indicator that indicates the status of the media item.
153. The appearance of the aforementioned media item status indicator is as follows: The status of the features of the set of one or more images, The method according to claim 152, based on one or more of the status of the simulated depth of field effect.
154. In accordance with the determination that the characteristics of the set of one or more images and the simulated depth of field effect have a first status, the media item status indicator is displayed in a first appearance. In accordance with the determination that the characteristics of the set of one or more images and the simulated depth of field effect have a second status different from the first status, the media item status indicator is displayed in a second appearance different from the first appearance. The method according to claim 153.
155. The method according to any one of claims 152 to 154, wherein the feature of the set of one or more images includes one or more playback options corresponding to each mode in which the sequence of images is displayed.
156. While the first control element and the second control element are displayed simultaneously, an input directed to the first control element is detected via one or more input devices, In response to the detection of the input directed to the first control element, The characteristics of the set of one or more images are set to individual characteristics corresponding to the first control element, Disabling the simulated depth of field effect on the representation of the media item, The method according to claim 155, further comprising:
157. In response to detecting the input directed to the first control element, the second control element is disabled. The method according to claim 156, further comprising:
158. While the first control element and the second control element are displayed simultaneously, an input directed to the second control element is detected via one or more input devices. In response to detecting the input directed to the second control element, the simulated depth-of-field effect on the representation of the media item is enabled or disabled. The method according to any one of claims 152 to 157, further comprising:
159. While the first control element and the second control element are displayed simultaneously, an input directed to the second control element is detected via one or more input devices. In response to detecting the input directed to the second control element, the simulated depth-of-field effect on the representation of the media item is modified, The method according to any one of claims 152 to 158, further comprising:
160. In response to detecting a request to display the respective controls for editing the appearance of individual media items, The display of the first control element is discontinued upon determination that the individual media item does not contain a set of one or more images that are available to be displayed in a sequence of images when the representation of the individual media item is displayed via the display generation component. The method according to any one of claims 152 to 159, further comprising:
161. In response to detecting a request to display the respective controls for editing the appearance of individual media items, The display of the second control element is discontinued in accordance with the determination that the individual media item does not contain depth information that enables the display of the simulated depth of field effect. The method according to any one of claims 152 to 160, further comprising:
162. The method according to any one of claims 149 to 161, wherein the request to display controls for editing the representation of the media item includes the selection of selectable editing mode elements corresponding to editing modes.
163. In response to detecting the request to display controls for editing the representation of the media item, the display generation component, simultaneously with the first and second control elements, displays one or more selectable editing options for adjusting the appearance of the representation of the media item. The method according to claim 162, further comprising:
164. While the first control element and the second control element are displayed simultaneously, an input directed to the second control element is detected via one or more input devices. In response to detecting the input directed to the second control element, the display generation component displays a set of one or more selectable elements for editing the simulated depth of field effect, The method according to claim 162 or 163, further comprising:
165. While the first control element and the second control element are displayed simultaneously, an input directed to the first control element is detected via one or more input devices, In response to detecting the input directed to the first control element, the display generation component displays a set of one or more selectable elements for editing the features of each of the one or more sets of images available for display in the sequence of images, The method according to any one of claims 162 to 164, further comprising:
166. The input is detected via one or more input devices, corresponding to the selection of a representative image from the set of one or more images displayed as the representation of the media item. In response to detecting the input corresponding to the selection of the representative image, the simulated depth of field effect is edited. The method according to any one of claims 162 to 165, further comprising:
167. Editing the simulated depth of field effect is The method according to claim 166, comprising enabling the simulated depth of field effect and then disabling the simulated depth of field effect in accordance with the determination that the representative image does not contain depth information.
168. Editing the simulated depth of field effect is The method according to claim 166 or 167, comprising disabling the simulated depth of field effect and enabling the simulated depth of field effect in accordance with the determination that the representative image contains depth information.
169. The method according to claim 168, wherein enabling the simulated depth of field effect includes applying the simulated depth of field effect to the representation of the media item in accordance with the settings of the simulated depth of field effect that were applied when the simulated depth of field effect was disabled.
170. The method according to claim 168, wherein enabling the simulated depth of field effect includes applying the simulated depth of field effect to the representation of the media item in accordance with the default settings of the simulated depth of field effect.
171. Editing the simulated depth of field effect is The method according to any one of claims 166 to 170, comprising disabling the simulated depth of field effect and ceasing to enable the simulated depth of field effect in accordance with the determination that the representative image contains depth information.
172. The display generation component further includes displaying a representation of the set of one or more images, the display including displaying one or more indicators that identify each image of the set of one or more images, the depth information enabling each of the images to be displayed with the simulated depth of field effect. The method according to any one of claims 166 to 171.
173. Detecting input directed to a first location within the representation of the set of images via the one or more input devices, The method further includes detecting the input directed to the first location in the representation of the set of images, and selecting a representation of an image in the set of images that includes depth information, wherein the representation of the image is located at a second location in the representation of the set of images, which is different from the first location in the representation of the set of images. The method according to claim 172.
174. To detect, via one or more input devices, an input directed to a location in the representation of one or more images corresponding to an image containing depth information, In response to detecting the input directed to the location in the representation of the set of one or more images corresponding to an image containing depth information, output a haptic output, The method according to claim 172 or 173, further comprising:
175. While an image without depth information is selected as the representative image of the media item and the simulated depth of field effect is disabled, a request to enable the simulated depth of field effect is detected via one or more input devices. In response to detecting the request to enable the simulated depth of field effect, the display generation component further includes displaying an image containing depth information as the representation of the media item, and the display includes displaying the image containing depth information with the simulated depth of field effect. The method according to any one of claims 162 to 174.
176. In response to detecting a request to display the respective controls for editing the appearance of individual media items, The display of the second control element is discontinued in accordance with the determination that the individual media item does not contain depth information that enables the display of the simulated depth of field effect. The method according to any one of claims 162 to 175, further comprising:
177. In response to detecting a request to display the respective controls for editing the appearance of individual media items, The display of the first control element is discontinued upon determination that the individual media item does not contain a set of one or more images that are available to be displayed in a sequence of images when the representation of the individual media item is displayed via the display generation component. The method according to any one of claims 162 to 176, further comprising:
178. Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, When the representation of the media item is displayed via the display generation component, a plurality of selectable control elements for editing the characteristics of each of the one or more sets of images available for display in the sequence of images, Displaying a plurality of selectable control elements for editing each of the characteristics of the simulated depth of field effect for the representation of the media item, The method according to any one of claims 162 to 177, further comprising:
179. In response to detecting the request to display controls for editing the representation of the media item, the display generation component displays selectable elements for displaying one or more additional control elements for editing the simulated depth of field effect on the representation of the media item. The process involves detecting inputs corresponding to the selection of elements that display the one or more additional control elements for editing the simulated depth-of-field effect on the representation of the media item via the one or more input devices, In response to detecting the input corresponding to the selection of an element that displays one or more additional control elements for editing the simulated depth of field effect on the representation of the media item, Displaying one or more additional control elements for editing the simulated depth of field effect on the representation of the media item via the display generation component, When the representation of the media item is displayed via the display generation component, the display of one or more selectable elements for editing the features of each of the one or more sets of images available for display in the sequence of images is discontinued. The method according to any one of claims 162 to 178, further comprising:
180. Displaying one or more additional control elements for editing the simulated depth-of-field effect for the representation of the media item includes displaying selectable control elements for selecting a simulated lighting effect to be applied to the representation of the media item. When the representation of the media item is displayed via the display generation component, discontinuing the display of one or more selectable elements for editing the features of each of the one or more sets of images available for display in the sequence of images includes discontinuing the display of selectable control elements for changing the representative image of the media item and / or changing the length of the sequence of images. The method according to claim 179.
181. A non-temporary computer-readable storage medium that stores one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 149 to 180.
182. A computer system configured to communicate with a display generation component and one or more input devices, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 149 to 180.
183. A computer system configured to communicate with a display generation component and one or more input devices, A computer system comprising means for performing the method described in any one of claims 149 to 180.
184. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 149 to 180.
185. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are The system detects a request to display controls for editing the representation of a media item via one or more input devices. Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, A first control element for editing the features of one or more sets of images available for display within a sequence of images when the representation of the media item is displayed via the display generation component, A non-temporary computer-readable storage medium including instructions for simultaneously displaying a second control element for editing a simulated depth-of-field effect for the representation of the media item.
186. A computer system configured to communicate with a display generation component and one or more input devices, One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are The system detects a request to display controls for editing the representation of a media item via one or more input devices. Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, A first control element for editing the features of one or more sets of images available for display within a sequence of images when the representation of the media item is displayed via the display generation component, A computer system including instructions for simultaneously displaying a second control element for editing a simulated depth-of-field effect for the representation of the media item.
187. A computer system configured to communicate with a display generation component and one or more input devices, Means for detecting a request to display controls for editing the representation of a media item via one or more input devices, Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, A first control element for editing the features of one or more sets of images available for display within a sequence of images when the representation of the media item is displayed via the display generation component, A computer system comprising: a second control element for editing a simulated depth-of-field effect for the representation of the media item; and means for simultaneously displaying these elements.
188. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are The system detects a request to display controls for editing the representation of a media item via one or more input devices. Upon detecting the request to display controls for editing the representation of the media item, via the display generation component, A first control element for editing the features of one or more sets of images available for display within a sequence of images when the representation of the media item is displayed via the display generation component, A computer program product that includes instructions for simultaneously displaying a second control element for editing a simulated depth-of-field effect for the representation of the media item.
189. It is a method, In a computer system that communicates with a display generation component and one or more input devices, While displaying a representation of a media item, including a simulated depth of field effect, via the aforementioned display generation component, The input directed to the representation of the media item, including the simulated depth of field effect, is detected via one or more input devices. A method comprising, in response to detecting the input directed to the representation of the media item, displaying a plurality of images corresponding to the media item via the display generation component, wherein the display includes displaying the plurality of images sequentially over time.
190. The method according to claim 189, wherein the input directed to the representation of the media item including the simulated depth of field effect has a duration exceeding a predetermined amount of time.
191. The method according to claim 189 or 190, wherein the input directed to the representation of the media item including the simulated depth of field effect includes a request to navigate from a representation of another media item to the representation of the media item.
192. In response to detecting the input directed to the representation of the media item, After displaying the aforementioned multiple images sequentially over time, the representation of the media item is displayed with the simulated depth of field effect via the display generation component. The method according to any one of claims 189 to 191, further comprising:
193. While displaying a representation of a first media item, the system detects a request via one or more input devices to display a representation of a second media item different from the first media item. In response to detecting the request to display the representation of the second media item, In accordance with the determination that the second media item does not include the simulated depth of field effect, the display generation component displays a plurality of images corresponding to the second media item, and displaying includes displaying the plurality of images corresponding to the second media item sequentially over time. In accordance with the determination that the second media item includes the simulated depth of field effect, the display generation component displays the representation of the second media item without displaying the plurality of images corresponding to the second media item sequentially over time. The method according to any one of claims 189 to 192, further comprising:
194. Displaying the multiple images corresponding to the media item means This includes displaying a representation of the media item that does not include the simulated depth of field effect, The method according to any one of claims 189 to 193, wherein displaying the plurality of images sequentially over time includes displaying the plurality of images without the simulated depth of field effect.
195. The method according to claim 194, wherein displaying the plurality of images corresponding to the media item includes displaying the plurality of images without the simulated lighting effects associated with the media item.
196. The method according to any one of claims 189 to 195, wherein displaying the plurality of images sequentially over time includes displaying two or more images that include the simulated depth of field effect.
197. The method according to claim 196, wherein displaying the plurality of images sequentially over time includes displaying two or more images that include simulated lighting effects.
198. Displaying the aforementioned multiple images sequentially over time is, In accordance with the determination that the simulated depth of field effect is enabled, a set of two or more images in which a blur effect is applied to the background of the image is displayed. The method according to any one of claims 189 to 197, comprising displaying the set of two or more images without applying the blur effect to the background of the images, in accordance with the determination that the simulated depth of field effect is disabled.
199. The method according to any one of claims 189 to 198, wherein displaying the plurality of images includes displaying two or more of the plurality of images with a blur effect applied to the background of two or more of the plurality of images.
200. The method according to claim 199, wherein displaying two or more of the aforementioned plurality of images includes displaying two or more of the aforementioned plurality of images with a simulated lighting effect.
201. While the aforementioned representation of the media item is being displayed, the media item status indicator is displayed via the display generation component. Detecting input directed to the media item status indicator via one or more input devices, In response to detecting the input directed to the media item status indicator, the display generation component displays a set of one or more selectable control elements for changing the way the multiple images are displayed without editing the representation of the media item. The method according to any one of claims 189 to 200, further comprising:
202. Before displaying the representation of the media item including the simulated depth of field effect, and via the display generation component, a live preview of an image captured by one or more cameras of the computer system, wherein the live preview does not include the simulated depth of field effect, and while displaying the live preview, the computer system detects a request to capture one or more images using one or more cameras via one or more input devices, In response to detecting the request to capture one or more images, capture multiple images and depth information relating to physical elements within the field of view of the one or more cameras using the one or more cameras. The method according to any one of claims 189 to 201, further comprising:
203. While displaying the live preview, before displaying the representation of the media item including the simulated depth-of-field effect, and via the display generation component, a live preview of an image captured by one or more cameras of the computer system, wherein the live preview includes the simulated depth-of-field effect based on depth information captured by the one or more cameras, and the computer system detects a request to capture one or more images using the one or more cameras via the one or more input devices, In response to detecting the request to capture one or more images, use the one or more cameras to capture a single image and depth information relating to physical elements within the field of view of the one or more cameras. The method according to any one of claims 189 to 202, further comprising:
204. A non-temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 189 to 203.
205. A computer system configured to communicate with a display generation component and one or more input devices, wherein the computer system is One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 189 to 203.
206. A computer system configured to communicate with a display generation component and one or more input devices, A computer system comprising means for performing the method described in any one of claims 189 to 203.
207. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 189 to 203.
208. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are While displaying a representation of a media item, including a simulated depth of field effect, via the aforementioned display generation component, The input directed to the representation of the media item, including the simulated depth of field effect, is detected via one or more input devices. A non-temporary computer-readable storage medium that includes instructions to display a plurality of images corresponding to the media item via the display generation component in response to detecting the input directed to the representation of the media item, and the display includes displaying the plurality of images sequentially over time.
209. A computer system configured to communicate with a display generation component and one or more input devices, One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are While displaying a representation of a media item, including a simulated depth of field effect, via the aforementioned display generation component, The input directed to the representation of the media item, including the simulated depth of field effect, is detected via one or more input devices. A computer system that includes instructions to display a plurality of images corresponding to a media item via a display generation component in response to detecting the input directed to the representation of the media item, and the display includes displaying the plurality of images sequentially over time.
210. A computer system configured to communicate with a display generation component and one or more input devices, While displaying a representation of a media item, including a simulated depth of field effect, via the aforementioned display generation component, The input directed to the representation of the media item, including the simulated depth of field effect, is detected via one or more input devices. A computer system comprising means for displaying a plurality of images corresponding to a media item via a display generation component in response to detecting the input directed to the representation of the media item, wherein displaying includes displaying the plurality of images sequentially over time.
211. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component and one or more input devices, wherein the one or more programs are While displaying a representation of a media item, including a simulated depth of field effect, via the aforementioned display generation component, The input directed to the representation of the media item, including the simulated depth of field effect, is detected via one or more input devices. A computer program product that includes instructions to display a plurality of images corresponding to the media item via a display generation component in response to detecting the input directed to the representation of the media item, and the display includes displaying the plurality of images sequentially over time.
212. It is a method, A computer system having one or more cameras, wherein the computer system communicates with a display generation component and one or more input devices, The camera user interface, which includes one or more selectable controls for managing the zoom level for capturing media, is displayed via the aforementioned display generation component. The detection of a first input directed to an individual selectable control, including movement, via one or more input devices, In response to detecting the first input directed to the individual selectable controls, the process includes navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level in accordance with the movement, wherein navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels. In accordance with the determination that a third zoom level between the first zoom level and the second zoom level has been selected as the snap zoom level, the system snaps to the third zoom level while navigating through the multiple candidate zoom levels. A method comprising: canceling a snap to the third zoom level while navigating the plurality of candidate zoom levels, based on the determination that the third zoom level between the first zoom level and the second zoom level is not selected as a snap zoom level.
213. In response to detecting the first input directed to the individual selectable controls, In accordance with the determination that a fourth zoom level, which is between the first zoom level and the second zoom level and different from the third zoom level, has been selected as the snap zoom level, the system snaps to the fourth zoom level while navigating through the plurality of candidate zoom levels. In accordance with the determination that the fourth zoom level between the first zoom level and the second zoom level is not selected as the snap zoom level, the snap to the fourth zoom level is canceled while navigating the plurality of candidate zoom levels. The method according to claim 212, further comprising:
214. In response to detecting the first input directed to the individual selectable controls, In accordance with the determination that a fifth zoom level between the first zoom level and the second zoom level corresponds to a default zoom level, the system snaps to the fifth zoom level while navigating through the plurality of candidate zoom levels. In accordance with the determination that the fifth zoom level between the first zoom level and the second zoom level does not correspond to a default zoom level, the snapping to the fifth zoom level is stopped while navigating the plurality of candidate zoom levels. The method according to claim 212 or 213, further comprising:
215. The input corresponding to the request to set the state of the third zoom level is detected via one or more input devices, In response to detecting the input corresponding to the request to set the state of the third zoom level, select the third zoom level as the snap zoom level, or deselect the third zoom level as the snap zoom level. The system detects an input corresponding to a request to set a state for a sixth zoom level different from the third zoom level via one or more input devices, In response to detecting the input corresponding to the request to set the state of the sixth zoom level, select the sixth zoom level as the snap zoom level, or deselect the sixth zoom level as the snap zoom level. The method according to any one of claims 212 to 214, further comprising:
216. The aforementioned third zoom level is preset, The sixth zoom level is preset, The method according to claim 215.
217. The method according to claim 215 or 216, wherein the third zoom level corresponds to a first digital zoom level, and the sixth zoom level corresponds to a second digital zoom level different from the first digital zoom level.
218. In response to detecting the first input directed to the individual selectable controls, In accordance with the determination that the default zoom level between the first zoom level and the second zoom level corresponds to the snap zoom level, the system snaps to the default zoom level while navigating the plurality of candidate zoom levels. The system further includes, upon determining that the default zoom level between the first and second zoom levels does not correspond to a snap zoom level, stopping the snap to the default zoom level while navigating the plurality of candidate zoom levels, wherein the default zoom level cannot be disabled as a snap zoom level via user input. The method according to any one of claims 215 to 217.
219. The aforementioned third zoom level corresponds to the digital zoom level. The aforementioned default zoom level corresponds to the optical zoom level. The method according to claim 218.
220. The inputs are detected via one or more input devices to respond to a request to change how many snap zoom levels are available. In response to detecting the input corresponding to the request to change how many snap zoom levels are available, the number of snap zoom levels is changed from a first number of snap zoom levels to a second number of snap zoom levels different from the first number of snap zoom levels. The method according to any one of claims 212 to 219, further comprising:
221. While a first specified zoom level is selected, a second input directed to the individual selectable controls is detected via one or more input devices. In response to detecting the second input directed to the individual selectable control, select an individual specified zoom level, The method according to any one of claims 212 to 220, further comprising:
222. Selecting the aforementioned individual specified zoom level means Select the second designated zoom level in accordance with the determination that the second designated zoom level has been selected as the snap zoom level. The method according to claim 221, comprising selecting a third designated zoom level different from the second designated zoom level, in accordance with the determination that the second designated zoom level is not selected as the snap zoom level.
223. While the first individually designated zoom level is selected, a third input directed to the individual selectable control is detected via one or more input devices, In response to detecting the third input directed to the individual selectable control, a fourth designated zoom level different from the first designated zoom level and the individual designated zoom levels is selected. A method according to claim 221 or 222, further comprising:
224. While a fifth designated zoom level is selected, the fourth input directed to the individual selectable controls via one or more input devices is detected. In response to detecting the fourth input directed to the individual selectable controls, select the first designated zoom level, wherein the first designated zoom level is the first designated zoom level in the sequence of designated zoom levels selected as the snap zoom level. The method according to any one of claims 221 to 223, further comprising:
225. In response to detecting the second input directed to the individual control, The first representation of the numerical value of the individually specified zoom level is displayed via the display generation component, After displaying the first representation of the numerical value of the individually designated zoom level, the display generation component displays a second representation of the numerical value of the individually designated zoom level that is different from the first representation of the numerical value of the individually designated zoom level. The method according to any one of claims 221 to 224, further comprising:
226. The first representation of the numerical value of the individually specified zoom level is expressed in terms of lens focal length equivalent, The second representation of the numerical value of the individually specified zoom level represents the numerical value as a percentage of a default magnification. The method according to claim 225.
227. The method according to any one of claims 221 to 226, wherein the first input directed to the individual selectable control includes a tap gesture on the individual selectable control.
228. Displaying the aforementioned camera user interface means In accordance with the determination that the third zoom level has been selected as the snap zoom level, the representation of the third zoom level is displayed. The method according to any one of claims 212 to 227, comprising displaying a representation of the fifth zoom level in accordance with the determination that the fifth zoom level has been selected as the snap zoom level.
229. Displaying the aforementioned camera user interface means In accordance with the determination that the third zoom level is not selected as the snap zoom level, the display of the representation for the third zoom level is discontinued. The method according to claim 228, comprising: discontinuing the display of the representation of the fifth zoom level in accordance with the determination that the fifth zoom level is not selected as a snap zoom level.
230. The process involves detecting an input via one or more input devices that corresponds to a request to set an individual snap zoom level as the default zoom level, In response to detecting the input corresponding to the request to set the individual snap zoom level as the default zoom level, the individual snap zoom level is set as the default zoom level. To detect an input corresponding to a request to display the camera user interface via one or more of the aforementioned input devices, In response to detecting the input corresponding to the request to display the camera user interface, the further includes displaying the camera user interface, the display including displaying a live preview of the field of view of one or more cameras, the live preview being displayed at the default zoom level. The method according to any one of claims 212 to 229.
231. The zoom level control element is displayed via the aforementioned display generation component, The input directed to the zoom level control element is detected via one or more of the aforementioned input devices, In response to detecting the input directed to the zoom level control element, the system snaps to a zoom level within the range of the zoom level. The method according to claim 230, further comprising:
232. While the computer system is operating in the first camera mode, the zoom level control element is displayed via the display generation component in an appearance that indicates the current zoom level, which is not the default zoom level. The input corresponding to a request to change the mode of one or more cameras is detected via the one or more input devices, In response to detecting the input corresponding to the request to change the mode of one or more cameras, the operation of the computer system is changed from the first camera mode to a second camera mode different from the first camera mode. After changing the operation of the computer system to the second camera mode, the zoom level control element is displayed via the display generation component in an appearance that indicates the current zoom level is the default zoom level. The method according to claim 231, further comprising:
233. While one or more cameras are set to the zoom level corresponding to the zoom level control element, the display generation component displays the zoom level control element in an appearance that indicates the current zoom level, which is not the default zoom level. The detection of inputs via one or more input devices that correspond to a request to change the current zoom level to a zoom level not associated with the zoom level control element, In response to detecting the input corresponding to the request to change the current zoom level to a zoom level not associated with the zoom level control element, To change the current zoom level to the zoom level not associated with the zoom level control element, The zoom level control element is displayed via the display generation component in an appearance that indicates the default zoom level, The method according to claim 231 or 232, further comprising:
234. While one or more cameras are set to the zoom level corresponding to the zoom level control element, the display generation component displays the zoom level control element having an appearance that indicates the current zoom level, which is not the default zoom level. The system detects an input via one or more input devices that corresponds to a request to change the current zoom level to a zoom level outside a predetermined zoom level range. Upon detecting the input corresponding to the request to change the current zoom level to a zoom level outside the predetermined zoom level range, The current zoom level is changed to a zoom level outside the predetermined zoom level range. The zoom level control element is displayed via the display generation component in an appearance that indicates the default zoom level, The method according to any one of claims 231 to 233, further comprising:
235. The method according to any one of claims 212 to 234, wherein snapping to a zoom level includes outputting a haptic output.
236. Displaying a configuration user interface via the display generation component, which includes simultaneously displaying a first zoom level selection element corresponding to a first selectable zoom level, and a second zoom level selection element that is different from the first zoom level selection element and corresponds to a second selectable zoom level different from the first selectable zoom level, The detection of input directed to the setting user interface via one or more input devices, In response to detecting the input directed to the aforementioned configuration user interface, The state of the first selectable zoom level is changed according to the determination that the input directed to the setting user interface corresponds to the selection of the first zoom level selection element. In accordance with the determination that the input directed to the setting user interface corresponds to the selection of the second zoom level selection element, the state of the second selectable zoom level is changed. The method according to any one of claims 212 to 235, further comprising:
237. Displaying the settings user interface via the aforementioned display generation component, In accordance with the determination that a first user-selectable zoom level has been selected, a first default zoom level selection element corresponding to the first user-selectable zoom level is displayed. In accordance with the determination that the first user-selectable zoom level is not selected, the display of the first default zoom level selection element corresponding to the first user-selectable zoom level is removed. In accordance with the determination that a second user-selectable zoom level has been selected, a second default zoom level selection element corresponding to the second user-selectable zoom level is displayed. In accordance with the determination that the second user-selectable zoom level is not selected, the settings user interface is displayed, which removes the display of the second default zoom level selection element corresponding to the second user-selectable zoom level. The detection of input directed to the setting user interface via one or more input devices, In response to detecting the input directed to the aforementioned configuration user interface, In accordance with the determination that the input directed to the setting user interface corresponds to the selection of the first default zoom level selection element, the current default zoom level is set to the first user-selectable zoom level. In accordance with the determination that the input directed to the setting user interface corresponds to the selection of the second default zoom level selection element, the current default zoom level is set to the second user-selectable zoom level. The method according to any one of claims 212 to 236, further comprising:
238. The one or more selectable controls include individual selectable controls associated with one or more user-selectable zoom levels of the one or more cameras, The first input directed to the individual selectable control is detected while the camera user interface is displayed and while the first zoom level associated with the individual selectable control is selected as the current zoom level of one or more cameras. The aforementioned method, In response to detecting the first input directed to the individual selectable control, the selection includes selecting an individual zoom level associated with the individual selectable control as the current zoom level of the one or more cameras, and the selection is The process includes selecting the second zoom level as the current zoom level of one or more cameras in response to detecting the first input directed to the individual selectable control, based on the determination that the user has selected the second zoom level associated with the individual selectable control. The method according to any one of claims 212 to 237.
239. A non-temporary computer-readable storage medium storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices, wherein the one or more programs include instructions for performing the method according to any one of claims 212 to 238.
240. A computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices, One or more processors, A computer system comprising: a memory for storing one or more programs configured to be executed by one or more processors, wherein the one or more programs include instructions for performing the method according to any one of claims 212 to 238.
241. A computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices, A computer system comprising means for performing the method described in any one of claims 212 to 238.
242. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices, wherein the one or more programs include instructions to perform the method according to any one of claims 212 to 238.
243. A non-temporary computer-readable storage medium for storing one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices, wherein the one or more programs are The display generation component displays a camera user interface that includes one or more selectable controls for managing the zoom level for capturing media. Detect a first input directed to an individual selectable control, including movement. In response to detecting the first input directed to the individual selectable controls, the command includes navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level according to the movement, and navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels. In accordance with the determination that a third zoom level between the first zoom level and the second zoom level has been selected as the snap zoom level, the system snaps to the third zoom level while navigating through the multiple candidate zoom levels. A non-temporary computer-readable storage medium, which includes canceling a snap to the third zoom level while navigating the plurality of candidate zoom levels, based on the determination that the third zoom level between the first zoom level and the second zoom level is not selected as a snap zoom level.
244. A computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices, One or more processors, The system comprises a memory that stores one or more programs configured to be executed by one or more processors, and the one or more programs are The display generation component displays a camera user interface that includes one or more selectable controls for managing the zoom level for capturing media. Detect a first input directed to an individual selectable control, including movement. In response to detecting the first input directed to the individual selectable controls, the command includes navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level according to the movement, and navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels. In accordance with the determination that a third zoom level between the first zoom level and the second zoom level has been selected as the snap zoom level, the system snaps to the third zoom level while navigating through the multiple candidate zoom levels. A computer system that includes, upon determining that the third zoom level between the first zoom level and the second zoom level is not selected as a snap zoom level, cancels snapping to the third zoom level while navigating the plurality of candidate zoom levels.
245. A computer system configured to communicate with a display generation component, one or more cameras, and one or more input devices, Means for displaying a camera user interface via the aforementioned display generation component, including one or more selectable controls for managing the zoom level for capturing media, Means for detecting a first input directed to an individual selectable control, including movement, The system includes means for navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level in accordance with the movement, in response to detecting the first input directed to the individual selectable controls, wherein navigating means snapping to one or more zoom levels while navigating the plurality of candidate zoom levels. In accordance with the determination that a third zoom level between the first zoom level and the second zoom level has been selected as the snap zoom level, the system snaps to the third zoom level while navigating through the multiple candidate zoom levels. A computer system that includes, upon determining that the third zoom level between the first zoom level and the second zoom level is not selected as a snap zoom level, cancels snapping to the third zoom level while navigating the plurality of candidate zoom levels.
246. A computer program product comprising one or more programs configured to be executed by one or more processors of a computer system communicating with a display generation component, one or more cameras, and one or more input devices, wherein the one or more programs are The display generation component displays a camera user interface that includes one or more selectable controls for managing the zoom level for capturing media. Detect a first input directed to an individual selectable control, including movement. In response to detecting the first input directed to the individual selectable controls, the command includes navigating a plurality of candidate zoom levels from a first zoom level to a second zoom level according to the movement, and navigating includes snapping to one or more zoom levels while navigating the plurality of candidate zoom levels. In accordance with the determination that a third zoom level between the first zoom level and the second zoom level has been selected as the snap zoom level, the system snaps to the third zoom level while navigating through the multiple candidate zoom levels. A computer program product that includes, upon determination that the third zoom level between the first zoom level and the second zoom level is not selected as a snap zoom level, cancels snapping to the third zoom level while navigating the plurality of candidate zoom levels.