US20110106546A1 - Scalable lossless audio codec and authoring tool - Google Patents
- ️Thu May 05 2011
US20110106546A1 - Scalable lossless audio codec and authoring tool - Google Patents
Scalable lossless audio codec and authoring tool Download PDFInfo
-
Publication number
- US20110106546A1 US20110106546A1 US12/720,416 US72041610A US2011106546A1 US 20110106546 A1 US20110106546 A1 US 20110106546A1 US 72041610 A US72041610 A US 72041610A US 2011106546 A1 US2011106546 A1 US 2011106546A1 Authority
- US
- United States Prior art keywords
- lsb
- portions
- encoded
- audio data
- msb Prior art date
- 2004-03-25 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
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/0017—Lossless audio signal coding; Perfect reconstruction of coded audio signal by transmission of coding error
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/008—Multichannel audio signal coding or decoding using interchannel correlation to reduce redundancy, e.g. joint-stereo, intensity-coding or matrixing
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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 using predictive techniques
- G10L19/08—Determination or coding of the excitation function; Determination or coding of the long-term prediction parameters
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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 using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/18—Vocoders using multiple modes
- G10L19/24—Variable rate codecs, e.g. for generating different qualities using a scalable representation such as hierarchical encoding or layered encoding
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M7/00—Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
- H03M7/30—Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L19/00—Speech 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/04—Speech 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 using predictive techniques
- G10L19/16—Vocoder architecture
- G10L19/167—Audio streaming, i.e. formatting and decoding of an encoded audio signal representation into a data stream for transmission or storage purposes
Definitions
- This invention relates to lossless audio codecs and more specifically to a scalable lossless audio codec and authoring tool.
- Dolby AC3 Dolby digital audio coding system is a world-wide standard for encoding stereo and 5.1 channel audio sound tracks for Laser Disc, NTSC coded DVD video, and ATV, using bit rates up to 640 kbit/s.
- MPEG I and MPEG II audio coding standards are widely used for stereo and multi-channel sound track encoding for PAL encoded DVD video, terrestrial digital radio broadcasting in Europe and Satellite broadcasting in the US, at bit rates up to 768 kbit/s.
- DTS Digital Theater Systems
- Coherent Acoustics audio coding system is frequently used for studio quality 5.1 channel audio sound tracks for Compact Disc, DVD video, Satellite Broadcast in Europe and Laser Disc and bit rates up to 1536 kbit/s.
- Lossless codecs rely on algorithms which compress data without discarding any information. As such, they do not employ psychoacoustic effects such as “masking”. A lossless codec produces a decoded signal which is identical to the (digitized) source signal. This performance comes at a cost: such codecs typically require more bandwidth than lossy codecs, and compress the data to a lesser degree.
- the lack of compression can cause a problem when content is being authored to a disk, CD, DVD, etc., particularly in cases of highly un-correlated source material or very large source bandwidth requirements.
- the optical properties of the media establish a peak bit rate for all content that can not be exceeded.
- a hard threshold 10 e.g., 9.6 Mbps for DVD audio, is typically established for audio so that the total bit rate does not exceed the media limit.
- the audio and other data is laid out on the disk to satisfy the various media constraints and to ensure that all the data that is required to decode a given frame will be present in the audio decoder buffer.
- the buffer has the effect of smoothing the frame-to-frame encoded payload (bit rate) 12 , which can fluctuate wildly from frame-to-frame, to create a buffered payload 14 , i.e. the buffered average of the frame-to-frame encoded payload. If the buffered payload 14 of the lossless bitstream for a given channel exceeds the threshold at any point the audio input files are altered to reduce their information content.
- the audio files may be altered by reducing the bit-depth of one or more channels such as from 24-bit to 22-bit, filtering a channel's frequency bandwidth to low-pass only, or reducing the audio bandwidth such as by filtering information above 40 kHz when sampling at 96 kHz.
- the altered audio input files are re-encoded so that the payload 16 never exceeds the threshold 10 .
- An example of this process is described in the SurCode MLP—Owner's Manual pp. 20-23.
- the present invention provides an audio codec that generates a lossless bitstream and an authoring tool that selectively discards bits to satisfy media, channel, decoder buffer or playback device bit rate constraints without having to filter the audio input files, reencode or to otherwise disrupt the lossless bitstream.
- the audio encoder separates the audio data into most significant bit (MSB) and least significant bit (LSB) portions and encodes each with a different lossless algorithm.
- MSB most significant bit
- LSB least significant bit
- An authoring tool writes the MSB portions to a bitstream, writes the LSB portions in the conforming windows to the bitstream, and scales the lossless LSB portions of any non-conforming frames to make them conform and writes the now lossy LSB portions to the bitstream.
- the audio decoder decodes the MSS and LSB portions and reassembles the PCM audio data.
- the audio encoder splits each audio sample into the MSB and LSB portions, encodes the MSB portion with a first lossless algorithm, encodes the LSB portion with a second lossless algorithm, and packs the encoded audio data into a scalable, lossless bitstream.
- the boundary point between the MSB and LSB portions is suitably established by the energy and/or maximum amplitude of samples in an analysis window.
- the LSB bit widths are packed into the bitstream.
- the LSB portion is preferably encoded so that some or all of the LSBs may be selectively discarded. Frequency extensions may be similarly encoded with MSB/LSB or entirely encoded as LSBs.
- An authoring tool is used to lay out the encoded data on a disk (media).
- the initial layout corresponds to the buffered payload.
- the tool compares the buffered payload to the allowed payload for each analysis window to determine whether the layout requires any modification. If not, all of the lossless MSB and LSB portions of the lossless bitstream are written to a bitstream and recorded on the disk. If yes, the authoring tool scales the lossless bitstream to satisfy the constraints.
- the tool writes the lossless MSB and LSB portion for all of the conforming windows and the headers and lossless MSB portions for the non-conforming to a modified bitstream.
- the authoring tool determines how many of the LSBs to discard from each audio sample in the analysis window for one ore more audio channels and repacks the LSB portions into the modified bitstream with their modified bit widths. This is repeated for only those analysis windows in which the buffered payload exceeds the allowed payload.
- a decoder receives the authored bitstream via the media or transmission channel.
- the audio data is directed to a buffer, which does not overflow on account of the authoring, and in turn provides sufficient data to a DSP chip to decode the audio data for the current analysis window.
- the DSP chip extracts the header information and extracts, decodes and assembles the MSB portions of the audio data. If all of the LSBs were discarded during authoring, the DSP chip translates the MSB samples to the original bit width word and outputs the PCM data. Otherwise, the DSP chip decodes the LSB portions, assembles the MSB & LSB samples, translates the assembled samples to the original bit width word and outputs the PCM data.
- FIG. 1 is a plot of bit rate and payload for a lossless audio channel versus time
- FIG. 2 is a block diagram of a lossless audio codec and authoring tool in accordance with the present invention
- FIG. 3 is a simplified flowchart of the audio coder
- FIG. 4 is a diagram of an MSB/LSB split for a sample in the lossless bitstream
- FIG. 5 is a simplified flowchart of the authoring tool
- FIG. 6 is a diagram of an MSB/LSB split for a sample in the authored bitstreams
- FIG. 7 is a diagram of a bitstream including the MSB and LSB portions and header information
- FIG. 8 is a plot of payload for the lossless and authored bitstreams
- FIG. 9 is a simple block diagram of an audio decoder
- FIG. 10 is a flowchart of the decoding process
- FIG. 11 is a diagram of an assembled bitstream
- FIGS. 12-15 illustrate the bitstream format, encoding, authoring, and decoding for a particular embodiment
- FIGS. 16 a and 16 b are block diagrams of the encoder and decoder for a scalable lossless codec that is backwards compatible with a lossy core encoder.
- the present invention provides a lossless audio codec and authoring tool for selectively discarding bits to satisfy media, channel, decoder buffer or playback device bit rate constraints without having to filter the audio input files, reencode or to otherwise disrupt the lossless bitstream.
- an audio encoder 20 losslessly encodes the audio data in a sequence of analysis windows and packs the encoded data and header information into a scalable, lossless bitstream 22 , which is suitably stored in an archive 24 .
- the analysis windows are typically frames of encoded data but as used herein the windows could span a plurality of frames.
- the analysis window may be refined into one or more segments of data inside a frame, one or more channel sets inside a segment, one or more channels in each channel set and finally one or more frequency extensions inside a channel.
- the scaling decisions for the bitstream can be very coarse (multiple frames) or more refined (per frequency extension per channel set per frame).
- An authoring tool 30 is used to lay out the encoded data on a disk (media) in accordance with the decoder's buffer capacity.
- the initial layout corresponds to the buffered payload.
- the tool compares the buffered payload to the allowed payload for each analysis window to determine whether the layout requires any modification.
- the allowed payload is typically a function of the peak bit rate supported by a media (DVD disk) or transmission channel.
- the allowed payload may be fixed or allowed to vary if part of a global optimization.
- the authoring tool selectively scales the losslessly encoded audio data in the non-conforming windows to reduce the encoded payload, hence the buffered payload.
- the scaling process introduces some loss into the encoded data but is confined to only the non-conforming windows and is suitably just enough to bring each window into conformance.
- the authoring tool packs the lossless and lossy data and any modified header information into a bitstream 32 .
- the bitstream 32 is typically stored on a media 34 or transmitted over a transmission channel 36 for subsequent playback via an audio decoder 38 , which generates a single or multi-channel PCM (pulse code modulated) audio stream 40 .
- PCM pulse code modulated
- the audio encoder 20 splits each audio sample into a MSB portion 42 and a LSB portion 44 (step 46 ).
- the boundary point that separates the audio data is computed by first assigning a minimum MSB bit width (Min MSB) 50 that establishes a minimum coding level for each audio sample. For example, if the bit width 52 of the audio data is 20-bit the Min MSB might be 16-bit. It follows that the maximum LSB bit width (Max LSB) 54 is the Bit Width 52 minus the Min MSB 50 .
- the encoder computes a cost function, e.g. the L 2 or L ⁇ norms, for the audio data in the analysis window.
- the encoder calculates an LSB bit width 56 of at least one bit and no more than Max LSB. If the cost function does not exceed the threshold, the LSB bit width 56 is set to zero bits.
- the MSB/LSB split is done for each analysis window. As describe above, this is typically one or more frames. The split can be further refined for each data segment, channel set, channel or frequency extension, for example. More refinement improves coding performance at the cost of additional computations and more overhead in the bitstream.
- the encoder losslessly encodes the MSB portions (step 58 ) and LSB portions (step 60 ) with different lossless algorithms.
- the audio data in the MSB portions is typically highly correlated both temporally within any one channel and between channels. Therefore, the lossless algorithm suitably employs entropy coding, fixed prediction, adaptive prediction and joint channel decorrelation techniques to efficiently code the MSB portions.
- a suitable lossless encoder is described in U.S. Pat. No. 7,392,195 titled “Lossless Multi-Channel Audio Codec” which is hereby incorporated by reference.
- lossless encoders include MLP (DVD Audio), Monkey's audio (computer applications), Apple lossless, Windows Media Pro lossless, AudioPak, DVD, LTAC, MUSICcompress, OggSquish, Philips, Shorten, Sonarc and WA.
- MLP DVD Audio
- Monkey's audio computer applications
- Apple lossless Windows Media Pro lossless
- AudioPak DVD
- LTAC LTAC
- MUSICcompress OggSquish
- Philips Shorten, Sonarc and WA.
- the audio data in the LSB portion is highly uncorrelated, closer to noise. Therefore sophisticated compression techniques are largely ineffective and consume processing resources. Furthermore, to efficiently author the bitstream, a very simple lossless code using simplistic prediction of very low order followed by a simple entropy coder is highly desirable. In fact, the currently preferred algorithm is to encode the LSB portion by simply replicating the LSB bits as is. This will allow individual LSBs to be discarded without having to decode the LSB portion.
- the encoder separately packs the encoded MSB and LSB portions into a scalable, lossless bitstream 62 so that they can be readily unpacked and decoded (step 64 ).
- the encoder packs the LSB bit width 56 into the header (step 66 ).
- the header also includes space for an LSB bit width reduction 68 , which is not used during encode. This process is repeated for each analysis window (frames, frame, segment, channel set or frequency extension) for which the split is recalculated.
- the authoring tool 30 allows a user to make a first pass at laying out the audio and video bitstreams on the media in accordance with the decoder's buffer capacity (step 70 ) to satisfy the media's peak bit rate constraint.
- the authoring tool starts the analysis window loop (step 71 ), calculates an buffered payload (step 72 ) and compares the buffered payload to the allowed payload for the analysis window 73 to determine whether the lossless bitstream requires any scaling to satisfy the constraints (step 74 ).
- the allowed payload is determined by buffer capacity of the audio decoder and the peak bit rate of the media or channel.
- the encoded payload is determined by the bit width of the audio data and the number of samples in all of the data segments 75 plus the header 76 . If the allowed payload is not exceeded, the losslessly encoded MSB and LSB portions are packed into respective MSB and LSB areas 77 and 78 of the data segments 75 in a modified bitstream 79 (step 80 ). If the allowed payload is never exceeded, the lossless bitstream is transferred directly to the media or channel.
- the authoring tool packs the headers and losslessly encoded MSB portions 42 into the modified bitstream 79 (step 81 ). Based on a prioritization rule, the authoring tool calculates an LSB bit width reduction 68 that will reduce the encoded payload, hence buffered payload to at most the allowed payload (step 82 ). Assuming the LSB portions were simply replicated during lossless encoding, the authoring tool scales the LSB portions (step 84 ) by preferably adding dither to each LSB portion so as to dither the next LSB bit past the LSB bit width reduction, and then shifting the LSB portion to the right by the LSB bit width reduction to discard bits.
- the tool packs the now lossy encoded LSB portions for the now conforming windows into the bitstream with the modified LSB bit widths 56 and the LSB bit width reduction 68 and a dither parameter (step 86 ).
- the LSB portion 44 has been scaled from a bit width of 3 to a modified LSB bit width 56 of 1-bit.
- the two discarded LSBs 88 match the LSB bit width reduction 68 of 2 bits.
- the modified LSB bit width 56 and LSB bit width reduction 68 are transmitted in the header to the decoder. Alternately, either of these could be omitted and the original LSB bit width transmitted. Any one of the parameters is uniquely determined by the other two.
- the benefits of the scalable, lossless encoder and authoring tool are best illustrated by overlaying the buffered payload 90 for the authored bitstream on FIG. 1 as is done in FIG. 8 .
- the buffered payload 14 was effectively shifted downward to a buffered payload 16 that is less than the allowed payload 10 .
- the buffered payload 90 replicates the original losslessly buffered payload 14 except in those few windows (frames) where the buffered payload exceeds the allowed payload.
- the encoded payload hence buffered payload is reduced just enough to satisfy the constraint and preferably no more.
- the payload capacity is utilized more efficiently and more content is delivered to the end user without having to alter the original audio files or reencode.
- the audio decoder 38 receives an authored bitstream via a disk 100 .
- the bitstream is separated into a sequence of analysis windows, each including header information and encoded audio data.
- Most of the windows include losslessly encoded MSB and LSB portions, the original LSB bit widths and LSB bit width reductions of zero.
- some of the windows include the losslessly encoded MSB portions and lossy LSB portions, the modified bit widths of the lossy LSB portions, and the LSB bit width reductions.
- a controller 104 reads the encoded audio data from the bitstream on the disk 100 .
- a parser 106 separates the audio data from the video and streams the audio data to the audio buffer 102 , which does not overflow on account of the authoring.
- the buffer in turn provides sufficient data to a DSP chip 108 to decode the audio data for the current analysis window.
- the DSP chip extracts the header information (step 110 ) including the modified LSB bit widths 56 , LSB bit width reduction 68 , a number of empty LSBs 112 from an original word width and extracts, decodes and assembles the MSB portions of the audio data (step 114 ).
- the DSP chip translates the MSB samples to the original bit width word and outputs the PCM data (step 116 ). Otherwise, the DSP chip decodes the lossless and lossy LSB portions (step 118 ), assembles the MSB & LSB samples (step 120 ), and, using the header information, translates the assembled samples to the original bit width word (step 122 ).
- each frame 200 comprises a header 202 for storing common information 204 and sub-headers 206 for each channel set that store the LSB bit widths and LSB bit width reductions, and one or more data segments 208 .
- Each data segment comprises one or more channel sets 210 with each channel set comprising one or more audio channels 212 .
- Each channel comprises one or more frequency extensions 214 with at least the lowest frequency extension including encoded MSB and LSB portions 216 , 218 .
- the bitstream has a distinct MSB and LSB split for each channel in each channel set in each frame. The higher frequency extensions may be similarly split or entirely encoded as LSB portions.
- the scalable lossless bitstream from which this bitstream is authored is encoded as illustrated in FIGS. 13 a and 13 b .
- the encoder sets the bit width of the original word (24-bit), the Min MSB (16-bit), a threshold (Th) for the squared L2 norm and a scale factor (SF) for that norm (step 220 ).
- the bit width of the data is the original bit width (24) minus the number of empty LSBs (4) (step 228 ).
- the encoder starts the channel loop index (step 232 ) and calculates the L ⁇ norm as the maximum absolute amplitude of the audio data in the channel and the squared L2 norm as the sum of the squared amplitudes of the audio data in the analysis window (step 234 ).
- the encoder sets a parameter Max Amp as the minimum integer greater than or equal to log 2 (L ⁇ ) (step 236 ) and initializes the LSB bit width to zero (step 237 ). If the Max Amp is greater than the Min MSB (step 238 ), the LSB bit width is set equal to the difference of the Max Amp and Min MSB (step 240 ).
- the LSB bit width is set equal to the Max Amp divided by the Scale Factor, typically >1 (step 244 ). If both tests are false, the LSB bit width remains zero. In other words, to maintain the minimum encode quality, e.g. Min MSB, no LSBs are available.
- the encoder clips the LSB bit width at the Max LSB value (step 246 ) and packs the value into the sub-header channel set (step 248 ).
- the encoder splits the audio data into the MSB and LSB portions (step 250 ).
- the MSB portion is losslessly encoded using a suitable algorithm (step 252 ) and packed into the lowest frequency extension in the particular channel in the channel set of the current frame (step 254 ).
- the LSB portion is losslessly encoded using a suitable algorithm, e.g. simple bit replication (step 256 ) and packed (step 258 ).
- This process is repeated for each channel (step 260 ) for each channel set (step 262 ) for each frame (step 264 ) in the bitstream. Furthermore, the same procedure may be repeated for higher frequency extensions. However, because these extensions contain much less information, the Min MSB may be set to 0 so that it is all encoded as LSBs.
- an authoring tool creates the best bitstream it can that satisfies the peak bit rate constraints of the transport media and the capacity of the buffer in the audio decoder.
- a user attempts to layout the lossless bitstream 268 on the media to conform to the bit rate and buffer capacity constrains (step 270 ). If successful, the lossless bitstream 268 is written out as the authored bitstream 272 and stored on the media. Otherwise the authoring tool starts the frame loop (step 274 ) and compares the buffered payload (buffered average frame-to-frame payload) to the allowed payload (peak bit rate) (step 276 ). If the current frame conforms to the allowed payload, the losslessly encoded MSB and LSB portions are extracted from the lossless bitstream 268 and written to the authored bitstream 272 and the frame is incremented.
- the tool computes the maximum reduction that can be achieved by discarding all of the LSB portions in the channel set and subtracts it from the buffered payload (step 278 ). If the minimum payload is still too big the tool displays an error message that includes the amount of excess date and frame number (step 280 ). In this case either the Min MSB shall be reduced or the original audio files shall be altered and re-encoded.
- the authoring tool calculates an LSB bit width reduction for each channel in the current frame based on a specified channel prioritization rule (step 282 ) such that:
- the authoring tool adjusts the encoded LSB portions (assuming bit replication encoding) for each channel by adding dither to each LSB portion in the frame to dither the next bit and then right shifting by the LSB bit width reduction (step 284 ). Adding dither is not necessary but is highly desirable in order to decorrelate the quantization errors and also make them decorrelated from the original audio signal.
- the tool packs the now lossy scaled LSB portions (step 286 ), the modified LSB bit widths and LSB bit width reductions for each channel (step 288 ) and the modified stream navigation points (step 290 ) into the authored bitstream. If dither is added, a dither parameter is packed into the bitstream. This process is then repeated for each frame (step 292 ) before terminating (step 294 ).
- a suitable decoder synchronizes to the bitstream (step 300 ) and starts a frame loop (step 302 ).
- the decoder extracts the frame header information including the number of segments, number of samples in a segment, number of channel sets, etc (step 304 ) and extracts the channel set header information including the number channels in the set, number of empty LSBs, LSB bit width, LSB bit width reduction for each channel set (step 306 ) and stores it for each channel set (step 307 ).
- the decoder starts the segment loop (step 308 ) and channel set loop (step 310 ) for the current frame.
- the decoder unpacks and decodes the MSB portions (step 312 ) and stores the PCM samples (step 314 ).
- the decoder then starts the channel loop in the current channel set (step 316 ) and proceeds with the encoded LSB data.
- the decoder starts the sample loop in the current segment (step 320 ), translates the PCM samples for the MSB portion to the original word width (step 322 ) and repeats until the sample loop terminates (step 324 ).
- the decoder starts the sample loop in the current segment (step 326 ), unpacks and decodes the LSB portions (step 328 ) and assembles PCM samples by appending the LSB portion to the MSB portion (step 330 ).
- the decoder then translates the PCM sample to the original word width using the empty LSB, modified LSB bit width and LSB bit width reduction information from the header (step 332 ) and repeats the steps until the sample loop terminates (step 334 ).
- the decoder repeats these steps for each channel (step 336 ) in each channel set (step 338 ) in each frame (step 340 ).
- the scalability properties can be incorporated into a backward compatible lossless encoder, bitstream format and decoder.
- a “lossy” core code stream is packed in concert with the losslessly encoded MSB and LSB portions of the audio data for transmission (or recording).
- the lossy and lossless MSB streams are combined and the LSB stream is appended to construct a lossless reconstructed signal.
- the lossless MSB and LSB extension streams are ignored, and the core “lossy” stream is decoded to provide a high-quality, multichannel audio signal with the bandwidth and signal-to-noise ratio characteristic of the core stream.
- FIG. 16 a shows a system level view of a scalable backward compatible encoder 400 .
- a digitized audio signal suitably M-bit PCM audio samples, is provided at input 402 .
- the digitized audio signal has a sampling rate and bandwidth which exceeds that of a modified, lossy core encoder 404 .
- the sampling rate of the digitized audio signal is 96 kHz (corresponding to a bandwidth of 48 kHz for the sampled audio).
- the input audio may be, and preferably is, a multichannel signal wherein each channel is sampled at 96 kHz.
- the input signal is duplicated at node 406 and handled in parallel branches.
- a modified lossy, wideband encoder 404 encodes the signal.
- the modified core encoder 404 which is described in detail below, produces an encoded data stream (corestream 408 ) which is conveyed to a packer or multiplexer 410 .
- the corestream 408 is also communicated to a modified corestream decoder 412 , which produces as output a modified, reconstructed core signal 414 , which is right shifted by N bits (>>N 415 ) to discard its N 1sbs.
- the input digitized audio signal 402 in the parallel path undergoes a compensating delay 416 , substantially equal to the delay introduced into the reconstructed audio stream (by modified encode and modified decoders), to produce a delayed digitized audio stream.
- the audio stream is split into MSB and LSB portions 417 as described above.
- the N-bit LSB portion 418 is conveyed to the packer 410 .
- the M-N bit reconstructed core signal 414 which was shifted to align with the MSB portion, is subtracted from the MSB portion of the delayed digitized audio stream 419 at subtracting node 420 .
- a summing node could be substituted for a subtracting node, by changing the polarity of one of the inputs. Thus, summing and subtracting may be substantially equivalent for this purpose).
- Subtracting node 420 produces a difference signal 422 which represents the difference between the M-N MSBs of the original signal and the reconstructed core signal.
- the M-N bit difference signal 422 is encoded with a lossless encoder 424 , and the encoded M-N bit signal 426 packed or multiplexed with the core stream 408 in packer 410 to produce a multiplexed output bitstream 428 .
- the lossless coding produced coded lossless streams 418 and 426 which are at a variable bit rate, to accommodate the needs of the lossless coder.
- the packed stream is then optionally subjected to further layers of coding including channel coding, and then transmitted or recorded. Note that for purposes of this disclosure, recording may be considered as transmission through a channel.
- the core encoder 404 is described as “modified” because in an embodiment capable of handling extended bandwidth the core encoder would require modification.
- a 64-band analysis filter bank within the encoder discards half of its output data and encodes only the lower 32 frequency bands. This discarded information is of no concern to legacy decoders that would be unable to reconstruct the upper half of the signal spectrum in any case.
- the remaining information is encoded as per the unmodified encoder to form a backwards-compatible core output stream.
- the core encoder could be a substantially unmodified version of a prior core encoder.
- the core decoder 412 would need to be modified as described below.
- the core decoder could be a substantially unmodified version of a prior core decoder or equivalent.
- the choice of sampling rate could be made at the time of encoding, and the encode and decode modules reconfigured at that time by software as desired.
- the method of decoding is complementary to the method of encoding.
- a prior generation decoder can decode the lossy core audio signal by simply decoding the corestream 408 and discarding the lossless MSB and LSB portions. The quality of audio produced in such a prior generation decoder will be extremely good, equivalent to prior generation audio, just not lossless.
- the incoming bitstream (recovered from either a transmission channel or a recording medium) is first unpacked in unpacker 430 , which separates the corestream 408 from lossless extension data streams 418 (LSB) and 426 (MSB).
- the core stream is decoded by a modified core decoder 432 , which reconstructs the core stream by zeroing out the un-transmitted sub-band samples for the upper 32 bands in a 64-band synthesis during reconstruction. (Note, if a standard core encode was performed, the zeroing out is unnecessary).
- the MSB extension field is decoded by a lossless MSB decoder 434 . Because the LSB data was losslessly encoded using bit replication no decoding is necessary.
- the bitstream can be scaled by selectively discarding LSBs to make it conform to media bit rate constraints and buffer capacity.
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Computational Linguistics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Quality & Reliability (AREA)
- Mathematical Physics (AREA)
- Theoretical Computer Science (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Signal Processing For Digital Recording And Reproducing (AREA)
- Transmission Systems Not Characterized By The Medium Used For Transmission (AREA)
Abstract
An audio codec losslessly encodes audio data into a sequence of analysis windows in a scalable bitstream. This is suitably done by separating the audio data into MSB and LSB portions and encoding each with a different lossless algorithm. An authoring tool compares the buffered payload to an allowed payload for each window and selectively scales the losslessly encoded audio data, suitably the LSB portion, in the non-conforming windows to reduce the encoded payload, hence buffered payload. This approach satisfies the media bit rate and buffer capacity constraints without having to filter the original audio data, reencode or otherwise disrupt the lossless bitstream.
Description
-
CROSS-REFERENCE TO RELATED APPLICATIONS
-
This application claims benefit of priority under 35 U.S.C. 119(e) to U.S. Priority application Ser. No. 12/613,316 entitled “SCALABLE LOSSLESS AUDIO CODEC AND AUTHORING TOOL” filed on Nov. 5, 2009, the entire contents of which are incorporated by reference.
BACKGROUND OF THE INVENTION
-
1. Field of the Invention
-
This invention relates to lossless audio codecs and more specifically to a scalable lossless audio codec and authoring tool.
-
2. Description of the Related Art
-
Numbers of low bit-rate lossy audio coding systems are currently in use in a wide range of consumer and professional audio playback products and services. For example, Dolby AC3 (Dolby digital) audio coding system is a world-wide standard for encoding stereo and 5.1 channel audio sound tracks for Laser Disc, NTSC coded DVD video, and ATV, using bit rates up to 640 kbit/s. MPEG I and MPEG II audio coding standards are widely used for stereo and multi-channel sound track encoding for PAL encoded DVD video, terrestrial digital radio broadcasting in Europe and Satellite broadcasting in the US, at bit rates up to 768 kbit/s. DTS (Digital Theater Systems) Coherent Acoustics audio coding system is frequently used for studio quality 5.1 channel audio sound tracks for Compact Disc, DVD video, Satellite Broadcast in Europe and Laser Disc and bit rates up to 1536 kbit/s.
-
An improved codec offering 96 kHz bandwidth and 24 bit resolution is disclosed in U.S. Pat. No. 6,226,616 (also assigned to Digital Theater Systems, Inc.). That patent employs a core and extension methodology in which the traditional audio coding algorithm constitutes the ‘core’ audio coder, and remains unaltered. The audio data necessary to represent higher audio frequencies (in the case of higher sampling rates) or higher sample resolution (in the case of larger word lengths), or both, is transmitted as an ‘extension’ stream. This allows audio content providers to include a single audio bit stream that is compatible with different types of decoders resident in the consumer equipment base. The core stream will be decoded by the older decoders which will ignore the extension data, while newer decoders will make use of both core and extension data streams giving higher quality sound reproduction. However, this prior approach does not provide truly lossless encoding or decoding. Although the system of U.S. Pat. No. 6,226,216 provides superior quality audio playback, it does not provide “lossless” performance.
-
Recently, many consumers have shown interest in these so-called “lossless” codecs. “Lossless” codecs rely on algorithms which compress data without discarding any information. As such, they do not employ psychoacoustic effects such as “masking”. A lossless codec produces a decoded signal which is identical to the (digitized) source signal. This performance comes at a cost: such codecs typically require more bandwidth than lossy codecs, and compress the data to a lesser degree.
-
The lack of compression can cause a problem when content is being authored to a disk, CD, DVD, etc., particularly in cases of highly un-correlated source material or very large source bandwidth requirements. The optical properties of the media establish a peak bit rate for all content that can not be exceeded. As shown in
FIG. 1, a
hard threshold10, e.g., 9.6 Mbps for DVD audio, is typically established for audio so that the total bit rate does not exceed the media limit.
-
The audio and other data is laid out on the disk to satisfy the various media constraints and to ensure that all the data that is required to decode a given frame will be present in the audio decoder buffer. The buffer has the effect of smoothing the frame-to-frame encoded payload (bit rate) 12, which can fluctuate wildly from frame-to-frame, to create a buffered
payload14, i.e. the buffered average of the frame-to-frame encoded payload. If the
buffered payload14 of the lossless bitstream for a given channel exceeds the threshold at any point the audio input files are altered to reduce their information content. The audio files may be altered by reducing the bit-depth of one or more channels such as from 24-bit to 22-bit, filtering a channel's frequency bandwidth to low-pass only, or reducing the audio bandwidth such as by filtering information above 40 kHz when sampling at 96 kHz. The altered audio input files are re-encoded so that the
payload16 never exceeds the
threshold10. An example of this process is described in the SurCode MLP—Owner's Manual pp. 20-23.
-
This is a very computationally and time inefficient process. Furthermore, although the audio encoder is still lossless, the amount of audio content that is delivered to the user has been reduced over the entire bitstream. Moreover, the alteration process is inexact, if too little information is removed the problem may still exist, if too much information is removed audio data is needlessly discarded. In addition, the authoring process will have to be tailored to the specific optical properties of the media and the buffer size of the decoder.
SUMMARY OF THE INVENTION
-
The present invention provides an audio codec that generates a lossless bitstream and an authoring tool that selectively discards bits to satisfy media, channel, decoder buffer or playback device bit rate constraints without having to filter the audio input files, reencode or to otherwise disrupt the lossless bitstream.
-
This is accomplished by losslessly encoding the audio data in a sequence of analysis windows into a scalable bitstream, comparing the buffered payload to an allowed payload for each window, and selectively scaling the losslessly encoded audio data in the non-conforming windows to reduce the encoded payload, hence the buffered payload thereby introducing loss.
-
In an exemplary embodiment, the audio encoder separates the audio data into most significant bit (MSB) and least significant bit (LSB) portions and encodes each with a different lossless algorithm. An authoring tool writes the MSB portions to a bitstream, writes the LSB portions in the conforming windows to the bitstream, and scales the lossless LSB portions of any non-conforming frames to make them conform and writes the now lossy LSB portions to the bitstream. The audio decoder decodes the MSS and LSB portions and reassembles the PCM audio data.
-
The audio encoder splits each audio sample into the MSB and LSB portions, encodes the MSB portion with a first lossless algorithm, encodes the LSB portion with a second lossless algorithm, and packs the encoded audio data into a scalable, lossless bitstream. The boundary point between the MSB and LSB portions is suitably established by the energy and/or maximum amplitude of samples in an analysis window. The LSB bit widths are packed into the bitstream. The LSB portion is preferably encoded so that some or all of the LSBs may be selectively discarded. Frequency extensions may be similarly encoded with MSB/LSB or entirely encoded as LSBs.
-
An authoring tool is used to lay out the encoded data on a disk (media). The initial layout corresponds to the buffered payload. The tool compares the buffered payload to the allowed payload for each analysis window to determine whether the layout requires any modification. If not, all of the lossless MSB and LSB portions of the lossless bitstream are written to a bitstream and recorded on the disk. If yes, the authoring tool scales the lossless bitstream to satisfy the constraints.
-
More specifically, the tool writes the lossless MSB and LSB portion for all of the conforming windows and the headers and lossless MSB portions for the non-conforming to a modified bitstream. Based on a prioritization rule, for each non-conforming window the authoring tool then determines how many of the LSBs to discard from each audio sample in the analysis window for one ore more audio channels and repacks the LSB portions into the modified bitstream with their modified bit widths. This is repeated for only those analysis windows in which the buffered payload exceeds the allowed payload.
-
A decoder receives the authored bitstream via the media or transmission channel. The audio data is directed to a buffer, which does not overflow on account of the authoring, and in turn provides sufficient data to a DSP chip to decode the audio data for the current analysis window. The DSP chip extracts the header information and extracts, decodes and assembles the MSB portions of the audio data. If all of the LSBs were discarded during authoring, the DSP chip translates the MSB samples to the original bit width word and outputs the PCM data. Otherwise, the DSP chip decodes the LSB portions, assembles the MSB & LSB samples, translates the assembled samples to the original bit width word and outputs the PCM data.
-
These and other features and advantages of the invention will be apparent to those skilled in the art from the following detailed description of preferred embodiments, taken together with the accompanying drawings, in which:
BRIEF DESCRIPTION OF THE DRAWINGS
- FIG. 1
, as described above, is a plot of bit rate and payload for a lossless audio channel versus time;
- FIG. 2
is a block diagram of a lossless audio codec and authoring tool in accordance with the present invention;
- FIG. 3
is a simplified flowchart of the audio coder;
- FIG. 4
is a diagram of an MSB/LSB split for a sample in the lossless bitstream;
- FIG. 5
is a simplified flowchart of the authoring tool;
- FIG. 6
is a diagram of an MSB/LSB split for a sample in the authored bitstreams;
- FIG. 7
is a diagram of a bitstream including the MSB and LSB portions and header information;
- FIG. 8
is a plot of payload for the lossless and authored bitstreams;
- FIG. 9
is a simple block diagram of an audio decoder;
- FIG. 10
is a flowchart of the decoding process;
- FIG. 11
is a diagram of an assembled bitstream;
- FIGS. 12-15
illustrate the bitstream format, encoding, authoring, and decoding for a particular embodiment; and
- FIGS. 16
a and 16 b are block diagrams of the encoder and decoder for a scalable lossless codec that is backwards compatible with a lossy core encoder.
DETAILED DESCRIPTION OF THE INVENTION
-
The present invention provides a lossless audio codec and authoring tool for selectively discarding bits to satisfy media, channel, decoder buffer or playback device bit rate constraints without having to filter the audio input files, reencode or to otherwise disrupt the lossless bitstream.
-
As shown in
FIG. 2, an
audio encoder20 losslessly encodes the audio data in a sequence of analysis windows and packs the encoded data and header information into a scalable,
lossless bitstream22, which is suitably stored in an
archive24. The analysis windows are typically frames of encoded data but as used herein the windows could span a plurality of frames. Furthermore, the analysis window may be refined into one or more segments of data inside a frame, one or more channel sets inside a segment, one or more channels in each channel set and finally one or more frequency extensions inside a channel. The scaling decisions for the bitstream can be very coarse (multiple frames) or more refined (per frequency extension per channel set per frame).
-
An
authoring tool30 is used to lay out the encoded data on a disk (media) in accordance with the decoder's buffer capacity. The initial layout corresponds to the buffered payload. The tool compares the buffered payload to the allowed payload for each analysis window to determine whether the layout requires any modification. The allowed payload is typically a function of the peak bit rate supported by a media (DVD disk) or transmission channel. The allowed payload may be fixed or allowed to vary if part of a global optimization. The authoring tool selectively scales the losslessly encoded audio data in the non-conforming windows to reduce the encoded payload, hence the buffered payload. The scaling process introduces some loss into the encoded data but is confined to only the non-conforming windows and is suitably just enough to bring each window into conformance. The authoring tool packs the lossless and lossy data and any modified header information into a
bitstream32. The
bitstream32 is typically stored on a
media34 or transmitted over a
transmission channel36 for subsequent playback via an
audio decoder38, which generates a single or multi-channel PCM (pulse code modulated)
audio stream40.
-
In an exemplary embodiment as shown in
FIGS. 3 and 4, the
audio encoder20 splits each audio sample into a
MSB portion42 and a LSB portion 44 (step 46). The boundary point that separates the audio data is computed by first assigning a minimum MSB bit width (Min MSB) 50 that establishes a minimum coding level for each audio sample. For example, if the
bit width52 of the audio data is 20-bit the Min MSB might be 16-bit. It follows that the maximum LSB bit width (Max LSB) 54 is the
Bit Width52 minus the
Min MSB50. The encoder computes a cost function, e.g. the L2 or L∞norms, for the audio data in the analysis window. If the cost function exceeds a threshold, the encoder calculates an
LSB bit width56 of at least one bit and no more than Max LSB. If the cost function does not exceed the threshold, the
LSB bit width56 is set to zero bits. In general, the MSB/LSB split is done for each analysis window. As describe above, this is typically one or more frames. The split can be further refined for each data segment, channel set, channel or frequency extension, for example. More refinement improves coding performance at the cost of additional computations and more overhead in the bitstream.
-
The encoder losslessly encodes the MSB portions (step 58) and LSB portions (step 60) with different lossless algorithms. The audio data in the MSB portions is typically highly correlated both temporally within any one channel and between channels. Therefore, the lossless algorithm suitably employs entropy coding, fixed prediction, adaptive prediction and joint channel decorrelation techniques to efficiently code the MSB portions. A suitable lossless encoder is described in U.S. Pat. No. 7,392,195 titled “Lossless Multi-Channel Audio Codec” which is hereby incorporated by reference. Other suitable lossless encoders include MLP (DVD Audio), Monkey's audio (computer applications), Apple lossless, Windows Media Pro lossless, AudioPak, DVD, LTAC, MUSICcompress, OggSquish, Philips, Shorten, Sonarc and WA. A review of many of these codecs is provided by Mat Hans, Ronald Schafer “Lossless Compression of Digital Audio” Hewlett Packard, 1999.
-
Conversely, the audio data in the LSB portion is highly uncorrelated, closer to noise. Therefore sophisticated compression techniques are largely ineffective and consume processing resources. Furthermore, to efficiently author the bitstream, a very simple lossless code using simplistic prediction of very low order followed by a simple entropy coder is highly desirable. In fact, the currently preferred algorithm is to encode the LSB portion by simply replicating the LSB bits as is. This will allow individual LSBs to be discarded without having to decode the LSB portion.
-
The encoder separately packs the encoded MSB and LSB portions into a scalable,
lossless bitstream62 so that they can be readily unpacked and decoded (step 64). In addition to the normal header information, the encoder packs the
LSB bit width56 into the header (step 66). The header also includes space for an LSB
bit width reduction68, which is not used during encode. This process is repeated for each analysis window (frames, frame, segment, channel set or frequency extension) for which the split is recalculated.
-
As shown in
FIGS. 5, 6 and 7, the
authoring tool30 allows a user to make a first pass at laying out the audio and video bitstreams on the media in accordance with the decoder's buffer capacity (step 70) to satisfy the media's peak bit rate constraint. The authoring tool starts the analysis window loop (step 71), calculates an buffered payload (step 72) and compares the buffered payload to the allowed payload for the
analysis window73 to determine whether the lossless bitstream requires any scaling to satisfy the constraints (step 74). The allowed payload is determined by buffer capacity of the audio decoder and the peak bit rate of the media or channel. The encoded payload is determined by the bit width of the audio data and the number of samples in all of the
data segments75 plus the
header76. If the allowed payload is not exceeded, the losslessly encoded MSB and LSB portions are packed into respective MSB and
LSB areas77 and 78 of the
data segments75 in a modified bitstream 79 (step 80). If the allowed payload is never exceeded, the lossless bitstream is transferred directly to the media or channel.
-
If the buffered payload exceeds the allowed payload, the authoring tool packs the headers and losslessly encoded
MSB portions42 into the modified bitstream 79 (step 81). Based on a prioritization rule, the authoring tool calculates an LSB
bit width reduction68 that will reduce the encoded payload, hence buffered payload to at most the allowed payload (step 82). Assuming the LSB portions were simply replicated during lossless encoding, the authoring tool scales the LSB portions (step 84) by preferably adding dither to each LSB portion so as to dither the next LSB bit past the LSB bit width reduction, and then shifting the LSB portion to the right by the LSB bit width reduction to discard bits. If the LSB portions were encoded, they would have to be decoded, dithered, shifted and reencoded. The tool packs the now lossy encoded LSB portions for the now conforming windows into the bitstream with the modified
LSB bit widths56 and the LSB
bit width reduction68 and a dither parameter (step 86).
-
As shown in
FIG. 6, the
LSB portion44 has been scaled from a bit width of 3 to a modified
LSB bit width56 of 1-bit. The two discarded LSBs 88 match the LSB
bit width reduction68 of 2 bits. In the exemplary embodiment, the modified
LSB bit width56 and LSB
bit width reduction68 are transmitted in the header to the decoder. Alternately, either of these could be omitted and the original LSB bit width transmitted. Any one of the parameters is uniquely determined by the other two.
-
The benefits of the scalable, lossless encoder and authoring tool are best illustrated by overlaying the buffered
payload90 for the authored bitstream on
FIG. 1as is done in
FIG. 8. Using the known approach of altering the audio files to remove content and then simply reencoding with the lossless coder, the buffered
payload14 was effectively shifted downward to a buffered
payload16 that is less than the allowed
payload10. To ensure that the peak payload is less than the allowed payload, a considerable amount of content is sacrificed across the entire bitstream. By comparison, the buffered
payload90 replicates the original losslessly buffered
payload14 except in those few windows (frames) where the buffered payload exceeds the allowed payload. In these areas, the encoded payload, hence buffered payload is reduced just enough to satisfy the constraint and preferably no more. As a result, the payload capacity is utilized more efficiently and more content is delivered to the end user without having to alter the original audio files or reencode.
-
As shown in
FIGS. 9, 10 and 11, the
audio decoder38 receives an authored bitstream via a
disk100. The bitstream is separated into a sequence of analysis windows, each including header information and encoded audio data. Most of the windows include losslessly encoded MSB and LSB portions, the original LSB bit widths and LSB bit width reductions of zero. To satisfy the payload constraints set by the peak bit rate of the
disk100 and the capacity of the
buffer102, some of the windows include the losslessly encoded MSB portions and lossy LSB portions, the modified bit widths of the lossy LSB portions, and the LSB bit width reductions.
-
A
controller104 reads the encoded audio data from the bitstream on the
disk100. A
parser106 separates the audio data from the video and streams the audio data to the
audio buffer102, which does not overflow on account of the authoring. The buffer in turn provides sufficient data to a
DSP chip108 to decode the audio data for the current analysis window. The DSP chip extracts the header information (step 110) including the modified
LSB bit widths56, LSB
bit width reduction68, a number of
empty LSBs112 from an original word width and extracts, decodes and assembles the MSB portions of the audio data (step 114). If all of the LSBs were discarded during authoring or original LSB bit width was 0 (step 115), the DSP chip translates the MSB samples to the original bit width word and outputs the PCM data (step 116). Otherwise, the DSP chip decodes the lossless and lossy LSB portions (step 118), assembles the MSB & LSB samples (step 120), and, using the header information, translates the assembled samples to the original bit width word (step 122).
Multi-Channel Audio Codec & Authoring Tool
-
An exemplary embodiment of an audio codec and authoring tool for an encoded audio bitstream presented as a sequence of frames is illustrated in
FIGS. 12-15. As shown in
FIG. 12, each
frame200 comprises a
header202 for storing
common information204 and sub-headers 206 for each channel set that store the LSB bit widths and LSB bit width reductions, and one or
more data segments208. Each data segment comprises one or more channel sets 210 with each channel set comprising one or more
audio channels212. Each channel comprises one or
more frequency extensions214 with at least the lowest frequency extension including encoded MSB and
LSB portions216, 218. The bitstream has a distinct MSB and LSB split for each channel in each channel set in each frame. The higher frequency extensions may be similarly split or entirely encoded as LSB portions.
-
The scalable lossless bitstream from which this bitstream is authored is encoded as illustrated in
FIGS. 13a and 13 b. The encoder sets the bit width of the original word (24-bit), the Min MSB (16-bit), a threshold (Th) for the squared L2 norm and a scale factor (SF) for that norm (step 220). The encoder starts the frame loop (step 222) and the channel set loop (step 224). Because the actual width of the audio data (20-bit) may be less than the original word width, the encoder calculates the number of empty LSBs (24−20=4) (min number of “0” LSBs in any PCM sample in the current frame) and right shifts every sample by that amount (step 226). The bit width of the data is the original bit width (24) minus the number of empty LSBs (4) (step 228). The encoder then determines the maximum number of bits (Max LSBs) that will allow to be encoded as part of the LSB portion as Max(Bit Width−Min MSB, 0) (step 230). In the current example, the Max LSBS=20−16=4 bits.
-
To determine the boundary point for splitting the audio data into MSB and LSB portions, the encoder starts the channel loop index (step 232) and calculates the L∞ norm as the maximum absolute amplitude of the audio data in the channel and the squared L2 norm as the sum of the squared amplitudes of the audio data in the analysis window (step 234). The encoder sets a parameter Max Amp as the minimum integer greater than or equal to log2(L∞) (step 236) and initializes the LSB bit width to zero (step 237). If the Max Amp is greater than the Min MSB (step 238), the LSB bit width is set equal to the difference of the Max Amp and Min MSB (step 240). Otherwise, if the L2 norm exceeds the Threshold (small amplitude but considerable variance) (step 242), the LSB bit width is set equal to the Max Amp divided by the Scale Factor, typically >1 (step 244). If both tests are false, the LSB bit width remains zero. In other words, to maintain the minimum encode quality, e.g. Min MSB, no LSBs are available. The encoder clips the LSB bit width at the Max LSB value (step 246) and packs the value into the sub-header channel set (step 248).
-
Once the boundary point has been determined, i.e. the LSB bit width, the encoder splits the audio data into the MSB and LSB portions (step 250). The MSB portion is losslessly encoded using a suitable algorithm (step 252) and packed into the lowest frequency extension in the particular channel in the channel set of the current frame (step 254). The LSB portion is losslessly encoded using a suitable algorithm, e.g. simple bit replication (step 256) and packed (step 258).
-
This process is repeated for each channel (step 260) for each channel set (step 262) for each frame (step 264) in the bitstream. Furthermore, the same procedure may be repeated for higher frequency extensions. However, because these extensions contain much less information, the Min MSB may be set to 0 so that it is all encoded as LSBs.
-
Once the scalable lossless bitstream is encoded for certain audio content, an authoring tool creates the best bitstream it can that satisfies the peak bit rate constraints of the transport media and the capacity of the buffer in the audio decoder. As shown in
FIG. 14, a user attempts to layout the
lossless bitstream268 on the media to conform to the bit rate and buffer capacity constrains (step 270). If successful, the
lossless bitstream268 is written out as the authored
bitstream272 and stored on the media. Otherwise the authoring tool starts the frame loop (step 274) and compares the buffered payload (buffered average frame-to-frame payload) to the allowed payload (peak bit rate) (step 276). If the current frame conforms to the allowed payload, the losslessly encoded MSB and LSB portions are extracted from the
lossless bitstream268 and written to the authored
bitstream272 and the frame is incremented.
-
If the authoring tool encounters a non-conforming frame in which the buffered payload exceeds the allowed payload, the tool computes the maximum reduction that can be achieved by discarding all of the LSB portions in the channel set and subtracts it from the buffered payload (step 278). If the minimum payload is still too big the tool displays an error message that includes the amount of excess date and frame number (step 280). In this case either the Min MSB shall be reduced or the original audio files shall be altered and re-encoded.
-
Otherwise, the authoring tool calculates an LSB bit width reduction for each channel in the current frame based on a specified channel prioritization rule (step 282) such that:
-
Bit Width Reduction[nCh]<LSB bit width[nCh] for nCh=0, . . . AllChannels −1, and
-
Buffered payload[nFr]−Σ(Bit Width Reduction[nCh}*NumSamplesin Frame)<Allowed Payload [nFr]
-
The reduction of the LSB bit widths by these values will ensure that the frame conforms to the allowed payload. This is done with a minimum amount of loss being introduced into the non-conforming frames and without otherwise affecting the lossless conforming frames.
-
The authoring tool adjusts the encoded LSB portions (assuming bit replication encoding) for each channel by adding dither to each LSB portion in the frame to dither the next bit and then right shifting by the LSB bit width reduction (step 284). Adding dither is not necessary but is highly desirable in order to decorrelate the quantization errors and also make them decorrelated from the original audio signal. The tool packs the now lossy scaled LSB portions (step 286), the modified LSB bit widths and LSB bit width reductions for each channel (step 288) and the modified stream navigation points (step 290) into the authored bitstream. If dither is added, a dither parameter is packed into the bitstream. This process is then repeated for each frame (step 292) before terminating (step 294).
-
As shown in
FIGS. 15a and 15 b, a suitable decoder synchronizes to the bitstream (step 300) and starts a frame loop (step 302). The decoder extracts the frame header information including the number of segments, number of samples in a segment, number of channel sets, etc (step 304) and extracts the channel set header information including the number channels in the set, number of empty LSBs, LSB bit width, LSB bit width reduction for each channel set (step 306) and stores it for each channel set (step 307).
-
Once the header information is available, the decoder starts the segment loop (step 308) and channel set loop (step 310) for the current frame. The decoder unpacks and decodes the MSB portions (step 312) and stores the PCM samples (step 314). The decoder then starts the channel loop in the current channel set (step 316) and proceeds with the encoded LSB data.
-
If the modified LSB bit width does not exceed zero (step 318), the decoder starts the sample loop in the current segment (step 320), translates the PCM samples for the MSB portion to the original word width (step 322) and repeats until the sample loop terminates (step 324).
-
Otherwise, the decoder starts the sample loop in the current segment (step 326), unpacks and decodes the LSB portions (step 328) and assembles PCM samples by appending the LSB portion to the MSB portion (step 330). The decoder then translates the PCM sample to the original word width using the empty LSB, modified LSB bit width and LSB bit width reduction information from the header (step 332) and repeats the steps until the sample loop terminates (step 334). To reconstruct the entire audio sequence, the decoder repeats these steps for each channel (step 336) in each channel set (step 338) in each frame (step 340).
Backward Compatible Scalable Audio Codec
-
The scalability properties can be incorporated into a backward compatible lossless encoder, bitstream format and decoder. A “lossy” core code stream is packed in concert with the losslessly encoded MSB and LSB portions of the audio data for transmission (or recording). Upon decoding in a decoder with extended lossless features, the lossy and lossless MSB streams are combined and the LSB stream is appended to construct a lossless reconstructed signal. In a prior-generation decoder, the lossless MSB and LSB extension streams are ignored, and the core “lossy” stream is decoded to provide a high-quality, multichannel audio signal with the bandwidth and signal-to-noise ratio characteristic of the core stream.
- FIG. 16
a shows a system level view of a scalable backward
compatible encoder400. A digitized audio signal, suitably M-bit PCM audio samples, is provided at
input402. Preferably, the digitized audio signal has a sampling rate and bandwidth which exceeds that of a modified,
lossy core encoder404. In one embodiment, the sampling rate of the digitized audio signal is 96 kHz (corresponding to a bandwidth of 48 kHz for the sampled audio). It should also be understood that the input audio may be, and preferably is, a multichannel signal wherein each channel is sampled at 96 kHz. The discussion which follows will concentrate on the processing of a single channel, but the extension to multiple channels is straightforward. The input signal is duplicated at
node406 and handled in parallel branches. In a first branch of the signal path, a modified lossy,
wideband encoder404 encodes the signal. The modified
core encoder404, which is described in detail below, produces an encoded data stream (corestream 408) which is conveyed to a packer or
multiplexer410. The
corestream408 is also communicated to a modified
corestream decoder412, which produces as output a modified, reconstructed
core signal414, which is right shifted by N bits (>>N 415) to discard its N 1sbs.
-
Meanwhile, the input digitized
audio signal402 in the parallel path undergoes a compensating
delay416, substantially equal to the delay introduced into the reconstructed audio stream (by modified encode and modified decoders), to produce a delayed digitized audio stream. The audio stream is split into MSB and
LSB portions417 as described above. The N-
bit LSB portion418 is conveyed to the
packer410. The M-N bit
reconstructed core signal414, which was shifted to align with the MSB portion, is subtracted from the MSB portion of the delayed
digitized audio stream419 at subtracting
node420. (Note that a summing node could be substituted for a subtracting node, by changing the polarity of one of the inputs. Thus, summing and subtracting may be substantially equivalent for this purpose).
-
Subtracting
node420 produces a
difference signal422 which represents the difference between the M-N MSBs of the original signal and the reconstructed core signal. To accomplish purely “lossless” encoding, it is necessary to encode and transmit the difference signal with lossless encoding techniques. Accordingly, the M-N
bit difference signal422 is encoded with a
lossless encoder424, and the encoded M-N bit signal 426 packed or multiplexed with the
core stream408 in
packer410 to produce a multiplexed
output bitstream428. Note that the lossless coding produced coded
lossless streams418 and 426 which are at a variable bit rate, to accommodate the needs of the lossless coder. The packed stream is then optionally subjected to further layers of coding including channel coding, and then transmitted or recorded. Note that for purposes of this disclosure, recording may be considered as transmission through a channel.
-
The
core encoder404 is described as “modified” because in an embodiment capable of handling extended bandwidth the core encoder would require modification. A 64-band analysis filter bank within the encoder discards half of its output data and encodes only the lower 32 frequency bands. This discarded information is of no concern to legacy decoders that would be unable to reconstruct the upper half of the signal spectrum in any case. The remaining information is encoded as per the unmodified encoder to form a backwards-compatible core output stream. However, in another embodiment operating at or below 48 kHz sampling rate, the core encoder could be a substantially unmodified version of a prior core encoder. Similarly, for operation above the sampling rate of legacy decoders, the
core decoder412 would need to be modified as described below. For operation at conventional sampling rate (e.g., 48 kHz and below) the core decoder could be a substantially unmodified version of a prior core decoder or equivalent. In some embodiments the choice of sampling rate could be made at the time of encoding, and the encode and decode modules reconfigured at that time by software as desired.
-
As shown in
FIG. 16b, the method of decoding is complementary to the method of encoding. A prior generation decoder can decode the lossy core audio signal by simply decoding the
corestream408 and discarding the lossless MSB and LSB portions. The quality of audio produced in such a prior generation decoder will be extremely good, equivalent to prior generation audio, just not lossless.
-
Referring now to
FIG. 16b, the incoming bitstream (recovered from either a transmission channel or a recording medium) is first unpacked in
unpacker430, which separates the
corestream408 from lossless extension data streams 418 (LSB) and 426 (MSB). The core stream is decoded by a modified
core decoder432, which reconstructs the core stream by zeroing out the un-transmitted sub-band samples for the upper 32 bands in a 64-band synthesis during reconstruction. (Note, if a standard core encode was performed, the zeroing out is unnecessary). The MSB extension field is decoded by a
lossless MSB decoder434. Because the LSB data was losslessly encoded using bit replication no decoding is necessary.
-
After decoding core and lossless MSB extensions in parallel, with the interpolated core reconstructed data is right shifted by
N bits436 and combined with the lossless portion of the data by adding in
summer438. The summed output is left shifted by
N bits440 to form the
lossless MSB portion442 and assembled with the N-
bit LSB portion444, to produce a
PCM data word446 that is a lossless, reconstructed representation of the
original audio signal402.
-
Because the signal was encoded by subtracting a decoded, lossy reconstruction from the exact input signal, the reconstructed signal represents an exact reconstruction of the original audio data. Thus, paradoxically, the combination of a lossy codec and a losslessly coded signal actually performs as a pure lossless codec, but with the additional advantage that the encoded data remains compatible with prior generation, lossless decoders. Furthermore, the bitstream can be scaled by selectively discarding LSBs to make it conform to media bit rate constraints and buffer capacity.
-
While several illustrative embodiments of the invention have been shown and described, numerous variations and alternate embodiments will occur to those skilled in the art. Such variations and alternate embodiments are contemplated, and can be made without departing from the spirit and scope of the invention as defined in the appended claims.
Claims (35)
1. A method of encoding and authoring audio data, comprising:
losslessly encoding the audio data in a sequence of analysis windows into a scalable bitstream;
comparing a buffered payload for the encoded audio data to an allowed payload for each window; and
scaling the losslessly encoded audio data in the non-conforming windows so that the buffered payload for the bitstream does not exceed the allowed payload, said scaling operation introducing loss into the encoded data in those windows.
2. The method of
claim 1, wherein the audio data is separated into most significant bit (MSB) and least significant (LSB) portions for each analysis window and encoded with different lossless algorithms.
3. The method of
claim 2, wherein the audio data is separated by;
Assigning a minimum MSB bit width (Min MSB);
Computing a cost function for the audio data in the analysis window;
if the cost function exceeds a threshold, computing an LSB bit width of at least one bit that satisfies the Min MSB; and
if the cost function does not exceed the threshold, assigning the LSB bit width to be zero bits.
4. The method of
claim 3, further comprising;
Computing a max LSB bit width (Max LSB) as the bit width of the audio data minus Min MSB;
Computing an L∞ norm as the maximum absolute amplitude of the audio data in the analysis window;
Computing Max Amp as the number of bits needed to represent a sample with value equal to −L∞;
Computing a squared L2 norm as the sum of the squared amplitudes of the audio data in the analysis window;
If Max Amp does not exceed Min MSB and the L2 norm does not exceed a threshold, setting the LSB bit width to zero bits;
If Max Amp does not exceed Min MSB but the L2 norm does exceed the threshold, setting the LSB bit width to the Max LSB bit width divided by a scaling factor;
If Max Amp exceeds the Min MSB, setting the LSB bit width to the Max Amp minus Min MSB.
5. The method of
claim 4, wherein the LSB bit width is limited to a maximum LSB bit width (Max LSB) determined by a word width of the audio data and Min MSB.
6. The method of
claim 2, wherein an LSB bit width and the encoded MSB and LSB portions are packed into a bitstream for each analysis window.
7. The method of
claim 2, wherein the MSB portion is encoded with a lossless algorithm that includes decorrelation between multiple audio channels and adaptive prediction within each audio channel.
8. The method of
claim 2, wherein the LSB portion is encoded with a lossless algorithm that replicates the bits for the PCM samples.
9. The method of
claim 2, wherein the LSB portion is encoded with a lossless algorithm that uses low order prediction and entropy coding.
10. The method of
claim 2, wherein the analysis windows are frames, each frame comprising a header for storing the LSB bit widths and one or more segments, each segment comprising one or more channel sets, each channel set comprising one or more audio channels, each channel comprising one or more frequency extensions, said lowest frequency extension including encoded MSB and LSB portions.
11. The method of
claim 10, wherein the bitstream has a distinct MSB and LSB split for each channel in each channel set in each frame.
12. The method of
claim 11, wherein said higher frequency extensions include only encoded LSB portions.
13. The method of
claim 2, wherein the bitstream is authored by,
Packing the losslessly encoded MSB portions into the bitstream for all the windows;
Packing the losslessly encoded LSB portions into the bitstream for the conforming windows;
Scaling the losslessly encoded LSB portions for any non-conforming windows to make them conform; and
Packing the now lossy encoded LSB portions for the now conforming windows into the bitstream.
14. The method of
claim 13, wherein the LSB portions are scaled by,
calculating an LSB bit width reduction for the analysis window;
decoding the LSB portions in the non-conforming windows;
reducing the LSB portions by the LSB bit width reduction by discarding that number of LSBs;
encoding the modified LSB portions with the lossless encoding algorithm;
packing the encoded LSB portions; and
packing the modified LSB bit widths and the LSB bit width reduction into the bitstream.
15. The method of
claim 14, wherein the lossless encoding is simple bit replication, wherein the LSB portions are reduced by,
adding dither to each LSB portion so as to dither the next LSB past the LSB bit width reduction; and
shifting the LSB portion to the right by the LSB bit width reduction.
16. The method of
claim 14, wherein the LSB bit width reduction is just enough that the buffered payload does not exceed the allowed payload.
17. The method of
claim 14, wherein the audio data includes multiple channels, said LSB bit width reduction being calculated for each channel in accordance with a channel prioritization rule.
18. A method of encoding a scalable, lossless bitstream for audio data, comprising:
determining a breakpoint that separates audio data into an MSB and an LSB portion for an analysis window;
losslessly encoding the MSB portions;
losslessly encoding the LSB portions;
packing the encoded MSB portions and LSB portions into a lossless bitstream; and
packing the bit widths of the LSB portions into the lossless bitstream.
19. The method of
claim 18, wherein the breakpoint is determined by;
Assigning a minimum MSB bit width (Min MSB);
Computing a cost function for the audio data in the analysis window;
if the cost function exceeds a threshold, computing an LSB bit width of at least one bit that satisfies the Min MSB; and
if the cost function does not exceed the threshold, assigning the LSB bit width to be zero bits.
20. The method of
claim 18, wherein the LSB portions are encoded with a lossless algorithm that replicates the bits of the audio data.
21. A method of authoring an audio bitstream onto a media, comprising:
a) determining a scheme for laying out the encoded audio data from a bitstream onto a media for a decoder buffer, said bitstream including losslessly encoded MSB and LSB portions in a sequence of analysis windows;
b) calculating a buffered payload for the encoded audio data for the next analysis window;
c) if the buffered payload is within an allowed payload for an analysis window, packing the losslessly encoded MSB and LSB portions into a modified bitstream;
d) if the buffered payload exceeds the allowed payload for an analysis window,
packing the losslessly encoded MSB portion into the modified bitstream;
scaling the losslessly encoded LSB portion to a lossy encoded LSB portion so that the buffered payload is within the allowed payload; and
packing the lossy encoded LSB portion into the modified bitstream with its scaling information; and
e) repeating steps b through d for each analysis window.
22. The method of
claim 21, wherein the LSB portions are scaled by,
calculating an LSB bit width reduction for the analysis window;
decoding the LSB portions in the non-conforming windows;
reducing the LSB portions by the LSB bit width reduction by discarding that number of LSBs;
encoding the modified LSB portions with the lossless encoding algorithm;
packing the encoded LSB portions; and
packing the modified LSB bit widths and the LSB bit width reduction into the bitstream.
23. The method of
claim 22, wherein the lossless encoding and decoding is simple bit replication, wherein the LSB portions are reduced by,
adding dither to each LSB portion so as to dither the next LSB past the LSB bit width reduction; and
shifting the LSB portion to the right by the LSB bit width reduction.
24. An article of manufacture comprising a bitstream separated into a sequence of analysis windows of encoded audio data stored on a media, the audio data in each said analysis window being losslessly encoded except as necessary to reduce the buffered payload of said analysis window to no more than an allowed payload.
25. The article of manufacture of
claim 24, wherein some of the analysis windows include losslessly encoded MSB and LSB portions and the remaining analysis windows include losslessly encoded MSB portions and lossy encoded LSB portions.
26. The article of manufacture of
claim 25, wherein the bitstream includes header information containing the modified bit widths of the LSB portions and the bit width reduction of the LSB portions.
27. The article of manufacture of
claim 26, wherein the LSB portions are losslessly and lossy encoded using bit replication.
28. The article of manufacture of
claim 27, wherein the bit width reduction of the LSB portions is just enough that the buffered payload does not exceed the allowed payload.
29. A method of decoding an audio bitstream, comprising:
receiving a bitstream as a sequence of analysis windows comprising header information including an LSB bit width and an LSB bit width reduction and audio data including losslessly encoded MSB portions and either losslessly encoded or scaled LSB portions so that a buffered payload of each analysis window is within an allowed payload;
extracting the LSB bit width and the LSB bit width reduction for each analysis window;
extracting the losslessly encoded MSB portions and decoding them into PCM audio data;
extracting either the losslessly encoded or scaled LSB portions and decoding them into PCM audio data;
assembling the MSB and LSB portions for each PCM audio sample;
using the LSB bit width and LSB bit width reduction to translate the assembled PCM audio data to an original bit width word; and
outputting the PCM audio data for each analysis window.
30. The method of
claim 29, wherein the losslessly encoded and scaled LSB portions are decoded by bit replication.
31. A decoder chip configured to receive a bitstream and output PCM audio data, said chip configured to execute the steps of:
extracting an LSB bit width and an LSB bit width reduction for each analysis window in the bitstream;
extracting losslessly encoded MSB portions and decoding them into PCM audio data;
extracting either losslessly encoded or scaled LSB portions and decoding them into PCM audio data;
assembling the MSB and LSB portions for each PCM audio sample;
using the LSB bit width and LSB bit width reduction to translate the assembled PCM audio data to an original bit width word; and
outputting the PCM audio data for each analysis window.
32. An audio decoder, comprising:
a controller for reading encoded audio data from a bitstream on a media;
a buffer for buffering a plurality of analysis windows of the encoded audio data; and
a DSP chip for decoding the encoded audio data and outputting PCM audio data for each successive analysis window, said DSP chip configured to decode analysis windows comprising header information including LSB bit widths and LSB bit width reductions and audio data including losslessly encoded MSB portions and losslessly encoded or scaled LSB portions, wherein the buffered payload does not exceed an allowed payload determined by the peak bit rate supported by the media and the capacity of the buffer.
33. The audio decoder of
claim 32, wherein the DSP chip executes the steps of:
extracting the LSB bit width and the LSB bit width reduction for each analysis window in the bitstream;
extracting the losslessly encoded MSB portions and decoding them into PCM audio data;
extracting either the losslessly encoded or the scaled LSB portions and decoding them into PCM audio data;
assembling the MSB and LSB portions for each PCM audio sample;
using the LSB bit width and LSB bit width reduction to translate the assembled PCM audio data to an original bit width word; and
outputting the PCM audio data for each analysis window.
34. A method of encoding a scalable, lossless bitstream for M-bit audio data that is backward compatible with a lossy core decoder, comprising:
encoding the M-bit audio data into a lossy M-bit corestream;
packing the lossy M-bit corestream into a bitstream;
decoding the M-bit corestream into a reconstructed core signal;
separating the M-bit audio data into M-N bit MSB and N-bit LSB portions;
packing the N-bit LSB portion into the bitstream;
right shifting the reconstructed core signal by N bits to align it with the MSB portion;
subtracting the reconstructed core signal from the MSB portion to form an M-N bit residual signal;
losslessly encoding the residual signal;
packing the encoded residual signal into the bitstream; and
packing the bit widths of the LSB portions into the lossless bitstream.
35. The method of
claim 34, further comprising adding dither to the reconstructed core signal prior to right shifting and packing a dither parameter into the bitstream.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US12/720,416 US20110106546A1 (en) | 2004-03-25 | 2010-03-09 | Scalable lossless audio codec and authoring tool |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US55618304P | 2004-03-25 | 2004-03-25 | |
US10/911,062 US7272567B2 (en) | 2004-03-25 | 2004-08-04 | Scalable lossless audio codec and authoring tool |
US11/891,905 US7668723B2 (en) | 2004-03-25 | 2007-08-14 | Scalable lossless audio codec and authoring tool |
US12/613,316 US20100082352A1 (en) | 2004-03-25 | 2009-11-05 | Scalable lossless audio codec and authoring tool |
US12/720,416 US20110106546A1 (en) | 2004-03-25 | 2010-03-09 | Scalable lossless audio codec and authoring tool |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US12/613,316 Division US20100082352A1 (en) | 2004-03-25 | 2009-11-05 | Scalable lossless audio codec and authoring tool |
Publications (1)
Publication Number | Publication Date |
---|---|
US20110106546A1 true US20110106546A1 (en) | 2011-05-05 |
Family
ID=38072128
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/911,067 Active 2025-09-02 US7392195B2 (en) | 2004-03-25 | 2004-08-04 | Lossless multi-channel audio codec |
US10/911,062 Active 2025-09-17 US7272567B2 (en) | 2004-03-25 | 2004-08-04 | Scalable lossless audio codec and authoring tool |
US11/891,905 Expired - Lifetime US7668723B2 (en) | 2004-03-25 | 2007-08-14 | Scalable lossless audio codec and authoring tool |
US12/613,316 Abandoned US20100082352A1 (en) | 2004-03-25 | 2009-11-05 | Scalable lossless audio codec and authoring tool |
US12/720,416 Abandoned US20110106546A1 (en) | 2004-03-25 | 2010-03-09 | Scalable lossless audio codec and authoring tool |
Family Applications Before (4)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US10/911,067 Active 2025-09-02 US7392195B2 (en) | 2004-03-25 | 2004-08-04 | Lossless multi-channel audio codec |
US10/911,062 Active 2025-09-17 US7272567B2 (en) | 2004-03-25 | 2004-08-04 | Scalable lossless audio codec and authoring tool |
US11/891,905 Expired - Lifetime US7668723B2 (en) | 2004-03-25 | 2007-08-14 | Scalable lossless audio codec and authoring tool |
US12/613,316 Abandoned US20100082352A1 (en) | 2004-03-25 | 2009-11-05 | Scalable lossless audio codec and authoring tool |
Country Status (7)
Country | Link |
---|---|
US (5) | US7392195B2 (en) |
JP (4) | JP4934020B2 (en) |
KR (1) | KR101307693B1 (en) |
CN (2) | CN1961351B (en) |
ES (3) | ES2537820T3 (en) |
HK (2) | HK1099597A1 (en) |
RU (2) | RU2387022C2 (en) |
Cited By (7)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240506A1 (en) * | 2006-07-18 | 2009-09-24 | Oliver Wuebbolt | Audio bitstream data structure arrangement of a lossy encoded signal together with lossless encoded extension data for said signal |
US20110224991A1 (en) * | 2010-03-09 | 2011-09-15 | Dts, Inc. | Scalable lossless audio codec and authoring tool |
WO2015134272A1 (en) * | 2014-03-06 | 2015-09-11 | Dts, Inc. | Post-encoding bitrate reduction of multiple object audio |
US9928845B2 (en) | 2013-10-18 | 2018-03-27 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US10395664B2 (en) | 2016-01-26 | 2019-08-27 | Dolby Laboratories Licensing Corporation | Adaptive Quantization |
US10863004B2 (en) | 2016-07-01 | 2020-12-08 | Nxp B.V. | Multiple source receiver |
US10936941B2 (en) * | 2016-08-12 | 2021-03-02 | Xilinx, Inc. | Efficient data access control device for neural network hardware acceleration system |
Families Citing this family (121)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7536305B2 (en) * | 2002-09-04 | 2009-05-19 | Microsoft Corporation | Mixed lossless audio compression |
US7378586B2 (en) * | 2002-10-01 | 2008-05-27 | Yamaha Corporation | Compressed data structure and apparatus and method related thereto |
JP4679049B2 (en) | 2003-09-30 | 2011-04-27 | パナソニック株式会社 | Scalable decoding device |
US7392195B2 (en) * | 2004-03-25 | 2008-06-24 | Dts, Inc. | Lossless multi-channel audio codec |
US7536302B2 (en) * | 2004-07-13 | 2009-05-19 | Industrial Technology Research Institute | Method, process and device for coding audio signals |
US7930184B2 (en) * | 2004-08-04 | 2011-04-19 | Dts, Inc. | Multi-channel audio coding/decoding of random access points and transients |
DE102004042819A1 (en) * | 2004-09-03 | 2006-03-23 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for generating a coded multi-channel signal and apparatus and method for decoding a coded multi-channel signal |
CN101023472B (en) * | 2004-09-06 | 2010-06-23 | 松下电器产业株式会社 | Scalable encoding device and scalable encoding method |
US7466867B2 (en) * | 2004-11-26 | 2008-12-16 | Taiwan Imagingtek Corporation | Method and apparatus for image compression and decompression |
US8265929B2 (en) * | 2004-12-08 | 2012-09-11 | Electronics And Telecommunications Research Institute | Embedded code-excited linear prediction speech coding and decoding apparatus and method |
US7991610B2 (en) * | 2005-04-13 | 2011-08-02 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Adaptive grouping of parameters for enhanced coding efficiency |
US20060235683A1 (en) * | 2005-04-13 | 2006-10-19 | Fraunhofer-Gesellschaft Zur Forderung Der Angewandten Forschung E.V. | Lossless encoding of information with guaranteed maximum bitrate |
CN101167126B (en) * | 2005-04-28 | 2011-09-21 | 松下电器产业株式会社 | Speech coding device and speech coding method |
DE602006014957D1 (en) * | 2005-04-28 | 2010-07-29 | Panasonic Corp | AUDIOCODING DEVICE AND AUDIOCODING METHOD |
JP5461835B2 (en) * | 2005-05-26 | 2014-04-02 | エルジー エレクトロニクス インコーポレイティド | Audio signal encoding / decoding method and encoding / decoding device |
AU2006266579B2 (en) | 2005-06-30 | 2009-10-22 | Lg Electronics Inc. | Method and apparatus for encoding and decoding an audio signal |
JP5227794B2 (en) * | 2005-06-30 | 2013-07-03 | エルジー エレクトロニクス インコーポレイティド | Apparatus and method for encoding and decoding audio signals |
EP1913577B1 (en) | 2005-06-30 | 2021-05-05 | Lg Electronics Inc. | Apparatus for encoding an audio signal and method thereof |
US7949014B2 (en) | 2005-07-11 | 2011-05-24 | Lg Electronics Inc. | Apparatus and method of encoding and decoding audio signal |
EP1938662B1 (en) * | 2005-08-30 | 2016-09-28 | LG Electronics Inc. | Method, apparatus, computer-readable medium for decoding an audio signal |
KR101169280B1 (en) * | 2005-08-30 | 2012-08-02 | 엘지전자 주식회사 | Method and apparatus for decoding an audio signal |
JP4859925B2 (en) * | 2005-08-30 | 2012-01-25 | エルジー エレクトロニクス インコーポレイティド | Audio signal decoding method and apparatus |
US7788107B2 (en) * | 2005-08-30 | 2010-08-31 | Lg Electronics Inc. | Method for decoding an audio signal |
CN101278331B (en) * | 2005-10-03 | 2013-03-13 | 夏普株式会社 | Display |
US8068569B2 (en) * | 2005-10-05 | 2011-11-29 | Lg Electronics, Inc. | Method and apparatus for signal processing and encoding and decoding |
KR100857112B1 (en) * | 2005-10-05 | 2008-09-05 | 엘지전자 주식회사 | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7672379B2 (en) * | 2005-10-05 | 2010-03-02 | Lg Electronics Inc. | Audio signal processing, encoding, and decoding |
US7743016B2 (en) * | 2005-10-05 | 2010-06-22 | Lg Electronics Inc. | Method and apparatus for data processing and encoding and decoding method, and apparatus therefor |
US7751485B2 (en) * | 2005-10-05 | 2010-07-06 | Lg Electronics Inc. | Signal processing using pilot based coding |
US7646319B2 (en) * | 2005-10-05 | 2010-01-12 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7696907B2 (en) * | 2005-10-05 | 2010-04-13 | Lg Electronics Inc. | Method and apparatus for signal processing and encoding and decoding method, and apparatus therefor |
US7974713B2 (en) * | 2005-10-12 | 2011-07-05 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Temporal and spatial shaping of multi-channel audio signals |
US7716043B2 (en) * | 2005-10-24 | 2010-05-11 | Lg Electronics Inc. | Removing time delays in signal paths |
KR101366124B1 (en) * | 2006-02-14 | 2014-02-21 | 오렌지 | Device for perceptual weighting in audio encoding/decoding |
US8306827B2 (en) * | 2006-03-10 | 2012-11-06 | Panasonic Corporation | Coding device and coding method with high layer coding based on lower layer coding results |
JP4193865B2 (en) * | 2006-04-27 | 2008-12-10 | ソニー株式会社 | Digital signal switching device and switching method thereof |
EP1852849A1 (en) * | 2006-05-05 | 2007-11-07 | Deutsche Thomson-Brandt Gmbh | Method and apparatus for lossless encoding of a source signal, using a lossy encoded data stream and a lossless extension data stream |
EP1852848A1 (en) * | 2006-05-05 | 2007-11-07 | Deutsche Thomson-Brandt GmbH | Method and apparatus for lossless encoding of a source signal using a lossy encoded data stream and a lossless extension data stream |
KR101322392B1 (en) * | 2006-06-16 | 2013-10-29 | 삼성전자주식회사 | Method and apparatus for encoding and decoding of scalable codec |
US7907579B2 (en) * | 2006-08-15 | 2011-03-15 | Cisco Technology, Inc. | WiFi geolocation from carrier-managed system geolocation of a dual mode device |
CN1920947B (en) * | 2006-09-15 | 2011-05-11 | 清华大学 | Voice/music detector for audio frequency coding with low bit ratio |
US7471218B2 (en) * | 2006-09-18 | 2008-12-30 | National Semiconductor Corporation | Methods and systems for efficiently storing and retrieving streaming data |
JP4325657B2 (en) * | 2006-10-02 | 2009-09-02 | ソニー株式会社 | Optical disc reproducing apparatus, signal processing method, and program |
US8260070B1 (en) * | 2006-10-03 | 2012-09-04 | Adobe Systems Incorporated | Method and system to generate a compressed image utilizing custom probability tables |
US20080114478A1 (en) * | 2006-11-09 | 2008-05-15 | David Wu | Method and System for Multi-Channel PCM Audio Grouping in Hardware |
US9053753B2 (en) * | 2006-11-09 | 2015-06-09 | Broadcom Corporation | Method and system for a flexible multiplexer and mixer |
US7385532B1 (en) * | 2007-02-16 | 2008-06-10 | Xilinx, Inc. | Extended bitstream and generation thereof for dynamically configuring a decoder |
US7886303B2 (en) * | 2007-05-18 | 2011-02-08 | Mediatek Inc. | Method for dynamically adjusting audio decoding process |
ES2416056T3 (en) * | 2007-07-06 | 2013-07-30 | France Telecom | Hierarchical coding of digital audio signals |
KR101518507B1 (en) * | 2007-07-19 | 2015-05-11 | 한국전자통신연구원 | Apparatus and method for transmit/receive of image data |
US9541658B2 (en) * | 2007-08-02 | 2017-01-10 | Westerngeco L. L. C. | Dynamically allocating different numbers of bits to windows of a series representing a seismic trace |
KR100912826B1 (en) * | 2007-08-16 | 2009-08-18 | 한국전자통신연구원 | A enhancement layer encoder/decoder for improving a voice quality in G.711 codec and method therefor |
KR101381602B1 (en) * | 2007-09-17 | 2014-04-04 | 삼성전자주식회사 | Method and apparatus for scalable encoding and decoding |
JPWO2009050896A1 (en) * | 2007-10-16 | 2011-02-24 | パナソニック株式会社 | Stream synthesizing apparatus, decoding apparatus, and method |
JP4893892B2 (en) * | 2007-12-04 | 2012-03-07 | 国立大学法人島根大学 | Coding system for lossless compression, information recording medium and printing medium |
US8239210B2 (en) * | 2007-12-19 | 2012-08-07 | Dts, Inc. | Lossless multi-channel audio codec |
US20090164223A1 (en) * | 2007-12-19 | 2009-06-25 | Dts, Inc. | Lossless multi-channel audio codec |
US8972247B2 (en) * | 2007-12-26 | 2015-03-03 | Marvell World Trade Ltd. | Selection of speech encoding scheme in wireless communication terminals |
US8548002B2 (en) * | 2008-02-08 | 2013-10-01 | Koolspan, Inc. | Systems and methods for adaptive multi-rate protocol enhancement |
US8386271B2 (en) | 2008-03-25 | 2013-02-26 | Microsoft Corporation | Lossless and near lossless scalable audio codec |
GB0817977D0 (en) * | 2008-10-01 | 2008-11-05 | Craven Peter G | Improved lossy coding of signals |
FR2938688A1 (en) * | 2008-11-18 | 2010-05-21 | France Telecom | ENCODING WITH NOISE FORMING IN A HIERARCHICAL ENCODER |
US20100191534A1 (en) * | 2009-01-23 | 2010-07-29 | Qualcomm Incorporated | Method and apparatus for compression or decompression of digital signals |
JP4784653B2 (en) * | 2009-01-23 | 2011-10-05 | ソニー株式会社 | Audio data transmitting apparatus, audio data transmitting method, audio data receiving apparatus, and audio data receiving method |
CN105225667B (en) | 2009-03-17 | 2019-04-05 | 杜比国际公司 | Encoder system, decoder system, coding method and coding/decoding method |
CN102440008B (en) * | 2009-06-01 | 2015-01-21 | 三菱电机株式会社 | Signal processing device |
KR20100136890A (en) * | 2009-06-19 | 2010-12-29 | 삼성전자주식회사 | Context-based Arithmetic Coding Apparatus and Method and Arithmetic Decoding Apparatus and Method |
FR2947944A1 (en) * | 2009-07-07 | 2011-01-14 | France Telecom | PERFECTED CODING / DECODING OF AUDIONUMERIC SIGNALS |
EP2323130A1 (en) * | 2009-11-12 | 2011-05-18 | Koninklijke Philips Electronics N.V. | Parametric encoding and decoding |
JP2011109172A (en) * | 2009-11-12 | 2011-06-02 | Hitachi Kokusai Electric Inc | Video encoder and data processing method for the same |
KR102343135B1 (en) * | 2010-01-19 | 2021-12-24 | 돌비 인터네셔널 에이비 | Improved subband block bas -ed harmonic transposition |
US8959366B2 (en) * | 2010-01-28 | 2015-02-17 | Cleversafe, Inc. | De-sequencing encoded data slices |
SG184230A1 (en) * | 2010-03-26 | 2012-11-29 | Agency Science Tech & Res | Methods and devices for providing an encoded digital signal |
EP2562750B1 (en) * | 2010-04-19 | 2020-06-10 | Panasonic Intellectual Property Corporation of America | Encoding device, decoding device, encoding method and decoding method |
SG10201503179VA (en) * | 2010-04-23 | 2015-06-29 | M&K Holdings Inc | Image encoding apparatus |
KR101676477B1 (en) * | 2010-07-21 | 2016-11-15 | 삼성전자주식회사 | Method and apparatus lossless encoding and decoding based on context |
PL2603913T3 (en) | 2010-08-12 | 2014-11-28 | Fraunhofer Ges Forschung | Resampling output signals of qmf based audio codecs |
US9008811B2 (en) | 2010-09-17 | 2015-04-14 | Xiph.org Foundation | Methods and systems for adaptive time-frequency resolution in digital data coding |
PL2975610T3 (en) * | 2010-11-22 | 2019-08-30 | Ntt Docomo, Inc. | Audio encoding device and method |
EP2464145A1 (en) | 2010-12-10 | 2012-06-13 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for decomposing an input signal using a downmixer |
US8639494B1 (en) * | 2010-12-28 | 2014-01-28 | Intuit Inc. | Technique for correcting user-interface shift errors |
WO2012122297A1 (en) * | 2011-03-07 | 2012-09-13 | Xiph. Org. | Methods and systems for avoiding partial collapse in multi-block audio coding |
WO2012122303A1 (en) | 2011-03-07 | 2012-09-13 | Xiph. Org | Method and system for two-step spreading for tonal artifact avoidance in audio coding |
US9009036B2 (en) | 2011-03-07 | 2015-04-14 | Xiph.org Foundation | Methods and systems for bit allocation and partitioning in gain-shape vector quantization for audio coding |
CN104106079A (en) | 2011-09-09 | 2014-10-15 | 帕那莫夫公司 | Image processing system and method |
EP2600343A1 (en) * | 2011-12-02 | 2013-06-05 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus and method for merging geometry - based spatial audio coding streams |
US9165563B2 (en) * | 2012-03-19 | 2015-10-20 | Casio Computer Co., Ltd. | Coding device, coding method, decoding device, decoding method, and storage medium |
GB201210373D0 (en) * | 2012-06-12 | 2012-07-25 | Meridian Audio Ltd | Doubly compatible lossless audio sandwidth extension |
EP2717262A1 (en) * | 2012-10-05 | 2014-04-09 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Encoder, decoder and methods for signal-dependent zoom-transform in spatial audio object coding |
CN104919523B (en) | 2013-01-08 | 2017-10-13 | 杜比国际公司 | The prediction based on model in threshold sampling wave filter group |
US9336791B2 (en) * | 2013-01-24 | 2016-05-10 | Google Inc. | Rearrangement and rate allocation for compressing multichannel audio |
BR112015031603B1 (en) * | 2013-06-21 | 2021-12-14 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | APPLIANCE AND METHOD FOR RECONSTRUCTION OF A STRUCTURE |
EP2830063A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Apparatus, method and computer program for decoding an encoded audio signal |
EP2830053A1 (en) | 2013-07-22 | 2015-01-28 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Multi-channel audio decoder, multi-channel audio encoder, methods and computer program using a residual-signal-based adjustment of a contribution of a decorrelated signal |
CN103346949B (en) * | 2013-07-25 | 2016-08-17 | 北京大学 | Based on Embedded dual pathways network packet unpack and organize bag method and system |
JP6588899B2 (en) * | 2013-10-22 | 2019-10-09 | フラウンホッファー−ゲゼルシャフト ツァ フェルダールング デァ アンゲヴァンテン フォアシュンク エー.ファオ | Concept for combined dynamic range compression and induced clipping prevention for audio equipment |
US11350015B2 (en) | 2014-01-06 | 2022-05-31 | Panamorph, Inc. | Image processing system and method |
CN110970041B (en) * | 2014-07-01 | 2023-10-20 | 韩国电子通信研究院 | Method and apparatus for processing multi-channel audio signal |
WO2016142002A1 (en) | 2015-03-09 | 2016-09-15 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio encoder, audio decoder, method for encoding an audio signal and method for decoding an encoded audio signal |
TR201908841T4 (en) * | 2015-09-22 | 2019-07-22 | Koninklijke Philips Nv | Audio signal processing. |
CN105512079B (en) * | 2015-12-12 | 2018-07-03 | 中国航空工业集团公司西安航空计算技术研究所 | A kind of 1394 bus multi-channel flow datas organize packet method parallel |
US10735794B2 (en) * | 2016-03-28 | 2020-08-04 | Sony Corporation | Information processing device, information processing method, and information processing system |
US10522155B2 (en) | 2017-02-21 | 2019-12-31 | Cirrus Logic, Inc. | Pulse code modulation (PCM) data-marking |
US10891960B2 (en) * | 2017-09-11 | 2021-01-12 | Qualcomm Incorproated | Temporal offset estimation |
CN107680605A (en) * | 2017-09-29 | 2018-02-09 | 湖南国科微电子股份有限公司 | A kind of APE format errors data processing method and system |
EP3483884A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Signal filtering |
EP3483882A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Controlling bandwidth in encoders and/or decoders |
EP3483879A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Analysis/synthesis windowing function for modulated lapped transformation |
EP3483886A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Selecting pitch lag |
WO2019091576A1 (en) | 2017-11-10 | 2019-05-16 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio encoders, audio decoders, methods and computer programs adapting an encoding and decoding of least significant bits |
EP3483878A1 (en) | 2017-11-10 | 2019-05-15 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Audio decoder supporting a set of different loss concealment tools |
US10727858B2 (en) * | 2018-06-18 | 2020-07-28 | Qualcomm Incorporated | Error resiliency for entropy coded audio data |
CN109243471B (en) * | 2018-09-26 | 2022-09-23 | 杭州联汇科技股份有限公司 | Method for quickly coding digital audio for broadcasting |
WO2020232631A1 (en) * | 2019-05-21 | 2020-11-26 | 深圳市汇顶科技股份有限公司 | Voice frequency division transmission method, source terminal, playback terminal, source terminal circuit and playback terminal circuit |
JP7640526B2 (en) * | 2019-08-14 | 2025-03-05 | エルジー エレクトロニクス インコーポレイティド | Point cloud data transmitting device, point cloud data transmitting method, point cloud data receiving device, and point cloud data receiving method. |
CN110827838A (en) * | 2019-10-16 | 2020-02-21 | 云知声智能科技股份有限公司 | Opus-based voice coding method and apparatus |
EP4138396A4 (en) * | 2020-05-21 | 2023-07-05 | Huawei Technologies Co., Ltd. | Audio data transmission method, and related device |
CN111641416B (en) * | 2020-06-19 | 2023-04-07 | 重庆邮电大学 | Multi-normalization-factor low-density parity check code decoding method |
CN111768793B (en) * | 2020-07-11 | 2023-09-01 | 北京百瑞互联技术有限公司 | LC3 audio encoder coding optimization method, system and storage medium |
EP4243014A4 (en) | 2021-01-25 | 2024-07-17 | Samsung Electronics Co., Ltd. | APPARATUS AND METHOD FOR PROCESSING A MULTICHANNEL AUDIO SIGNAL |
US20240205433A1 (en) * | 2022-12-14 | 2024-06-20 | Qualcomm Incorporated | Truncation error signaling and adaptive dither for lossy bandwidth compression |
Citations (10)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5751902A (en) * | 1993-05-05 | 1998-05-12 | U.S. Philips Corporation | Adaptive prediction filter using block floating point format and minimal recursive recomputations |
US6021386A (en) * | 1991-01-08 | 2000-02-01 | Dolby Laboratories Licensing Corporation | Coding method and apparatus for multiple channels of audio information representing three-dimensional sound fields |
US6118392A (en) * | 1998-03-12 | 2000-09-12 | Liquid Audio Inc. | Lossless data compression with low complexity |
US20030179938A1 (en) * | 2001-03-05 | 2003-09-25 | Van Der Vleuten Renatus Josephus | Device and method for compressing a signal |
US7126501B2 (en) * | 2003-04-28 | 2006-10-24 | Nippon Telegraph And Telephone Corporation | Floating point type digital signal reversible encoding method, decoding method, devices for them, and programs for them |
US7209056B2 (en) * | 2003-09-02 | 2007-04-24 | Nippon Telegraph And Telephone Corporation | Floating point signal reversible encoding method, decoding method, device thereof, program, and recording medium thereof |
US20070257824A1 (en) * | 2004-10-15 | 2007-11-08 | Nippon Telegraph And Telephone Corporation | Information Encoding Method, Decoding Method, Common Multiplier Estimating Method, and Apparatus, Program, and Recording Medium Using These Methods |
US20080089438A1 (en) * | 2005-07-07 | 2008-04-17 | Nippon Telegraph And Telephone Corporation | Signal Encoder, Signal Decoder, Signal Encoding Method, Signal Decoding Method, Program, Recording Medium And Signal Codec Method |
US7668723B2 (en) * | 2004-03-25 | 2010-02-23 | Dts, Inc. | Scalable lossless audio codec and authoring tool |
US7742926B2 (en) * | 2003-04-18 | 2010-06-22 | Realnetworks, Inc. | Digital audio signal compression method and apparatus |
Family Cites Families (35)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US4833718A (en) * | 1986-11-18 | 1989-05-23 | First Byte | Compression of stored waveforms for artificial speech |
JPS6444499A (en) * | 1987-08-12 | 1989-02-16 | Fujitsu Ltd | Forecast encoding system for voice |
US5285498A (en) * | 1992-03-02 | 1994-02-08 | At&T Bell Laboratories | Method and apparatus for coding audio signals based on perceptual model |
US5589830A (en) * | 1994-11-02 | 1996-12-31 | Advanced Micro Devices, Inc. | Stereo audio codec |
GB9509831D0 (en) * | 1995-05-15 | 1995-07-05 | Gerzon Michael A | Lossless coding method for waveform data |
US5956674A (en) * | 1995-12-01 | 1999-09-21 | Digital Theater Systems, Inc. | Multi-channel predictive subband audio coder using psychoacoustic adaptive bit allocation in frequency, time and over the multiple channels |
CN1126264C (en) * | 1996-02-08 | 2003-10-29 | 松下电器产业株式会社 | Wide band audio signal encoder, wide band audio signal decoder, wide band audio signal encoder/decoder and wide band audio signal recording medium |
EP0798866A2 (en) * | 1996-03-27 | 1997-10-01 | Kabushiki Kaisha Toshiba | Digital data processing system |
US5839100A (en) * | 1996-04-22 | 1998-11-17 | Wegener; Albert William | Lossless and loss-limited compression of sampled data signals |
JP3622365B2 (en) * | 1996-09-26 | 2005-02-23 | ヤマハ株式会社 | Voice encoding transmission system |
KR100261253B1 (en) * | 1997-04-02 | 2000-07-01 | 윤종용 | Scalable audio encoder/decoder and audio encoding/decoding method |
KR100261254B1 (en) * | 1997-04-02 | 2000-07-01 | 윤종용 | Scalable audio data encoding/decoding method and apparatus |
IL122714A (en) * | 1997-04-02 | 2011-06-30 | Samsung Electronics Co Ltd | Digital data coding/decoding method and apparatus |
US6016111A (en) * | 1997-07-31 | 2000-01-18 | Samsung Electronics Co., Ltd. | Digital data coding/decoding method and apparatus |
KR100251453B1 (en) * | 1997-08-26 | 2000-04-15 | 윤종용 | High quality coder & decoder and digital multifuntional disc |
US6023233A (en) * | 1998-03-20 | 2000-02-08 | Craven; Peter G. | Data rate control for variable rate compression systems |
US6360204B1 (en) * | 1998-04-24 | 2002-03-19 | Sarnoff Corporation | Method and apparatus for implementing rounding in decoding an audio signal |
TW366660B (en) * | 1998-04-30 | 1999-08-11 | Nat Science Council | Method of degrouping a codeword in a computer system |
US6029126A (en) * | 1998-06-30 | 2000-02-22 | Microsoft Corporation | Scalable audio coder and decoder |
JP3515903B2 (en) * | 1998-06-16 | 2004-04-05 | 松下電器産業株式会社 | Dynamic bit allocation method and apparatus for audio coding |
JP3344581B2 (en) * | 1998-10-13 | 2002-11-11 | 日本ビクター株式会社 | Audio coding device |
JP2000134105A (en) * | 1998-10-29 | 2000-05-12 | Matsushita Electric Ind Co Ltd | Method for deciding and adapting block size used for audio conversion coding |
US6226608B1 (en) * | 1999-01-28 | 2001-05-01 | Dolby Laboratories Licensing Corporation | Data framing for adaptive-block-length coding system |
US6370502B1 (en) * | 1999-05-27 | 2002-04-09 | America Online, Inc. | Method and system for reduction of quantization-induced block-discontinuities and general purpose audio codec |
US6226616B1 (en) * | 1999-06-21 | 2001-05-01 | Digital Theater Systems, Inc. | Sound quality of established low bit-rate audio coding systems without loss of decoder compatibility |
US6446037B1 (en) * | 1999-08-09 | 2002-09-03 | Dolby Laboratories Licensing Corporation | Scalable coding method for high quality audio |
EP1087557A3 (en) * | 1999-09-22 | 2005-01-19 | Matsushita Electric Industrial Co., Ltd. | Apparatus for transmitting digital audio data and receiving apparatus for receiving the digital audio data |
US6373411B1 (en) * | 2000-08-31 | 2002-04-16 | Agere Systems Guardian Corp. | Method and apparatus for performing variable-size vector entropy coding |
US6675148B2 (en) * | 2001-01-05 | 2004-01-06 | Digital Voice Systems, Inc. | Lossless audio coder |
JP3690591B2 (en) * | 2001-05-28 | 2005-08-31 | シャープ株式会社 | Encoder |
EP1292036B1 (en) * | 2001-08-23 | 2012-08-01 | Nippon Telegraph And Telephone Corporation | Digital signal decoding methods and apparatuses |
US7110941B2 (en) * | 2002-03-28 | 2006-09-19 | Microsoft Corporation | System and method for embedded audio coding with implicit auditory masking |
US20030231799A1 (en) * | 2002-06-14 | 2003-12-18 | Craig Schmidt | Lossless data compression using constraint propagation |
DE10236694A1 (en) * | 2002-08-09 | 2004-02-26 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Equipment for scalable coding and decoding of spectral values of signal containing audio and/or video information by splitting signal binary spectral values into two partial scaling layers |
US7009533B1 (en) * | 2004-02-13 | 2006-03-07 | Samplify Systems Llc | Adaptive compression and decompression of bandlimited signals |
-
2004
- 2004-08-04 US US10/911,067 patent/US7392195B2/en active Active
- 2004-08-04 US US10/911,062 patent/US7272567B2/en active Active
-
2005
- 2005-03-21 ES ES10167970.2T patent/ES2537820T3/en not_active Expired - Lifetime
- 2005-03-21 JP JP2007505046A patent/JP4934020B2/en not_active Expired - Lifetime
- 2005-03-21 ES ES05728310T patent/ES2363932T3/en not_active Expired - Lifetime
- 2005-03-21 KR KR1020127024711A patent/KR101307693B1/en not_active Expired - Lifetime
- 2005-03-21 CN CN2005800134433A patent/CN1961351B/en not_active Expired - Lifetime
- 2005-03-21 CN CN2005800134448A patent/CN101027717B/en not_active Expired - Lifetime
- 2005-03-21 RU RU2006137566/09A patent/RU2387022C2/en active
- 2005-03-21 ES ES05731220T patent/ES2363346T3/en not_active Expired - Lifetime
- 2005-03-21 RU RU2006137573/09A patent/RU2387023C2/en active
-
2007
- 2007-06-21 HK HK07106643.1A patent/HK1099597A1/en not_active IP Right Cessation
- 2007-08-14 US US11/891,905 patent/US7668723B2/en not_active Expired - Lifetime
- 2007-10-04 HK HK07110721.8A patent/HK1105475A1/en not_active IP Right Cessation
-
2009
- 2009-11-05 US US12/613,316 patent/US20100082352A1/en not_active Abandoned
-
2010
- 2010-03-09 US US12/720,416 patent/US20110106546A1/en not_active Abandoned
-
2011
- 2011-12-27 JP JP2011284818A patent/JP5551677B2/en not_active Expired - Lifetime
-
2013
- 2013-05-10 JP JP2013100133A patent/JP5593419B2/en not_active Expired - Lifetime
- 2013-05-10 JP JP2013100134A patent/JP5599913B2/en not_active Expired - Lifetime
Patent Citations (11)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6021386A (en) * | 1991-01-08 | 2000-02-01 | Dolby Laboratories Licensing Corporation | Coding method and apparatus for multiple channels of audio information representing three-dimensional sound fields |
US5751902A (en) * | 1993-05-05 | 1998-05-12 | U.S. Philips Corporation | Adaptive prediction filter using block floating point format and minimal recursive recomputations |
US6118392A (en) * | 1998-03-12 | 2000-09-12 | Liquid Audio Inc. | Lossless data compression with low complexity |
US20030179938A1 (en) * | 2001-03-05 | 2003-09-25 | Van Der Vleuten Renatus Josephus | Device and method for compressing a signal |
US7742926B2 (en) * | 2003-04-18 | 2010-06-22 | Realnetworks, Inc. | Digital audio signal compression method and apparatus |
US7126501B2 (en) * | 2003-04-28 | 2006-10-24 | Nippon Telegraph And Telephone Corporation | Floating point type digital signal reversible encoding method, decoding method, devices for them, and programs for them |
US7209056B2 (en) * | 2003-09-02 | 2007-04-24 | Nippon Telegraph And Telephone Corporation | Floating point signal reversible encoding method, decoding method, device thereof, program, and recording medium thereof |
US7317407B2 (en) * | 2003-09-02 | 2008-01-08 | Nippon Telegraph And Telephone Corporation | Floating point signal reversible encoding method, decoding method, device thereof, program, and recording medium thereof |
US7668723B2 (en) * | 2004-03-25 | 2010-02-23 | Dts, Inc. | Scalable lossless audio codec and authoring tool |
US20070257824A1 (en) * | 2004-10-15 | 2007-11-08 | Nippon Telegraph And Telephone Corporation | Information Encoding Method, Decoding Method, Common Multiplier Estimating Method, and Apparatus, Program, and Recording Medium Using These Methods |
US20080089438A1 (en) * | 2005-07-07 | 2008-04-17 | Nippon Telegraph And Telephone Corporation | Signal Encoder, Signal Decoder, Signal Encoding Method, Signal Decoding Method, Program, Recording Medium And Signal Codec Method |
Cited By (20)
* Cited by examiner, † Cited by third partyPublication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20090240506A1 (en) * | 2006-07-18 | 2009-09-24 | Oliver Wuebbolt | Audio bitstream data structure arrangement of a lossy encoded signal together with lossless encoded extension data for said signal |
US8326639B2 (en) * | 2006-07-18 | 2012-12-04 | Thomson Licensing | Audio data structure for lossy and lossless encoded extension data |
US20110224991A1 (en) * | 2010-03-09 | 2011-09-15 | Dts, Inc. | Scalable lossless audio codec and authoring tool |
US8374858B2 (en) * | 2010-03-09 | 2013-02-12 | Dts, Inc. | Scalable lossless audio codec and authoring tool |
US12080309B2 (en) | 2013-10-18 | 2024-09-03 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US11670314B2 (en) | 2013-10-18 | 2023-06-06 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US9928845B2 (en) | 2013-10-18 | 2018-03-27 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US12170093B2 (en) | 2013-10-18 | 2024-12-17 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US10229694B2 (en) | 2013-10-18 | 2019-03-12 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US12165664B2 (en) | 2013-10-18 | 2024-12-10 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US10614824B2 (en) | 2013-10-18 | 2020-04-07 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US12094478B2 (en) | 2013-10-18 | 2024-09-17 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US12094479B2 (en) | 2013-10-18 | 2024-09-17 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US11423919B2 (en) | 2013-10-18 | 2022-08-23 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio decoder, apparatus for generating encoded audio output data and methods permitting initializing a decoder |
US9564136B2 (en) | 2014-03-06 | 2017-02-07 | Dts, Inc. | Post-encoding bitrate reduction of multiple object audio |
WO2015134272A1 (en) * | 2014-03-06 | 2015-09-11 | Dts, Inc. | Post-encoding bitrate reduction of multiple object audio |
US9984692B2 (en) | 2014-03-06 | 2018-05-29 | Dts, Inc. | Post-encoding bitrate reduction of multiple object audio |
US10395664B2 (en) | 2016-01-26 | 2019-08-27 | Dolby Laboratories Licensing Corporation | Adaptive Quantization |
US10863004B2 (en) | 2016-07-01 | 2020-12-08 | Nxp B.V. | Multiple source receiver |
US10936941B2 (en) * | 2016-08-12 | 2021-03-02 | Xilinx, Inc. | Efficient data access control device for neural network hardware acceleration system |
Also Published As
Publication number | Publication date |
---|---|
US20100082352A1 (en) | 2010-04-01 |
US20050246178A1 (en) | 2005-11-03 |
US20050216262A1 (en) | 2005-09-29 |
RU2387022C2 (en) | 2010-04-20 |
KR101307693B1 (en) | 2013-09-11 |
CN1961351B (en) | 2010-12-15 |
US7392195B2 (en) | 2008-06-24 |
JP4934020B2 (en) | 2012-05-16 |
ES2363932T3 (en) | 2011-08-19 |
RU2006137573A (en) | 2008-04-27 |
US20080021712A1 (en) | 2008-01-24 |
CN101027717A (en) | 2007-08-29 |
JP2007531012A (en) | 2007-11-01 |
JP2013148935A (en) | 2013-08-01 |
ES2363346T3 (en) | 2011-08-01 |
JP2012078865A (en) | 2012-04-19 |
HK1099597A1 (en) | 2007-08-17 |
RU2387023C2 (en) | 2010-04-20 |
CN1961351A (en) | 2007-05-09 |
JP5593419B2 (en) | 2014-09-24 |
US7272567B2 (en) | 2007-09-18 |
KR20120116019A (en) | 2012-10-19 |
US7668723B2 (en) | 2010-02-23 |
RU2006137566A (en) | 2008-04-27 |
JP5551677B2 (en) | 2014-07-16 |
JP5599913B2 (en) | 2014-10-01 |
ES2537820T3 (en) | 2015-06-12 |
CN101027717B (en) | 2011-09-07 |
HK1105475A1 (en) | 2008-02-15 |
JP2013190809A (en) | 2013-09-26 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7668723B2 (en) | 2010-02-23 | Scalable lossless audio codec and authoring tool |
US8374858B2 (en) | 2013-02-12 | Scalable lossless audio codec and authoring tool |
EP2250572B1 (en) | 2018-09-19 | Lossless multi-channel audio codec using adaptive segmentation with random access point (rap) capability |
KR100917464B1 (en) | 2009-09-14 | Encoding method, apparatus, decoding method and apparatus for digital data using band extension technique |
JP3987582B2 (en) | 2007-10-10 | Data compression / expansion using rice encoder / decoder |
EP1484841A1 (en) | 2004-12-08 | Digital signal encoding method, decoding method, encoding device, decoding device, digital signal encoding program, and decoding program |
EP1741093B1 (en) | 2011-05-25 | Scalable lossless audio codec and authoring tool |
JP3964860B2 (en) | 2007-08-22 | Stereo audio encoding method, stereo audio encoding device, stereo audio decoding method, stereo audio decoding device, and computer-readable recording medium |
KR100923301B1 (en) | 2009-10-23 | Encoding method of audio data using band extension method, apparatus, decoding method and apparatus |
JP3942523B2 (en) | 2007-07-11 | Digital signal encoding method, decoding method, encoder, decoder, and programs thereof |
KR100975522B1 (en) | 2010-08-13 | Scalable audio decoding / coding method and apparatus |
JP2004140569A (en) | 2004-05-13 | Digital signal encoding method, decoding method, encoder and decoder for them, and program for them |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
2012-03-05 | STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |