+

US20090222731A1 - Mixing input channel signals to generate output channel signals - Google Patents

Mixing input channel signals to generate output channel signals Download PDF

Info

Publication number
US20090222731A1
US20090222731A1 US12/463,252 US46325209A US2009222731A1 US 20090222731 A1 US20090222731 A1 US 20090222731A1 US 46325209 A US46325209 A US 46325209A US 2009222731 A1 US2009222731 A1 US 2009222731A1
Authority
US
United States
Prior art keywords
indicator
channel signal
output channel
input
channel signals
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Abandoned
Application number
US12/463,252
Inventor
William George Stewart
Michael Stephen Hopkins
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Individual
Original Assignee
Individual
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Individual filed Critical Individual
Priority to US12/463,252 priority Critical patent/US20090222731A1/en
Publication of US20090222731A1 publication Critical patent/US20090222731A1/en
Abandoned legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • G06F3/0483Interaction with page-structured environments, e.g. book metaphor

Definitions

  • the present invention relates to audio signal mixing techniques and, more specifically, to a technique for mixing multiple input channel signals, based on locations of indicators in a GUI, to generate multiple output channel signals.
  • an audio mixing program may read a single input channel signal and distribute the signal over two separate output channel signals—typically, a “left” channel signal and a “right” channel signal—thus converting “mono” sound into “stereo” sound.
  • each of the output channel signals when an input channel signal is distributed over two output channel signals in this way, the volume, or intensity, of each of the output channel signals may be kept the same relative to each other; each of the output channel signals will be equally as loud as the other if each of the output channel signals receives the same “amount” of the input channel signal as the other, speaking in terms of intensity.
  • each of the output channel signals would also be at an intensity level of X decibels at the particular moment in time; the intensity levels of each of the output channel signals would change in accordance with the intensity level of the input channel signal.
  • an input channel signal may be distributed unequally over two output channel signals.
  • the “left” output channel signal may be adjusted to have a lower intensity level than the “right” output channel signal at a particular moment in time, so that, upon playback of both output channel signals concurrently, more of the input channel signal is heard from a “right” speaker than a “left” speaker at the particular moment in time.
  • GUI graphical user interface
  • a panning knob may take the appearance of a circle or dial, upon or near the perimeter of which an indicator is marked. As the user “turns” the knob counterclockwise (using a mouse, keyboard, or other input device), the indicator rotates along the perimeter toward the leftmost degree of the knob. Conversely, as the user “turns” the knob clockwise, the indicator rotates along the perimeter toward the rightmost degree of the knob.
  • the panning knob resembles, in appearance, a physical knob on a conventional radio, similar to the kind used to select volume and radio frequency, for example.
  • a user may turn the panning knob while an input channel signal is being distributed among two output channel signals.
  • the attitude of the panning knob determines how much of the input channel signal is allocated to the “left” output channel signal at that moment, and how much of the input channel signal is allocated to the “right” output channel signal at that moment.
  • the panning knob is turned all the way counterclockwise, so that the indicator is positioned toward the leftward edge of the knob, all of the input channel signal is allocated to the left output channel signal, and none of the input channel signal is allocated to the right output channel signal, speaking in terms of intensity.
  • a user can turn the panning knob to control how much of the mono audio signal is carried by each of the two stereo audio signals at that moment.
  • the user can turn then panning knob to control the intensities of each of the two stereo audio signals relative to each other at any moment in time. Over time, the relative intensities of the output channel signals may vary.
  • the panning knob described above may be largely adequate when there are exactly two output channel signals among which an input channel signal is to be distributed, but is less adequate under circumstances where an input channel signal needs to distributed between more than two output channel signals. For example, there may be a need to distribute an input channel signal between four separate output channel signals: a “left” output channel signal, a “right” output channel signal, a “front” output channel signal, and a “back” output channel signal.
  • this panning control takes the form of an outer circle or ring that encompasses a smaller indicator that can be positioned variably anywhere within the outer circle. For example, a user may use a mouse to drag the indicator from one position within the circle to another position within the circle. Similar to the way that a leftmost position and rightmost position on the perimeter of the panning knob described above corresponded to left and right output channel signals, respectively, different positions along the perimeter of the panning control's outer circle may correspond to separate output channel signals. For example, the positions at 0, 90, 180, and 270 degrees on the perimeter may correspond to “right,” “front,” “left,” and “back” output channel signals, respectively. The proximity of the indicator to each of these positions at a particular moment determines how much of the input channel signal is allocated to each of the corresponding output channel signal at the particular moment.
  • an equal amount of the input channel signal may be allocated to each of the output channel signals, speaking in terms of intensity. If the indicator is moved toward the perimeter of the outer circle, then the input channel signal may be allocated to a greater extent to the output channel signals that correspond to the perimeter positions that the indicator has moved toward, and to a lesser extent to the output channel signals that correspond to the perimeter positions from which the indicator has moved away.
  • the “front” output channel signal will have the greatest intensity of all
  • the “left” and “right” output channel signals will have somewhat less intensity than when the indicator was positioned in the exact center of the outer circle
  • the “back” output channel signal will have the least intensity of all—its corresponding position being the farthest from the indicator's position.
  • each output channel signal may correspond to a different position on the outer circle's perimeter.
  • the positions are maximally distanced from each other on the outer circle's perimeter, but they do not need to be.
  • a first, second, and third output channel signal might correspond to positions at 45, 90, and 135 degrees, respectively, along the outer circle's perimeter.
  • the number of output channel signals and their corresponding positions along the outer circle's perimeter may be user-determinable.
  • the foregoing approaches are useful for distributing, intensity-wise, a single input channel signal among multiple output channel signals.
  • the foregoing approaches suffer from some inadequacies when more than one input channel signal needs to be distributed among multiple output channel signals.
  • the channel signals bear some spatial relationship to each other. For example, in the case of music originally recorded in stereo, the music might be received, at recording time, through two separate microphones spaced at some distance from each other and the source(s) of the music. The sound recorded via one microphone might be recorded into one channel signal, and the sound recorded via the other microphone might be recorded into the other channel signal.
  • the contents of one resulting channel signal might be significantly different from the contents of other resulting channel signals.
  • the difference in the contents of the channel signals is dependent upon the spatial relationships between their corresponding microphones and the sound source(s).
  • FIG. 1 is a block diagram illustrating an example GUI that includes multiple indicators, according to an embodiment of the invention.
  • FIG. 2 is a block diagram illustrating an example GUI that includes a panning knob, according to an embodiment of the invention.
  • FIG. 3 is a block diagram of a computer system on which embodiments of the invention may be implemented.
  • a GUI which includes multiple indicators
  • Multiple input channel signals are mixed to produce multiple output channel signals.
  • the mixing is performed based on the distance between the indicators' positions in the GUI.
  • the mixing is also performed based on the angle formed between the indicators.
  • the extent to which an input channel signal is carried by an output channel signal is, in one embodiment of the invention, a function of both the distance between the indicators and an angle formed by the indicators in the GUI.
  • FIG. 1 is a block diagram illustrating an example GUI 100 that includes multiple indicators, according to an embodiment of the invention.
  • GUI 100 comprises a circular area 102 that encompasses a movable floating indicator 104 .
  • a ring 106 surrounds circular area 102 .
  • Within ring 106 are indicators 108 A and 108 B.
  • output channel signal positions 110 A-D On the edges of ring 106 are output channel signal positions 110 A-D.
  • Output channel signal positions 110 A-D may be, but do not need to be, expressly indicated in GUI 100 ; output channel signal positions 110 A-D may be inferred under some circumstances. In this example, there are two input channel signals that are to be mixed to generate four output channel signals.
  • the presence of indicators 108 A-B within ring 106 forms an arc on ring 106 that is bounded by indicators 108 A-B.
  • the length of the arc relative to the circumference of ring 106 is representative of the “width” that is given to the input as a whole as the input channel signals are rendered to output channel signals in a particular configuration.
  • the region of ring 106 between indicators 108 A-B may be shaded to visibly distinguish this region from the rest of ring 106 .
  • a user may change the position of movable floating indicator 104 within circular area 102 .
  • a user may click and drag movable floating indicator 104 from one location to another using a mouse, thereby positioning movable floating indicator 104 closer to or farther away from various ones of output channel signal positions 110 A-D.
  • the positions of indicators 108 A-B depend on the position of movable floating indicator 104 ; when movable floating indicator 104 changes position, the positions of indicators 108 A-B on ring 106 may change as well. More specifically, according to one embodiment of the invention, at every moment, an invisible vector originates from the center of circular area 102 and passes through the current position of movable floating indicator 104 . Wherever movable floating indicator 104 goes, indicators 108 A-B are positioned on ring 106 equidistant from the point at which the invisible vector intersects ring 106 . Portions of GUI 100 are re-rendered when movable floating indicator 104 moves, to reflect the new positions of movable floating indicator 104 and/or indicators 108 A-B in GUI 100 .
  • the movement of movable floating indicator 104 may cause indicators 108 A-B to change position on ring 106
  • the movement of movable floating indicator 104 alone does not cause the length of the arc bounded by indicators 108 A-B to change.
  • the point at which the invisible vector intersects ring 106 is always the midpoint of the arc bounded by indicators 108 A-B.
  • the preservation of the length of this arc causes the spatial relationship between the input channel signals to be preserved no matter where movable floating indicator 104 is moved.
  • movable floating indicator 104 For example, if movable floating indicator 104 is moved directly down from the center of circular area 102 , then the midpoint of the arc correspondingly moves to the 270-degree position on ring 106 (directly below center). Assuming that the number of degrees occupied by the arc on ring 106 is 60 degrees, indicator 108 A is positioned 30 degrees to one side of the midpoint, and indicator 108 B is positioned 30 degrees to the other side of the midpoint. Thus, under these circumstances, indicator 108 A would move to the 300-degree position on ring 106 , and indicator 108 B would move to the 240-degree position on ring 106 .
  • the distances of the indicators from each other on ring 106 are user-changeable. For example, using a mouse, a user may click on either indicator 108 A or 108 B and drag that indicator closer to or father away from the other indicator(s) on ring 106 . If an indicator is moved closer to the other indicators, then the length of the arc bounded by indicators 108 A-B shortens. Alternatively, if an indicator is moved farther from the other indicators, then the length of the arc bounded by indicators 108 A-B lengthens. The distances of the indicators from each other influences how the corresponding input channel signals are distributed, intensity-wise, among the output channel signals.
  • a user by moving the input channel signals indicators as described above, a user can increase or decrease the length of the input channel signal indicator-bounded arc to occupy as much as 360 degrees or as little as 0 degrees on ring 106 .
  • an indicator on one side of the midpoint of the arc region is moved some number of degrees toward the midpoint, an indicator on the other side of the midpoint automatically moves the same number of degrees toward the midpoint.
  • an indicator on the other side of the midpoint automatically moves the same number of degrees away from the midpoint.
  • the growth or shrinkage of the arc region occurs symmetrically about the midpoint of the arc region.
  • the “native” (i.e. pre-mixing) intensity of each input channel signal may vary over time.
  • a plurality of input channel signals are mixed and recorded into a plurality of output channel signals.
  • the extent to which a particular input channel signal's intensity (i.e., volume) is represented within a particular output channel signal at that moment is based on (a) the distance between the indicators, and (b) the particular input channel signal's “native” intensity at that moment.
  • the extent to which a particular input channel signal's intensity is represented within a particular output channel signal at that moment is also based on an angle that is formed between indicators 108 A-B, where the vertex of the angle is the center of circular area 102 .
  • ring 106 represents 360 degrees, so that the 0, 90, 180, and 270 degree positions on ring 106 correspond to real-world positions to the right, front, left, and back of the listener, respectively.
  • a user may specify that the circumference of ring 106 represents some circular arc less than 360 degrees in the real world, relative to the listener.
  • a user may define the entire circumference of ring 106 to represent 60 degrees total—from 30 degrees counterclockwise from a position directly in front of the listener to 30 degrees clockwise from the position directly in front of the listener. Under such circumstances, if the user set positions 110 A-D as shown in FIG.
  • position 110 A would still correspond to directly in front of the listener, but position 110 C. would correspond to 15 degrees counterclockwise of directly in front of the listener rather than 90 degrees counterclockwise, and position 110 D would correspond to 15 degrees clockwise of directly in front of the listener rather than 90 degrees clockwise.
  • circular area 102 comprises a panning knob similar to the panning knob described in the foregoing Background section.
  • the extent to which the panning knob is turned clockwise or counterclockwise is represented by a line that extends from the center of circular area 102 to the perimeter of circular area 102 .
  • output signal indicators represent the positions of speakers relative to a user who would be located, in the real world, at a position corresponding to the center of circular area 102 .
  • a user may select the number and positions of the output signal indicators.
  • Each output signal indicator corresponds to a separate output channel signal.
  • FIG. 2 is a block diagram illustrating an example GUI 200 that includes a panning knob, according to an embodiment of the invention.
  • circular area 102 and ring 106 are displayed.
  • line 204 indicates the attitude of the panning knob; when a user turns the panning knob counterclockwise (using a mouse, keyboard, or other input device, for example), the end of line 204 that abuts the perimeter of circular area 102 moves counterclockwise along the perimeter; when a user turns the panning knob clockwise, the end of line 204 that abuts the perimeter of circular area 102 moves counterclockwise along the perimeter.
  • the other end of line 204 remains at the center of circular area 102 regardless of the attitude of the panning knob.
  • the arc region when the panning knob is turned, the arc region does not move.
  • GUI 200 allows for the mixing of multiple input channel signals into five output channel signals.
  • Each input channel signal may be represented to a different extent in each of the output channel signals, based on the attitude of the panning knob. Changing the arc between indicators 108 A-B distributes the sound, including additional speakers/output channel signals when the arc is increased, and reducing the soundfield when the arc is decreased.
  • FIG. 3 is a block diagram that illustrates a computer system 300 upon which an embodiment of the invention may be implemented.
  • Computer system 300 includes a bus 302 or other communication mechanism for communicating information, and a processor 304 coupled with bus 302 for processing information.
  • Computer system 300 also includes a main memory 306 , such as a random access memory (RAM) or other dynamic storage device, coupled to bus 302 for storing information and instructions to be executed by processor 304 .
  • Main memory 306 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 304 .
  • Computer system 300 further includes a read only memory (ROM) 308 or other static storage device coupled to bus 302 for storing static information and instructions for processor 304 .
  • a storage device 310 such as a magnetic disk or optical disk, is provided and coupled to bus 302 for storing information and instructions.
  • Computer system 300 may be coupled via bus 302 to a display 312 , such as a cathode ray tube (CRT), for displaying information to a computer user.
  • a display 312 such as a cathode ray tube (CRT)
  • An input device 314 is coupled to bus 302 for communicating information and command selections to processor 304 .
  • cursor control 316 is Another type of user input device
  • cursor control 316 such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 304 and for controlling cursor movement on display 312 .
  • This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
  • the invention is related to the use of computer system 300 for implementing the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 300 in response to processor 304 executing one or more sequences of one or more instructions contained in main memory 306 . Such instructions may be read into main memory 306 from another machine-readable medium, such as storage device 310 . Execution of the sequences of instructions contained in main memory 306 causes processor 304 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
  • machine-readable medium refers to any medium that participates in providing data that causes a machine to operation in a specific fashion.
  • various machine-readable media are involved, for example, in providing instructions to processor 304 for execution.
  • Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media.
  • Non-volatile media includes, for example, optical or magnetic disks, such as storage device 310 .
  • Volatile media includes dynamic memory, such as main memory 306 .
  • Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 302 . Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.
  • Machine-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
  • Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to processor 304 for execution.
  • the instructions may initially be carried on a magnetic disk of a remote computer.
  • the remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem.
  • a modem local to computer system 300 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal.
  • An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 302 .
  • Bus 302 carries the data to main memory 306 , from which processor 304 retrieves and executes the instructions.
  • the instructions received by main memory 306 may optionally be stored on storage device 310 either before or after execution by processor 304 .
  • Computer system 300 also includes a communication interface 318 coupled to bus 302 .
  • Communication interface 318 provides a two-way data communication coupling to a network link 320 that is connected to a local network 322 .
  • communication interface 318 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line.
  • ISDN integrated services digital network
  • communication interface 318 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN.
  • LAN local area network
  • Wireless links may also be implemented.
  • communication interface 318 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
  • Network link 320 typically provides data communication through one or more networks to other data devices.
  • network link 320 may provide a connection through local network 322 to a host computer 324 or to data equipment operated by an Internet Service Provider (ISP) 326 .
  • ISP 326 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 328 .
  • Internet 328 uses electrical, electromagnetic or optical signals that carry digital data streams.
  • the signals through the various networks and the signals on network link 320 and through communication interface 318 which carry the digital data to and from computer system 300 , are exemplary forms of carrier waves transporting the information.
  • Computer system 300 can send messages and receive data, including program code, through the network(s), network link 320 and communication interface 318 .
  • a server 330 might transmit a requested code for an application program through Internet 328 , ISP 326 , local network 322 and communication interface 318 .
  • the received code may be executed by processor 304 as it is received, and/or stored in storage device 310 , or other non-volatile storage for later execution. In this manner, computer system 300 may obtain application code in the form of a carrier wave.

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

Techniques for mixing multiple input channel signals into multiple output channel signals are provided. A graphical user interface (GUI), which includes multiple indicators, is displayed. The input channel signals are mixed to produce multiple output channel signals. The mixing is performed based on the distance between the indicators' positions in the GUI. According to one embodiment of the invention, the mixing is also performed based on the angle formed between the indicators. Thus, the extent to which an input channel signal is carried by an output channel signal is, in one embodiment of the invention, a function of both the distance between the indicators and an angle formed by the indicators in the GUI.

Description

    CLAIM OF PRIORITY
  • The present application claims domestic priority, as a continuation application under 35 U.S.C. § 120, to co-pending U.S. patent application Ser. No. 11/154,196, which is titled “MIXING INPUT CHANNEL SIGNALS TO GENERATE OUTPUT CHANNEL SIGNALS,” and which was filed on Jun. 15, 2005. The entire contents of U.S. patent application Ser. No. 11/154,196 are incorporated by reference as though fully disclosed herein.
  • FIELD OF THE INVENTION
  • The present invention relates to audio signal mixing techniques and, more specifically, to a technique for mixing multiple input channel signals, based on locations of indicators in a GUI, to generate multiple output channel signals.
  • BACKGROUND
  • There exist many computer programs today that assist a user in generating output audio channel signals based on an input audio channel signal. For example, an audio mixing program may read a single input channel signal and distribute the signal over two separate output channel signals—typically, a “left” channel signal and a “right” channel signal—thus converting “mono” sound into “stereo” sound.
  • According to one approach, when an input channel signal is distributed over two output channel signals in this way, the volume, or intensity, of each of the output channel signals may be kept the same relative to each other; each of the output channel signals will be equally as loud as the other if each of the output channel signals receives the same “amount” of the input channel signal as the other, speaking in terms of intensity. Under such an approach, for example, if the input channel signal is at an intensity level of X decibels at a particular moment in time, then each of the output channel signals would also be at an intensity level of X decibels at the particular moment in time; the intensity levels of each of the output channel signals would change in accordance with the intensity level of the input channel signal.
  • However, according to one approach, an input channel signal may be distributed unequally over two output channel signals. For example, the “left” output channel signal may be adjusted to have a lower intensity level than the “right” output channel signal at a particular moment in time, so that, upon playback of both output channel signals concurrently, more of the input channel signal is heard from a “right” speaker than a “left” speaker at the particular moment in time.
  • In an audio mixing program, a graphical user interface (GUI) control is often provided to allow a user to selectively allocate the intensity of an input channel signal among two output channel signals over time. The process of allocating the input channel signal over time is called “panning,” and the control by which the user selects the allocation of the input channel signal over time is called a “panning knob.”
  • For example, a panning knob may take the appearance of a circle or dial, upon or near the perimeter of which an indicator is marked. As the user “turns” the knob counterclockwise (using a mouse, keyboard, or other input device), the indicator rotates along the perimeter toward the leftmost degree of the knob. Conversely, as the user “turns” the knob clockwise, the indicator rotates along the perimeter toward the rightmost degree of the knob. Thus, under one approach, the panning knob resembles, in appearance, a physical knob on a conventional radio, similar to the kind used to select volume and radio frequency, for example.
  • A user may turn the panning knob while an input channel signal is being distributed among two output channel signals. At any moment in time while the input channel signal is being “recorded” to the output channel signals, the attitude of the panning knob determines how much of the input channel signal is allocated to the “left” output channel signal at that moment, and how much of the input channel signal is allocated to the “right” output channel signal at that moment. According to one approach, when the panning knob is turned all the way counterclockwise, so that the indicator is positioned toward the leftward edge of the knob, all of the input channel signal is allocated to the left output channel signal, and none of the input channel signal is allocated to the right output channel signal, speaking in terms of intensity. As the panning knob is turned clockwise from this attitude, more of the input channel signal is allocated to the right output channel signal, and less of the input channel signal is allocated to the left output channel signal, speaking again in terms of intensity. As would be expected, when the panning knob is turned all the way clockwise, so that the indicator is positioned toward the rightward edge of the knob, all of the input channel signal is allocated to the right output channel, and none of the input channel signal is allocated to the left output channel, speaking in terms of intensity once more.
  • Thus, at any moment during the distribution of a mono audio signal between two stereo audio signals, a user can turn the panning knob to control how much of the mono audio signal is carried by each of the two stereo audio signals at that moment. In other words, the user can turn then panning knob to control the intensities of each of the two stereo audio signals relative to each other at any moment in time. Over time, the relative intensities of the output channel signals may vary.
  • The panning knob described above may be largely adequate when there are exactly two output channel signals among which an input channel signal is to be distributed, but is less adequate under circumstances where an input channel signal needs to distributed between more than two output channel signals. For example, there may be a need to distribute an input channel signal between four separate output channel signals: a “left” output channel signal, a “right” output channel signal, a “front” output channel signal, and a “back” output channel signal.
  • A more suitable GUI panning control may be employed under such circumstances. According to one approach, this panning control takes the form of an outer circle or ring that encompasses a smaller indicator that can be positioned variably anywhere within the outer circle. For example, a user may use a mouse to drag the indicator from one position within the circle to another position within the circle. Similar to the way that a leftmost position and rightmost position on the perimeter of the panning knob described above corresponded to left and right output channel signals, respectively, different positions along the perimeter of the panning control's outer circle may correspond to separate output channel signals. For example, the positions at 0, 90, 180, and 270 degrees on the perimeter may correspond to “right,” “front,” “left,” and “back” output channel signals, respectively. The proximity of the indicator to each of these positions at a particular moment determines how much of the input channel signal is allocated to each of the corresponding output channel signal at the particular moment.
  • For example, when the indicator is positioned exactly at the center of the outer circle, an equal amount of the input channel signal may be allocated to each of the output channel signals, speaking in terms of intensity. If the indicator is moved toward the perimeter of the outer circle, then the input channel signal may be allocated to a greater extent to the output channel signals that correspond to the perimeter positions that the indicator has moved toward, and to a lesser extent to the output channel signals that correspond to the perimeter positions from which the indicator has moved away. For example, if there are four maximally-spaced perimeter positions along the outer circle, as described above, then when the indicator is positioned at the topmost center edge of the outer circle (i.e., at 90 degrees on the perimeter), the “front” output channel signal will have the greatest intensity of all, the “left” and “right” output channel signals will have somewhat less intensity than when the indicator was positioned in the exact center of the outer circle, and the “back” output channel signal will have the least intensity of all—its corresponding position being the farthest from the indicator's position.
  • The above approach can be extended to accompany any number of output channel signals; each output channel signal may correspond to a different position on the outer circle's perimeter. In the example described above, the positions are maximally distanced from each other on the outer circle's perimeter, but they do not need to be. For example, a first, second, and third output channel signal might correspond to positions at 45, 90, and 135 degrees, respectively, along the outer circle's perimeter. The number of output channel signals and their corresponding positions along the outer circle's perimeter may be user-determinable.
  • The foregoing approaches are useful for distributing, intensity-wise, a single input channel signal among multiple output channel signals. However, the foregoing approaches suffer from some inadequacies when more than one input channel signal needs to be distributed among multiple output channel signals. Typically, in situations where a recorded sound occupies multiple channel signals, the channel signals bear some spatial relationship to each other. For example, in the case of music originally recorded in stereo, the music might be received, at recording time, through two separate microphones spaced at some distance from each other and the source(s) of the music. The sound recorded via one microphone might be recorded into one channel signal, and the sound recorded via the other microphone might be recorded into the other channel signal. When microphones are placed at different locations relative to sound source(s) and each other for recording purposes, the contents of one resulting channel signal might be significantly different from the contents of other resulting channel signals. The difference in the contents of the channel signals is dependent upon the spatial relationships between their corresponding microphones and the sound source(s).
  • At some time after the multiple channel signals have been recorded, one might want to mix the multiple channel signals into an even greater number of output channel signals. For example, one might wish to take two input channel signals and mix them into four output channel signals to produce more of a “surround sound” effect. However, because the approaches described above never really contemplated more than one input channel signal, the foregoing approaches provide no clear way of preserving, indicating, or manipulating the spatial relationship between multiple input channel signals that need to be mixed into multiple output channel signals.
  • The approaches described in this section are approaches that could be pursued, but not necessarily approaches that have been previously conceived or pursued. Therefore, unless otherwise indicated, it should not be assumed that any of the approaches described in this section qualify as prior art merely by virtue of their inclusion in this section.
  • BRIEF DESCRIPTION OF THE DRAWINGS
  • The present invention is illustrated by way of example, and not by way of limitation, in the figures of the accompanying drawings and in which like reference numerals refer to similar elements and in which:
  • FIG. 1 is a block diagram illustrating an example GUI that includes multiple indicators, according to an embodiment of the invention; and
  • FIG. 2 is a block diagram illustrating an example GUI that includes a panning knob, according to an embodiment of the invention; and
  • FIG. 3 is a block diagram of a computer system on which embodiments of the invention may be implemented.
  • DETAILED DESCRIPTION
  • In the following description, for the purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present invention. It will be apparent, however, that the present invention may be practiced without these specific details. In other instances, well-known structures and devices are shown in block diagram form in order to avoid unnecessarily obscuring the present invention.
  • OVERVIEW
  • According to techniques described herein, a GUI, which includes multiple indicators, is displayed. Multiple input channel signals are mixed to produce multiple output channel signals. The mixing is performed based on the distance between the indicators' positions in the GUI. According to one embodiment of the invention, the mixing is also performed based on the angle formed between the indicators. Thus, the extent to which an input channel signal is carried by an output channel signal is, in one embodiment of the invention, a function of both the distance between the indicators and an angle formed by the indicators in the GUI.
  • Example GUI
  • FIG. 1 is a block diagram illustrating an example GUI 100 that includes multiple indicators, according to an embodiment of the invention. GUI 100 comprises a circular area 102 that encompasses a movable floating indicator 104. A ring 106 surrounds circular area 102. Within ring 106 are indicators 108A and 108B. On the edges of ring 106 are output channel signal positions 110A-D. Output channel signal positions 110A-D may be, but do not need to be, expressly indicated in GUI 100; output channel signal positions 110A-D may be inferred under some circumstances. In this example, there are two input channel signals that are to be mixed to generate four output channel signals.
  • The presence of indicators 108A-B within ring 106 forms an arc on ring 106 that is bounded by indicators 108A-B. The length of the arc relative to the circumference of ring 106 is representative of the “width” that is given to the input as a whole as the input channel signals are rendered to output channel signals in a particular configuration. The region of ring 106 between indicators 108A-B may be shaded to visibly distinguish this region from the rest of ring 106.
  • A user may change the position of movable floating indicator 104 within circular area 102. For example, a user may click and drag movable floating indicator 104 from one location to another using a mouse, thereby positioning movable floating indicator 104 closer to or farther away from various ones of output channel signal positions 110A-D.
  • According to one embodiment of the invention, the positions of indicators 108A-B depend on the position of movable floating indicator 104; when movable floating indicator 104 changes position, the positions of indicators 108A-B on ring 106 may change as well. More specifically, according to one embodiment of the invention, at every moment, an invisible vector originates from the center of circular area 102 and passes through the current position of movable floating indicator 104. Wherever movable floating indicator 104 goes, indicators 108A-B are positioned on ring 106 equidistant from the point at which the invisible vector intersects ring 106. Portions of GUI 100 are re-rendered when movable floating indicator 104 moves, to reflect the new positions of movable floating indicator 104 and/or indicators 108A-B in GUI 100.
  • Although the movement of movable floating indicator 104 may cause indicators 108A-B to change position on ring 106, the movement of movable floating indicator 104 alone does not cause the length of the arc bounded by indicators 108A-B to change. Thus, according to one embodiment of the invention, the point at which the invisible vector intersects ring 106 is always the midpoint of the arc bounded by indicators 108A-B. The preservation of the length of this arc causes the spatial relationship between the input channel signals to be preserved no matter where movable floating indicator 104 is moved.
  • For example, if movable floating indicator 104 is moved directly down from the center of circular area 102, then the midpoint of the arc correspondingly moves to the 270-degree position on ring 106 (directly below center). Assuming that the number of degrees occupied by the arc on ring 106 is 60 degrees, indicator 108A is positioned 30 degrees to one side of the midpoint, and indicator 108B is positioned 30 degrees to the other side of the midpoint. Thus, under these circumstances, indicator 108A would move to the 300-degree position on ring 106, and indicator 108B would move to the 240-degree position on ring 106.
  • Changing Distances Between Input Channel Signals
  • According to one embodiment of the invention, the distances of the indicators from each other on ring 106 are user-changeable. For example, using a mouse, a user may click on either indicator 108A or 108B and drag that indicator closer to or father away from the other indicator(s) on ring 106. If an indicator is moved closer to the other indicators, then the length of the arc bounded by indicators 108A-B shortens. Alternatively, if an indicator is moved farther from the other indicators, then the length of the arc bounded by indicators 108A-B lengthens. The distances of the indicators from each other influences how the corresponding input channel signals are distributed, intensity-wise, among the output channel signals.
  • According to one embodiment of the invention, by moving the input channel signals indicators as described above, a user can increase or decrease the length of the input channel signal indicator-bounded arc to occupy as much as 360 degrees or as little as 0 degrees on ring 106.
  • According to one embodiment of the invention, as an indicator on one side of the midpoint of the arc region is moved some number of degrees toward the midpoint, an indicator on the other side of the midpoint automatically moves the same number of degrees toward the midpoint. According to one embodiment of the invention, as an indicator on one side of the midpoint of the arc region is moved some number of degrees away from the midpoint, an indicator on the other side of the midpoint automatically moves the same number of degrees away from the midpoint. Thus, in one embodiment of the invention, the growth or shrinkage of the arc region occurs symmetrically about the midpoint of the arc region.
  • Determining Intensities Based on Proximities
  • The “native” (i.e. pre-mixing) intensity of each input channel signal may vary over time. According to one embodiment of the invention, a plurality of input channel signals are mixed and recorded into a plurality of output channel signals. At each moment during the mixing of the input channel signals into the output channel signals, the extent to which a particular input channel signal's intensity (i.e., volume) is represented within a particular output channel signal at that moment is based on (a) the distance between the indicators, and (b) the particular input channel signal's “native” intensity at that moment. According to one embodiment of the invention, the extent to which a particular input channel signal's intensity is represented within a particular output channel signal at that moment is also based on an angle that is formed between indicators 108A-B, where the vertex of the angle is the center of circular area 102.
  • Input Constraints
  • As is described above, according to one embodiment of the invention, ring 106 represents 360 degrees, so that the 0, 90, 180, and 270 degree positions on ring 106 correspond to real-world positions to the right, front, left, and back of the listener, respectively. However, in an alternative embodiment of the invention, a user may specify that the circumference of ring 106 represents some circular arc less than 360 degrees in the real world, relative to the listener. For example, a user may define the entire circumference of ring 106 to represent 60 degrees total—from 30 degrees counterclockwise from a position directly in front of the listener to 30 degrees clockwise from the position directly in front of the listener. Under such circumstances, if the user set positions 110A-D as shown in FIG. 1, position 110A would still correspond to directly in front of the listener, but position 110C. would correspond to 15 degrees counterclockwise of directly in front of the listener rather than 90 degrees counterclockwise, and position 110D would correspond to 15 degrees clockwise of directly in front of the listener rather than 90 degrees clockwise.
  • Output Constraints
  • According to one embodiment of the invention, instead of containing movable floating indicator 104, circular area 102 comprises a panning knob similar to the panning knob described in the foregoing Background section. In one embodiment of the invention, the extent to which the panning knob is turned clockwise or counterclockwise is represented by a line that extends from the center of circular area 102 to the perimeter of circular area 102. Outside of ring 106, output signal indicators represent the positions of speakers relative to a user who would be located, in the real world, at a position corresponding to the center of circular area 102. A user may select the number and positions of the output signal indicators. Each output signal indicator corresponds to a separate output channel signal.
  • FIG. 2 is a block diagram illustrating an example GUI 200 that includes a panning knob, according to an embodiment of the invention. As in FIG. 1, circular area 102 and ring 106 are displayed. Referring to again to FIG. 2, line 204 indicates the attitude of the panning knob; when a user turns the panning knob counterclockwise (using a mouse, keyboard, or other input device, for example), the end of line 204 that abuts the perimeter of circular area 102 moves counterclockwise along the perimeter; when a user turns the panning knob clockwise, the end of line 204 that abuts the perimeter of circular area 102 moves counterclockwise along the perimeter. The other end of line 204 remains at the center of circular area 102 regardless of the attitude of the panning knob.
  • According to one embodiment of the invention, when the panning knob is turned, the arc region does not move.
  • In the example shown in FIG. 2, there are five positions for five separate output channel signals. Thus, in the example shown in FIG. 2, GUI 200 allows for the mixing of multiple input channel signals into five output channel signals. Each input channel signal may be represented to a different extent in each of the output channel signals, based on the attitude of the panning knob. Changing the arc between indicators 108A-B distributes the sound, including additional speakers/output channel signals when the arc is increased, and reducing the soundfield when the arc is decreased.
  • Hardware Overview
  • FIG. 3 is a block diagram that illustrates a computer system 300 upon which an embodiment of the invention may be implemented. Computer system 300 includes a bus 302 or other communication mechanism for communicating information, and a processor 304 coupled with bus 302 for processing information. Computer system 300 also includes a main memory 306, such as a random access memory (RAM) or other dynamic storage device, coupled to bus 302 for storing information and instructions to be executed by processor 304. Main memory 306 also may be used for storing temporary variables or other intermediate information during execution of instructions to be executed by processor 304. Computer system 300 further includes a read only memory (ROM) 308 or other static storage device coupled to bus 302 for storing static information and instructions for processor 304. A storage device 310, such as a magnetic disk or optical disk, is provided and coupled to bus 302 for storing information and instructions.
  • Computer system 300 may be coupled via bus 302 to a display 312, such as a cathode ray tube (CRT), for displaying information to a computer user. An input device 314, including alphanumeric and other keys, is coupled to bus 302 for communicating information and command selections to processor 304. Another type of user input device is cursor control 316, such as a mouse, a trackball, or cursor direction keys for communicating direction information and command selections to processor 304 and for controlling cursor movement on display 312. This input device typically has two degrees of freedom in two axes, a first axis (e.g., x) and a second axis (e.g., y), that allows the device to specify positions in a plane.
  • The invention is related to the use of computer system 300 for implementing the techniques described herein. According to one embodiment of the invention, those techniques are performed by computer system 300 in response to processor 304 executing one or more sequences of one or more instructions contained in main memory 306. Such instructions may be read into main memory 306 from another machine-readable medium, such as storage device 310. Execution of the sequences of instructions contained in main memory 306 causes processor 304 to perform the process steps described herein. In alternative embodiments, hard-wired circuitry may be used in place of or in combination with software instructions to implement the invention. Thus, embodiments of the invention are not limited to any specific combination of hardware circuitry and software.
  • The term “machine-readable medium” as used herein refers to any medium that participates in providing data that causes a machine to operation in a specific fashion. In an embodiment implemented using computer system 300, various machine-readable media are involved, for example, in providing instructions to processor 304 for execution. Such a medium may take many forms, including but not limited to, non-volatile media, volatile media, and transmission media. Non-volatile media includes, for example, optical or magnetic disks, such as storage device 310. Volatile media includes dynamic memory, such as main memory 306. Transmission media includes coaxial cables, copper wire and fiber optics, including the wires that comprise bus 302. Transmission media can also take the form of acoustic or light waves, such as those generated during radio-wave and infra-red data communications.
  • Common forms of machine-readable media include, for example, a floppy disk, a flexible disk, hard disk, magnetic tape, or any other magnetic medium, a CD-ROM, any other optical medium, punchcards, papertape, any other physical medium with patterns of holes, a RAM, a PROM, and EPROM, a FLASH-EPROM, any other memory chip or cartridge, a carrier wave as described hereinafter, or any other medium from which a computer can read.
  • Various forms of machine-readable media may be involved in carrying one or more sequences of one or more instructions to processor 304 for execution. For example, the instructions may initially be carried on a magnetic disk of a remote computer. The remote computer can load the instructions into its dynamic memory and send the instructions over a telephone line using a modem. A modem local to computer system 300 can receive the data on the telephone line and use an infra-red transmitter to convert the data to an infra-red signal. An infra-red detector can receive the data carried in the infra-red signal and appropriate circuitry can place the data on bus 302. Bus 302 carries the data to main memory 306, from which processor 304 retrieves and executes the instructions. The instructions received by main memory 306 may optionally be stored on storage device 310 either before or after execution by processor 304.
  • Computer system 300 also includes a communication interface 318 coupled to bus 302. Communication interface 318 provides a two-way data communication coupling to a network link 320 that is connected to a local network 322. For example, communication interface 318 may be an integrated services digital network (ISDN) card or a modem to provide a data communication connection to a corresponding type of telephone line. As another example, communication interface 318 may be a local area network (LAN) card to provide a data communication connection to a compatible LAN. Wireless links may also be implemented. In any such implementation, communication interface 318 sends and receives electrical, electromagnetic or optical signals that carry digital data streams representing various types of information.
  • Network link 320 typically provides data communication through one or more networks to other data devices. For example, network link 320 may provide a connection through local network 322 to a host computer 324 or to data equipment operated by an Internet Service Provider (ISP) 326. ISP 326 in turn provides data communication services through the world wide packet data communication network now commonly referred to as the “Internet” 328. Local network 322 and Internet 328 both use electrical, electromagnetic or optical signals that carry digital data streams. The signals through the various networks and the signals on network link 320 and through communication interface 318, which carry the digital data to and from computer system 300, are exemplary forms of carrier waves transporting the information.
  • Computer system 300 can send messages and receive data, including program code, through the network(s), network link 320 and communication interface 318. In the Internet example, a server 330 might transmit a requested code for an application program through Internet 328, ISP 326, local network 322 and communication interface 318.
  • The received code may be executed by processor 304 as it is received, and/or stored in storage device 310, or other non-volatile storage for later execution. In this manner, computer system 300 may obtain application code in the form of a carrier wave.
  • In the foregoing specification, embodiments of the invention have been described with reference to numerous specific details that may vary from implementation to implementation. Thus, the sole and exclusive indicator of what is the invention, and is intended by the applicants to be the invention, is the set of claims that issue from this application, in the specific form in which such claims issue, including any subsequent correction. Any definitions expressly set forth herein for terms contained in such claims shall govern the meaning of such terms as used in the claims. Hence, no limitation, element, property, feature, advantage or attribute that is not expressly recited in a claim should limit the scope of such claim in any way. The specification and drawings are, accordingly, to be regarded in an illustrative rather than a restrictive sense.

Claims (20)

1. A computer-implemented method for generating output channel signals based on input channel signals, the method comprising:
displaying a graphical user interface (GUI) that includes a plurality of indicators and a movable point;
wherein the plurality of indicators includes
a first indicator that represents a first input channel signal; and
a second indicator that represents a second input channel signal; and
mixing a plurality of input channel signals, including the first input channel signal and the second input channel signal, to produce a plurality of output channel signals;
wherein a particular point serves as a vertex of an angle formed by
a first vector that extends from the particular point through the first indicator; and
a second vector that extends from the particular point through the second indicator;
in response to input that moves the movable point without moving the particular point, moving both the first indicator and the second indicator without changing the angle formed by the first vector and the second vector;
wherein, for each output channel signal of the plurality of output channel signals, the relative intensities of the input channel signals on that output channel signal are based, at least in part, on said angle;
wherein the steps of displaying, mixing, and moving are performed by one or more computing devices.
2. A computer-implemented method for generating output channel signals based on input channel signals, the method comprising:
displaying a graphical user interface (GUI) that includes:
a first indicator that represents a first input channel signal; and
a second indicator that represents a second input channel signal;
in response to user input, rotating the first indicator and the second indicator around a point without changing an angle defined by vectors from the point through the first visual indicator and the second visual indicator; and
mixing a plurality of input channel signals, including the first input channel signal and the second input channel signal, to produce a plurality of output channel signals;
wherein, for each output channel signal of the plurality of output channel signals, the relative intensities of the input channel signals on that output channel signal are based, at least in part, on said angle;
wherein the steps of displaying, rotating, and mixing are performed by one or more computing devices.
3. A computer-implemented method for generating output channel signals based on input channel signals, the method comprising:
displaying a graphical user interface (GUI) that includes:
a first indicator that represents a first input channel signal;
a second indicator that represents a second input channel signal; and
a movable point;
wherein a vector extends from a point through the movable point;
wherein the vector intersects a midpoint between the first indicator and the second indicator;
receiving user input that specifies a movement of the movable point without moving the point;
wherein the movement specified by the user input rotates the movable point around the point, and changes the distance between the movable point and the point;
in response to user input that moves the movable point without moving the point, rotating the first indicator and the second indicator around the point so that the vector that extends from the point through the movable point continues to intersect the midpoint between the first indicator and the second indicator; and
mixing a plurality of input channel signals, including the first input channel signal and the second input channel signal, to produce a plurality of output channel signals;
wherein, for each output channel signal of the plurality of output channel signals, the relative intensity of the first input channel signal on that output channel signal is based, at least in part, on the position of said first indicator and the position of the movable point; and
wherein, for each output channel signal of the plurality of output channel signals, the relative intensity of the second input channel signal on that output channel signal is based, at least in part, on the position of the second indicator and the position of the movable point;
wherein the steps of displaying, rotating, and mixing are performed by one or more computing devices.
4. (canceled)
5. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 1.
6. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 2.
7. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 3.
8. (canceled)
9. A computer-implemented method for mixing audio, the method comprising steps of:
receiving user input that specifies an angle between (a) a leftmost speaker in a speaker configuration and (b) a rightmost speaker in a speaker configuration, with a listener positioned at a vertex of the angle;
based at least in part on the angle specified by the user input, distributing audio from an input audio signal among at least two output channel signals, thereby mixing the input audio signal;
wherein the steps are performed by one or more computing devices.
10. The method of claim 9, wherein distributing the audio based on the angle comprises recording a sound field represented by the input audio signal as though the sound field had a first width that corresponds to the angle rather than a second width that is inherent in the input audio signal.
11. The method of claim 9, wherein receiving user input comprises receiving particular user input that signifies an increase in the angle, and in response to receiving the particular user input, increasing the angle by equal extents on both a left side and a right side, keeping a center of the angle relative to the listener constant.
12. The method of claim 9, wherein receiving user input comprises receiving particular user input that signifies a decrease in the angle, and in response to receiving the particular user input, decreasing the angle by equal extents on both a left side and a right side, keeping a center of the angle relative to the listener constant.
13. The method of claim 9, further comprising:
displaying a user interface that graphically indicates the angle as an arc between the leftmost speaker and the rightmost speaker on a circular perimeter.
14. The method of claim 9, wherein distributing audio from the input audio signal among at least two output channel signals comprises:
determining a first distance from a leftmost edge of an arc to a position of a first speaker of a speaker configuration, and sending audio from the input channel signal to a first output channel signal with an intensity that is based on the first distance; and
determining a second distance from a rightmost edge of the arc to a position of a second speaker of a speaker configuration, and sending audio from the input channel signal to a second output channel signal with an intensity that is based on the second distance.
15. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 9.
16. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 10.
17. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 11.
18. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 12.
19. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 13.
20. A volatile or non-volatile computer-readable storage medium storing one or more sequences of instructions which, when executed by one or more processors, causes the one or more processors to perform the method recited in claim 14.
US12/463,252 2005-06-15 2009-05-08 Mixing input channel signals to generate output channel signals Abandoned US20090222731A1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/463,252 US20090222731A1 (en) 2005-06-15 2009-05-08 Mixing input channel signals to generate output channel signals

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US11/154,196 US7549123B1 (en) 2005-06-15 2005-06-15 Mixing input channel signals to generate output channel signals
US12/463,252 US20090222731A1 (en) 2005-06-15 2009-05-08 Mixing input channel signals to generate output channel signals

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
US11/154,196 Continuation US7549123B1 (en) 2005-06-15 2005-06-15 Mixing input channel signals to generate output channel signals

Publications (1)

Publication Number Publication Date
US20090222731A1 true US20090222731A1 (en) 2009-09-03

Family

ID=40748673

Family Applications (2)

Application Number Title Priority Date Filing Date
US11/154,196 Active 2026-10-05 US7549123B1 (en) 2005-06-15 2005-06-15 Mixing input channel signals to generate output channel signals
US12/463,252 Abandoned US20090222731A1 (en) 2005-06-15 2009-05-08 Mixing input channel signals to generate output channel signals

Family Applications Before (1)

Application Number Title Priority Date Filing Date
US11/154,196 Active 2026-10-05 US7549123B1 (en) 2005-06-15 2005-06-15 Mixing input channel signals to generate output channel signals

Country Status (1)

Country Link
US (2) US7549123B1 (en)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110004716A1 (en) * 2009-07-02 2011-01-06 Amp'd PC Technologies, Inc. Discrete lateral mosfet power amplifier expansion card
US9578439B2 (en) 2015-01-02 2017-02-21 Qualcomm Incorporated Method, system and article of manufacture for processing spatial audio

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7549123B1 (en) * 2005-06-15 2009-06-16 Apple Inc. Mixing input channel signals to generate output channel signals
USD667423S1 (en) * 2011-01-04 2012-09-18 Microsoft Corporation Display screen with animated user interface
US8842842B2 (en) 2011-02-01 2014-09-23 Apple Inc. Detection of audio channel configuration
US8621355B2 (en) 2011-02-02 2013-12-31 Apple Inc. Automatic synchronization of media clips
US8887074B2 (en) 2011-02-16 2014-11-11 Apple Inc. Rigging parameters to create effects and animation
US9420394B2 (en) 2011-02-16 2016-08-16 Apple Inc. Panning presets
USD659704S1 (en) * 2011-11-08 2012-05-15 Kaarya, LLC. Display screen or portion thereof with a graphical user interface
EP2923500A4 (en) * 2012-11-22 2016-06-08 Razer Asia Pacific Pte Ltd Method for outputting a modified audio signal and graphical user interfaces produced by an application program

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5212733A (en) * 1990-02-28 1993-05-18 Voyager Sound, Inc. Sound mixing device
US5581618A (en) * 1992-04-03 1996-12-03 Yamaha Corporation Sound-image position control apparatus
US5736982A (en) * 1994-08-03 1998-04-07 Nippon Telegraph And Telephone Corporation Virtual space apparatus with avatars and speech
US6459797B1 (en) * 1998-04-01 2002-10-01 International Business Machines Corporation Audio mixer
US20020172370A1 (en) * 2001-05-15 2002-11-21 Akitaka Ito Surround sound field reproduction system and surround sound field reproduction method
US20050081164A1 (en) * 2003-08-28 2005-04-14 Tatsuya Hama Information processing apparatus, information processing method, information processing program and storage medium containing information processing program
US20050157894A1 (en) * 2004-01-16 2005-07-21 Andrews Anthony J. Sound feature positioner
US6977653B1 (en) * 2000-03-08 2005-12-20 Tektronix, Inc. Surround sound display
US20060064300A1 (en) * 2004-09-09 2006-03-23 Holladay Aaron M Audio mixing method and computer software product
US7158844B1 (en) * 1999-10-22 2007-01-02 Paul Cancilla Configurable surround sound system
US7190794B2 (en) * 2001-01-29 2007-03-13 Hewlett-Packard Development Company, L.P. Audio user interface
US7549123B1 (en) * 2005-06-15 2009-06-16 Apple Inc. Mixing input channel signals to generate output channel signals

Patent Citations (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5212733A (en) * 1990-02-28 1993-05-18 Voyager Sound, Inc. Sound mixing device
US5581618A (en) * 1992-04-03 1996-12-03 Yamaha Corporation Sound-image position control apparatus
US5736982A (en) * 1994-08-03 1998-04-07 Nippon Telegraph And Telephone Corporation Virtual space apparatus with avatars and speech
US6459797B1 (en) * 1998-04-01 2002-10-01 International Business Machines Corporation Audio mixer
US7158844B1 (en) * 1999-10-22 2007-01-02 Paul Cancilla Configurable surround sound system
US6977653B1 (en) * 2000-03-08 2005-12-20 Tektronix, Inc. Surround sound display
US7190794B2 (en) * 2001-01-29 2007-03-13 Hewlett-Packard Development Company, L.P. Audio user interface
US20020172370A1 (en) * 2001-05-15 2002-11-21 Akitaka Ito Surround sound field reproduction system and surround sound field reproduction method
US6934395B2 (en) * 2001-05-15 2005-08-23 Sony Corporation Surround sound field reproduction system and surround sound field reproduction method
US20050081164A1 (en) * 2003-08-28 2005-04-14 Tatsuya Hama Information processing apparatus, information processing method, information processing program and storage medium containing information processing program
US20050157894A1 (en) * 2004-01-16 2005-07-21 Andrews Anthony J. Sound feature positioner
US20060064300A1 (en) * 2004-09-09 2006-03-23 Holladay Aaron M Audio mixing method and computer software product
US7549123B1 (en) * 2005-06-15 2009-06-16 Apple Inc. Mixing input channel signals to generate output channel signals

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110004716A1 (en) * 2009-07-02 2011-01-06 Amp'd PC Technologies, Inc. Discrete lateral mosfet power amplifier expansion card
US8571237B2 (en) * 2009-07-02 2013-10-29 Amp'd PC Technologies, LLC Multi-zone audio amplification system for multimedia
US9578439B2 (en) 2015-01-02 2017-02-21 Qualcomm Incorporated Method, system and article of manufacture for processing spatial audio

Also Published As

Publication number Publication date
US7549123B1 (en) 2009-06-16

Similar Documents

Publication Publication Date Title
US20090222731A1 (en) Mixing input channel signals to generate output channel signals
US20190221224A1 (en) Application programing interface for adaptive audio rendering
US20200275230A1 (en) Grouping and transport of audio objects
US20200053464A1 (en) User interface for controlling audio zones
US20080253577A1 (en) Multi-channel sound panner
US20080253592A1 (en) User interface for multi-channel sound panner
CN110545887B (en) Streaming of augmented/virtual reality space audio/video
US20170195819A1 (en) Configuring Playback of Audio Via a Home Audio Playback System
US11115776B2 (en) Methods, apparatus and systems for position-based gain adjustment of object-based audio
US20120263307A1 (en) Translating user interface sounds into 3d audio space
RU2735095C2 (en) Audio processing device and method, and program
US12047767B2 (en) Spatial augmentation
US20240056758A1 (en) Systems and Methods for Rendering Spatial Audio Using Spatialization Shaders
US20230133555A1 (en) Method and Apparatus for Audio Transition Between Acoustic Environments
KR102643841B1 (en) Information processing devices and methods, and programs
CN113170255A (en) Compensation for binaural loudspeaker directivity
CN111857473B (en) Audio playing method and device and electronic equipment
US20240187807A1 (en) Clustering audio objects
CN118678286B (en) Audio data processing method, device and system, electronic equipment and storage medium
US20250123793A1 (en) System For Controlling Volume Levels Of A Plurality Of Speakers And Method Therefor
US12342156B2 (en) Supplementing content
US20250168582A1 (en) Apparatus and method for enhancing surround sound in multi channel speaker environment
CN116965062A (en) Clustering audio objects
CN118176749A (en) Information processing device, method, and program
JP2018125883A (en) Acoustic signal processing apparatus

Legal Events

Date Code Title Description
STCB Information on status: application discontinuation

Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION

点击 这是indexloc提供的php浏览器服务,不要输入任何密码和下载