# US 9,510,045 B2 · Methods and apparatus for an embedded appliance

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

- Number: US 9,510,045 B2
- Document ID: US9510045B2
- Status: Granted
- Kind: B2
- Application number: 14/679,625
- Filed: 2015-04-06
- Published: 2016-02-04
- Granted: 2016-11-29
- Earliest claimed: 2011-06-30
- Assignees: Echo360, Inc.
- Applicants: Echo360, Inc.
- Inventors: John J. Smith; Stephen R. Titus; Douglas E. Rogers; David Henry Boyle; Keira Kaitlyn Johnson; Jonathan D. Bell
- Web page: https://patentgrep.com/patent/US9510045B2

## CPC

- H04N 21/440218: {by transcoding between formats or standards, e.g. from MPEG-2 to MPEG-4 (conversion of standards in analogue television systems H04N7/01)}
- G09G 5/005: {Adapting incoming signals to the display format of the display terminal}
- G09G 5/008: {Clock recovery}
- H04N 5/04: Synchronising (for television systems using pulse code modulation H04N7/56)
- H04N 5/06: Generation of synchronising signals
- H04N 7/01: Conversion of standards {, e.g. involving analogue television standards or digital television standards processed at pixel level}
- H04N 7/0127: {by changing the field or frame frequency of the incoming video signal, e.g. frame rate converter}
- H04N 9/8042: {involving data reduction}
- H04N 9/8205: {involving the multiplexing of an additional signal and the colour video signal}
- H04N 21/262: Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists {(scheduling strategies for dispatcher in multiprogramming arrangements G06F9/4881; arrangements for scheduling broadcast services or broadcast-related services H04H60/06; flow control in packet networks H04L47/10; establishing a time schedule or organising the servicing of application requests H04L67/62)}
- H04N 21/4223: Cameras (H04N23/00 takes precedence)
- H04N 21/432: Content retrieval operation from a local storage medium, e.g. hard-disk {(details of retrieval of video data and associated meta data in video databases G06F16/739)}
- G09G 2340/02: Handling of images in compressed format, e.g. JPEG, MPEG
- G09G 2340/0407: Resolution change, inclusive of the use of different resolutions for different screen areas
- G09G 2340/0435: Change or adaptation of the frame rate of the video stream
- G09G 2340/06: Colour space transformation
- G09G 2370/042: for monitor identification
- G09G 2370/12: Use of DVI or HDMI protocol in interfaces along the display data pipeline
- G09G 2370/22: Detection of presence or absence of input display information or of connection or disconnection of a corresponding information source
- H04N 21/42203: {sound input device, e.g. microphone}
- H04N 21/4334: {Recording operations (recording of a television signal H04N5/76; arrangements for recording or accumulating broadcast information or broadcast-related information H04H60/27)}
- H04N 21/4402: involving reformatting operations of video signals for household redistribution, storage or real-time display {(details of conversion of video standards at pixel level H04N7/01; video transcoding H04N19/40; adapting incoming signals to the display format of the display terminal G09G5/005; media handling at the source in data packet switching networks H04L65/764)}
- H04N 21/4788: communicating with other users, e.g. chatting {(arrangements for providing for computer conferences, e.g. chat rooms, to substation in data switching networks H04L12/1813; distributed application using peer-to-peer [P2P] networks H04L67/104)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G09G: ARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION (arrangements for transferring data between digital computers and displays G06F3/14; static indicating arrangements comprising an association of a number of separate sources or light control cells G09F9/00; static indicating arrangements comprising integral associations of a number of light sources H01J, H01K, H10H, H05B33/12; scanning, transmission or reproduction of documents or the like, e.g. facsimile transmission, details thereof H04N1/00)

## Abstract

In some embodiments, an apparatus comprises a media module and a modification module included in an embedded appliance. The media module is configured to receive a first media signal associated with a first input port of the embedded appliance and a second media signal associated with a second input port of the embedded appliance. The media module is configured to identify a first set of media signal parameters based on the first media signal. The modification module is configured to receive a modification instruction associated with a session format having a second set of media signal parameters different from the first set of media signal parameters. The modification module is configured to modify the first media signal based on the first set of media signal parameters and the modification instruction to produce a first modified media signal in the session format and having the second set of media signal parameters.

## Claims

### Claim 1

A non-transitory processor-readable medium storing code representing instructions to be executed by a processor, the code comprising code to cause the processor to:
receive a first media signal and a second media signal;
identify, at a first time, a first plurality of media signal parameters based on the first media signal;
receive a first modification instruction associated with a session format having a second plurality of media signal parameters different from the first plurality of media signal parameters;
modify the first media signal based on the first media signal parameters and the first modification instruction to produce a first modified media signal in the session format and having the second plurality of media signal parameters;
identify, at a second time after the first time, a third plurality of media signal parameters different from the first plurality of media signal parameters and based on the first media signal;
receive a second modification instruction associated with the session format; and
modify the first media signal or the first modified media signal based on the third plurality of media signal parameters and the second modification instruction to produce a second modified media signal in the session format and having the second plurality of media signal parameters.

### Claim 2 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the first modification instruction is independent of a format of the first media signal and a format of the second media signal.

### Claim 3 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the first plurality of media signal parameters include at least two of a resolution of the first media signal, a frame rate of the first media signal, a bit rate of the first media signal, or a clock rate of the first media signal.

### Claim 4 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein:
the session format is a first predefined session format from a plurality of predefined session formats, and
the first plurality of media signal parameters is identified from a plurality of predefined sets of media signal parameters, each predefined set of media signal parameters being associated with a predefined session format from the plurality of predefined session formats.

### Claim 5 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the first media signal is modified by performing on the first media signal at least one of deinterleaving, decimating, resizing, color space converting, modifying gain, adjusting audio level, or audio multiplexing.

### Claim 6 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the session format is one from a plurality of predefined session formats.

### Claim 7 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the session format is selected from a plurality of predefined session formats based on at least one of the first plurality of media signal parameters, a user-selected output parameter, or a capability of the embedded appliance.

### Claim 8 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein:
the first media signal is an audio signal,
the second media signal is at least one of (1) a visual-capture media signal, (2) a video media signal, or (3) a digital-image media signal.

### Claim 9 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the first time and the second time are within a continuous capture time window.

### Claim 10 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein the first modification instruction and the second modification instruction are received at a first device from a second device separate from the first device.

### Claim 11 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein:
the first media signal is at least one of (1) a visual-capture media signal, (2) a video media signal, or (3) a digital-image media signal; and
the second media signal is an audio signal.

### Claim 12 (depends on 1)

The non-transitory processor-readable medium of claim 1, wherein:
the first media signal is at least one of (1) a visual-capture media signal, (2) a video media signal, or (3) a digital-image media signal; and
the second media signal is an audio signal,
the code further comprising code to cause the processor to:
send the second modified media signal and the second media signal such that the second modified media signal and the second media signal are synchronized.

### Claim 13 (depends on 1)

The non-transitory processor-readable medium of claim 1, the code further comprising code to cause the processor to:
identify a first format of the first media signal when the first plurality of media parameters match a predefined set of media parameters from a plurality of predefined sets of media parameters, the predefined set of media parameters including a first number of media parameters and being associated with the first format;
identify a second format of the first media signal when the first format is not identified and when the plurality of media parameters match a subset of media parameters of the predefined set of media parameters, the subset of media parameters including a second number of media parameters less than the first number of media parameters and being associated with the second format;
send a signal indicative of a selection of the first format when the first format when the first format is identified; and
send a signal indicative of a selection of the second format when the second format is identified.

### Claim 14

A non-transitory processor-readable medium storing code representing instructions to be executed by a processor, the code comprising code to cause the processor to:
receive a media signal associated with a plurality of media parameters;
identify a first format of the media signal when the plurality of media parameters match a predefined set of media parameters from a plurality of predefined sets of media parameters, the predefined set of media parameters including a first number of media parameters and being associated with the first format;
identify a second format of the media signal when the first format is not identified and when the plurality of media parameters match a subset of media parameters of the predefined set of media parameters, the subset of media parameters including a second number of media parameters less than the first number of media parameters and being associated with the second format;
send a signal indicative of a selection of the first format when the first format when the first format is identified; and
send a signal indicative of a selection of the second format when the second format is identified.

### Claim 15 (depends on 14)

The non-transitory processor-readable medium of claim 14, wherein the subset of media parameters is a first subset of media parameters, the code further comprising code to cause the processor to:
identify a third format of the media signal, when the first format is not identified and when the second format is not identified, by iteratively defining a second subset of media parameters of the predefined set of media parameters until that second subset of the plurality of media parameters matches the predefined set of media parameters from the plurality of predefined sets of media parameters or an estimated set of media parameters from a plurality of estimated sets of media parameters; and
send a signal indicating an identification of the third format when the third format is identified.

### Claim 16 (depends on 14)

The non-transitory processor-readable medium of claim 14, wherein the plurality of media parameters include a vertical sync pulse width, a horizontal sync pulse width and a clock line number.

### Claim 17 (depends on 14)

The non-transitory processor-readable medium of claim 14, wherein the plurality of media parameters include a vertical sync pulse width, a horizontal sync pulse width and a clock line number, the code further comprising code to cause the processor to:
calculate the vertical sync pulse width based on a vertical sync signal associated with the media signal;
calculate the horizontal sync pulse width based on a horizontal sync signal associated with the media signal; and
calculate the clock line number based on a clock signal associated with the media signal.

### Claim 18 (depends on 14)

The non-transitory processor-readable medium of claim 14, wherein the media signal is a first media signal, the code further comprising code to cause the processor to:
receive the first media signal and a second media signal;
identify a plurality of media signal parameters associated with the first media signal and the second media signal; and
send a signal representing the plurality of media signal parameters such that the first media signal and the second media signal are modified based on the plurality of media signal parameters and a modification instruction associated with a session format.

### Claim 19 (depends on 14)

The non-transitory processor-readable medium of claim 14, wherein:
the first format is identified from one of a Discrete Monitor Timing (DMT) standard or a High Definition Television (HDTV) standard, and
the second format is identified from one of a Coordinated Video Timing (CVT) standard, a Coordinated Video Timing with Reduced Blanking (CVT-RB) standard or a Generalized Timing Formula (GTF) standard.

### Claim 20

A non-transitory processor-readable medium storing code representing instructions to be executed by a processor, the code comprising code to cause the processor to:
receive a first media signal (1) having a format, (2) having a first time base during a first time window, and (3) having a second time base during a second time window after the first time window;
receive a second media signal (1) having a third time base during the first time window, the third time base different from the first time base, and (2) having a fourth time base during the second time window, the fourth time base different from the second time base;
modify, at a time during the first time window, at least one of the first media signal or the second media signal based on a common time base such that the first media signal and the second media signal are synchronized to the common time base to produce at least a first modified first media signal or a first modified second media signal; and
modify, at a time during the second time window, at least one of the first media signal or the second media signal based on the common time base such that the first media signal and the second media signal are synchronized to the common time base to produce at least a second modified first media signal or a second modified second media signal.

### Claim 21 (depends on 20)

The non-transitory processor-readable medium of claim 20, the code further comprising code to cause the processor to:
modify by sample deletion, sample insertion or blending, at least one of the first media signal or the second media signal.

### Claim 22 (depends on 20)

The non-transitory processor-readable medium of claim 20, the code further comprising code to cause the processor to:
define the common time base based on at least one of the first time base or the second time base.

### Claim 23 (depends on 20)

The non-transitory processor-readable medium of claim 20, the code further comprising code to cause the processor to:
define the common time base based on a reference time base different from the first time base and the second time base.

### Claim 24 (depends on 20)

The non-transitory processor-readable medium of claim 20, wherein the first media signal and the second media signal each is a unique one of an audio signal, a visual-capture media signal, a video media signal or a digital-image media signal, the code further comprising code to cause the processor to:
receive a third media signal having a format and a time base,
receive a fourth media signal having a time base different from the time base of the third media signal,
modify at least one of the third media signal or the fourth media signal based on the common time base such that the third media signal and the fourth media signal are synchronized to the common time base to produce at least one of a modified third media signal or a modified fourth media signal, the modified third media signal having a format different from the format of the third media signal.

### Claim 25 (depends on 20)

The non-transitory processor-readable medium of claim 20, wherein the first time window and the second time window are within a continuous capture session.
