WO2010101381A2 - Method and apparatus for processing audio data - Google Patents

Method and apparatus for processing audio data Download PDF

Info

Publication number
WO2010101381A2
WO2010101381A2 PCT/KR2010/001276 KR2010001276W WO2010101381A2 WO 2010101381 A2 WO2010101381 A2 WO 2010101381A2 KR 2010001276 W KR2010001276 W KR 2010001276W WO 2010101381 A2 WO2010101381 A2 WO 2010101381A2
Authority
WO
WIPO (PCT)
Prior art keywords
data
channel data
channel
loaded
mix
Prior art date
Application number
PCT/KR2010/001276
Other languages
French (fr)
Other versions
WO2010101381A3 (en
Inventor
Sang Won Seo
Hun Joong Kim
Original Assignee
Core Logic Inc.
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 Core Logic Inc. filed Critical Core Logic Inc.
Priority to CN2010800103099A priority Critical patent/CN102341845B/en
Priority to JP2011552879A priority patent/JP2012519310A/en
Publication of WO2010101381A2 publication Critical patent/WO2010101381A2/en
Publication of WO2010101381A3 publication Critical patent/WO2010101381A3/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/008Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing

Definitions

  • the present invention relates to a method of processing audio data, and more particularly, to techniques pertinent to down-mixing and windowing, which are capable of integrally performing the down-mixing and windowing on received channel data.
  • the Dolby AC3 and the DTS were developed for the purpose of realistically showing a film at the theater, but are being widely used for various media (e.g., DVD, CD, laser disk, and digital broadcasting). Accordingly, everybody can listen to a high quality of surround sound only if he has an audio system (e.g., a home theater and a DVD or/or Divx player) capable of supporting a corresponding surround audio format for a multichannel installed at his house.
  • an audio system e.g., a home theater and a DVD or/or Divx player
  • Down-mix can refer to a technique for transforming the audio data of a number of channels into the audio data of a less number of channels by mixing the audio data of a number of the channels.
  • a down-mix apparatus can transform 5.1 -channel audio data into 2-channel (or 1 -channel) audio data by down-mixing the 5.1 -channel audio data.
  • a 2-channel (or 1 -channel) audio system can play the 2-channel (or 1 -channel) audio data as a higher quality of sound because the 2-channel (or 1 -channel) audio data include the components of the 5.1 -channel audio data.
  • a conventional audio system including such a down-mix function encodes an external input bit stream on a channel basis, transforms the encoded data of a frequency domain into data of a time domain, and down-mixes the transformed data in response to an output channel.
  • the conventional audio system generates audio data (e.g., Pulse Code Modulation (PCM) data) by performing a windowing processing for multiplying the down-mixed data by a window coefficient.
  • PCM Pulse Code Modulation
  • the down-mix process and the windowing process are separately performed.
  • the input data of a number of channels are stored in memory, the stored data are sequentially loaded on a channel basis and processed, and then stored in the memory.
  • the windowing process the down-mixed data stored in the memory are loaded, multiplied by a window coefficient, and then outputted.
  • an aspect of the present invention provides a method of processing audio data.
  • the method of processing audio data comprises loading previous accumulation data and any one of pieces of channel data from memory, operating the loaded channel data using a down-mix coefficient corresponding to the loaded channel data, determining whether the loaded channel data are last input channel data for configuring output channel data, and if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
  • the method may further comprise, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data, adding the operated channel data to the previous accumulation data and storing the added data in the memory.
  • the method may further comprise storing the data, operated using the window coefficient, in a specific buffer.
  • Operating the operated channel data and the previous accumulation data using a window coefficient may comprise adding the operated channel data to the previous accumulation data, extracting the window coefficient from the memory, and multiplying the added data by the window coefficient.
  • Loading previous accumulation data and any one of pieces of channel data from memory may comprise storing a number of channel samples, included in the any one channel data, in a number of registers.
  • the apparatus of processing audio data comprises memory for storing information and an operation unit for loading previous accumulation data and any one of pieces of channel data from the memory, operating the loaded channel data using a down-mix coefficient, determining whether the loaded channel data are last input channel data for configuring an output channel, and, if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
  • the operation unit may add the operated channel data and the previous accumulation data and store the added data in the memory.
  • the operation unit may add the operated channel data and the previous accumulation data and multiply the added data by a window coefficient.
  • the memory may store at least any one of a down-mix coefficient table, comprising channel-based down-mix coefficients for down-mixing the pieces of channel data, and a window coefficient table comprising window coefficients for windowing down- mixed data.
  • the loaded channel data may comprise a number of channel samples.
  • the operation unit may comprise a number of registers for storing a number of the channel samples.
  • the down-mix and windowing processes can be integrally performed by performing the windowing process simultaneously with a down-mix operation for the last input channel data for configuring an output channel. Accordingly, there are advantages in that access to the memory can be reduced to the utmost and the computational load can be significantly reduced, in the down-mix and windowing processes.
  • FIG. 1 is a block diagram showing the construction of an audio system including an audio data processing apparatus according to an exemplary embodiment of the present invention
  • FIG. 2 is a block diagram showing the construction of a data processing unit shown in FIG. 1;
  • FIG. 3 is a flowchart illustrating an operation process of an operation unit included in the data processing unit
  • FIG. 4 is a flowchart illustrating a method of processing audio data according to another exemplary embodiment of the present invention.
  • FIG. 5 is a flowchart illustrating a method of processing audio data according to yet another exemplary embodiment of the present invention. Mode for the Invention
  • FIG. 1 is a block diagram showing the construction of an audio system including an audio data processing apparatus according to an exemplary embodiment of the present invention.
  • the audio system 100 can receive an encoded bit stream on a frame basis, process the received bit stream, and output a processing result as an audio signal.
  • the audio system 100 may be configured in the form of a portable device, such as a mobile communication terminal, or may be a fixed system, such as the existing digital hi-fi system.
  • the audio system 100 can include a decoding unit 10, a domain transform unit 20, a data processing unit 30, and an audio output unit 40.
  • the decoding unit 10 can receive an external encoded bit stream on a frame basis, decode the received bit stream, and output audio data of the frequency domain.
  • the bit stream can include encoded data of an N (N is an integer greater than 2) number of channels, having the frequency domain.
  • the decoding unit 10 can decode the bit stream on a channel basis and output audio data of an N number of the channels, having the frequency domain.
  • the domain transform unit 20 can transform the audio data of the frequency domain, received from the decoding unit 10, into audio data of the time domain by inversely transforming the audio data of the frequency domain.
  • the domain transform unit 20 can transform the decoded audio data of an N number of the channels, having the frequency domain, into the audio data of an N number of channels (i.e., N pieces of channel data), having the time domain and transmit the audio data of an N number of the channels to the data processing unit 30.
  • the data processing unit 30 can receive the N pieces of channel data of the time domain from the domain transform unit 20, perform down-mix and windowing processes on the N pieces of received channel data, and output M (M is an integer less than N) pieces of output channel data.
  • the output channel data can include a number of channel samples.
  • the data processing unit 30 can perform a windowing operation for accumulating results, generated while sequentially operating the N pieces of channel data for every channel using a down-mix coefficient, and operating the last input channel data for configuring an output channel using the down-mix coefficient.
  • the data processing unit 30 may store the M pieces of output channel data on which the down- mix and windowing processes have been performed in a specific buffer (e.g., a Pulse Code Modulation (PCM) buffer) of the audio output unit 40.
  • PCM Pulse Code Modulation
  • the audio output unit 40 can receive the M pieces of output channel data from the data processing unit 30 and output the processing results through an M number of speakers.
  • the audio output unit 40 can process the M pieces of output channel data stored in the PCM buffer and output the processing results through an M numbers of output speakers corresponding to an M number of the output channels.
  • FIG. 2 is a block diagram showing the construction of the data processing unit 30 shown in FIG. 1.
  • the data processing unit 30 can perform the down-mix and windowing processes on the N pieces of channel data received from the domain transform unit 20 and output the M pieces of output channel data.
  • the data processing unit 30, as shown in FIG. 2, can include memory 36 and an operation unit 31.
  • the memory 36 stores the N pieces of channel data on a channel basis, received from the domain transform unit 20, and also stores accumulation data calculated by the operation unit 31.
  • the memory 36 can provide the operation unit 31 with each piece of the channel data and each piece of the accumulation data at the request of the operation unit 31.
  • the memory 36 may also store a down-mix coefficient table for the down-mix operation and a window coefficient table for the windowing operation.
  • the down-mix coefficient table refers to information in which down-mix coefficients by which respective pieces of the channel data will be multiplied when the down-mix operation is performed are configured in the form of a table.
  • the window coefficient table refers to information in which window coefficients according to window types applied to a frame are configured in the form of a table.
  • the operation unit 31 can refer to an operation apparatus (e.g., a core processor) which is operated according to a predetermined down-mix and windowing algorithm.
  • the down-mix and windowing algorithm can include various pieces of information which can be used to control the processing sequence of channel data, the number of output channels, information about input channels and output channels, and a procedure of the down-mix and windowing operations.
  • the operation unit 31 can include an arithmetic logic unit (ALU) 33 for performing operations and a register unit 34.
  • the ALU 33 can control the down-mix and windowing processes according to the down-mix and windowing algorithm.
  • the register unit 34 can include a number of registers to be used when the operations of the ALU 33 are performed.
  • the operation unit 31 can load any one piece of the channel data, from among the N pieces of channel data, and previous accumulation data from the memory 36, operate the loaded channel data using a down-mix coefficient, and determine whether the loaded channel data are the last input channel data for configuring an output channel.
  • the operation unit 31 can operate the operated channel data and the previous accumulation data using a window coefficient. However, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data, the operation unit 31 can add the operated channel data and the previous accumulation data and store the addition result in the memory 36.
  • the operation unit 31 may also determine whether both the down-mix and windowing processes or only the windowing process will be performed on the N pieces of input channel data by comparing the number of input channel data (i.e., the number of input channels) and the number of output channels M.
  • FIG. 3 is a flowchart illustrating the operation of the operation unit 31 and it shows a method of processing audio data according to an exemplary embodiment of the present invention.
  • the operation unit 31 can load any one piece of the channel data, from among the N pieces of channel data, and previous accumulation data from the memory 36 at step Sl.
  • the channel data can include a number of channel samples.
  • the operation unit 31 can access the memory 36, fetch a number of channel samples, included in any one piece of the channel data, from the memory 36, and store the fetched channel samples in the register unit 34.
  • the channel samples are stored in the respective registers of the register unit 34.
  • the operation unit 31 can operate the loaded channel data using a down-mix coefficient at step S2. For example, the operation unit 31 can extract a down-mix coefficient corresponding to the loaded channel data from the down-mix coefficient table by searching for the down-mix coefficient table stored in the memory 36 and multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
  • the operation unit 31 can determine whether the loaded channel data are the last input channel data for configuring an output channel (i.e., any one of an M number of the output channels) at step S3.
  • the sequence of the down-mix operations for the N pieces of channel data can be previously determined by the down-mix and windowing algorithm. Accordingly, the operation unit 31 can determine whether the current loaded channel data are the last input channel data based on the sequence of the down- mix operations.
  • the N pieces of input channel data include five pieces of channel data (e.g., a piece of left (L) channel data, a piece of center (C) channel data, a piece of right (R) channel data, a piece of left surround (Ls) channel data, and a piece of right surround (Rs) channel data) and pieces of output channel data include 2 pieces of channel data (e.g., a piece of L output channel data and a piece of R output channel data).
  • the down-mix and windowing algorithm can instruct the operation unit 31 to perform operations using down-mix coefficients in order of the L channel data, the C channel data, the Ls channel data, and the Rs channel data in order to configure, for example, L output channel data.
  • the operation unit 31 can determine whether the loaded channel data are the last input channel data for configuring the L output channel data by checking whether the current loaded channel data are the Rs channel data.
  • the operation unit 31 can operate the channel data, operated using the down-mix coefficient, and the previous accumulation data using a window coefficient at step S4. For example, the operation unit 31 can add the operated channel data to the previous accumulation data using the down-mix coefficient, extract a window coefficient corresponding to a corresponding frame from the window coefficient table stored in the memory 36 by searching for the window coefficient table, and multiply the added accumulation data by the extracted window coefficient.
  • the operation unit 31 can store the resulting data on which the windowing operation has been performed in a specific buffer (e.g., a PCM buffer) in order to transfer the data to the audio output unit 40.
  • a specific buffer e.g., a PCM buffer
  • the operation unit 31 can add the operated channel data to the previous accumulation data using the down-mix coefficient and store the added accumulation data in the memory 36 at step S5.
  • the operation unit 31 can load the accumulation data stored in the memory 36, together with channel data having a next order, as previous accumulation data.
  • the windowing operation is performed simultaneously with the down-mix process for the last input channel data for configuring an output channel. Accordingly, there are advantages in that the number of access to the memory can be significantly reduced and the computational load can also be reduced.
  • [51] Another exemplary embodiment of the present invention is described below.
  • five pieces of external channel data e.g., a piece of L channel data, a piece of C channel data, a piece of R channel data, a piece of Ls channel data, and a piece of Rs channel data
  • two pieces of output channel data e.g., a piece of L output channel data and a piece of R output channel data
  • FIG. 4 is a flowchart illustrating a method of processing audio data according to another exemplary embodiment of the present invention.
  • This figure shows a procedure of performing the down-mix and windowing processes on the four pieces of channel data other than the R channel data, from among the five pieces of external input channel data and outputting the L output channel data.
  • the four pieces of channel data are sequentially processed in order of the L channel data, the C channel data, the Ls channel data, and the Rs channel data according to the down-mix and windowing algorithm.
  • the operation unit 31 loads the L channel data that should be first processed from the memory 36 at step SI l.
  • the operation unit 31 can fetch channel samples included in the L channel data stored in the memory 36 and store them in the register unit 34. In this case, previous accumulation data do not exist because the L channel data are channel data that should be first processed.
  • the operation unit 31 extracts a down-mix coefficient, corresponding to the loaded L channel data, from the down-mix coefficient table and multiplies the loaded L channel data by the extracted down-mix coefficient at step S 12. For example, the operation unit 31 may multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
  • the operation unit 31 determines whether the L channel data are the last input channel data (i.e., the Rs channel data) for configuring the L output channel data and stores the L channel data in the memory 34 as first accumulation data because the L channel data are not the last input channel data at step S 13.
  • the L channel data are the last input channel data (i.e., the Rs channel data) for configuring the L output channel data and stores the L channel data in the memory 34 as first accumulation data because the L channel data are not the last input channel data at step S 13.
  • L [0, 1, 2, ..., k] can indicate the L channel data having a k (k is an integer greater than 2) number of channel samples, a can indicate the down-mix coefficient corresponding to the L channel data.
  • Pl[O, 1, 2, ..., k] can indicate L channel data operated using the down-mix coefficient (i.e., the first accumulation data).
  • the operation of loading data from the memory is performed once, and the operation of storing data in the memory is also performed once.
  • one time may refer to the unit for processing all the k channel samples.
  • the operation unit 31 loads the C channel data that should be second processed from the memory 36 and previous accumulation data (i.e., the first accumulation data) at step S 14. For example, the operation unit 31 can fetch channel samples included in the C channel data stored in the memory and store them in the register unit 34.
  • the operation unit 31 extracts a down-mix coefficient, corresponding to the loaded C channel data, from the down-mix coefficient table and multiplies the C channel data by the extracted down-mix coefficient at step S 15. For example, the operation unit 31 can multiply each of the channel samples, stored in the register unit, by the extracted down-mix coefficient.
  • the operation unit 31 determines whether the C channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the C channel data to the first accumulation data because the C channel data are not the last input channel data, and stores the added data in the memory 36 as second accumulation data at step S 16.
  • C[O, 1, 2, ..., k] can indicate the C channel data having a k number of channel samples
  • b can indicate the down-mix coefficient corresponding to the C channel data
  • Pl[O, 1, 2, ..., k] can indicate the first accumulation data
  • P2[0, 1, 2, ..., k] can indicate data in which the C channel data, operated using the down-mix coefficient, and the first accumulation data are added (i.e., the second accumulation data).
  • the operation unit 31 loads the Ls channel data that should be third processed from the memory 36 and previous accumulation data (i.e., the second accumulation data) at step S 17.
  • the operation unit 31 can fetch channel samples included in the Ls channel data stored in the memory 36 and store them in the register unit 34.
  • the operation unit 31 extracts a down-mix coefficient, corresponding to the loaded
  • Ls channel data from the down-mix coefficient table and multiplies the Ls channel data by the extracted down-mix coefficient at step S 18.
  • the operation unit 31 can multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
  • the operation unit 31 determines whether the Ls channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the Ls channel data to the second accumulation data because the Ls channel data are not the last input channel data, and stores the added data in the memory 36 as third accumulation data at step S 19.
  • Ls[O, 1, 2, ..., k] can indicate the Ls channel data having a k number of channel samples
  • c can indicate the down-mix coefficient corresponding to the Ls channel data
  • P2[0, 1, 2, ..., k] can indicate the second accumulation data
  • P3[0, 1, 2, ..., k] can indicate data in which the Ls channel data, operated using the down-mix coefficient, and the second accumulation data are added (i.e., the third accumulation data).
  • the operation unit 31 loads the Rs channel data that should be fourth processed from the memory 36 and previous accumulation data (i.e., the third accumulation data) at step S20.
  • the operation unit 31 can fetch channel samples included in the Rs channel data stored in the memory and store them in the register unit 34.
  • the operation unit 31 extracts a down-mix coefficient, corresponding to the loaded
  • the operation unit 31 can multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
  • the operation unit 31 determines whether the Rs channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the Rs channel data to the third accumulation data because the Rs channel data are the last input channel data, and operates the added data using a window coefficient at step S22. For example, the operation unit 31 can multiply a value in which the Rs channel data, operated using the down-mix coefficient, and the third accumulation data are added by the window coefficient.
  • Rs[O, 1, 2, ..., k] can indicate the Rs channel data having a k number of channel samples
  • d can indicate the down-mix coefficient corresponding to the Rs channel data
  • P3[0, 1, 2, ..., k] can indicate the third accumulation data
  • W[O, 1, 2, ..., k] can indicate the window coefficient
  • Pout[0, 1, 2, ..., k] can indicate data in which the addition of the Rs channel data, operated using the down-mix coefficient, and the third accumulation data are multiplied by the window coefficient (i.e., the L channel output data).
  • FIG. 5 is a flowchart illustrating a method of processing audio data according to yet another exemplary embodiment of the present invention.
  • This figure shows a process of down-mixing and windowing the four pieces of channel data other than the L channel data, from among the five pieces of external input channel data, and outputting the R output channel data.
  • the four pieces of channel data are sequentially processed in order of the R channel data, the C channel data, the Ls channel data, and the Rs channel data according to the down-mix and windowing algorithm.
  • the procedure of down-mixing and windowing the four pieces of channel data and outputting the R output channel data can be performed according to the same concept as the procedure of down-mixing and windowing the four pieces of channel data and outputting the L output channel data.
  • the operation unit 31 loads the R channel data at step S31, operates the R channel data using a down-mix coefficient at step S32, and stores first accumulation data in the memory 36 because the R channel data are the last input channel data at step S33.
  • the operation unit 31 loads the C channel data at step S34, operates the C channel data using a down-mix coefficient at step S35, and stores second accumulation data in the memory 36 because the C channel data are the last input channel data at step S36.
  • the operation unit 31 loads the Ls channel data at step S37, operates the Ls channel data using a down-mix coefficient at step S38, and stores third accumulation data in the memory 36 because the Ls channel data are not the last input channel data at step S37.
  • the operation unit 31 loads the Rs channel data at step S40, operates the Rs channel data using a down-mix coefficient at step S41, adds the Rs channel data, operated using the down-mix coefficient, and the third accumulation data because the Rs channel data are the last input channel data, and operates the added data using a window coefficient at step S42.

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Human Computer Interaction (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Stereophonic System (AREA)

Abstract

Disclosed herein is a method and apparatus for processing audio data. The method of processing audio data comprises loading previous accumulation data and any one of pieces of channel data from memory, operating the loaded channel data using a down-mix coefficient corresponding to the loaded channel data, determining whether the loaded channel data are last input channel data for configuring output channel data, and if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient. Accordingly, the down-mix and windowing processes can be integrally performed.

Description

METHOD AND APPARATUS FOR PROCESSING AUDIO DATA
The present invention relates to a method of processing audio data, and more particularly, to techniques pertinent to down-mixing and windowing, which are capable of integrally performing the down-mixing and windowing on received channel data.
Recently, to provide a user with higher-quality and realistic audio services, there have been developed a variety of digital surround audio formats for a multi-channel which have been outgrown from the existing audio format of an 1 channel (e.g., mono) or a 2 channel (e.g., stereo). Dolby audio coding-3 (Dolby AC3), a digital theater system (DTS), and so on are the representative examples of the digital surround audio formats for a multi-channel over a 5.1 channel.
The Dolby AC3 and the DTS were developed for the purpose of realistically showing a film at the theater, but are being widely used for various media (e.g., DVD, CD, laser disk, and digital broadcasting). Accordingly, everybody can listen to a high quality of surround sound only if he has an audio system (e.g., a home theater and a DVD or/or Divx player) capable of supporting a corresponding surround audio format for a multi-channel installed at his house.
Audio systems owned by persons rarely support the surround audio formats for a multi-channel. Recently, portable devices, such as mobile communication terminals, are widely used. The portable devices are not appropriate to output surround sound in view of their device characteristics. Accordingly, there is a need to improve the quality of sound for the audio systems not supporting a multi-channel.
Down-mix can refer to a technique for transforming the audio data of a number of channels into the audio data of a less number of channels by mixing the audio data of a number of the channels. For example, a down-mix apparatus can transform 5.1-channel audio data into 2-channel (or 1-channel) audio data by down-mixing the 5.1-channel audio data. Here, a 2-channel (or 1-channel) audio system can play the 2-channel (or 1-channel) audio data as a higher quality of sound because the 2-channel (or 1-channel) audio data include the components of the 5.1-channel audio data.
Typically, a conventional audio system including such a down-mix function encodes an external input bit stream on a channel basis, transforms the encoded data of a frequency domain into data of a time domain, and down-mixes the transformed data in response to an output channel. The conventional audio system generates audio data (e.g., Pulse Code Modulation (PCM) data) by performing a windowing processing for multiplying the down-mixed data by a window coefficient.
In the conventional audio system, as described above, the down-mix process and the windowing process are separately performed. For example, in the down-mix process, the input data of a number of channels are stored in memory, the stored data are sequentially loaded on a channel basis and processed, and then stored in the memory. Next, in the windowing process, the down-mixed data stored in the memory are loaded, multiplied by a window coefficient, and then outputted.
However, the conventional techniques are problematic in that the memory is very frequently accessed in the down-mix process and the windowing process and the computational load is too much. This is because in the down-mix process and the windowing process, the process of loading data from the memory, processing the loaded data, and storing the processed data in the memory is repeatedly performed. Accordingly, there is a new technique capable of simplifying the down-mix process and the windowing process.
It is an object of the present invention to provide a method and apparatus for processing audio data, which is capable of reducing access to memory and significantly reducing the computational load by integrally performing the down-mix and windowing processes when processing audio data.
To achieve the above object, an aspect of the present invention provides a method of processing audio data. The method of processing audio data comprises loading previous accumulation data and any one of pieces of channel data from memory, operating the loaded channel data using a down-mix coefficient corresponding to the loaded channel data, determining whether the loaded channel data are last input channel data for configuring output channel data, and if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
The method may further comprise, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data, adding the operated channel data to the previous accumulation data and storing the added data in the memory. The method may further comprise storing the data, operated using the window coefficient, in a specific buffer.
Operating the operated channel data and the previous accumulation data using a window coefficient may comprise adding the operated channel data to the previous accumulation data, extracting the window coefficient from the memory, and multiplying the added data by the window coefficient.
Loading previous accumulation data and any one of pieces of channel data from memory may comprise storing a number of channel samples, included in the any one channel data, in a number of registers.
To achieve the above object, another aspect of the present invention provides an apparatus for processing audio data. The apparatus of processing audio data comprises memory for storing information and an operation unit for loading previous accumulation data and any one of pieces of channel data from the memory, operating the loaded channel data using a down-mix coefficient, determining whether the loaded channel data are last input channel data for configuring an output channel, and, if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
If, as a result of the determination, the loaded channel data are determined not to be the last input channel data, the operation unit may add the operated channel data and the previous accumulation data and store the added data in the memory.
If, as a result of the determination, the loaded channel data are determined to be the last input channel data, the operation unit may add the operated channel data and the previous accumulation data and multiply the added data by a window coefficient.
The memory may store at least any one of a down-mix coefficient table, comprising channel-based down-mix coefficients for down-mixing the pieces of channel data, and a window coefficient table comprising window coefficients for windowing down-mixed data.
The loaded channel data may comprise a number of channel samples. The operation unit may comprise a number of registers for storing a number of the channel samples.
As described above, according to the present invention, the down-mix and windowing processes can be integrally performed by performing the windowing process simultaneously with a down-mix operation for the last input channel data for configuring an output channel. Accordingly, there are advantages in that access to the memory can be reduced to the utmost and the computational load can be significantly reduced, in the down-mix and windowing processes.
FIG. 1 is a block diagram showing the construction of an audio system including an audio data processing apparatus according to an exemplary embodiment of the present invention;
FIG. 2 is a block diagram showing the construction of a data processing unit shown in FIG. 1;
FIG. 3 is a flowchart illustrating an operation process of an operation unit included in the data processing unit;
FIG. 4 is a flowchart illustrating a method of processing audio data according to another exemplary embodiment of the present invention; and
FIG. 5 is a flowchart illustrating a method of processing audio data according to yet another exemplary embodiment of the present invention.
Preferred embodiments of the present invention will be described in detail below with reference to the accompanying drawings so that those skilled in the art can easily implement the present invention. In the preferred embodiments of the present invention, specific technical terminologies are used for the clarity of the contents. It is to be understood, however, that the present invention is not limited to the specific terminologies and each specific terminology includes all technical synonyms operating in a similar way in order to accomplish similar objects.
FIG. 1 is a block diagram showing the construction of an audio system including an audio data processing apparatus according to an exemplary embodiment of the present invention.
Referring to FIG. 1, the audio system 100 can receive an encoded bit stream on a frame basis, process the received bit stream, and output a processing result as an audio signal. The audio system 100 may be configured in the form of a portable device, such as a mobile communication terminal, or may be a fixed system, such as the existing digital hi-fi system.
The audio system 100 can include a decoding unit 10, a domain transform unit 20, a data processing unit 30, and an audio output unit 40.
The decoding unit 10 can receive an external encoded bit stream on a frame basis, decode the received bit stream, and output audio data of the frequency domain. For example, the bit stream can include encoded data of an N (N is an integer greater than 2) number of channels, having the frequency domain. The decoding unit 10 can decode the bit stream on a channel basis and output audio data of an N number of the channels, having the frequency domain.
The domain transform unit 20 can transform the audio data of the frequency domain, received from the decoding unit 10, into audio data of the time domain by inversely transforming the audio data of the frequency domain. For example, the domain transform unit 20 can transform the decoded audio data of an N number of the channels, having the frequency domain, into the audio data of an N number of channels (i.e., N pieces of channel data), having the time domain and transmit the audio data of an N number of the channels to the data processing unit 30.
The data processing unit 30 can receive the N pieces of channel data of the time domain from the domain transform unit 20, perform down-mix and windowing processes on the N pieces of received channel data, and output M (M is an integer less than N) pieces of output channel data. The output channel data can include a number of channel samples.
For example, the data processing unit 30 can perform a windowing operation for accumulating results, generated while sequentially operating the N pieces of channel data for every channel using a down-mix coefficient, and operating the last input channel data for configuring an output channel using the down-mix coefficient. The data processing unit 30 may store the M pieces of output channel data on which the down-mix and windowing processes have been performed in a specific buffer (e.g., a Pulse Code Modulation (PCM) buffer) of the audio output unit 40.
The audio output unit 40 can receive the M pieces of output channel data from the data processing unit 30 and output the processing results through an M number of speakers. For example, the audio output unit 40 can process the M pieces of output channel data stored in the PCM buffer and output the processing results through an M numbers of output speakers corresponding to an M number of the output channels.
FIG. 2 is a block diagram showing the construction of the data processing unit 30 shown in FIG. 1.
Referring to FIGS. 1 and 2, the data processing unit 30 can perform the down-mix and windowing processes on the N pieces of channel data received from the domain transform unit 20 and output the M pieces of output channel data. The data processing unit 30, as shown in FIG. 2, can include memory 36 and an operation unit 31.
The memory 36 stores the N pieces of channel data on a channel basis, received from the domain transform unit 20, and also stores accumulation data calculated by the operation unit 31. The memory 36 can provide the operation unit 31 with each piece of the channel data and each piece of the accumulation data at the request of the operation unit 31.
The memory 36 may also store a down-mix coefficient table for the down-mix operation and a window coefficient table for the windowing operation. The down-mix coefficient table refers to information in which down-mix coefficients by which respective pieces of the channel data will be multiplied when the down-mix operation is performed are configured in the form of a table. Further, the window coefficient table refers to information in which window coefficients according to window types applied to a frame are configured in the form of a table.
The operation unit 31 can refer to an operation apparatus (e.g., a core processor) which is operated according to a predetermined down-mix and windowing algorithm. The down-mix and windowing algorithm can include various pieces of information which can be used to control the processing sequence of channel data, the number of output channels, information about input channels and output channels, and a procedure of the down-mix and windowing operations.
The operation unit 31 can include an arithmetic logic unit (ALU) 33 for performing operations and a register unit 34. The ALU 33 can control the down-mix and windowing processes according to the down-mix and windowing algorithm. The register unit 34 can include a number of registers to be used when the operations of the ALU 33 are performed.
The operation unit 31 can load any one piece of the channel data, from among the N pieces of channel data, and previous accumulation data from the memory 36, operate the loaded channel data using a down-mix coefficient, and determine whether the loaded channel data are the last input channel data for configuring an output channel.
If, as a result of the determination, the loaded channel data are determined to be the last input channel data, the operation unit 31 can operate the operated channel data and the previous accumulation data using a window coefficient. However, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data, the operation unit 31 can add the operated channel data and the previous accumulation data and store the addition result in the memory 36.
The operation unit 31 may also determine whether both the down-mix and windowing processes or only the windowing process will be performed on the N pieces of input channel data by comparing the number of input channel data (i.e., the number of input channels) and the number of output channels M.
FIG. 3 is a flowchart illustrating the operation of the operation unit 31 and it shows a method of processing audio data according to an exemplary embodiment of the present invention.
Referring to FIGS. 1 to 3, first, the operation unit 31 can load any one piece of the channel data, from among the N pieces of channel data, and previous accumulation data from the memory 36 at step S1. The channel data can include a number of channel samples. For example, the operation unit 31 can access the memory 36, fetch a number of channel samples, included in any one piece of the channel data, from the memory 36, and store the fetched channel samples in the register unit 34. Here, the channel samples are stored in the respective registers of the register unit 34.
The operation unit 31 can operate the loaded channel data using a down-mix coefficient at step S2. For example, the operation unit 31 can extract a down-mix coefficient corresponding to the loaded channel data from the down-mix coefficient table by searching for the down-mix coefficient table stored in the memory 36 and multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
Next, the operation unit 31 can determine whether the loaded channel data are the last input channel data for configuring an output channel (i.e., any one of an M number of the output channels) at step S3. The sequence of the down-mix operations for the N pieces of channel data can be previously determined by the down-mix and windowing algorithm. Accordingly, the operation unit 31 can determine whether the current loaded channel data are the last input channel data based on the sequence of the down-mix operations.
For example, it is assumed that the N pieces of input channel data include five pieces of channel data (e.g., a piece of left (L) channel data, a piece of center (C) channel data, a piece of right (R) channel data, a piece of left surround (Ls) channel data, and a piece of right surround (Rs) channel data) and pieces of output channel data include 2 pieces of channel data (e.g., a piece of L output channel data and a piece of R output channel data). In this case, the down-mix and windowing algorithm can instruct the operation unit 31 to perform operations using down-mix coefficients in order of the L channel data, the C channel data, the Ls channel data, and the Rs channel data in order to configure, for example, L output channel data. Here, the operation unit 31 can determine whether the loaded channel data are the last input channel data for configuring the L output channel data by checking whether the current loaded channel data are the Rs channel data.
If, as a result of the determination, the loaded channel data are determined to be the last input channel data for configuring the output channel, the operation unit 31 can operate the channel data, operated using the down-mix coefficient, and the previous accumulation data using a window coefficient at step S4. For example, the operation unit 31 can add the operated channel data to the previous accumulation data using the down-mix coefficient, extract a window coefficient corresponding to a corresponding frame from the window coefficient table stored in the memory 36 by searching for the window coefficient table, and multiply the added accumulation data by the extracted window coefficient. The operation unit 31 can store the resulting data on which the windowing operation has been performed in a specific buffer (e.g., a PCM buffer) in order to transfer the data to the audio output unit 40.
However, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data for configuring the output channel, the operation unit 31 can add the operated channel data to the previous accumulation data using the down-mix coefficient and store the added accumulation data in the memory 36 at step S5. The operation unit 31 can load the accumulation data stored in the memory 36, together with channel data having a next order, as previous accumulation data.
As described above, in the method of processing audio data according to the exemplary embodiment of the present invention, the windowing operation is performed simultaneously with the down-mix process for the last input channel data for configuring an output channel. Accordingly, there are advantages in that the number of access to the memory can be significantly reduced and the computational load can also be reduced.
Another exemplary embodiment of the present invention is described below. In the present embodiment, it is assumed that five pieces of external channel data (e.g., a piece of L channel data, a piece of C channel data, a piece of R channel data, a piece of Ls channel data, and a piece of Rs channel data) are inputted, and two pieces of output channel data (e.g., a piece of L output channel data and a piece of R output channel data) are outputted through the down-mix and windowing processes for the five pieces of channel data.
FIG. 4 is a flowchart illustrating a method of processing audio data according to another exemplary embodiment of the present invention. This figure shows a procedure of performing the down-mix and windowing processes on the four pieces of channel data other than the R channel data, from among the five pieces of external input channel data and outputting the L output channel data. Here, it is assumed that the four pieces of channel data are sequentially processed in order of the L channel data, the C channel data, the Ls channel data, and the Rs channel data according to the down-mix and windowing algorithm.
Referring to FIG. 4, first, the operation unit 31 loads the L channel data that should be first processed from the memory 36 at step S11. For example, the operation unit 31 can fetch channel samples included in the L channel data stored in the memory 36 and store them in the register unit 34. In this case, previous accumulation data do not exist because the L channel data are channel data that should be first processed.
The operation unit 31 extracts a down-mix coefficient, corresponding to the loaded L channel data, from the down-mix coefficient table and multiplies the loaded L channel data by the extracted down-mix coefficient at step S12. For example, the operation unit 31 may multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
Next, the operation unit 31 determines whether the L channel data are the last input channel data (i.e., the Rs channel data) for configuring the L output channel data and stores the L channel data in the memory 34 as first accumulation data because the L channel data are not the last input channel data at step S13.
The process of the steps S11 to S13 can be expressed using the following equation, that is, math figure 1.
MathFigure 1
Figure PCTKR2010001276-appb-M000001
Here, L [0, 1, 2, ..., k] can indicate the L channel data having a k (k is an integer greater than 2) number of channel samples. a can indicate the down-mix coefficient corresponding to the L channel data. P1[0, 1, 2, ..., k] can indicate L channel data operated using the down-mix coefficient (i.e., the first accumulation data).
In the steps S11 to S13, the operation of loading data from the memory is performed once, and the operation of storing data in the memory is also performed once. Here, one time may refer to the unit for processing all the k channel samples.
Next, the operation unit 31 loads the C channel data that should be second processed from the memory 36 and previous accumulation data (i.e., the first accumulation data) at step S14. For example, the operation unit 31 can fetch channel samples included in the C channel data stored in the memory and store them in the register unit 34.
The operation unit 31 extracts a down-mix coefficient, corresponding to the loaded C channel data, from the down-mix coefficient table and multiplies the C channel data by the extracted down-mix coefficient at step S15. For example, the operation unit 31 can multiply each of the channel samples, stored in the register unit, by the extracted down-mix coefficient.
Next, the operation unit 31 determines whether the C channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the C channel data to the first accumulation data because the C channel data are not the last input channel data, and stores the added data in the memory 36 as second accumulation data at step S16.
The process of the steps S14 to S16 can be expressed using the following equation, that is, math figure 2.
MathFigure 2
Figure PCTKR2010001276-appb-M000002
Here, C[0, 1, 2, ..., k] can indicate the C channel data having a k number of channel samples. b can indicate the down-mix coefficient corresponding to the C channel data. P1[0, 1, 2, ..., k] can indicate the first accumulation data. P2[0, 1, 2, ..., k] can indicate data in which the C channel data, operated using the down-mix coefficient, and the first accumulation data are added (i.e., the second accumulation data).
In the steps S14 to S16, the operation of loading data from the memory is performed twice, and the operation of storing data in the memory is performed once.
Next, the operation unit 31 loads the Ls channel data that should be third processed from the memory 36 and previous accumulation data (i.e., the second accumulation data) at step S17. For example, the operation unit 31 can fetch channel samples included in the Ls channel data stored in the memory 36 and store them in the register unit 34.
The operation unit 31 extracts a down-mix coefficient, corresponding to the loaded Ls channel data, from the down-mix coefficient table and multiplies the Ls channel data by the extracted down-mix coefficient at step S18. For example, the operation unit 31 can multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
Next, the operation unit 31 determines whether the Ls channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the Ls channel data to the second accumulation data because the Ls channel data are not the last input channel data, and stores the added data in the memory 36 as third accumulation data at step S19.
The process of the steps S17 to S19 can be expressed using the following equation, that is, math figure 3.
MathFigure 3
Figure PCTKR2010001276-appb-M000003
Here, Ls[0, 1, 2, ..., k] can indicate the Ls channel data having a k number of channel samples. c can indicate the down-mix coefficient corresponding to the Ls channel data. P2[0, 1, 2, ..., k] can indicate the second accumulation data. P3[0, 1, 2, ..., k] can indicate data in which the Ls channel data, operated using the down-mix coefficient, and the second accumulation data are added (i.e., the third accumulation data).
In the steps S17 to S19, the operation of loading data from the memory is performed twice, and the operation of storing data in the memory is performed once.
Next, the operation unit 31 loads the Rs channel data that should be fourth processed from the memory 36 and previous accumulation data (i.e., the third accumulation data) at step S20. For example, the operation unit 31 can fetch channel samples included in the Rs channel data stored in the memory and store them in the register unit 34.
The operation unit 31 extracts a down-mix coefficient, corresponding to the loaded Rs channel data, from the down-mix coefficient table and multiplies the Rs channel data by the extracted down-mix coefficient at step S21. For example, the operation unit 31 can multiply each of the channel samples, stored in the register unit 34, by the extracted down-mix coefficient.
Next, the operation unit 31 determines whether the Rs channel data are the last input channel data for configuring the L output channel data (i.e., the Rs channel data), adds the Rs channel data to the third accumulation data because the Rs channel data are the last input channel data, and operates the added data using a window coefficient at step S22. For example, the operation unit 31 can multiply a value in which the Rs channel data, operated using the down-mix coefficient, and the third accumulation data are added by the window coefficient.
The process of the steps S20 to S22 can be expressed using the following equation, that is math figure 4.
MathFigure 4
Figure PCTKR2010001276-appb-M000004
Here, Rs[0, 1, 2, ..., k] can indicate the Rs channel data having a k number of channel samples. d can indicate the down-mix coefficient corresponding to the Rs channel data. P3[0, 1, 2, ..., k] can indicate the third accumulation data. W[0, 1, 2, ..., k] can indicate the window coefficient. Pout[0, 1, 2, ..., k] can indicate data in which the addition of the Rs channel data, operated using the down-mix coefficient, and the third accumulation data are multiplied by the window coefficient (i.e., the L channel output data).
In the steps S20 to S22, the operation of loading data from the memory is performed three times, and the operation of storing data in the memory is performed once.
The process of performing the down-mix and windowing processes on the four channel data and outputting the L channel output data has been described above with reference to FIG. 4. During the process, the operation of loading data from the memory 36 is performed eight times, and the operation of storing data in the memory 36 is performed four times. In the prior art, the down-mix process and the windowing process are separated from each other. Accordingly, the memory 36 must be accessed a lot in order to perform the process of performing the down-mix and windowing processes on the four channel data and outputting the L channel output data according to the exemplary embodiment of the present invention. For example, in the prior art, after the down-mix process is completed, resulting data have to be stored in the memory, and the stored data must be loaded again in order to perform the windowing process. Accordingly, unnecessary access to the memory can be generated.
FIG. 5 is a flowchart illustrating a method of processing audio data according to yet another exemplary embodiment of the present invention. This figure shows a process of down-mixing and windowing the four pieces of channel data other than the L channel data, from among the five pieces of external input channel data, and outputting the R output channel data. Here, it is assumed that the four pieces of channel data are sequentially processed in order of the R channel data, the C channel data, the Ls channel data, and the Rs channel data according to the down-mix and windowing algorithm.
Referring to FIG. 5, the procedure of down-mixing and windowing the four pieces of channel data and outputting the R output channel data can be performed according to the same concept as the procedure of down-mixing and windowing the four pieces of channel data and outputting the L output channel data.
The operation unit 31 loads the R channel data at step S31, operates the R channel data using a down-mix coefficient at step S32, and stores first accumulation data in the memory 36 because the R channel data are the last input channel data at step S33. Next, the operation unit 31 loads the C channel data at step S34, operates the C channel data using a down-mix coefficient at step S35, and stores second accumulation data in the memory 36 because the C channel data are the last input channel data at step S36.
Next, the operation unit 31 loads the Ls channel data at step S37, operates the Ls channel data using a down-mix coefficient at step S38, and stores third accumulation data in the memory 36 because the Ls channel data are not the last input channel data at step S37. Next, the operation unit 31 loads the Rs channel data at step S40, operates the Rs channel data using a down-mix coefficient at step S41, adds the Rs channel data, operated using the down-mix coefficient, and the third accumulation data because the Rs channel data are the last input channel data, and operates the added data using a window coefficient at step S42.
While the invention has been described in connection with what is presently considered to be practical exemplary embodiments, it is to be understood that the invention is not limited to the disclosed embodiments, but, on the contrary, is intended to cover various modifications and equivalent arrangements included within the spirit and scope of the appended claims.

Claims (12)

  1. A method of processing audio data, the method comprising:
    loading previous accumulation data and any one of pieces of channel data from memory;
    operating the loaded channel data using a down-mix coefficient corresponding to the loaded channel data;
    determining whether the loaded channel data are last input channel data for configuring output channel data; and
    if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
  2. The method of claim 1, further comprising:
    if, as a result of the determination, the loaded channel data are determined not to be the last input channel data,
    adding the operated channel data to the previous accumulation data; and
    storing the added data in the memory.
  3. The method of claim 1, wherein operating the operated channel data and the previous accumulation data using a window coefficient comprises:
    adding the operated channel data to the previous accumulation data;
    extracting the window coefficient from the memory; and
    multiplying the added data by the window coefficient.
  4. The method of claim 1, wherein loading previous accumulation data and any one of pieces of channel data from memory comprises storing a number of channel samples, included in the any one channel data, in a number of registers.
  5. The method of claim 4, wherein operating the loaded channel data using a down-mix coefficient corresponding to the loaded channel data comprises:
    extracting the down-mix coefficient, corresponding to the loaded channel data, from the memory; and
    multiplying each of the channel samples, included in the registers, by the extracted down-mix coefficient.
  6. The method of claim 1, further comprising storing the data, operated using the window coefficient, in a specific buffer.
  7. An apparatus for processing audio data, the apparatus comprising:
    memory for storing information; and
    an operation unit for loading previous accumulation data and any one of pieces of channel data from the memory, operating the loaded channel data using a down-mix coefficient, determining whether the loaded channel data are last input channel data for configuring an output channel, and, if, as a result of the determination, the loaded channel data are determined to be the last input channel data, operating the operated channel data and the previous accumulation data using a window coefficient.
  8. The apparatus of claim 7, wherein, if, as a result of the determination, the loaded channel data are determined not to be the last input channel data, the operation unit adds the operated channel data and the previous accumulation data and stores the added data in the memory.
  9. The apparatus of claim 7, wherein, if, as a result of the determination, the loaded channel data are determined to be the last input channel data, the operation unit adds the operated channel data and the previous accumulation data and multiplies the added data by a window coefficient.
  10. The apparatus of claim 7, wherein the memory stores at least any one of a down-mix coefficient table, comprising channel-based down-mix coefficients for down-mixing the pieces of channel data, and a window coefficient table comprising window coefficients for windowing down-mixed data.
  11. The apparatus of claim 7, wherein:
    the loaded channel data comprises a number of channel samples, and
    the operation unit comprises a number of registers for storing a number of the channel samples.
  12. The apparatus of claim 7, wherein the operation unit multiplies the loaded channel data by the down-mix coefficient corresponding to the loaded channel data.
PCT/KR2010/001276 2009-03-04 2010-03-02 Method and apparatus for processing audio data WO2010101381A2 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
CN2010800103099A CN102341845B (en) 2009-03-04 2010-03-02 Method and apparatus for processing audio data
JP2011552879A JP2012519310A (en) 2009-03-04 2010-03-02 Audio data processing method and apparatus

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
KR1020090018624A KR101078379B1 (en) 2009-03-04 2009-03-04 Method and Apparatus for Processing Audio Data
KR10-2009-0018624 2009-03-04

Publications (2)

Publication Number Publication Date
WO2010101381A2 true WO2010101381A2 (en) 2010-09-10
WO2010101381A3 WO2010101381A3 (en) 2010-11-18

Family

ID=42710096

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/KR2010/001276 WO2010101381A2 (en) 2009-03-04 2010-03-02 Method and apparatus for processing audio data

Country Status (4)

Country Link
JP (1) JP2012519310A (en)
KR (1) KR101078379B1 (en)
CN (1) CN102341845B (en)
WO (1) WO2010101381A2 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128597A (en) * 1996-05-03 2000-10-03 Lsi Logic Corporation Audio decoder with a reconfigurable downmixing/windowing pipeline and method therefor
KR20000073030A (en) * 1999-05-04 2000-12-05 김영환 Device for overlapping and adding window in AC-3 decoder

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH02294200A (en) * 1989-05-09 1990-12-05 Mitsubishi Electric Corp Sound receiver
JPH06165079A (en) * 1992-11-25 1994-06-10 Matsushita Electric Ind Co Ltd Down mixing device for multichannel stereo use
JP3761639B2 (en) * 1995-09-29 2006-03-29 ユナイテッド・モジュール・コーポレーション Audio decoding device
JP2001298680A (en) * 2000-04-17 2001-10-26 Matsushita Electric Ind Co Ltd Specification of digital broadcasting signal and its receiving device
JP2004109362A (en) * 2002-09-17 2004-04-08 Pioneer Electronic Corp Apparatus, method, and program for noise removal of frame structure
CA2757972C (en) * 2008-10-01 2018-03-13 Gvbb Holdings S.A.R.L. Decoding apparatus, decoding method, encoding apparatus, encoding method, and editing apparatus

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6128597A (en) * 1996-05-03 2000-10-03 Lsi Logic Corporation Audio decoder with a reconfigurable downmixing/windowing pipeline and method therefor
KR20000073030A (en) * 1999-05-04 2000-12-05 김영환 Device for overlapping and adding window in AC-3 decoder

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
STEVE VERNON: 'DESIGN AND IMPLEMENTATION OF AC-3 CODERS' CONSUMER ELECTRONICS, IEEE TRANSACTIONS ON vol. 41, no. 3, August 1995, pages 754 - 759 *

Also Published As

Publication number Publication date
KR101078379B1 (en) 2011-10-31
CN102341845A (en) 2012-02-01
KR20100099998A (en) 2010-09-15
WO2010101381A3 (en) 2010-11-18
JP2012519310A (en) 2012-08-23
CN102341845B (en) 2013-06-12

Similar Documents

Publication Publication Date Title
EP0871293B1 (en) Audio processing for audio visual equipment
WO2011059275A2 (en) Method and apparatus for managing data
US7440810B2 (en) Multi-channel media applications support with channel-to-connector mapping
WO2011021845A2 (en) Method and apparatus for encoding multi-channel audio signal and method and apparatus for decoding multi-channel audio signal
CN101228582A (en) Audio reproduction method and apparatus supporting audio thumbnail function
WO2013168988A1 (en) Electronic apparatus and method for controlling electronic apparatus thereof
WO2019117362A1 (en) System for synchronizing accompaniment with singing voice in online karaoke service and apparatus for performing same
WO2014021587A1 (en) Device and method for processing audio signal
EP1074020B1 (en) System and method for efficient time-domain aliasing cancellation
CN110085241A (en) Data-encoding scheme, device, computer storage medium and data encoding apparatus
CN112218020B (en) Audio data transmission method and device for multi-channel platform
EP1758428A1 (en) Acoustical signal processing apparatus
Goodwin et al. Multichannel surround format conversion and generalized upmix
WO2011021790A2 (en) Multi-channel audio decoding method and apparatus therefor
WO2014021586A1 (en) Method and device for processing audio signal
WO2010101381A2 (en) Method and apparatus for processing audio data
JP2006195061A (en) Information embedding device for acoustic signal, information extracting device from acoustic signal and acoustic signal reproducing device
RU2383942C2 (en) Method and device for audio signal decoding
WO2012087042A2 (en) Broadcast transmitting apparatus and broadcast transmitting method for providing an object-based audio, and broadcast playback apparatus and broadcast playback method
CN117316169B (en) Audio data processing method, device, equipment and computer readable storage medium
WO2009140794A1 (en) Apparatus and method for audio cloning and redirection
WO2024167222A1 (en) Deep learning based voice extraction and primary-ambience decomposition for stereo to surround upmixing with dialog-enhanced center channel
US9542922B2 (en) Method for inserting watermark to image and electronic device thereof
WO2024167167A1 (en) Method and system for signal normalization using loudness metadata for audio processing
US20050107900A1 (en) Portable computer adapted for use with a loudspeaker unit to reproduce audio playback information with surround sound effects

Legal Events

Date Code Title Description
WWE Wipo information: entry into national phase

Ref document number: 201080010309.9

Country of ref document: CN

121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 10748923

Country of ref document: EP

Kind code of ref document: A2

WWE Wipo information: entry into national phase

Ref document number: 2011552879

Country of ref document: JP

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 10748923

Country of ref document: EP

Kind code of ref document: A2