Hearing Augmentation Systems and Methods

20170230788 · 2017-08-10

Assignee

Inventors

Cpc classification

International classification

Abstract

Various systems and methods are disclosed herein to increase the quality of the sound delivered to a user and allow personalization to optimize listening performance and comfort under atypical listening conditions, environment specific adjustment, and data capture to assist in the personalization of the system to the user's needs and preferences. Features disclosed include sound level rating systems that aggregate noise data detected by user's mobile phones or hearing devices to provide a database of real-time noise levels. Additionally, a user's sound settings may be saved in the system by location so that they may be recalled when re-entering a specific location. A remote clinician may tune a hearing device, or a user can tune the device using a pre-recorded audio sample. Also, a user may replay the last X seconds of audio recorded by their hearing device.

Claims

1. A mobile device for calculating and generating sound level rating for various establishments comprising: an antenna that receives audio data from a hearing device; a GPS receiver configured to output location data indicative of a location of the mobile device; and a memory containing machine readable medium comprising machine executable code having stored thereon instructions; a control system having at least one processor coupled to the memory, the processor configured to execute the machine executable code to cause the control system to: associate the location data with the audio data; and transmit the associated location data and audio data over a wireless network to a remote server.

2. The mobile device of claim 1, wherein location data is associated with audio data that was created on the same date and within a specified time period as the location data.

3. The mobile device of claim 2, wherein the specified time period is 30 seconds.

4. The mobile device of claim 1, wherein the remote server determines a set of establishments within a certain distance of the location represented by the location data.

5. The mobile device of claim 1, wherein the control system is configured to determine a set of establishments within a certain distance of the location represented by the location data.

6. The mobile device of claim 5, wherein the control system is further configured to present the set of establishments on a user interface screen to request a user to select one of the possible establishments.

7. The mobile device of claim 4, wherein the control system is further configured to receive user selection of one of the possible establishments and associate the establishment with the audio data.

8. A system for processing of sound data relating to specific establishments comprising: a database; a memory containing non-transitory machine readable medium and having stored thereon machine executable code adapted to process sound data; a control system including at least one processor coupled to the memory, the processor configured to execute the machine executable code to cause the control system to: receive, at a server, a first set of audio data recorded at a location from a first mobile device and a second set of audio data recorded at the location from a second mobile device; and process, by the server, the first and second sets of audio data to determine an indication of a noise level at the location and store the indication in the database.

9. The system of claim 8, wherein the location is a restaurant, bar, or concert venue.

10. The system of claim 8, wherein the first set of audio data is referenced to a first set of location data detected at the location and the second set of audio data is referenced to a second set of location data detected at the location.

11. The system of claim 10, wherein data that is referenced comprises data that is received by the server in the same batch or within a threshold time window from the same mobile device.

12. The system of claim 8, wherein the first and second sets of audio data are referenced to a date and time recording.

13. The system of claim 8, wherein the control system is further configured to output the indication of the noise level at the location.

14. The system of claim 8, wherein the stored noise level indication is further characterized by one or more from the group consisting of: a current noise level; a historical noise level; an average noise level; a category of noise level; an output in decibels; an output in decibels by frequency band; a color-coded system; a numeric decibel value; and a qualitative assessment.

15. A hearing device and associated application for calculating and generating sound level ratings for various establishments comprising: a microphone adapted to transduce detected sound energy into an electrical signal; an analog-to-digital converter adapted to convert the electrical signal into a digital signal; a control system having a processor coupled with a memory, the memory having stored thereon executable instructions and being adapted to store audio data representing the digital signal; and a radio transmitter adapted to transmit the audio data to a mobile device having an antenna within range of the radio transmitter, the mobile device adapted to receive the audio data and having a mobile device memory adapted to store the audio data and an application comprising instructions for processing the audio data, the mobile device having a GPS module adapted to generate location data and having a processor adapted to execute the instructions stored in the mobile device memory and associate GPS location data with stored audio data.

16. The hearing device and associated application of claim 15, wherein the application, when executed by the mobile device processor, is adapted to cause the mobile device to: associate the GPS location data with the audio data; and transmit the associated GPS location data and audio data over a wireless network to a remote server.

17. The hearing device and associated application of claim 15, wherein the application, when executed by the mobile device processor, is adapted to cause the mobile device to filter the audio data to remove frequencies outside the human speech range.

18. The hearing device and associated application of claim 15, wherein the application, when executed by the mobile device processor, is adapted to cause the mobile device to filter and process the audio data to provide an indication of a level or content of specific frequency bands in order to send only the indication of the level of the specific frequency bands to the remote server.

Description

BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings, which are incorporated in and constitute a part of this specification, exemplify the embodiments of the present invention and, together with the description, serve to explain and illustrate principles of the invention. The drawings are intended to illustrate major features of the exemplary embodiments in a diagrammatic manner. The drawings are not intended to depict every feature of actual embodiments nor relative dimensions of the depicted elements, and are not drawn to scale.

[0020] FIG. 1 is an overview of an example hearing system.

[0021] FIG. 2 is a diagram of an example of a hearing device.

[0022] FIG. 3 is a flow chart illustrating a process for aggregating sound level ratings for specific locations.

[0023] FIG. 4 is a flow chart illustrating a process for suggesting sound settings for specific locations.

[0024] FIG. 5 is a flow chart illustrating a process for outputting suggested sound settings when a user enters a specific location.

[0025] FIG. 6 is a flow chart illustrating a process by which a remotely located clinician may tune a hearing device.

[0026] FIG. 7 is a flow chart illustrating a process for tuning a hearing device using a pre-recorded audio sample.

[0027] FIG. 8 is a flow chart illustrating a process for implementing an instant replay feature for a hearing device.

[0028] In the drawings, the same reference numbers and any acronyms identify elements or acts with the same or similar structure or functionality for ease of understanding and convenience. To easily identify the discussion of any particular element or act, the most significant digit or digits in a reference number refer to the Figure number in which that element is first introduced.

DETAILED DESCRIPTION

[0029] Various examples of the invention will now be described. The following description provides specific details for a thorough understanding and enabling description of these examples. One skilled in the relevant art will understand, however, that the invention may be practiced without many of these details. Likewise, one skilled in the relevant art will also understand that the invention can include many other obvious features not described in detail herein. Additionally, some well-known structures or functions may not be shown or described in detail below, so as to avoid unnecessarily obscuring the relevant description.

[0030] The terminology used below is to be interpreted in its broadest reasonable manner, even though it is being used in conjunction with a detailed description of certain specific examples of the invention. Indeed, certain terms may even be emphasized below; however, any terminology intended to be interpreted in any restricted manner will be overtly and specifically defined as such in this Detailed Description section.

Hearing System Overview

[0031] FIG. 1 illustrates an overview of an example hearing system 150 according to the present disclosure. The system 150 may include a hearing device 100, associated or used by, a user 105, a mobile device 110 linked with the hearing device using antennas 115, and a personal profile for the user 105 that may be stored optionally on the mobile device 110 or elsewhere (e.g., server). In some embodiments, the hearing device 100 may include a charging case that can store the audio data, and the audio data may be uploaded to a computer (for instance for users without a mobile device) which could then upload data over the network 120, such as, to a server 130. Additionally, a network 120 may also link the mobile device 110 and/or hearing device 100 to a server 130 and database 160 that stores personal profiles, including software for analysis of sound data and performing other functions as disclosed herein. Furthermore, other users 107 with operating hearing devices 100 may also be linked to the network 120 and sever 130 and sound/hearing data from the other users 107 hearing devices may be aggregated and stored in the database 160. In addition, a clinician 140 operating a computing device 135 may be connected to the network 120 via a communications component of a computing device 135 to allow the user to diagnose and make changes to the settings of the hearing devices 100. The changes made by clinicians 140 may also be stored in the database 160 for separate or combined reference. This will allow the clinician to remotely diagnose the users 105 and change the settings on their hearing devices 100 while the user is in a noisy environment.

[0032] The hearing system 150 efficiently optimizes the hearing device 100 in certain environments based on an accumulation of data from both the user 105 and other users 107, and in some cases the clinician 140. This accumulated data can be utilized to present the user options or automatically set the audio settings on a user's hearing device 100. Furthermore, this data may be utilized by clinicians to evaluate certain settings and improve their recommend settings for a given user 105 and noise environment.

Personal Profiles

[0033] The hearing system 150 may include personal profiles 125 of users 105 that include their demographic information and individual hearing characteristics of a particular user 105. For example, the hearing system 150 may, upon initialization or the first time connecting a hearing device 105 to a computer or mobile device 110, prompt the user with a series of questions designed to obtain information for the personal profile to optimize the settings for a particular user 105.

[0034] For example, the hearing system 150 may ask the user 105 its age, gender, hearing history, medication, and certain information regarding their hearing related medical history. For example, the system 150 may ask the user: whether they have tinnitus, whether they are deaf in any ears, and other questions related to hearing and hearing health. Additionally, clinical data relating to the user's 105 hearing history may be downloaded or manually entered to a user's profile 125 that includes information regarding a user's 105 sensitivity to certain frequency ranges and amplitudes or combinations of frequencies ranges and amplitudes.

[0035] Additionally, the hearing device 100 may perform a hearing test automatically upon initialization that may then be stored with the personal profile 125. The information linked to a user's 105 personal profile 125 may be utilized to make suggestions for certain noise environments by, for example, recommending settings from other users 107 that have similar profiles 125 or have similar characteristics in their profiles 125. Furthermore, the personal profile 125 data could then be associated with the user's 105 audio data that is uploaded to the server 130 and stored in databases 160. This will allow the user's 105 data to be pooled with data associated with other users 107 and data from the clinician 140, including the associated personal profile 125 data for comparisons, and aggregation to discern trends and patterns to improve the recommend settings for users 105. Also, the history of settings associated with a particular user 105 may be used to notify a clinician if the system 150 detects hearing changes (based on the settings chosen) that indicate a potentially problematic hearing issue that is developing. Accordingly, prevention and treatment may be addressed earlier than previously possible and before a hearing condition has deteriorated further or to a point where it is not treatable.

Hearing Device

[0036] FIG. 2 is a diagram of an example hearing device 100 that includes a control system 220 and memory 235 that may be flash memory, solid state memory, a combination, or any other types of computer memory. The control system 220 may be any type of controller or combination of controllers, including a microprocessor, microcontroller, or other processors and associated components. The hearing device 100 may also include an antenna 115 for transmitting and/or receiving wireless signals. The hearing device 100 may employ any well-known radio and transceiver components including components using cellular, wideband, Bluetooth, Wi-Fi, NFC or other frequencies to transmit/receive data to/from an associated mobile device 110. Additionally, the hearing device 100 may include a single or multiple microphone(s) 225 for detecting sound in the ambient environment and a speaker 215 for delivering sound to the user's 205 ear. In some embodiments, the hearing device 100 may include a hearing device that fits into a user's ear, along with a remote microphone that can be located next to the source of the desired sound that would connect to the ear portion of the hearing device with Bluetooth. The hearing device 100 may also include any combination of data and signal processing components 230 including analog-to-digital converters, filters, noise reduction circuitry, and other signal processing components. These components may be in any combination in order to condition the audio data for transmitting over the speaker or for filtering from the microphone(s).

[0037] In some embodiments, the hearing device 100 may contain one or more processors, one or more analog-to-digital converters (ADC) and/or digital-to-analog converters (DAC), power supply including, for example, a battery, a charging function, user interface and indication equipment, such as buttons, and lights/LEDs, and one or more memory 235. The various components may communicate via one or more control/signal buses. The hearing device 100 may buffer and/or store in memory 235 a certain, preselected or configurable amount of audio data from the speaker 215 continuously. In addition, memory 235 may have stored therein one or more of: audio data associated with functions performed on the mobile device 200; program and configuration data, user profile data, sound profile data; radio protocol/configuration/parameter program and data; and control parameters and other data for establishing communication links. In some embodiments, memory 235 may be in the form of flash memory or other nonvolatile memory and may include different types of memory 235. In some embodiments, the amount of audio data stored or recorded may be the last “X” seconds of audio data detected. This audio data may also be filtered accordingly, or stored in compressed or raw audio format. In some cases, the audio data will be stored in the buffer in distinct time blocks (e.g. 1, 2, 3, 4 or 5 second time blocks) and may store 5, 10, 15 seconds, 1 minute, or other amounts of audio data in a buffer or other memory for purposes of: (1) sending data via the antenna 115 to the mobile device and/or over the network 120 to the servers 130 for storage on the database 160. In some embodiments, the database 160 may be on the mobile device or other computing device itself or may be in the “cloud” connected to a remote server 130; (2) accessing via instant replay function directly by replaying over the speaker; and/or (3) other uses. For instance, if you are in a location (e.g., plane, basement) with no Internet access, the audio data may be saved on local memory 235 or on memory 235 of the mobile device 110 until an Internet connection is reached to upload to the remote server 130 and database 160. In some embodiments, the buffer or memory will add a new block of audio data continuously as a new block is recorded, and discard the last block of data.

Sound Ratings by Location

[0038] FIG. 3 illustrates a method for providing access to the current and/or historical sound levels at certain establishments based on data collected from users' (105 or 107) hearing devices 100 and mobile devices 110. The system 150 may also be utilized to record sound data 302 at various locations and establishments, and upload 310 for aggregation of that data 315 in order to output or send 320 it to users 105 or other people to provide them with information about the sound level and type. The audio data may be saved on local memory 235 or on memory 235 of the mobile device 110 until an Internet connection is reached to upload to the remote server 130 and database 160.

[0039] For example, the microphone(s) 225 on the hearing device 100, mobile device 110 or other associated or connected microphone(s) 225 may record ambient sound data and store it in the memory 235 and/or upload the data over the network for storage, and/or analysis by the server 130 on the database 160. The audio data may be saved on local memory 235 or on memory 235 of the mobile device 110 until an Internet connection is reached to upload to the remote server 130 and database 160. As each user 105 and all other users 107 each have microphones 225 and would attend different establishments, the pool of users 105 may create data that can be processed to provide detailed information about the sound level and quality at various establishments.

[0040] Additionally, a GPS sensor in the mobile device 110 and/or hearing device 100 may tag or associate GPS coordinates to the sound data 305 so that the sound data can be referenced to a particular establishment with a time stamp. Accordingly, all of the sound data for a particular establishment can be aggregated 315 and analyzed to provide feedback to users on the current and typical noise levels 320. Additionally, the GPS data may also be date and time stamped to include additional metrics and averages for certain times and days that may have more noise (e.g., nights and weekends, or special nights).

[0041] In order to associate the sound data with a particular establishment or location 305, in some embodiments, the user 105 will have to choose the location 305 from a list of nearby locations. Accordingly, systems and methods are disclosed herein for the system 150 to associate the GPS location data (and in some embodiments time stamp data) with a list of establishments within a certain distance of the current GPS coordinates. This may be useful as some mobile phones 110 may experience interference or have GPS locations that are inaccurate enough that automatic association with a map labeled establishment may not function properly, and be assigned to an incorrect establishment (e.g. restaurant, bar).

[0042] Additionally, different establishments may be on different levels of the same structure, and therefore either altitude data may be combined with GPS to determine the location or the user 105 may be provided a list of potential locations that are within a certain distance of the detected GPS coordinates and the user 105. Once the system 150 identifies the closest restaurants or establishments the user 105 could then select their current location on a display or other graphical interface (e.g. on the mobile device). The sound data could then be associated with the location 305 until the user moves outside of a certain range of the location and has left the establishment.

[0043] Next, the aggregate of all of the sound data for a particular location must be aggregated/stored and analyzed 215 by the system 150. The data may first be uploaded 310 to the server 130 over the network 120, for analysis and storage in the database 160. The algorithms utilized for analyzing all of the sound data may employee averages, medians, time averages, day averages, current noise levels (e.g., noise recorded within the last hour, 30 minutes, 10 minutes, etc.), pitch of the highest bands of noise, comparison of human voice frequencies with background noises, decibel levels in certain ranges, overall decibel levels and other data processing techniques.

[0044] Furthermore, this information must then be accessible or output/sent 320 to users 105 to determine the current or history of noise levels at certain establishments. For example, a user 105 may want to try a new restaurant on a Saturday night in downtown San Francisco but wants to check on the noise levels first. Thus, the user 105 may then send a request to the database to access the current noise levels, average noise levels for a Saturday night (with specific time—also, they can dynamically see what the sound level is in real-time or near real-time, based on current data being continuously uploaded), and any other metrics. Additionally, the user 105 may be more sensitive to noises in certain frequency ranges and the noise level data may be displayed in bands of frequencies of interest. For instance, the output 320 data or indication may be the decibel level in certain frequencies, including human voices, higher pitched noises (like coffee shop espresso machines) or lower frequency music at dance clubs or restaurants. Thus, the user 105 may get an idea of both the level and characteristics of noise at a particular restaurant prior to travelling there. This data could also be integrated with review sites such as Yelp in order to allow a user 105 to easily view noise levels, and/or filter by certain noise levels and types.

[0045] The user could use this data 320 to adjust the sound settings on the hearing device 100 based on the indication of noise levels received 320. Accordingly, the data output 320 may include particular frequencies that should be filtered out or that could be automatically removed, including based on user preferences or sensitivities. Additionally, the data output 320 could indicate the user 105 must lower the sound level, or the hearing device 100 could automatically lower the volume of the hearing device 100 based on a relative comparison of the current sound level to a baseline sound level.

Crowd Sourced Sound Settings by Location

[0046] FIG. 4 illustrates a method of personalizing sound settings for a particular location that is based on a user's 105 and or other user's 107 preferences and the particular characteristics of that sound environment or location. As described above with respect to the sound ratings, the hearing device 100 or mobile phone 110 may first record sound data 302 in an establishment. Additionally, the location may be tagged 305 (as described herein) to the data, along with the date and time. Then, the sound settings for the hearing device 100 may be adjusted 405 manually 409 or adaptively using an automatic algorithm 407. Once the settings have been adjusted, these settings may be uploaded 410 to a server 130 for aggregation 315 and analysis, which may then be utilized to output suggested sound settings 420 to the same user 105 or other users 107 as individual users return to locations where sound data has been aggregated 315. In some embodiments, the uploading and/or saving the mobile device 110 of sound settings will allow the same user 105 to easily recall the settings when arriving at a new location.

[0047] Once a user's 105 location is identified and/or confirmed via manual selection by the user 105, the sound settings may be adjusted or personalized for the location. In some embodiments, the user 105 will manually personalize the sound settings for the particular location. An example of an interface and process for personalization of a hearing device 100 for a particular sound environment is disclosed in U.S. Pat. No. 8,379,871, issued Feb. 19, 2013 titled Personalized Hearing Profile Generation with Real-Time Feedback which is incorporated by reference herein in its entirety. The sound processing modes that may be changed or switched on and off include volume controls, allow certain bandwidths of frequency to be amplified or filtered (e.g., filtering non-human voice frequencies and amplifying human voice frequencies), compression, microphone directionality and general environmental noise reduction algorithms.

[0048] In some embodiments, instead of or in addition to manual personalization, the hearing device 100 and or mobile device 110 may automatically evaluate recently detected sound data and determine the optimal or likely optimal settings for the hearing system 150 and/or device 100. For example, the system 150 may adjust the volume level based on the detected decibel level of the environment. Additionally, various filtering algorithms may be applied to certain bandwidths and techniques such as Adaptive Constructive Interference, Destructive Interference, Active Noise Cancellation may be used. For instance, bandwidths that do not generally include frequencies of a human voice for a normal conversational tone (as opposed to singing with music in the background) may be amplified or preserved, while other frequencies associated with ambient noise (i.e. car driving noise, coffee machines, music, etc.) may be reduced or eliminated from the sound that is eventually produced through the speakers 215 of the hearing device 100.

[0049] These settings may then be tagged to the location and also the date and time of the setting. These settings and tags may then be uploaded 410 to the server 130 to be aggregated 315 and analyzed by the server 130, and the data stored in the database 160. The settings may also be saved on local memory 235 or on memory 235 of the mobile device 110 until an Internet connection is reached to upload to the remote server 130 and database 160. In some embodiments, the system could pre-populate the settings based on the user's home settings, and then provide an option to the user to update the settings with locally stored new settings when connecting the device to the network, computer or other computing device.

[0050] In other embodiments, the data may be sent to over the antenna 115 to the mobile device 110 or the sound data may be sent to the mobile device 110 the GPS data from the mobile device 110 would be tagged to the sound/settings data. In some embodiments, the mobile device 110 and/or the server 130 and database 160 may store the settings to be recalled by the system 150. In some embodiments these settings may be aggregated 315 from all users 107 and analyzed by the server 130 to provide averages or associate certain types of sound settings with various personal profiles 125 or certain characteristics in personal profiles 125. Accordingly, this information may be utilized to output suggested sound settings 420 based on similar users 105 or the same user 105 in similar circumstances.

[0051] There are several ways by which sound settings may be output or suggested 420 to a user 105. For instance, if a user 105 has attended a certain location (and even at a certain time) the user 105 may have set the hearing device's 100 settings for that location as disclosed herein. Then the system 150 would have saved those settings and associated with that location (and potentially date and time). Then, once the user 105 reenters that location the system 150 could automatically recall those settings, or pop up a message on the display or user interface of an associated mobile device 110 or an audio message through hearing device's 100 speaker 215 asking whether the user 105 has reentered a suggested location.

[0052] If the user 105 indicates it is the correct location, the user's 105 own saved settings may be recalled to allow the user 105 to easily adjust its hearing to that environment. In other embodiments, if the user 105 is new to a location, once the system 150 determines (and/or the user 105) confirms the actual location, setting and/or sound data from other users 107 may be suggested to the user 105, or automatically switched on if the user does not have any saved settings.

[0053] For example, in some embodiments, the user's 105 profile 125 may be compared with other user's 107 profiles 125 (and/or data from clinician 140) that have attended the same location, to identify another user's profile 125 with similar characteristics (that are relevant to sound perception and hearing) and recommend settings or ranges of settings to the user 105 based on the similar user 107. In some embodiments, after those sound settings are output as suggested 510 (as shown in FIG. 5), the user 105 may then further manually adjust the settings 407 or the system may automatically adjust the settings 409 to further refine the settings based on the user's profile 125, the user's history of sound settings, the currently detected ambient sound, or through manual adjustment 409. In some embodiments, the settings may be selected by finding settings from other users 107 that were based on sound data that was most similar to the current sound levels, for example, within certain frequencies. Various matching, machine learning, statistical analysis, or other algorithms may be utilized to match the settings to one another from different user's 107 and profiles 125.

[0054] Then, after the user 105 further refines the settings that were suggested, the settings may be uploaded 410 along with the sound data and further aggregated and saved for later use or analysis. Then, as above, that individual user's 105 sound settings may be recalled when the user 105 re-enters the same location 520, with possible further refinements as described above with respect to FIG. 5.

Tuning by Remote Clinician

[0055] In addition to being set automatically or manually by a user 105, a remotely located clinician may also be able to tune the audio settings of a hearing device 100 as disclosed herein using the present system 150. This will allow a professional with expert training to remotely adjust the settings, based on the sound data detected by the hearing device 100 and real-time feedback from the user 105 while the user 105 is in the actual environment of interest. This may increase the speed and accuracy with which the device 100 is set, and also the frequency at which the device 100 may be expertly personalized for particular locations.

[0056] FIG. 6 illustrates a flow chart of a process 600 by which a remotely located clinician may adjust the hearing device 100. For instance, the hearing device 100 or mobile device 110 may first detect or record sound data 302. Then the user 105 may also provide verbal or electronic feedback 505 through the mobile device or hearing device 100 based on the current settings. Then, this data and feedback may be uploaded 610 and sent over the network 120 the server 130 and/or a remote clinician's computing device 135 for analysis and evaluation by the clinician. Then the clinician may then remote send commands to modify the settings of the hearing device 100 over the network 120. The hearing device's 100 processor or control system 220 may then receive the commands and implement the settings. Then, the process may begin again with new user feedback 605. If the feedback is negative, then the clinician may further modify the settings.

[0057] Finally, once the settings are finalized, they may be stored and associated with the user's profile 635 at some point in the system 150 for recalling. For instance, they may be stored on the mobile device 110 or the database 160 or other points in the system 150. Then those settings may be recalled and output to suggest settings 420 once the user 105 returns to the specific location, an acoustically similar situation, or generally attempts to recall its favorite settings. This process will allow a clinician to evaluate user feedback of a real sound environment while also analyzing the acoustic properties of the sound. Also, it will immensely increase the practicality of personalizing the hearing system 150 for specific environments.

Tuning Using Pre Recorded Audio Sample

[0058] In some embodiments, part of the setting process for a hearing system 150 as disclosed herein may be to utilize pre-recorded audio samples as described in the pre-recorded setting process 700 illustrated in FIG. 7. First, pre-recorded audio samples may be played 702 through the speaker 215 of the hearing device 100 or mobile device 110 (or computer or other Internet connected computing device with speaker(s)). Then the user 105 may adjust the sound processing settings 405 accordingly based on their own feedback after hearing the pre-recorded audio sample played through one of the speakers. In some embodiments, the pre-recorded sound sample may be played several times, with the user 105 adjusting the sound settings 705 in-between playbacks of the pre-recorded audio sample 702. Eventually, once the user has arrived at a sound setting that they feel is adequate based on the pre-recorded sample, the settings may be saved as disclosed herein, and uploaded to be associated with the user's 105 profile 710. As disclosed herein, the settings may then be aggregated 315 and analyzed. Then this analyzed data may be utilized to output suggested sound settings 420 or the system 150 may simply recall a user's 105 previously saved sound settings.

[0059] The pre-recorded audio sample may be played over the hearing device's 100 speaker 125, the mobile device's 110 speaker, or another speaker associated with the system 150 that is within hearing range of the user 105. When the sound is played over the mobile device it may have different characteristics than when played over the hearing device speaker 110 due to the difference in range and acoustics. Therefore, a different pre-recorded audio sample may be played 702 based on which speaker 125 plays the sound.

[0060] The pre-recorded audio sample may be any mixture of frequencies, amplitudes and temporal information. For instance, in some embodiments, the pre-recorded sample may be in the human voice frequency range or consist of a human voice speaking. In other embodiments, it may just be non-speaking sounds in the human frequency range. Additionally, other frequencies may be included in the pre-recorded sample, including frequencies that are typical for environment noise that the average user 105 experiences. The noise samples could be of varying length, from 5 seconds to a minute to 30 seconds to 20 seconds or 2 minutes or other lengths. Additionally, the sample may contain any combination of frequencies and amplitudes associated with each of the frequencies.

[0061] The pre-recorded audio sample may be obtained from a variety of sources including from recording noise and human voices in a sound study or from other sources. For instance, the pre-recorded audio sample could be obtained from the aggregated data 315 from all other users 107 and analyzed for the noise frequencies with highest amplitudes on average. In some cases, the system could prompt the user to ask what language they speak or will be listening to, and play pre-recorded audio samples within the frequency and amplitude range for specific languages and dialects selected.

[0062] In other embodiments, perhaps a particular noise type is frequently experienced by all users, or all users within the same geographic region (and thus likely to experience similar noise) that competes with more desirable sounds such as speech. As one example, everyone in New York City may experience constant car horns or everyone in San Francisco may experience loud noise while riding the Bay Area Rapid Transit (BART) system. The system could analyze the data and pull out the frequency ranges that are most likely experienced and add those frequencies to the pre-recorded sample or similar frequencies that are averages within the same band so that the listener could optimize settings to minimize the impact of these sounds on their ability to detect and make use of more desirable sound signals.

[0063] In some embodiments, the pre-recorded sample may contain multiple steps for tuning the hearing device 100 and therefore may contain multiple segments of pre-recorded audio sample for the user to separately provide feedback. For instance, if all of the relative noise is played at once it may be harder for a user 105 to evaluate the effects of programming changes as noise is general experienced in more isolated incidents. Therefore, each audio sample might have a different frequency of common noise (e.g., the car horn/traffic noise) and an underlying human voice for the user 105 to provide feedback. In some embodiments, this will allow the user 105 to optimize certain noise filters for each bandwidth of relevant noise. Also, the user 105 may be presented with varying pitches of voices and amplitudes for further modification to ensure a robust tuning.

[0064] In some embodiments, prior to tuning with a pre-recorded audio sample, the device may record sound data 302 for a set period of time (e.g. 1 week, 2 weeks) while a user 105 experiences a normal work week, commuting to work, going to normal restaurants and shops, and other normal activities. This will allow the device to average or detect the most relevant sound signatures (i.e., non-human voice) a specific user 105 experiences on average. Then, the system 150 may be able to make a custom noise sample that could be overlaid on top of a human voice for the pre-recorded sample tuning method 700. Accordingly, in this embodiment, the pre-recorded sample will be customized and specialized for the particular user's 105 normal activities.

Instant Replay for a Hearing Device

[0065] In some embodiments, and with reference to FIG. 8, the hearing system 150 may include an instant replay process 800 to allow the user 105 to replay the last few seconds or minutes of audio data recorded 302 by the hearing system 150. This may be useful in noisy situations, when a user 105 is distracted, or when a user 105 is trying to remember a phone number or directions. For instance, the microphone 225 on either the hearing device 100, the user's 105 mobile device, or other associated microphone, may record sound data 302 continuously and keep the last few seconds of audio data recorded 805, and discard or save older sound data. Then, when the user 105 requests a replay 810 by interacting through its mobile phone 110 or hearing device 100, the device may play back the last few seconds of data either through the speaker 215 on the hearing device 100 or mobile phone 110.

[0066] In some embodiments, the user 105 may have a choice of how many seconds of data are replayed. For example, the system 150 may store a minute or longer of audio data continuously, and the user might have an option on their phone as to how many seconds of replay the user 105 would like to request or certain windows of time. In some embodiments, the hearing device 100 may contain an instant replay button that either immediately replays the sound, sends it and saves it to other components of the system such as the mobile device 110 or pops up a notification on the mobile device requesting the amount of time for which playback is requested. The system 150 may include the ability to record locally with finite memory 235, local memory 235 and/or on memory 235 of the mobile device 110, and upload recordings to the remote server 130 and database 160 and synchronize recordings on all devices.

[0067] This sound data may be stored in the memory 235 of the hearing device 100 or the mobile device 110, or on other places in the system 150. In some embodiments, this may include storage by the server 130 in the database 160. The audio data loop may be saved in a buffer, flash memory, or other memory. In some embodiments, the audio data will be stored every few seconds from the buffer into other memory, so that the audio data is recorded in a few second, one second, five second, or other blocks of time. These blocks of time are then continuously saved 805 and time stamped, so that, in some embodiments, as new blocks of time are added, the oldest time block is discarded. This process may continue until a user 105 initiates instant replay 810 by pressing a button on the hearing device 100, by pressing a button or interacting with their mobile phone 110 or by other initiation methods.

[0068] Then, once instant replay command is received 810, the stored audio data will be placed back 820 to the user 105 over one of the speakers 215. Alternately, the system 150 may have pre-recorded sound played back on phone/tablet 110, computer, or server. In some embodiments, pushing instant replay will also save the audio file to memory 235 in the hearing device 100, and/or send the data to the mobile device 110 or a remote device 815 (e.g. server 130 and database 160) so that it may be further replayed by accessing through the system 150.

[0069] In some embodiments, the instant replay function may first filter the blocks of data using a different filter than currently being utilized or set by the hearing system 150. For example, in some embodiments, the instant replay function may have its own filter, and in particular, may filter out all other frequencies except human voice related frequencies. In other embodiments, the noise filter for voice may include an adaptive filter that filters out all other noise besides a specific voice, so that playback for instant replay only includes primarily a human voice. This is because instant replay will likely be used to repeat conversations, and would generally not be used to repeat other bands of noise that are not related to human voices. Additionally, directionality filters or other techniques may be utilized to filter out everything but the noise from a human voice with which a user 105 is having a conversation.

[0070] Particular implementations of the subject matter have been described. Other implementations are within the scope of the following claims. In some cases, the actions recited in the claims can be performed in a different order and still achieve desirable results. In addition, the processes depicted in the accompanying figures do not necessarily require the particular order shown, or sequential order, to achieve desirable results.

[0071] While this specification contains many specific implementation details, these should not be construed as limitations on the scope of any inventions or of what may be claimed, but rather as descriptions of features specific to particular implementations of particular inventions. Certain features that are described in this specification in the context of separate implementations can also be implemented in combination in a single implementation. Conversely, various features that are described in the context of a single implementation can also be implemented in multiple implementations separately or in any suitable sub combination. Moreover, although features may be described above as acting in certain combinations and even initially claimed as such, one or more features from a claimed combination can in some cases be excised from the combination, and the claimed combination may be directed to a sub combination or variation of a sub combination.

[0072] Similarly while operations may be depicted in the drawings in a particular order, this should not be understood as requiring that such operations be performed in the particular order shown or in sequential order, or that all illustrated operations be performed, to achieve desirable results. In certain circumstances, multitasking and parallel processing may be advantageous. Moreover, the separation of various system components in the implementations described above should not be understood as requiring such separation in all implementations, and it should be understood that the described program components and systems can generally be integrated together in a single software product or packaged into multiple software products.

[0073] It should initially be understood that the disclosure herein may be implemented with any type of hardware and/or software, and may be a pre-programmed general purpose computing device. For example, the system may be implemented using a server, a personal computer, a portable computer, a thin client, or any suitable device or devices. The disclosure and/or components thereof may be a single device at a single location, or multiple devices at a single, or multiple, locations that are connected together using any appropriate communication protocols over any communication medium such as electric cable, fiber optic cable, or in a wireless manner.

[0074] It should also be noted that the disclosure is illustrated and discussed herein as having a plurality of modules which perform particular functions. It should be understood that these modules are merely schematically illustrated based on their function for clarity purposes only, and do not necessary represent specific hardware or software. In this regard, these modules may be hardware and/or software implemented to substantially perform the particular functions discussed. Moreover, the modules may be combined together within the disclosure, or divided into additional modules based on the particular function desired. Thus, the disclosure should not be construed to limit the present invention, but merely be understood to illustrate one example implementation thereof

[0075] The computing system can include clients and servers. A client and server are generally remote from each other and typically interact through a communication network. The relationship of client and server arises by virtue of computer programs running on the respective computers and having a client-server relationship to each other. In some implementations, a server transmits data (e.g., an HTML page) to a client device (e.g., for purposes of displaying data to and receiving user input from a user interacting with the client device). Data generated at the client device (e.g., a result of the user interaction) can be received from the client device at the server.

[0076] Implementations of the subject matter described in this specification can be implemented in a computing system that includes a back-end component, e.g., as a data server, or that includes a middleware component, e.g., an application server, or that includes a front-end component, e.g., a client computer having a graphical user interface or a Web browser through which a user can interact with an implementation of the subject matter described in this specification, or any combination of one or more such back-end, middleware, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication, e.g., a communication network. Examples of communication networks include a local area network (“LAN”) and a wide area network (“WAN”), an inter-network (e.g., the Internet), and peer-to-peer networks (e.g., ad hoc peer-to-peer networks).

[0077] Implementations of the subject matter and the operations described in this specification can be implemented in digital electronic circuitry, or in computer software, firmware, or hardware, including the structures disclosed in this specification and their structural equivalents, or in combinations of one or more of them. Implementations of the subject matter described in this specification can be implemented as one or more computer programs, i.e., one or more modules of computer program instructions, encoded on computer storage medium for execution by, or to control the operation of, data processing apparatus. Alternatively or in addition, the program instructions can be encoded on an artificially-generated propagated signal, e.g., a machine-generated electrical, optical, or electromagnetic signal that is generated to encode information for transmission to suitable receiver apparatus for execution by a data processing apparatus. A computer storage medium can be, or be included in, a computer-readable storage device, a computer-readable storage substrate, a random or serial access memory array or device, or a combination of one or more of them. Moreover, while a computer storage medium is not a propagated signal, a computer storage medium can be a source or destination of computer program instructions encoded in an artificially-generated propagated signal. The computer storage medium can also be, or be included in, one or more separate physical components or media (e.g., multiple CDs, disks, or other storage devices).

[0078] The operations described in this specification can be implemented as operations performed by a “data processing apparatus” on data stored on one or more computer-readable storage devices or received from other sources.

[0079] The term “data processing apparatus” encompasses all kinds of apparatus, devices, and machines for processing data, including by way of example a programmable processor, a computer, a system on a chip, or multiple ones, or combinations, of the foregoing The apparatus can include special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit). The apparatus can also include, in addition to hardware, code that creates an execution environment for the computer program in question, e.g., code that constitutes processor firmware, a protocol stack, a database management system, an operating system, a cross-platform runtime environment, a virtual machine, or a combination of one or more of them. The apparatus and execution environment can realize various different computing model infrastructures, such as web services, distributed computing and grid computing infrastructures.

[0080] A computer program (also known as a program, software, software application, script, or code) can be written in any form of programming language, including compiled or interpreted languages, declarative or procedural languages, and it can be deployed in any form, including as a stand-alone program or as a module, component, subroutine, object, or other unit suitable for use in a computing environment. A computer program may, but need not, correspond to a file in a file system. A program can be stored in a portion of a file that holds other programs or data (e.g., one or more scripts stored in a markup language document), in a single file dedicated to the program in question, or in multiple coordinated files (e.g., files that store one or more modules, sub-programs, or portions of code). A computer program can be deployed to be executed on one computer or on multiple computers that are located at one site or distributed across multiple sites and interconnected by a communication network.

[0081] The processes and logic flows described in this specification can be performed by one or more programmable processors executing one or more computer programs to perform actions by operating on input data and generating output. The processes and logic flows can also be performed by, and apparatus can also be implemented as, special purpose logic circuitry, e.g., an FPGA (field programmable gate array) or an ASIC (application-specific integrated circuit).

[0082] Processors suitable for the execution of a computer program include, by way of example, both general and special purpose microprocessors, and any one or more processors of any kind of digital computer. Generally, a processor will receive instructions and data from a read-only memory or a random access memory or both. The essential elements of a computer are a processor for performing actions in accordance with instructions and one or more memory devices for storing instructions and data. Generally, a computer will also include, or be operatively coupled to receive data from or transfer data to, or both, one or more mass storage devices for storing data, e.g., magnetic, magneto-optical disks, or optical disks. However, a computer need not have such devices. Moreover, a computer can be embedded in another device, e.g., a mobile telephone, a personal digital assistant (PDA), a mobile audio or video player, a game console, a Global Positioning System (GPS) receiver, or a portable storage device (e.g., a universal serial bus (USB) flash drive), to name just a few. Devices suitable for storing computer program instructions and data include all forms of non-volatile memory, media and memory devices, including by way of example semiconductor memory devices, e.g., EPROM, EEPROM, and flash memory devices; magnetic disks, e.g., internal hard disks or removable disks; magneto-optical disks; and CD-ROM and DVD-ROM disks. The processor and the memory can be supplemented by, or incorporated in, special purpose logic circuitry.