IP Library Granted Patent US 9,628,517
Granted Patent B2
US 9,628,517 · App. 12/749,942 · Granted Apr 18, 2017

Noise reduction during voice over IP sessions

Inventors: Carlos Munoz-Bustamante (Durham, NC); Joseph Michael Pennisi (Apex, NC); Randall Scott Springfield (Chapel Hill, NC); Ephraim D. Starr (Palos Verdes Estates, CA); Yasushi Tsukamoto (Yamato, JP); Rod D. Waltermann (Rougemont, NC)
Assignee: Lenovo (Singapore) Pte. Ltd.
H04L65/1053
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,628,517
App. No.
12/749,942
Granted
Apr 18, 2017
Kind
B2
Abstract

An approach is provided that, upon receiving a keyboard event, reduces a volume of an audio input channel from a first volume level to a lower volume level. After the volume of the audio input channel is reduced, the approach waits until a system event occurs, with the system event based at least in part on the occurrence of a nondeterministic event. The volume of the audio input channel is then increased from the lower volume level to a higher volume level when the system event occurs

Claims (55)

1. A method comprising:

predicting a keyboard event prior to the keyboard event, the predicting based at least in part on input from a proximity sensor;

reducing a volume of an audio input channel from a first volume level to a lower volume level in response to the predicting of the keyboard event;

after the volume of the audio input channel is reduced, waiting until a system event occurs, wherein the system event is based at least in part on a first event; and

increasing the volume of the audio input channel from the lower volume level to a higher volume level in response to the occurrence of the system event;

wherein the first event is based at least in part on a first set of low-order bits from a first changeable input/output (I/O) value but not on higher order bits from the first changeable I/O value, and wherein the method further comprises:

creating the system event, the creating comprising:

generating a value based upon a logical operation that uses the first set of low-order bits as input values;

retrieving a second set of one or more low-order bits from a second changeable I/O value, wherein generating the value further comprises using the first and second sets of low-order bits as input values to the logical operation;

forming a number based on the value;

comparing the formed number with one or more predefined numbers, wherein the system event occurs based on the comparison; and

repeating at least one of the retrieving, the generating, the forming, and the comparing until the system event occurs.

2. The method of claim 1 wherein the keyboard event is a release

event of a key pressed by a user, and wherein the method further comprises:

detecting one or more additional keyboard events after the volume of the audio input channel has been reduced and before the occurrence of the system event; and

identifying a second event after the one or more additional keyboard events is detected, wherein the system event is based at least in part on the second event, and wherein the volume of the audio input channel is increased from the lower volume level to the higher volume level after the occurrence of the system event.

3. The method of claim 1 wherein the reducing of the volume further comprises:

calculating an incremental reduction amount by subtracting a lower volume level from a current volume level and dividing by an increment count; and

repeatedly decreasing the current volume by the incremental reduction amount until the current volume reaches the lower volume level.

4. The method of claim 3 wherein the lower volume level is a user-configurable volume level.

5. An information handling system comprising:

one or more processors;

a memory accessible by at least one of the processors;

a keyboard that generates signals detectable by at least one of the processors;

an audio input channel corresponding to a microphone, the audio input channel receiving audible signals which are accessible by at least one of the processors;

a set of instructions stored in the memory and executable by at least one of the processors to:

predict a keyboard event at the keyboard based at least in part on input from a proximity detector;

reduce a volume of the audio input channel from a first volume level to a lower volume level in response to the prediction;

after the volume of the audio input channel is reduced, wait until a system event occurs, wherein the system event is based at least in part on a first event; and

increase the volume of the audio input channel from the lower volume level to a higher volume level in response to the occurrence of the system event;

wherein the first event is based at least in part on a first set of low-order bits from a first changeable input/output (I/O) value, and wherein the instructions are further executable to: create the system event at least in part based on generation of a value based upon a logical operation that uses the first set of low-order bits as input values; wherein the instructions are further executable to create the system event at least in part based on: retrieval of a second set of one or more low-order bits from a second changeable I/O value, wherein generation of the value further comprises usage of the first and second sets of low-order bits as input values to the logical operation; formation of a number based on the value;

comparison of the formed number with one or more predefined numbers, wherein the system event occurs based on the comparison; and

repetition of at least one of the retrieval, the generation, the formation, and the comparison until the system event occurs.

6. The information handling system of claim 5 wherein the keyboard event is a release event of a key pressed by a user, and wherein the instructions are further executable to:

detect one or more keyboard events after the volume of the audio input channel has been reduced and before the occurrence of the system event; and

identify a second event after the one or more keyboard events are detected, wherein the system event is based at least in part on the second event, and wherein the volume of the audio input channel is increased from the lower volume level to the higher volume level after the occurrence of the system event.

7. The information handling system of claim 5 wherein the instructions are further executable to reduce the volume at least in part based on:

calculation of an incremental reduction amount by subtraction of a lower volume level from a current volume level and division by an increment count; and

a repeated decrease of the current volume by the incremental reduction amount until the current volume reaches the lower volume level.

8. The information handling system of claim 7 wherein the lower volume level is a user-configurable volume level.

9. A computer readable storage medium that is not a transitory signal, the computer readable storage medium comprising instructions executable by a processor to:

predict a keyboard event prior to the keyboard event;

reduce a volume of an audio input channel from a first volume level to a lower volume level in response to the prediction;

after the volume of the audio input channel is reduced, wait until a system event occurs, wherein the system event is based at least in part on a first event; and

increase the volume of the audio input channel from the lower volume level to a higher volume level in response to the occurrence of the system event

wherein the instructions are further executable to:

create the system event at least in part based on generation of a value based upon a logical operation that uses as input values a first set of low-order bits from a first changeable input/output (I/O) value; and

wherein the instructions are further executable to create the system event at least in part based on:

retrieval of a second set of one or more low-order bits from a second changeable I/O value, wherein generation of the value further comprises usage of the first and second sets of low-order bits as input values to the logical operation;

formation of a number based on the value;

comparison of the formed number with one or more predefined numbers, wherein the system event occurs based on the comparison; and

repetition of at least one of the retrieval, the generation, the formation, and the comparison until the system event occurs.

10. The computer readable storage medium of claim 9 wherein the instructions are further executable to reduce the volume at least in part based on:

calculation of an incremental reduction amount by subtraction of a lower volume level from a current volume level and division by an increment count; and repeated decrease of the current volume by the incremental reduction amount until the current volume reaches the lower volume level.

11. The computer readable storage medium of claim 9 wherein the first event is based at least in part on a first criterion responsive to an information handling system controllable by the processor being in a first power mode, the first event being based at least in part on a second criterion responsive to the information handling system being in a second power mode, the first criterion being different from the second criterion and the first power mode being different from the second power mode.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 10, 2025
From: LENOVO PC INTERNATIONAL LIMITED
To: LENOVO SWITZERLAND INTERNATIONAL GMBH
Reel/Frame 069870/0670 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 8, 2019
From: LENOVO (SINGAPORE) PTE. LTD.
To: LENOVO PC INTERNATIONAL LIMITED
Reel/Frame 049693/0474 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 30, 2010
From: MUNOZ-BUSTAMANTE, CARLOS; PENNISI, JOSEPH MICHAEL; SPRINGFIELD, RANDALL SCOTT; STARR, EPHRAIM D.; TSUKAMOTO, YASUSHI; WALTERMANN, ROD D.
To: LENOVO (SINGAPORE) PTE. LTD.
Reel/Frame 024161/0863 →
Continuity (1)
Related Publication 20110243123A1 · Oct 6, 2011