# US 9,520,851 B2 · Predictive automatic gain control in a media processing system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,520,851 B2
- Document ID: US9520851B2
- Status: Granted
- Kind: B2
- Application number: 14/645,430
- Filed: 2015-03-12
- Published: 2015-12-31
- Granted: 2016-12-13
- Earliest claimed: 2014-06-26
- Assignees: Kirusa, Inc.
- Applicants: Kirusa, Inc.
- Inventors: Yuchen Wang
- Web page: https://patentgrep.com/patent/US9520851B2

## CPC

- H03G 3/3089: {Control of digital or coded signals}
- H03G 3/3005: {in amplifiers suitable for low-frequencies, e.g. audio amplifiers (H03G3/32, H03G3/34 take precedence)}
- G10L 21/0316: by changing the amplitude
- G10L 25/78: Detection of presence or absence of voice signals (switching of direction of transmission by voice frequency in two-way loud-speaking telephone systems H04M9/10)
- H03G: CONTROL OF AMPLIFICATION
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

A method and a media processing system (MPS) for automatic gain control are provided. The MPS detects a portion of an input signal corresponding to a measurement window associated with a predetermined time interval and determines a peak value of the input signal during a first predetermined time segment within the measurement window. The MPS determines a number of occurrences of the peak value during a second predetermined time segment within the measurement window and compares the determined number of occurrences of the peak value with a predefined range of occurrences for identifying a speech portion or a non-speech portion of the input signal corresponding to the measurement window. The MPS adjusts a gain corresponding to the first predetermined time segment based on the peak value, upon identifying the speech portion. The MPS iteratively performs the method by shifting the measurement window in steps of the first predetermined time segment.

## Claims

### Claim 1

A method for automatic gain control, said method comprising:
(a) detecting a portion of an input signal corresponding to a measurement window associated with a predetermined time interval;
(b) determining a peak value of said input signal in said detected portion of said input signal during a first predetermined time segment within said measurement window;
(c) determining a number of occurrences of said determined peak value of said input signal during a second predetermined time segment within said measurement window, wherein said second predetermined time segment is greater than said first predetermined time segment;
(d) comparing said determined number of occurrences of said determined peak value of said input signal with a predefined range of occurrences for identifying a speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being within said predefined range of occurrences, and for identifying a non-speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being outside said predefined range of occurrences; and
(e) adjusting a gain corresponding to said first predetermined time segment of said input signal based on said determined peak value of said input signal, upon identifying said speech portion of said input signal.

### Claim 2 (depends on 1)

The method of claim 1, further comprising:
(f) maintaining said gain unaltered upon identifying said non-speech portion of said input signal.

### Claim 3 (depends on 2)

The method of claim 2, further comprising:
(g) performing steps (a) through (f) for a subsequent first predetermined time segment, wherein said subsequent first predetermined time segment is equal in duration and subsequent to said first predetermined time segment within said measurement window.

### Claim 4 (depends on 3)

The method of claim 3, further comprising iteratively determining a series of gains over an overall predetermined time interval for said input signal, by performing steps (a) through (g) by shifting said measurement window by a predetermined time period during each iteration.

### Claim 5 (depends on 4)

The method of claim 4, wherein said shifting of said measurement window by said predetermined time period during said each iteration comprises shifting said measurement window from said predetermined time interval to a subsequent predetermined time interval, wherein said subsequent predetermined time interval comprises at least one or more values of said input signal associated with said predetermined time interval.

### Claim 6 (depends on 1)

The method of claim 1, wherein said predefined range of occurrences is between 20 and 320 in said second predetermined time segment of 100 milliseconds of said measurement window of 1 second.

### Claim 7

A media processing system for automatic gain control, said media processing system comprising:
one or more processors;
a memory storing instructions defined by modules of said media processing system to configure said one or more processors, wherein said one or more processors are configured to execute said defined instructions; and
said modules of said media processing system comprising:
a detection module configured to detect a portion of an input signal corresponding to a measurement window associated with a predetermined time interval;
a peak determination module communicatively associated with said detection module, said peak determination module configured to determine a peak value of said input signal in said detected portion of said input signal during a first predetermined time segment within said measurement window;
said peak determination module further configured to determine a number of occurrences of said determined peak value of said input signal during a second predetermined time segment within said measurement window, wherein said second predetermined time segment is greater than said first predetermined time segment;
a comparison module communicatively associated with said peak determination module, said comparison module configured to compare said determined number of occurrences of said determined peak value of said input signal with a predefined range of occurrences for identifying a speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being within said predefined range of occurrences, and for identifying a non-speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being outside said predefined range of occurrences; and
an adjustment module communicatively associated with said comparison module, said adjustment module configured to adjust a gain corresponding to said first predetermined time segment of said input signal based on said determined peak value of said input signal, upon identifying said speech portion of said input signal.

### Claim 8 (depends on 7)

The media processing system of claim 7, wherein said adjustment module is further configured to maintain said gain unaltered upon identifying said non-speech portion of said input signal.

### Claim 9 (depends on 7)

The media processing system of claim 7, wherein said adjustment module is further configured to iteratively adjust said gain corresponding to a subsequent first predetermined time segment within said measurement window, wherein said subsequent first predetermined time segment is equal in duration and subsequent to said first predetermined time segment within said measurement window.

### Claim 10 (depends on 7)

The media processing system of claim 7, wherein said modules of said media processing system further comprise a shifting module communicatively associated with said detection module, wherein said shifting module is configured to shift said measurement window by a predetermined time period from said predetermined time interval to a subsequent predetermined time interval, wherein said subsequent predetermined time interval comprises at least one or more values of said input signal associated with said predetermined time interval, and wherein said detection module is further configured to detect a subsequent portion of said input signal corresponding to said shifted measurement window during said subsequent predetermined time interval.

### Claim 11 (depends on 10)

The media processing system of claim 10, wherein said peak determination module is further configured to:
determine a subsequent peak value of said input signal in said detected subsequent portion of said input signal during a subsequent first predetermined time segment within said shifted measurement window; and
determine a subsequent number of occurrences of said determined subsequent peak value of said input signal during a subsequent second predetermined time segment within said shifted measurement window.

### Claim 12 (depends on 11)

The media processing system of claim 11, wherein said comparison module is further configured to compare said determined subsequent number of occurrences of said determined subsequent peak value of said input signal during said subsequent second predetermined time segment within said shifted measurement window with the predefined range of occurrences for identifying a speech portion of said input signal corresponding to said shifted measurement window upon said determined subsequent number of occurrences of said determined subsequent peak value of said input signal being within said predefined range of occurrences, and identifying a non-speech portion of said input signal corresponding to said shifted measurement window upon said determined subsequent number of occurrences of said determined subsequent peak value of said input signal being outside said predefined range of occurrences.

### Claim 13 (depends on 11)

The media processing system of claim 11, wherein said adjustment module is further configured to adjust a gain corresponding to said subsequent first predetermined time segment of said input signal based on said determined subsequent peak value of said input signal, upon identifying a speech portion of said input signal corresponding to said shifted measurement window.

### Claim 14 (depends on 10)

The media processing system of claim 10, wherein said adjustment module is further configured to iteratively determine a series of gains over an overall predetermined time interval for said input signal based on said shifting of said measurement window by said predetermined time period during each iteration.

### Claim 15 (depends on 7)

The media processing system of claim 7, wherein said predefined range of occurrences is between 20 and 320 in said second predetermined time segment of 100 milliseconds of said measurement window of 1 second.

### Claim 16

A computer program product comprising a non-transitory computer readable storage medium, said non-transitory computer readable storage medium storing computer program codes comprising instructions executable by at least one processor, said computer program codes comprising:
a first computer program code for detecting a portion of an input signal corresponding to a measurement window associated with a predetermined time interval;
a second computer program code for determining a peak value of said input signal in said detected portion of said input signal during a first predetermined time segment within said measurement window;
a third computer program code for determining a number of occurrences of said determined peak value of said input signal during a second predetermined time segment within said measurement window, wherein said second predetermined time segment is greater than said first predetermined time segment;
a fourth computer program code for comparing said determined number of occurrences of said determined peak value of said input signal with a predefined range of occurrences for identifying a speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being within said predefined range of occurrences, and for identifying a non-speech portion of said input signal corresponding to said measurement window upon said determined number of occurrences of said determined peak value of said input signal being outside said predefined range of occurrences;
a fifth computer program code for adjusting a gain corresponding to said first predetermined time segment of said input signal based on said determined peak value of said input signal, upon identifying said speech portion of said input signal; and
a sixth computer program code for maintaining said gain unaltered upon identifying said non-speech portion of said input signal.

### Claim 17 (depends on 16)

The computer program product of claim 16, wherein said first computer program code, said second computer program code, said third computer program code, said fourth computer program code, said fifth computer program code, and a sixth computer program code are executable for a subsequent first predetermined time segment within said measurement window, wherein said subsequent first predetermined time segment is equal in duration and subsequent to said first predetermined time segment within said measurement window.

### Claim 18 (depends on 16)

The computer program product of claim 16, further comprising a seventh computer program code for iteratively determining a series of gains over an overall predetermined time interval for said input signal by shifting said measurement window by a predetermined time period during each iteration and causing execution of said first computer program code, said second computer program code, said third computer program code, said fourth computer program code, said fifth computer program code, and said sixth computer program code, wherein said shifting of said measurement window by said predetermined time period during said each iteration comprises shifting said measurement window from said predetermined time interval to a subsequent predetermined time interval, wherein said subsequent predetermined time interval comprises at least one or more values of said input signal associated with said predetermined time interval.

### Claim 19 (depends on 16)

The computer program product of claim 16, wherein said predefined range of occurrences is between 20 and 320 in said second predetermined time segment of 100 milliseconds of said measurement widow of 1 second.

### Claim 20 (depends on 16)

The computer program product of claim 16, wherein said first predetermined time segment is 10 milliseconds and said second predetermined time segment is 100 milliseconds for said measurement window of 1 second.
