Adjust volume settings based on proximity and activity data

DE102017102693B4Active Publication Date: 2025-09-11LENOVO (SINGAPORE) PTE LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
DE102017102693
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Priority Date
2016-03-24
Filing Date
2017-02-10
Publication Date
2025-09-11
Estimated Expiration
2037-02-10

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

Device (104) comprising: a processor; a memory storing code executable by the processor to: Determining (402) a proximity of a target device (102) to an information handling device (102) in response to detecting the information handling device (102); Receiving (404) context data from the information handling device (102), wherein the context data describes an activity state of a user of the information handling device (102); and Adjusting (406) a volume setting of the target device (102) as a function of the proximity of the information handling device (102) and the activity state of the user. wherein the code is further executable by a processor to determine whether the user's activity state is a resting state, wherein the context data comprises one or more of biological data, calendar data, and location data.
Need to check novelty before this filing date? Find Prior Art

Description

Area

[0001] The subject matter disclosed herein relates to device volume settings, and more particularly relates to adjusting device volume settings based on proximity to another device. background

[0002] Devices such as smartphones and tablet computers can be configured to generate sounds to notify a user of an event, such as a ringtone for an incoming phone call, a sound to indicate a received text message, and the like. However, these sounds may disturb others at inappropriate times, such as while someone else is sleeping, watching television, reading, or the like.

[0003] Publication DE 699 02 487 T2 describes a method for a computer to acoustically present output information to a user, the method comprising the following steps: receiving information about a modeled characteristic of the user relating to the appropriateness of presenting output information to the user; determining a plurality of output devices that are currently available; for each of the currently available output devices, determining the information presentation capabilities of the output device that influence how information is presented on the output device;and presenting the output information to the user by selecting one of the currently available output devices based on the determined information presentation capabilities of the one output device capable of presenting the output information in accordance with the modeled user characteristic, and presenting the output information on the selected output device in accordance with the modeled user characteristic;

[0004] Publication US 2012 / 0 020 486 A1 discloses an audio system comprising a first audio device and a second audio device. A communication link connects the first and second audio devices so that they can communicate with each other. The system includes an audio volume manager that varies the audio output level of the second audio device depending on the perceived volume of the second audio device as perceived by the first audio device. Short summary

[0005] It is an object of the present invention to enable an improved adjustment of a volume setting of a device.

[0006] This object is solved by the subject matter of main claim 1 and the independent claims 13 and 18, which define the present invention.

[0007] Preferred embodiments of the present invention are the subject of the subclaims.

[0008] A device for adjusting volume based on proximity and activity data is disclosed. A method and a computer program product also perform the functions of the device.

[0009] A device according to the invention comprises a processor and a memory storing code executable by the processor. In one embodiment, the code is executable by a processor to determine a proximity of a target device to an information handling device in response to detecting the information handling device.

[0010] The code is further executable by the processor to receive context data from the information handling device. Context data may describe an activity state of a user of an information handling device. The code is further executable by the processor to adjust a volume setting of the target device as a function of proximity of the information handling device and the user's activity state.

[0011] The code is further executable by the processor to determine whether the user activity state is a resting state based on the context data, wherein the context data includes one or more of biological data, calendar data, and location data.

[0012] In one embodiment, a predetermined volume level is determined according to a certain proximity to the information handling device.

[0013] In another embodiment, the code is further executable by the processor to connect the information handling device using a short-range wireless communication protocol. A short-range wireless communication protocol may be selected from a group consisting of a Bluetooth® protocol, a near-field communication ("NFC") protocol, an infrared protocol, and a Wi-Fi protocol.

[0014] In some embodiments, the code is further executable by the processor to, in response to detecting a change in a particular proximity, determine a different proximity to an information handling device and adjust a volume setting as a function of the different proximity.

[0015] In certain embodiments, the code is further executable by the processor to, in response to determining a change in a user's activity state, receive other context data from an information handling device and adjust a volume setting as a function of the changed user's activity state.

[0016] In another embodiment, the code is further executable by a processor to adjust a volume setting in response to one of determining proximity to an information handling device and detecting an event that generates an audible sound. In some embodiments, the code is further executable by the processor to adjust a volume setting in response to determining that an information handling device is an authorized information handling device.

[0017] In one embodiment, the code is further executable by a processor to notify a user that a volume setting has been changed in response to a volume setting being adjusted. In some embodiments, proximity to an information handling device is determined using one or more sensors, which may be selected from a group consisting of a Bluetooth® communication sensor, a signal strength sensor, a location sensor, an altimeter, and a proximity sensor.

[0018] In one embodiment, the information handling device is selected from a group consisting of a wearable activity tracker, a smartphone, and a tablet computer. In another embodiment, the volume setting is associated with one or more of a speaker volume, a notification volume, a ringer volume, a music volume, a video volume, a game volume, and a voice output volume.

[0019] A method according to the invention comprises determining, using a processor, a proximity of a target device to an information handling device in response to detecting the information handling device. The method further comprises receiving context data from the information handling device. The context data describes an activity state of the user of the information handling device. The method further comprises adjusting a volume setting of the target device as a function of the proximity to the information handling device and the activity state of the user.

[0020] The method further comprises determining whether the user activity state is a resting state based on the context data, wherein the context data includes one or more of biological data, calendar data, and location data.

[0021] In some embodiments, a volume setting is adjusted in response to determining that a user activity state is a sleep state by reducing a volume level below a predetermined volume level. A predetermined volume level may be determined according to a particular proximity to the information handling device.

[0022] In certain embodiments, a method includes determining a different proximity to an information handling device in response to detecting a change in a particular proximity, and adjusting a volume setting as a function of a different proximity. In some embodiments, a method includes receiving different context data from an information handling device in response to detecting a change in a user's activity state, and adjusting a volume setting as a function of the changed user's activity state.

[0023] In one embodiment, a method includes resetting a volume setting to a previous volume setting in response to determining one or more of an information handling device being out of communication proximity and a user activity state other than a sleep state.

[0024] In one embodiment, a computer program product comprises a computer-readable storage medium storing code executable by a processor of a device to carry out the method according to the invention. Short description of the drawings

[0025] A more detailed description of the embodiments briefly described above will be made by reference to specific embodiments illustrated in the accompanying drawings. While understanding that these drawings illustrate only some embodiments and are therefore not to be considered limiting, the embodiments will be described and discussed in additional detail through the use of the accompanying drawings, in which: Fig. 1 is a schematic block diagram illustrating one embodiment of a system for adjusting volume settings based on proximity and activity data; Fig. 2 is a schematic block diagram illustrating one embodiment of a module for adjusting volume settings based on proximity and activity data; Fig. 3 is a schematic block diagram illustrating one embodiment of another module for adjusting volume settings based on proximity and activity data; Fig. 4 is a schematic flow diagram illustrating one embodiment of a method for adjusting volume settings based on proximity and activity data; and Fig. 5 is a schematic flow diagram illustrating one embodiment of another method for adjusting volume settings based on proximity and activity data. Detailed description

[0026] As will be appreciated by one of ordinary skill in the art, aspects of the embodiments may be embodied as a system, a method, or a computer program product. Accordingly, embodiments may take the form of a fully hardware implementation, a fully software implementation (including firmware, resident software, microcode, etc.), or an embodiment combining software and hardware aspects, all of which are referred to generally herein as a "circuit," "module," or "system." Furthermore, embodiments may take the form of a computer program product embodied in one or more computer-readable storage devices storing machine-readable code, computer-readable code, and / or program code, hereinafter referred to as code. The storage devices may be tangible, non-transitory, and / or non-transmitting. The storage devices may not include signals.In a particular embodiment, memory devices will apply signals only for accessing code.

[0027] Many of the functional units described in this specification have been designated as modules to emphasize their independent implementation. For example, a module may be implemented as a hardware circuit comprising custom VLSI circuits or gate arrays, standard semiconductors such as logic chips, transistors, or other discrete components. A module may also be implemented in programmable hardware devices such as field-programmable gate arrays, programmable array logic, programmable logic devices, or the like.

[0028] Modules may also be embodied in code and / or software for execution by different types of processors. An identified module of code may, for example, comprise one or more physical or logical blocks of executable code, which may be organized, for example, as an object, a method, or a function. Nevertheless, the executors of an identified module need not necessarily be physically located together, but may comprise scattered instructions stored in various locations that, when logically combined, comprise a module and fulfill the module's stated purpose.

[0029] Indeed, a module of code may be a single instruction or many instructions, and may itself be distributed across several different code segments, among different programs, and across several storage devices. Similarly, operational data may be identified within and represented within modules and may be embodied in any suitable form and organized within any suitable type of data structure. The operational data may be collected as a single set of data or may be distributed across different locations, including across different computer-readable storage devices. Where a module, or portions of a module, are embodied in software, the software portions are stored on one or more computer-readable storage devices.

[0030] Any combination of one or more computer-readable media may be used. The computer-readable medium may be a computer-readable storage medium. The computer-readable storage medium may be a storage device that stores the code. The storage device may be, for example, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, holographic, micromechanical, or semiconductor system, device, or apparatus, or any suitable combination of the foregoing.

[0031] More specific examples (of a non-exhaustive list) of the storage device would include the following: an electrical connection having one or more wires, a portable computer diskette, a hard disk, random access memory (RAM), read-only memory (ROM), erasable programmable read-only memory (EPROM or flash memory), a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing. In the context of this document, a computer-readable storage medium may be any tangible medium that can contain or have stored a program for use by or in connection with an instruction-executing system, apparatus, or device.

[0032] Code for performing operations for embodiments may be written in any combination of one or more programming languages, including an object-oriented programming language such as Python, Ruby, Java, Smalltalk, C++, or the like, and conventional procedural programming languages ​​such as the "C" programming language or the like, and / or machine languages ​​such as assembly languages. The code may execute entirely on the user's computer, partially on the user's computer, as a standalone software package, partially on the user's computer and partially on a remote computer, or entirely on the remote computer or server.In the latter scenario, the remote computer may be connected to the user's computer over any type of network, including a local area network (LAN) or a wide area network (WAN), or the connection may be made to an external computer (for example, over the Internet using an Internet service provider).

[0033] Reference throughout the specification to "a single embodiment," "an embodiment," or similar language means that a particular feature, structure, or characteristic described in connection with the embodiment is included in at least one embodiment. Thus, each appearance of the phrase "in a single embodiment," "in an embodiment," or similar language throughout the specification may refer to the same embodiment, but does not necessarily mean "one or more, but not all, embodiments," unless expressly stated otherwise. The terms "including," "comprising," "having," and variations thereof mean "including, but not limited to," unless expressly stated otherwise.A numbered list of items does not imply that any or all of the items are mutually exclusive, unless expressly stated otherwise. The terms "a," "an," and "the" also refer to "one or more" unless expressly stated otherwise.

[0034] Furthermore, the described features, structures, or characteristics of the embodiments may be combined in any suitable manner. In the following description, numerous specific details are provided, such as examples of programming, software modules, user selections, network transactions, database queries, database structures, hardware modules, hardware circuits, hardware chips, etc., to provide a thorough understanding of the embodiments. However, one of ordinary skill in the relevant art will recognize that embodiments may be practiced without one or more of the specific details, or with different methods, components, materials, etc. In other examples, well-known structures, materials, or acts are not shown or described in detail to avoid obscuring aspects of an embodiment.

[0035] Aspects of the embodiments are described below with reference to schematic flowcharts and / or schematic block diagrams of the methods, apparatus, systems, and computer program products according to the embodiments. It is understood that each block of the schematic flowcharts and / or schematic block diagrams, and combinations of the blocks in the schematic flowcharts and / or schematic block diagrams, may be implemented by code.This code may be provided to a processor of a general purpose computer, a special purpose computer, or other programmable data processing device to produce a machine such that instructions executing via the processor of the computer or other programmable data processing device produce means for performing the functions / acts specified in the schematic flowchart and / or schematic block diagram block or blocks.

[0036] The code may also be stored in a storage device that can cause a computer, other programmable data processing apparatus, or other devices to function in a particular manner such that the instructions stored in the storage device result in a manufactured article, including instructions that perform the function / action specified in the schematic flowchart and / or schematic block diagram block or blocks.

[0037] The code may also be loaded onto a computer, other programmable data processing apparatus, or other devices to cause a series of method steps to be executed on the computer, other programmable data processing apparatus, or other devices to produce a computer-implemented process, such that the code executing on the computer or other programmable device provides processes for performing the functions / acts specified in the schematic flowchart and / or schematic block diagram block or blocks.

[0038] The schematic flowcharts and / or schematic block diagrams in the figures illustrate the architecture, functionality, and operation of possible embodiments of the devices, systems, methods, and computer program products according to various embodiments. In this regard, each block in the schematic flowcharts and / or block diagrams may represent a module, segment, or portion of code that includes one or more executable instructions of the code for performing the specific logical function(s).

[0039] It should be noted that in some alternative embodiments, the functions shown in the block may occur out of the order shown in the figures. For example, two blocks shown consecutively may actually be executed substantially concurrently, or the blocks may sometimes be executed in reverse order, depending on the functionality involved. Other steps and methods may be designed that are equivalent in function, logic, or effect to one or more of the blocks, or portions thereof, of the illustrated figures.

[0040] Although various arrow types and line styles may be used in the flowcharts and / or block diagrams, they are not to be construed as limiting the scope of the corresponding embodiments. Indeed, some arrows or other connections may be used to indicate only the logical flow of the illustrated embodiment. For example, an arrow may indicate a wait or monitor period of unspecified duration between the enumerated steps of the illustrated embodiment. It should also be noted that each block of the block diagrams and / or flowcharts, and combinations of the blocks in the block diagrams and / or flowcharts, may be implemented by special-purpose hardware-based systems that perform the specific functions or acts, or by combinations of special-purpose hardware and code.

[0041] The description of elements in each figure may refer to elements in subsequent figures. Similar numbers refer to similar elements in all figures, including alternative embodiments of the similar elements.

[0042] Fig. 1 is a schematic block diagram illustrating one embodiment of a system 100 for adjusting volume settings based on proximity and activity data. In one embodiment, the system 100 includes one or more information handling devices 102, one or more volume management modules 104, one or more data networks 106, and one or more servers 108. In certain embodiments, one of ordinary skill in the art will recognize in light of this disclosure that, although a specific number of information handling devices 102, volume management modules 104, data networks 106, and servers 108 are described in Fig. 1, any number of information handling devices 102, volume management modules 104, data networks 106, and servers 108 may be included in a proximity-based volume adjustment system 100.

[0043] In one embodiment, the system 100 includes one or more information handling devices 102. The information handling devices 102 may be one or more of a desktop computer, a laptop computer, a tablet computer, a smartphone, a set-top box, a game console, a smart TV, a smartwatch, a physioband or other wearable activity tracker, an optical head-mounted display (e.g., a virtual reality headset, smart glasses, or the like), an HDMI or other electronic display software key, a personal digital assistant, or other computing device that includes a processor (e.g.,a central processing unit (“CPU”), a processor core, a field programmable gate array (“FPGA”) or other programmable logic, an application-specific integrated circuit (“ASIC”), a control unit, a microcontroller and / or other semiconductor integrated circuit devices), a volatile memory and / or a non-volatile storage medium.

[0044] In certain embodiments, information handling devices 102 are communicatively coupled to one or more other information handling devices 102 and / or to one or more servers 108 via a data network 106, described below. In another embodiment, information handling devices 102 are configured to execute various programs, program code, applications, instructions, functions, and / or the like that can access, store, download, upload, and / or the like data located on one or more servers 108.

[0045] In one embodiment, a volume management module 104 is configured to adjust a volume setting of an information handling device 102 (e.g., a target device) based on proximity to one or more other information handling devices 102 (e.g., trigger devices). In the embodiment, the volume management module 104 determines proximity to an information handling device 102, e.g., a trigger device, in response to detecting the information handling device 102. In the embodiment, the volume management module 104 receives context data from the detected information handling device 102. The context data may describe an activity state of a user of the information handling device 102.The volume management module 104, in the embodiment, adjusts a volume setting, for example, on the target device, as a function of the determined proximity to the detected information handling device 102 and the activity state of the user. The volume management module 104, including its various sub-modules 202-306, may be located on one or more information handling devices 102 in the system 100, on one or more servers 108, on one or more network devices, and / or the like. The volume management module 104 is described in greater detail below with reference to FIG. Fig. 2 and Fig. 3 described.

[0046] In various embodiments, the volume management module 104 may be implemented as a hardware device that may be installed or deployed on an information handling device 102, on a server 108, or anywhere on the data network 106. In certain embodiments, the volume management module 104 may include a hardware device, such as a secure hardware dongle or other hardware application device (e.g., a set-top box, a network application, or the like) that connects to a device, such as a laptop computer, a server 108, a tablet computer, a smartphone, or the like, either through a wired connection (e.g., a USB connection) or a wireless connection (e.g., Bluetooth®, Wi-Fi, near-field communication ("NFC"), or the like); that may be mounted on an electronic display device (e.g.,a television or monitor using an HDMI connector, a display port connector, a miniport connector, a VGA connector, a DVI connector, or the like) and / or the like. A hardware application of the volume management module 104 may be a power interface, a wired and / or network interface, a graphical interface attached to the display, and / or a semiconductor integrated circuit device, as described below, configured to perform the functions described herein with respect to the volume management module 104.

[0047] The volume management module 104, in such an embodiment, may include a semiconductor integrated circuit device (e.g., one or more chips, or other discrete logic hardware) or the like, such as a field programmable gate array ("FPGA") or other programmable logic, firmware for an FPGA or other programmable logic, microcode for execution on a microcontroller, an application-specific integrated circuit ("ASIC"), a processor, a processor core, or the like. In one embodiment, the volume management module 102 may be mounted on a printed circuit board with one or more electrical leads or connections (e.g., to volatile memory, a non-volatile storage medium, a network interface, a peripheral device, a graphical / display interface, or the like).The hardware application may include one or more pins, pads, or other electrical connections configured to send and receive data (e.g., in communication with one or more electrical lines of a circuit board or the like), and one or more hardware circuits and / or other electronic circuits configured to perform various functions of the volume management module 104.

[0048] In certain embodiments, the semiconductor integrated circuit device or other hardware application of a volume management module 104 includes and / or is communicatively coupled to one or more volatile storage media, which may include, but are not limited to, random access memory ("RAM"), dynamic RAM ("DRAM"), cache, or the like.In one embodiment, the semiconductor integrated circuit device or other hardware application of the volume management module 104 includes and / or is communicatively coupled to one or more non-volatile storage media, which may include, but are not limited to: NAND flash memory, NOR flash memory, nano random access memory (Nano RAM or NRAM), wire-based nanocrystal memory, silicon oxide-based sub-10 nanometer process memory, graphene memory, silicon oxide-nitride-oxide-silicon ("SONOS"), resistive RAM ("RRAM"), programmable metallization cell ("PMC"), conductive bridging RAM ("CBRAM"), magnetostrictive RAM ("MRAM"), dynamic RAM ("DRAM"), phase change RAM ("PRAM" or "PCM"), magnetic storage medium (e.g., hard disk, magnetic tape), optical storage medium, or the like.

[0049] The data network 106, in one embodiment, comprises a digital communications network that transmits digital communications. The data network 106 may include a wireless network, such as a cellular wireless network, a local area wireless network such as a Wi-Fi network, a Bluetooth® network, a near field communication ("NFC") network, an ad hoc network, and / or the like. The data network 106 may include a wide area network ("WAN"), a storage area network ("SAN"), a local area network (LAN), an optical fiber network, the Internet, or another digital communications network. The data network 106 may include two or more networks. The data network 106 may include one or more servers, routers, switches, and / or other network equipment.The data network 106 may also include one or more computer-readable storage media, a hard disk drive, an optical drive, non-volatile memory, RAM, or the like.

[0050] The one or more servers 108 may, in one embodiment, be embodied as a server wing, large-scale server, server tower, rack server, and / or the like. The one or more servers 108 may be configured as a mail server, a web server, an application server, an FTP server, a media server, a data server, a web server, a file server, a virtual server, and the like. The one or more servers 108 may be communicatively coupled (e.g., networked) to one or more information handling devices 102 via a data network 106. The one or more servers 108 may store data associated with an information handling device, a user, and / or the like.For example, a server 108 may store location data for an information handling device 102, activity data of a user, calendar / scheduling data, biometric data, and / or other contextual data describing a location of an information handling device 102 and / or relating to a user's activity.

[0051] Fig. Figure 2 is a schematic block diagram illustrating one embodiment of a device 200 for adjusting volume settings based on proximity and activity data. In one embodiment, device 200 includes one embodiment of a volume management module 104. Volume management module 104, in some embodiments, includes one or more of a proximity module 202, an activity module 204, and a volume module 206, which are described in more detail below.

[0052] In one embodiment, the proximity module 202 is configured to determine proximity to an information handling device 102, e.g., a trigger device. In certain embodiments, the proximity module 202 determines proximity to a trigger device in response to detecting the trigger device. In one embodiment, the proximity module 202 detects a trigger device within proximity of a target device based on data received from one or more sensors, such as proximity sensors, motion sensors, infrared sensors, wireless short-range sensors (e.g., Bluetooth®, NFC, Wi-Fi, radio, and / or the like), wireless signal strength sensors, location sensors (e.g., Global Positioning System ("GPS") sensors), and / or the like.For example, the proximity module 202 may detect that a smartphone, the trigger device, is within short-range wireless communication of another smartphone, the target device, based on data received from a Bluetooth® sensor on the target device that is communicatively coupled to the proximity module.

[0053] The proximity module 202 can determine the distance to the trigger device based on a detected signal strength using signal sensors, a Bluetooth® or other short-range wireless communication detection method, based on data from a location server, a wireless triangulation method, sound sensors, light sensors, and / or the like. For example, if the proximity module 202 is located on a user's smartphone, the proximity module 202 can detect a wireless physioband of another user by detecting a Bluetooth® signal emitted by the wireless physioband. Furthermore, the proximity module 202 can use the detected Bluetooth® signal to determine a distance between the smartphone and the wireless physioband.If both the smartphone and the wireless physioband include location sensors, such as a GPS sensor, the proximity module 202 can both determine the location of the devices and derive a distance between the devices based on their detected locations.

[0054] In one embodiment, the proximity module 202 determines a vertical position of a target device and / or a trigger device based on data collected by one or more sensors, such as an altimeter, by a Wi-Fi access point to which an information handling device 102 is connected, by a wireless triangulation localization method, and / or the like. For example, the proximity module 202 may determine that a tablet computer is located in a ground-floor bedroom and that a laptop computer is located in a second-floor bedroom of a house based on altimeter data and / or by determining that the devices are connected to different wireless access points in the house—the tablet computer is connected to the ground-floor access point and the laptop computer is connected to the second-floor access point.Based on the vertical position data, the proximity module 202 can determine how “close” the target and trigger devices are to each other and whether they are located on different floors.

[0055] In another embodiment, the activity module 204 is configured to receive context data from a detected information handling device 102, the trigger device. The context data, as used herein, may include data describing an activity state of a user of the trigger device, e.g., a resting state, an awake state, an active state, a sleep state, and / or the like. In certain embodiments, the context data may include biometric data, which may indicate whether the user is awake, asleep, asleep, performing an activity, sitting, and / or the like, calendar / scheduling data, location data, data from one or more sensors, such as accelerometers, vibration sensors, and / or the like, which may indicate user activities, and / or the like.

[0056] For example, the activity module 204 may receive biometric data from a wireless activity tracker worn by a user indicating that the user is sleeping. In another example, the activity module 204 may receive acceleration data from a smartphone user indicating that the user is walking. In another example, the activity module 204 may receive scheduling data for a user from the user's tablet computer indicating that the user is currently participating in a scheduled session.

[0057] In one embodiment, the volume module 206 is configured to adjust one or more volume levels or settings on an information handling device 102, e.g., the target device, as a function of the determined proximity to another information handling device 202, e.g., the trigger device, and the activity state of the user, as determined based on the received context data. In certain embodiments, the volume module 206 decreases a volume level below a predetermined volume level in response to determining that the user activity state is a sleep state.

[0058] For example, a user may walk into a bedroom with their smartphone. A proximity module 202 disposed on or associated with the smartphone may detect that a fitness tracker (e.g., a Fitbit®) worn by the user's wife is within proximity of the user's smartphone. The proximity module 202 may also determine that the user's smartphone is within five feet of the wife's fitness tracker. The activity module 204 may request and / or receive contextual data from the fitness tracker indicating an activity state of the user. In this example, the contextual data may include biometric data indicating that the wife is asleep.

[0059] Continuing with the above example, the volume module 206 may adjust one or more volume settings on the user's smartphone as a function of the proximity of the smartphone to the fitness tracker and determining that the user is asleep. In this example, the volume module 206 may set the volume on the user's smartphone to low so that no sound is generated in response to calls, notifications, text messages, games, music, and / or the like because the context data indicates that the woman is asleep and the determined distance between the devices is only five feet. In this manner, the volume management module 104 may control the volume of a target device based on activities of other users, as determined by the context data collected from other user devices, and the proximity to the other user devices (e.g., the trigger devices).

[0060] In certain embodiments, the volume module 206 adjusts a volume level of a target device based on a type of event that generates a sound on a target device. In certain embodiments, the volume module 206 adjusts a call ring volume, a text message notification volume, an emergency notification volume, an email notification volume, a game volume, a music volume, a video volume, a volume associated with a speaker, a voice output volume (e.g., sounds generated by Google Now®, Siri®, Cortana®, or the like), and / or the like. For example, the volume module 206 may mute a ringer for incoming phone calls on a smartphone while only reducing the volume level for text message notifications to a certain level.

[0061] In one embodiment, the volume module 206 adjusts the volume level of a target device according to one or more contacts contacting the target device. For example, if the volume module 206 adjusts the volume level of a smartphone's ringtone, the ringtone may be set to silent when receiving calls from Bob, but the volume may only be reduced to a certain level for calls received from Jill.

[0062] In some embodiments, the volume module 206 adjusts a volume level of a target device based on additional input received from a variety of different trigger devices located within a communication environment of the target device. For example, the volume module 206 disposed on an iPhone® may detect that an Android® phone is within proximity of the iPhone®; however, based on the context data received from the Android® phone, the volume module 206 may determine that the user is awake and active and therefore not in a sleep state. Thus, the volume module 206 may not adjust a volume setting of the iPhone® based on the proximity and / or context data of the Android® phone. However, in some embodiments, the iPhone® may also receive data from other devices within proximity of the iPhone® and the Android® phone.For example, the volume module 206 may receive data from a smart TV indicating that the smart TV is turned on, which may indicate that users, such as the iPhone® user, are watching the smart TV. Accordingly, the volume module 206 may reduce one or more volume settings of the iPhone® based on the smart TV data. Other external data, such as sound data received by a microphone on the target device (e.g., capable of hearing a TV sound to determine that the TV is turned on), motion data from one or more motion sensors, and / or the like, may be used.

[0063] In another exemplary embodiment, the activity module 206 may receive context data from a home office computer that includes schedule / calendar data for family members in the household (e.g., school schedules, sleep schedules, and the like). In such an embodiment, the volume module 206 may adjust a volume setting of a target device based on the calendar data and / or proximity to a trigger device, location data, and / or the like.

[0064] For example, if calendar data indicates that a user's child goes to bed at 7:00 PM, the volume module 206 may decrease or mute a tablet computer volume when the tablet computer is within proximity of one of the child's bedrooms (e.g., as the distance between the tablet computer and the child's bedroom decreases), as determined from location data associated with the tablet computer, the child's bedroom, and / or location data associated with a trigger device located within the child's bedroom. Furthermore, as the tablet computer is moved away from the child's bedroom (e.g., as the distance between the tablet computer and the child's bedroom increases), the volume module 206 may adjust the tablet computer's volume settings by increasing a volume setting until it reaches its previous volume level.

[0065] In another exemplary embodiment, the activity module 204 may receive calendar data from a device in the user's office indicating that the user is scheduling a meeting at 1:00 PM. As the meeting time approaches, the volume module 202 may silence the user's smartphone so that it does not disturb the meeting. The volume module 206 may reset the volume settings on the user's smartphone to their previous settings after the scheduled meeting time has passed.

[0066] In one embodiment, as described above, the volume module 206 may decrease a volume level of an information handling device 102 below a predetermined or threshold volume level. The predetermined volume level may be set based on the determined proximity to a trigger device. In other words, the volume module 206 may continuously decrease the volume as a target device approaches a trigger device that also indicates that the user is in a sleep state. For example, if a user is sleeping, the volume module 206 of a smartphone approaching the sleeping user's device may reduce the smartphone volume level and may continue to reduce the volume level as the smartphone is brought into closer proximity to the sleeping user's device.

[0067] In certain embodiments, as described above, the volume module 206 resets the volume settings of a target device in response to the proximity module 202 determining that the target device is not within proximity of a trigger device; in response to the activity module 204 receiving context data indicating that another user is no longer in sleep mode; and / or the like. For example, the volume module 206 may reset a phone ringer volume to a previous setting in response to determining that another user has woken up based on biometric data received by the activity module 204 from the woken up user's wearable fitness tracker.

[0068] In one embodiment, the volume module 206 adjusts a volume setting of a device when the proximity module 202 determines that the target device is within a threshold proximity of a trigger device, or when the activity module 204 detects that the user's activity state has changed to a sleep state. In some embodiments, the volume module 206 does not adjust the volume setting of a target device until the target device receives or detects an event that generates an audible sound. For example, the volume module 206 may not adjust a ringer volume of a phone until a call is received. Thus, the volume module 206 may adjust volume settings of a target device on an "as needed" basis.

[0069] In some embodiments, the proximity module 202 determines a different or new proximity to a trigger device in response to detecting a change in a previously determined proximity. In such an embodiment, the proximity module 202 may periodically check a proximity of a target device in response to a previously detected trigger device. If a previously determined proximity is different from a currently determined proximity, then the proximity module 202 may determine the new proximity to the trigger device, e.g., the distance between the proximity module 202 or a target device on which the proximity module 202 is disposed and the trigger device. The volume module 206 may then adjust one or more volume settings of the target device as a function of the different proximity, e.g.,the volume module 206 may increase the volume when the distance between the target device and the trigger device is greater than a previously determined distance, or decrease the volume when the distance between the target device and the trigger device is less than a previously determined distance.

[0070] In certain embodiments, the activity module 204 receives new context data from a trigger device. In such an embodiment, the activity module 204 may periodically query and / or receive context data from the trigger device to determine if the user's activity state has changed. If the user's activity state has changed, e.g., from a sleep state to an active state or vice versa, the volume module 206 may adjust one or more volume settings of the device as a function of the new activity state. e.g., the volume module 206 may increase the volume if another user's activity state, as indicated by the context data, changes from a sleep state to an active state, or decrease the volume if the other user's activity state has changed from an active state to a sleep state.

[0071] Fig. 3 is a schematic block diagram illustrating one embodiment of a device 300 for adjusting volume settings based on proximity and activity data. In one embodiment, the device 300 includes one embodiment of a volume management module 104. In certain embodiments, the volume management module 104 includes one or more of a proximity module 202, an activity module 204, and a volume module 206, which are substantially similar to the proximity module 202, the activity module 204, and the volume module 206 described above with reference to Fig. 2. Furthermore, the volume management module 104 may include one or more of a connection module 302, an authorization module 304, and a notification module 306, which are described in more detail below.

[0072] The connection module 302 is configured, in one embodiment, to connect to the detected trigger device. In certain embodiments, the connection module 302 connects to the trigger device using a short-range wireless communication protocol such as a Bluetooth® protocol, an NFC communication protocol, an infrared protocol, a Wi-Fi protocol, a radio protocol, and / or the like. For example, in response to the proximity module 202 detecting a laptop within close proximity of a user's smartphone, the connection module 302 may select a communication protocol compatible with both devices to initiate communication with the laptop. After communication is established, the activity module 204 may retrieve context data from the laptop, including user data, scheduling data, location data, and / or the like.

[0073] In one embodiment, the authorization module 304 is configured to determine whether a detected trigger device is a device authorized to communicate with the target device. The authorization module 304, in some embodiments, includes a list of preselected, predetermined, authorized, registered, and / or similar trigger devices permitted to communicate with the target device. In such an embodiment, the authorization module 304 may identify an authorized trigger device using an identifier for the trigger device, such as an IP address, a MAC address, a device name, and / or the like.

[0074] The authorization module 304, in some embodiments, registers a trigger device as an authorized device in response to user input. For example, a user may provide the authorization module 304 with a device identifier for a wearable fitness tracker to register the wearable fitness tracker as an authorization device, which may allow the user to "enroll" in allowing the wearable fitness tracker or a user activity detected by the wearable fitness tracker to control the volume of the user's device. In certain embodiments, the trigger device may request permission to communicate with the target device in response to the target device detecting the trigger device.For example, the authorization module 304 may receive a request via a Bluetooth® connection with a trigger device requesting permission to send context data and / or other types of data to the authorization module 304.

[0075] In one embodiment, notification module 306 is configured to notify a user that a volume setting on the target device has been adjusted after volume module 206 has adjusted the volume setting. For example, notification module 306 may present a notification on the user's smartphone to indicate that the volume for text message notifications has been muted because the smartphone was within a threshold proximity to the user's sleeping wife, as determined based on the context data received from the user's wife's physioband.Similarly, the notification module 306 may maintain a log, history, and / or the like of the times the volume module 206 adjusted the volume settings of a target device, including which settings were adjusted, when the settings were adjusted, why the settings were adjusted, and / or the like.

[0076] Fig. 4 is a schematic flow diagram illustrating one embodiment of a method 400 for adjusting volume settings based on proximity and activity data. In one embodiment, the method 400 begins and a proximity module 202 determines at 402 a proximity to an information handling device 102, e.g., a trigger device, in response to detecting the trigger device. In another embodiment, an activity module 204 receives at 404 context data from the trigger device that may describe an activity state of a user of the trigger device. In various embodiments, a volume module 206 adjusts a volume setting of a target device as a function of the proximity of the trigger device and the user's activity state at 406, and the method 400 ends.

[0077] Fig.5 is a schematic flow diagram illustrating one embodiment of another method 500 for adjusting volume settings based on proximity and activity data. In one embodiment, method 500 begins with a proximity module 202 detecting at 502 that a trigger device is within a communication range of a target device. In another embodiment, proximity module 202 determines a proximity of the target device to the trigger device at 502.

[0078] If, in one embodiment, the authorization module 304 determines at 506 that the trigger device is not authorized to communicate with the target device, the method 500 ends. Otherwise, in one embodiment, the connection module 302 connects the target device to the trigger device at 508. In some embodiments, the activity module 204 receives context data from the trigger device at 502 describing an activity state of a user of the trigger device at 510.

[0079] In one embodiment, at 512, the volume module 206 adjusts one or more volume settings for the target device based on the determined proximity to the trigger device and the determined activity state of the trigger device user. In one embodiment, at 514, the notification module 306 logs the volume adjustment details in a log or history associated with the target device. In another embodiment, at 516, the notification module 306 presents a notification to the user on the target device notifying the user that one or more volume settings have been changed on the target device and / or reasons why the volume settings have been changed.

[0080] In some embodiments, if the activity module 204 determines at 516 that context data associated with the user of the trigger device has changed, the activity module 204 receives new context data from the trigger device at 510, which the volume module 206 can use to adjust one or more volume settings of the target device at 512. On the other hand, if the proximity module 202 determines at 520 that a proximity of the target device to the trigger device has changed, meaning that the distance between the devices has changed, the proximity module 202 determines the new proximity to the trigger device at 522. Otherwise, the method ends at 500.

[0081] In one embodiment, if the proximity module 202 determines at 524 that the new proximity to the trigger device is not outside of a communication environment, the volume module 206 adjusts one or more settings of the target device based on the new proximity. Otherwise, at 526, the volume module 206 resets one or more adjusted volume settings of the target device to a previous volume setting, and method 500 ends.

[0082] Embodiments may be practiced in other specific forms. The described embodiments are to be considered in all respects only as illustrative and not restrictive. The scope of the invention is indicated by the appended claims.

Claims

[1] Device (104) comprising: a processor; a memory storing code executable by the processor to: Determining (402) a proximity of a target device (102) to an information handling device (102) in response to detecting the information handling device (102); Receiving (404) context data from the information handling device (102), wherein the context data describes an activity state of a user of the information handling device (102); and Adjusting (406) a volume setting of the target device (102) as a function of the proximity of the information handling device (102) and the activity state of the user. wherein the code is further executable by a processor to determine whether the user's activity state is a resting state, wherein the context data comprises one or more of biological data, calendar data, and location data. [2] The device (104) of claim 1, wherein the code adjusts the volume setting in response to determining that the user activity state is a sleep state by decreasing a volume level below a predetermined volume level. [3] The apparatus (104) of claim 2, wherein the predetermined volume level is determined according to the determined proximity to the information handling device (102). [4] The apparatus (104) of claim 1, wherein the code is further executable by the processor to connect to the information handling device (102) using a short-range wireless communication protocol, wherein the short-range wireless communication protocol is selected from the group consisting of: a Bluetooth® protocol, a near-field communication ("NFC") protocol, an infrared protocol, and a Wi-Fi protocol. [5] The apparatus (104) of claim 1, wherein the code is further executable by the processor to: Determining a different proximity to the information handling device (102) in response to detecting a change in the determined proximity; and Adjusting the volume setting as a function of other proximity. [6] The apparatus (104) of claim 1, wherein the code is further executable by the processor to: Receiving other context data from the information handling device (102) in response to determining a change in the activity state of the user; and Adjusting the volume setting as a function of the user's changing activity state. [7] The apparatus (104) of claim 1, wherein the code is further executable by the processor to adjust the volume setting in response to one of determining proximity to the information handling device (102) and detecting an event that generates an audible sound. [8] The apparatus (104) of claim 1, wherein the code is further executable by the processor to adjust the volume setting in response to determining that the information handling device (102) is an authorized information handling device. [9] The apparatus (104) of claim 1, wherein the code is further executable by the processor to notify the user that the volume setting has been changed in response to the adjusted volume setting. [10] The apparatus (104) of claim 1, wherein proximity to the information handling device (102) is determined using one or more sensors, the one or more sensors being selected from the group consisting of: a Bluetooth® communication sensor, a signal strength sensor, a location sensor, an altimeter, and a proximity sensor. [11] The apparatus (104) of claim 1, wherein the information handling device (102) is selected from the group consisting of: a wearable activity tracker, a smartphone, and a tablet computer. [12] The device (104) of claim 1, wherein the volume setting is associated with one or more of a speaker volume, a notification volume, a ringer volume, a music volume, a video volume, a game volume, and a voice output volume. [13] A method (400) for controlling a volume setting of a target device (102), comprising: Determining (402), using a processor, a proximity of the target device (102) to an information handling device (102) in response to detecting the information handling device (102); Receiving context data from the information handling device (102), wherein the context data describes an activity state of a user of the information handling device (102); and adjusting the volume setting of the target device (102) as a function of the proximity of the information handling device (102) and the activity state of the user; wherein the method further comprises determining whether the activity state of the user is a resting state based on the context data, wherein the context data comprises one or more of biological data, calendar data, and location data. [14] The method (400) of claim 13, wherein the volume setting is adjusted in response to determining that the user activity state is a sleep state by decreasing a volume level below a predetermined volume level, the predetermined volume level determined according to the determined proximity to the information handling device (102). [15] The method (400) of claim 13, further comprising: Determining a different proximity to the information handling device (102) in response to detecting a change in the determined proximity; and Adjusting the volume setting as a function of other proximity. [16] The method (400) of claim 13, further comprising: Receiving other context data from the information handling device (102) in response to determining a change in the activity state of the user; and Adjusting the volume setting as a function of the user's changing activity state. [17] The method (400) of claim 13, further comprising resetting the volume setting to a previous volume setting in response to determining that one or more of the information handling devices (102) are outside of a communication environment and that the user's activity state is not a sleep state. [18] A computer program product comprising a computer-readable storage medium storing code executable by a processor of a device to perform a method according to any one of claims 13 to 17.

Citation Information

Patent Citations

  • DEVICE AND METHOD FOR CONTROLLING USER STATE DEPENDENT INFORMATION PRESENTATION

    DE69902487T2

  • Audio device volume manager using measured volume perceived at a first audio device to control volume generation by a second audio device

    US20120020486A1