TECHNICAL FIELDThe present application relates to reduction in noise received by a microphone of an electronic device.
BACKGROUND DISCUSSIONElectronic devices, including portable electronic devices, have gained widespread use and can provide a variety of functions including, for example, telephonic, electronic messaging and other personal information manager (PIM) application functions. With the rapid advancement of portable electronic device technology, devices have become smaller while device functionality has increased. In addition to including more functionality, electronic devices continue to achieve improved audio and video resolution. Since noise in the immediate environment reduces audio quality, noise reduction solutions are being improved.
SUMMARYIn an aspect there is provided, a method including: detecting an event of an electronic device, the event corresponding to movement of a component of the electronic device; receiving an audio signal using a microphone of the electronic device, the audio signal including a noise signal corresponding to the event; and in response to detecting the event, combining the audio signal with a phase-inverted noise signal generated by phase inverting a recorded noise signal of the event, wherein the recorded noise signal was received using the microphone of the electronic device.
In another aspect there is provided an electronic device including: a microphone for detecting an audio signal comprising a noise signal corresponding to an event, the event corresponding to a movement of a component of the electronic device; a memory for storing a digital representation of a recorded noise signal of the event, the recorded noise signal having been received using the microphone; and a processor for phase-inverting the recorded noise signal of the event and combining the audio signal with the phase-inverted signal in response to detection of the event.
BRIEF DESCRIPTION OF THE DRAWINGSEmbodiments of the present application will now be described, by way of example only, with reference to the attached Figures, wherein:
FIG. 1 is a simplified block diagram of one example of a portable electronic device in accordance with the present disclosure;
FIG. 2 is a flowchart illustrating an example of a method of reducing event noise in accordance with the present disclosure;
FIG. 3 is a block diagram corresponding to an event noise reduction method;
FIG. 4 is a flowchart illustrating another example of a method of reducing event noise in accordance with the present disclosure;
FIG. 5 is a flowchart illustrating another example of a method of reducing event noise in accordance with the present disclosure; and
FIG. 6 is a flowchart illustrating an example of a method of training the portable electronic device in accordance with the present disclosure.
DETAILED DESCRIPTIONIt will be appreciated that for simplicity and clarity of illustration, where considered appropriate, reference numerals may be repeated among the Figures to indicate corresponding or analogous elements. In addition, numerous specific details are set forth in order to provide a thorough understanding of the embodiments described herein. However, it will be understood by those of ordinary skill in the art that the embodiments described herein may be practiced without these specific details. In other instances, well-known methods, procedures and components have not been described in detail so as not to obscure the embodiments described herein. Also, the description is not to be considered as limiting the scope of the embodiments described herein. The example provided in the description is a portable electronic device, however, it will be appreciated that the method may be practiced on any electronic device.
Referring now toFIG. 1, components of an example portableelectronic device 100 are generally shown. The portableelectronic device 100 includes data communication capabilities and may communicate with other electronic devices directly or through a wireless network. The portableelectronic device 100 is based on the computing environment and functionality of a handheld computer. Generally, a handheld device is sized and shaped to be held or carried in a human hand. It will be understood, however, that the portableelectronic device 100 is not limited to a handheld computer. Other portable electronic devices are possible, such as pagers, cellular telephones, smart telephones, wireless organizers, tablet computers, electronic messaging devices and wirelessly enabled notebook computers. The portableelectronic device 100 includes aninterface 122 for receiving apower pack 124, which powers the portableelectronic device 100. Thepower pack 124 may be one or more rechargeable batteries or another type of fuel cell, for example.
The portableelectronic device 100 includes aprocessor 102, which controls the overall operation of thedevice 100. Acommunication subsystem 104 controls data and voice communication functions, such as email, PIN (Personal Identification Number) message functions, SMS (Short Message Service) message functions and cellular telephone functions, for example. Thecommunication subsystem 104 may receive messages from and send messages to awireless network 130, which may be a data-centric wireless network, a voice-centric wireless network or a dual-mode wireless network. Data received by the portableelectronic device 100 is decompressed and decrypted by adecoder 106.
InFIG. 1, thecommunication subsystem 104 is a dual-mode wireless network that supports both voice and data communications. Thecommunication subsystem 104 is configured in accordance with the Global System for Mobile Communication (GSM) and General Packet Radio Services (GPRS) standards. Thecommunication subsystem 104 may alternatively be configured in accordance with Enhanced Data GSM Environment (EDGE) or Universal Mobile Telecommunications Service (UMTS) standards. Other wireless networks may also be associated with the portableelectronic device 100, including Code Division Multiple Access (CDMA) or CDMA2000 networks. Some other examples of data-centric networks include WiFi 802.11, Mobitex™ and DataTAC™ network communication systems. Examples of other voice-centric data networks include Personal Communication Systems (PCS) networks like GSM and Time Division Multiple Access (TDMA) systems.
Thewireless network 130 may include base stations (not shown) that provide a wireless link to the portableelectronic device 100. Each base station defines a coverage area, or cell, within which communications between the base station and the portableelectronic device 100 can be effected. The portableelectronic device 100 is movable within the cell and may be moved to coverage areas defined by other cells.
Thecommunication subsystem 104 further includes a short range communications function, which enables thedevice 100 to communicate directly with other devices and computer systems without the use of the wireless network 130 (which is not ordinarily thought of as a component of the device 100) through infrared or Bluetooth™ technology, for example.
To identify a subscriber for network access, the portableelectronic device 100 uses a Subscriber Identity Module or a Removable User Identity Module (SIM/RUIM)card 138 for communication with a network, such as the wireless network 150. Alternatively, user identification information may be programmed intomemory 110. The SIM/RUIM card 138 is used to identify the user of the portable electronic device, store personal device settings and enable access to network services, such as email and voice mail, for example, and is not bound to a particular portableelectronic device 100.
Theprocessor 102 is also connected to a Random Access Memory (RAM) 108 and a persistentupdateable memory 110, such as a flash memory. Theflash memory 110 may alternatively be a persistent storage, a Read-Only Memory (ROM) or other nonvolatile storage.
The portableelectronic device 100 includes anoperating system 136 and software programs orcomponents 138 that are executed by theprocessor 102 and are typically stored in a persistent, updatable store such as thememory 110. Additional applications or programs may be loaded onto the portableelectronic device 100 through thewireless network 130, the auxiliary I/O subsystem 120, thedata port 118, the short-range communications subsystem 132, or anyother device subsystem 134. Some examples of software applications that may be stored on and executed by thedevice 100 include: electronic messaging, games, calendar, address book and music player applications. Software applications that control basic device operation, such as voice and data communication, are typically installed during manufacture of thedevice 100.
A received signal such as a text message, an e-mail message, or web page download is processed by thecommunication subsystem 104 and input to theprocessor 102. Theprocessor 102 processes the received signal for output to thedisplay 112 and/or to the auxiliary I/O subsystem 120. A subscriber may generate data items, for example e-mail messages, which may be transmitted over thewireless network 130 through thecommunication subsystem 104. For voice communications, the overall operation of the portableelectronic device 100 is similar. Thespeaker 114 outputs audible information converted from electrical signals, and themicrophone 116 converts audible information into electrical signals for processing.
The portableelectronic device 100 components are provided in a housing (not shown), which typically gives some structural integrity or overall shape to thedevice 100 and which may be part of the device frequently touched by a user. The housing that may expose thedisplay 112, thespeaker 114 and device buttons (not shown), for example. The portableelectronic device 100 may include camera hardware and associated software that is executable by theprocessor 102. Some device components are movable relative to the housing and some components are generally fixed relative to the housing. Movable components of the portable electronic device 100 (components that move with respect to the housing or with respect to most other components of the device 100) may generate noise during or by movement. The different movements of the movable components may be referred to as events. Examples of events include: extension or retraction of a telescoping camera lens, actuation of a device button, insertion and removal of a stylus, motor vibration and form factor adjustments, such as movement of a slidable element between a stowed position and a deployed position, movement of a flip phone between open and closed positions, swiveling of a portion of a device and pop-out mechanisms, for example. Not all events or component movements generate unwanted noise, but for simplicity of discussion, it may be generally assumed that an event causes sound and that sound may be noise.
Noise generated by an event may provide useful feedback to indicate that a device component is performing a selected operation, however, when themicrophone 116 is operating, the noise generated by an event may result in audio degradation in a telephone conversation or video recording, for example.
FIG. 2 is a flowchart illustrating an example of a method of reducing event noise The method may be carried out by software executed by, for example, theprocessor 102. Coding of software for carrying out such a method is within the scope of a person of ordinary skill in the art given the present description. The method may contain additional or fewer processes than shown and described, and may be performed in a different order. Computer-readable code executable by, for example, theprocessor 102 of the portableelectronic device 100 to perform the method, may be stored in a computer-readable medium.
Referring toFIG. 2, the method includes: detecting 200 an event of a portableelectronic device 100, the event corresponding to a movement of a component of the portableelectronic device 100; receiving 202 an audio signal using amicrophone 116 of the portableelectronic device 100, the audio signal including a noise signal corresponding to the event; and in response to detecting the event, combining 204 the audio signal with a phase-inverted noise signal generated by phase inverting a recorded noise signal (typically a noise signal recorded at some time prior to the detection 200) of the event. The recorded noise signal having been received using the microphone of the portable electronic device. In general, an event corresponds to a movement of a component when the component moves, for example, with respect to the housing, and an audio signal or a noise signal corresponds to an event when the signal is causally related to the event.
Referring toFIG. 3, a system corresponding to the method of reducing noise ofFIG. 2 includes: anevent detection block 300, which performs event detection by communicating with components and/or software applications that are associated with the event. In the telescoping camera lens example, theprocessor 102 sends control signals to move the camera lens when a signal is received to move the telescoping camera lens. The control signals may be branched, multiplexed or processed in parallel to be transmitted to select the phase-inverted noise signal from the noise signal look-up table 302. For a button click, form factor adjustment or any event for which theprocessor 102 receives a corresponding control signal relating to movement at the portableelectronic device 100, the actuation signal is again branched, multiplexed or processed in parallel to be transmitted to select the phase-inverted noise signal from a noise signal look-up table 302.
The noise signal look-uptable block 302 locates previously stored or recorded digital representations, such as audio files, of the noises that correspond to the detected events. A look-up table may include any number of events stored in association with the corresponding noises and may be stored inmemory 110. The look-up table is populated by recording event noise signals at the portableelectronic device 100 and storing digital representations of the noise signals in thememory 110 in association with the event. Population of the look-up table may be performed following assembly of the portableelectronic device 100 by the device manufacturer. Alternatively, the look-up table may be populated via a download or firmware.
The phase inversion ofnoise signal block 304 performs phase-inversion of the recorded noise signal when the recorded noise signal associated with the event has been determined. The inversion may be performed using hardware or, alternatively, the sign of the digital signal may be changed in a digital signal processing step of a software application. In one embodiment, the noise signals pass through the phase-inverter prior to being stored in association with the lookup table.
Anadder 306 receives the phase-inverted noise signal and receives an audio signal, which includes the noise signal corresponding to the event. The phase-inverted noise signal is input to theadder 306 at generally the same time as the noise signal corresponding to the event is generated either in real time or by using appropriate buffering to generally align the signals in order to generally cancel the noise from the combined audio signal. The combining may be done in any fashion: it may be performed digitally or by analog techniques, or via superposition, or with a summing circuit, for example. The resulting audio stream exits theadder 306 and output by themicrophone 116.
Referring toFIG. 4, another example method of reducing event noise includes: receiving 400 an audio signal at themicrophone 116, when an event is detected 402, receiving 404 a noise signal corresponding to the event at themicrophone 116, the noise signal being part of the audio signal, retrieving 406 an audio file corresponding to the event and performing phase-inversion in order to provide a phase-inverted noise signal, combining 408 the audio signal and the phase-inverted noise signal and sending 410 the combined audio signal to thecommunication subsystem 104 for transmission over a communication link. The combined audio signal may be transmitted as part of a telephone call or as part of an audio and/or video upload to the internet, for example.
Referring toFIG. 5, another example method of reducing event noise is provided. The example method ofFIG. 5 is similar to the example method ofFIG. 4, however, includes storing 510 a digital representation of the combined audio signal inmemory 110. In this example method, the digital representation may be an audio file or as an audio/video file for example.
A method of training the portableelectronic device 100 to reduce event noise is shown inFIG. 6. The method populates the look-up table and may be performed following assembly of the portableelectronic device 100 by the device manufacture or by the user. In addition, the method may be performed at any time over the lifetime of the portableelectronic device 100 in order to update the look-up table. By recording the noise signals using themicrophone 116 of the portableelectronic device 100 rather than using manufacturer-standard noise signals, high quality noise reduction may be achieved. Further, noise reduction may be adjusted over time in order to compensate for changes in the noises made by moving components as they wear, for example.
The method ofFIG. 6 includes: initiating 600 a training application to enable writing to a look-up table, detecting 602 an event, receiving 604 a noise signal corresponding to the event at themicrophone 116 and storing 606 the noise in the look-up table in association with the event. The method may be performed for more than one event. When the method is complete, writing to the look-up table is disabled. The event is captured using normal control feedback. For example, a signal path for a button press is additionally routed to write to the event column in the look-up table. The training method is typically performed in a quiet environment in order to generally isolate the event noise.
In one embodiment, the training application provides user prompts on thedisplay 112 to guide the user through the training method. The software application may request additional events, such as different lens positions for a telescoping lens, for example.
For portableelectronic devices 100 that are capable of being customized, the method ofFIG. 6 may be performed in order to reduce event noise associated with added components. An example of an added component is a digital SLR camera lens that may be added to a portable electronic device including a camera.
The methods and apparatus described herein improve the quality of audio being transmitted or recorded by a portable electronic device by reducing the noise associated with movement of a movable component. For example, when recording a video, the noise associated with the telescoping lens extending and retracting to zoom in and out may be reduced. Similarly, when actuating a volume adjustment button during a telephone call the button actuation noise may be reduced. Further, the noise associated with deploying and stowing the keyboard of a slider phone during a telephone call or a video recording may be reduced. In addition, the concepts support the benefits of adaptability and customization, as they can be applied to a variety of devices having a variety of components, and that may generate noise in different ways. Further, the techniques can be readily implemented in a handheld device, where considerations of size and weight may be especially important.
The above-described embodiments are intended to be examples only. Alterations, modifications and variations can be effected to the particular embodiments by those of skill in the art without departing from the scope of the present application, which is defined solely by the claims appended hereto.