DE19747119C2 - Methods and devices for coding or decoding an audio signal or a bit stream - Google Patents

Methods and devices for coding or decoding an audio signal or a bit stream

Info

Publication number
DE19747119C2
DE19747119C2 DE19747119A DE19747119A DE19747119C2 DE 19747119 C2 DE19747119 C2 DE 19747119C2 DE 19747119 A DE19747119 A DE 19747119A DE 19747119 A DE19747119 A DE 19747119A DE 19747119 C2 DE19747119 C2 DE 19747119C2
Authority
DE
Germany
Prior art keywords
spectral
code
spectral values
grid
bit stream
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime
Application number
DE19747119A
Other languages
German (de)
Other versions
DE19747119A1 (en
Inventor
Ralph Sperschneider
Martin Dietz
Andreas Ehret
Karlheinz Brandenburg
Heinz Gerhaeuser
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Original Assignee
Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV filed Critical Fraunhofer Gesellschaft zur Forderung der Angewandten Forschung eV
Priority to DE19747119A priority Critical patent/DE19747119C2/en
Priority claimed from DE19840853A external-priority patent/DE19840853B4/en
Priority to DE19840853A priority patent/DE19840853B4/en
Priority to EP04014504A priority patent/EP1458103B1/en
Priority to ES04014504T priority patent/ES2329466T3/en
Priority to DE59811685T priority patent/DE59811685D1/en
Priority to DE59814374T priority patent/DE59814374D1/en
Priority to EP98119235A priority patent/EP0911981B1/en
Priority to AT98119235T priority patent/ATE271727T1/en
Priority to PT04014504T priority patent/PT1458103E/en
Priority to PCT/EP1998/008475 priority patent/WO2000039933A1/en
Publication of DE19747119A1 publication Critical patent/DE19747119A1/en
Publication of DE19747119C2 publication Critical patent/DE19747119C2/en
Application granted granted Critical
Priority to JP2004099418A priority patent/JP3902642B2/en
Priority to JP2004099417A priority patent/JP4168000B2/en
Priority to JP2004099419A priority patent/JP3978194B2/en
Anticipated expiration legal-status Critical
Expired - Lifetime legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04BTRANSMISSION
    • H04B1/00Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission
    • H04B1/66Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission
    • H04B1/662Details of transmission systems, not covered by a single one of groups H04B3/00 - H04B13/00; Details of transmission systems not characterised by the medium used for transmission for reducing bandwidth of signals; for improving efficiency of transmission using a time/frequency relationship, e.g. time compression or expansion
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion 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/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • H03M7/40Conversion to or from variable length codes, e.g. Shannon-Fano code, Huffman code, Morse code

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Description

Die vorliegende Erfindung bezieht sich auf Verfahren und Vorrichtungen zum Codieren bzw. Decodieren eines Audio­ signals bzw. eines Bitstroms und insbesondere auf Verfahren und Vorrichtungen zum Codieren bzw. Decodieren eines Audio­ signals bzw. eines Bitstroms, die eine fehlerrobuste Entro­ piecodierung bzw. -decodierung und insbesondere eine fehler­ robuste Huffman-Codierung bzw. -Decodierung ausführen kön­ nen.The present invention relates to methods and Devices for encoding or decoding an audio signals or a bit stream and in particular on methods and devices for encoding or decoding an audio signals or a bit stream that an error-robust Entro Piecoding or decoding and in particular an error robust Huffman coding or decoding NEN.

Moderne Audiocodierverfahren bzw. -decodierverfahren, die beispielsweise nach dem Standard MPEG-Layer 3 arbeiten, sind in der Lage, die Datenrate von Audiosignalen beispielsweise um einen Faktor 12 zu komprimieren, ohne die Qualität der­ selben merkbar zu verschlechtern. Um eine derartig hohe Datenratenreduktion zu erreichen, wird ein Audiosignal ab­ getastet, wodurch eine Folge von zeitdiskreten Abtastwerten erhalten wird. Wie es in der Technik bekannt ist, wird diese Folge von zeitdiskreten Abtastwerten mittels geeigneter Fensterfunktionen gefenstert, um gefensterte Blöcke von zeitlichen Abtastwerten zu erhalten. Ein Block zeitlich gefensterter Abtastwerte wird dann mittels einer Filterbank, einer modifizierten diskreten Cosinustransformation (MDCT) oder einer anderen geeigneten Einrichtung in den Frequenzbe­ reich transformiert, um Spektralwerte zu erhalten, die insgesamt das Audiosignal, d. h. den zeitlichen Ausschnitt, der durch den Block von zeitdiskreten Abtastwerten gegeben ist, im Frequenzbereich darstellen. Üblicherweise werden sich zu 50% überlappende zeitliche Blöcke erzeugt und mittels einer MDCT in den Frequenzbereich transformiert, wo­ durch aufgrund der speziellen Eigenschaften der MDCT immer beispielsweise 1024 zeitdiskrete Abtastwerte zu 1024 Spektralwerten führen. Modern audio coding methods or decoding methods, which operate according to the MPEG layer 3 standard, for example, are able to compress the data rate of audio signals by a factor of 12, for example, without noticeably deteriorating the quality of the same. In order to achieve such a high data rate reduction, an audio signal is sampled, whereby a sequence of discrete-time samples is obtained. As is known in the art, this sequence of time discrete samples is windowed using suitable window functions to obtain windowed blocks of time samples. A block of time-windowed samples is then transformed into the frequency range by means of a filter bank, a modified discrete cosine transformation (MDCT) or another suitable device in order to obtain spectral values which collectively contain the audio signal, ie the temporal segment that passes through the block of time-discrete Samples are given in the frequency domain. Usually 50% overlapping temporal blocks are generated and transformed by means of an MDCT into the frequency range, where, due to the special properties of the MDCT, 1024 time-discrete samples always lead to 1024 spectral values.

Es ist bekannt, daß die Aufnahmefähigkeit des menschlichen Ohrs vom Augenblicksspektrum des Audiosignals selbst ab­ hängt. Diese Abhängigkeit ist in dem sog. psychoakustischen Modell erfaßt, mittels dem es seit längerem möglich ist, abhängig vom augenblicklichen Spektrum Maskierungsschwellen zu berechnen. Maskierung bedeutet, daß ein bestimmter Ton bzw. Spektralanteil verdeckt wird, wenn beispielsweise ein benachbarter Spektralbereich eine relativ hohe Energie be­ sitzt. Diese Tatsache der Maskierung wird ausgenutzt, um die nach der Transformation vorhandenen Spektralwerte möglichst grob zu quantisieren. Es wird daher angestrebt, einerseits hörbare Störungen im wieder decodierten Audiosignal zu ver­ meiden und andererseits möglichst wenig Bits zu verwenden, um das Audiosignal zu codieren bzw. hier zu quantisieren. Die durch die Quantisierung eingeführten Störungen, d. h. das Quantisierungsrauschen, soll unter der Maskierungs­ schwelle liegen und somit unhörbar sein. Gemäß bekannter Verfahren wird daher eine Einteilung der Spektralwerte in sog. Skalenfaktorbänder durchgeführt, die den Frequenz­ gruppen des menschlichen Ohrs entsprechen sollten. Spektral­ werte in einer Skalenfaktorgruppe werden mit einem Skalen­ faktor multipliziert, um Spektralwerte eines Skalenfaktor­ bandes insgesamt zu skalieren. Die durch den Skalenfaktor skalierten Skalenfaktorbänder werden anschließend quanti­ siert, woraufhin quantisierte Spektralwerte entstehen. Selbstverständlich ist eine Gruppierung in Skalenfaktorbän­ der nicht entscheidend. Sie wird jedoch bei den Standards MPEG-Layer 3 bzw. bei dem Standard MPEG-2 AAC (AAC = Ad­ vanced Audio Coding) verwendet.It is known that the receptivity of the human ear depends on the instantaneous spectrum of the audio signal itself. This dependence is recorded in the so-called psychoacoustic model, by means of which it has long been possible to calculate masking thresholds depending on the current spectrum. Masking means that a certain tone or spectral component is masked if, for example, an adjacent spectral range has a relatively high energy. This fact of masking is used to quantify the spectral values available after the transformation as roughly as possible. The aim is therefore on the one hand to avoid audible interference in the decoded audio signal and on the other hand to use as few bits as possible in order to encode or quantize the audio signal here. The interference introduced by the quantization, ie the quantization noise, should be below the masking threshold and should therefore be inaudible. According to known methods, the spectral values are therefore divided into so-called scale factor bands, which should correspond to the frequency groups of the human ear. Spectral values in a scale factor group are multiplied by a scale factor in order to scale spectral values of a scale factor band as a whole. The scale factor bands scaled by the scale factor are then quantized, whereupon quantized spectral values arise. A grouping in scale factor bands is of course not decisive. However, it is used with the standards MPEG-Layer 3 or with the standard MPEG-2 AAC (AAC = Advanced Audio Coding).

Ein sehr wesentlicher Aspekt der Datenreduzierung besteht in der nach dem Quantisieren folgenden Entropie-Codierung der quantisierten Spektralwerte. Für die Entropiecodierung wird üblicherweise eine Huffman-Codierung verwendet. Unter einer Huffman-Codierung versteht man eine Codierung mit variabler Länge, d. h. die Länge des Codeworts für einen zu codieren­ den Wert ist abhängig von dessen Auftrittswahrscheinlichkeit. Logischerweise ordnet man dem wahrscheinlichsten Zeichen den kürzesten Code, d. h. das kürzeste Codewort, zu, so daß mit der Huffman-Codierung eine sehr gute Redundanz­ reduktion erreicht werden kann. Ein Beispiel für eine all­ seits bekannte Codierung mit allgemeiner Länge ist das Morse-Alphabet.A very important aspect of data reduction is in the entropy coding of the following after quantization quantized spectral values. For entropy coding usually Huffman coding is used. Under one Huffman coding is a coding with variable Length, d. H. to encode the length of the code word for one the value depends on its probability of occurrence.  Logically you rank the most likely Character the shortest code, d. H. the shortest code word, too, so with Huffman coding very good redundancy reduction can be achieved. An example of an all well-known coding with general length is that Morse code.

In der Audiocodierung werden Huffman-Codes zur Codierung der quantisierten Spektralwerte benutzt. Ein moderner Audio- Coder, der beispielsweise nach dem Standard MPEG-2 AAC arbeitet, verwendet zur Codierung der quantisierten Spek­ tralwerte verschiedene Huffman-Codetabellen, die dem Spek­ trum nach bestimmten Kriterien abschnittsweise zugeordnet werden. Dabei werden immer 2 oder 4 Spektralwerte in einem Codewort gemeinsam codiert.In the audio coding, Huffman codes are used to code the quantized spectral values used. A modern audio Coder, for example, according to the MPEG-2 AAC standard works, used to encode the quantized spec tral values of various Huffman code tables that the spec section according to certain criteria become. There are always 2 or 4 spectral values in one Codeword coded together.

Ein Unterschied des Verfahrens nach MPEG-2 AAC gegenüber dem Verfahren MPEG-Layer 3 besteht nun darin, daß verschiedene Skalenfaktorbänder, d. h. verschiedene Spektralwerte, zu beliebig vielen Spektralabschnitten oder "Sections" grup­ piert werden. Bei AAC umfaßt ein Spektralabschnitt oder eine "Section" zumindest vier Spektralwerte aber vorzugsweise mehr als vier Spektralwerte. Der gesamte Frequenzbereich der Spektralwerte wird daher in benachbarte Sections aufgeteilt, wobei eine Section ein Frequenzband darstellt, derart, daß alle Sections zusammen den gesamten Frequenzbereich, der durch die Spektralwerte nach der Trans­ formation derselben überdeckt wird, umfassen.One difference between the MPEG-2 AAC method and the MPEG-Layer 3 method is that different scale factor bands, ie different spectral values, are grouped into any number of spectral sections or "sections". In AAC, a spectral section or "section" comprises at least four spectral values, but preferably more than four spectral values. The entire frequency range of the spectral values is therefore divided into adjacent sections, one section representing a frequency band, such that all sections together comprise the entire frequency range which is covered by the spectral values after the transformation thereof.

Einem Abschnitt wird nun ebenso wie beim MPEG-Layer-3- Verfahren zum Erreichen einer maximalen Redundanzreduktion eine sog. Huffman Tabelle aus einer Mehrzahl derartiger Tabellen zugeordnet. Im Bitstrom des AAG-Verfahrens, welches üblicherweise 1024 Spektralwerte aufweist, befinden sich nun die Huffman-Codewörter für die Spektralwerte in aufsteigen­ der Frequenzreihenfolge. Die Information über die in jedem Frequenzabschnitt verwendete Tabelle wird in den Seitenin­ formationen übertragen. Diese Situation ist in Fig. 2 dargestellt. A section is assigned a so-called Huffman table from a plurality of such tables, just as in the MPEG Layer 3 method, in order to achieve a maximum redundancy reduction. The Huffman code words for the spectral values are now in increasing frequency order in the bit stream of the AAG method, which usually has 1024 spectral values. The information about the table used in each frequency section is transmitted in the page information. This situation is shown in Fig. 2.

Fig. 2 stellt den beispielhaften Fall dar, bei dem der Bitstrom 10 Huffman-Codeworte umfaßt. Wenn immer aus einem Spektralwert ein Codewort gebildet wird, so können hier 10 Spektralwerte codiert sein. Üblicherweise werden jedoch immer 2 oder 4 Spektralwerte durch ein Codewort gemeinsam codiert, weshalb Fig. 2 einen Teil des codierten Bitstroms darstellt, der 20 bzw. 40 Spektralwerte umfaßt. In dem Fall, in dem jedes Huffman-Codewort 2 Spektralwerte umfaßt, stellt das mit der Nr. 1 bezeichnete Codewort die ersten 2 Spek­ tralwerte dar, wobei die Länge des Codeworts Nr. 1 relativ klein ist, was bedeutet, daß die Werte der beiden ersten Spektralwerte, d. h. der beiden niedrigsten Frequenzkoeffi­ zienten, relativ häufig auftreten. Das Codewort mit der Nr. 2 hingegen besitzt eine relativ große Länge, was bedeutet, daß die Beträge des 3. und 4. Spektralkoeffizienten im codierten Audiosignal relativ selten sind, weshalb dieselben mit einer relativ großen Bitmenge codiert werden. Aus Fig. 2 ist ferner ersichtlich, daß die Codewörter mit den Nr. 3, 4 und 5, die die Spektralkoeffizienten 5 und 6, bzw. 7 und 8 bzw. 9 und 10 darstellen, ebenfalls relativ häufig auftre­ ten, da die Länge der einzelnen Codewörter relativ gering ist. Ähnliches gilt für die Codewörter mit den Nr. 6-10. Fig. 2 illustrates the exemplary case in which the bit stream 10 includes Huffman code words. If a code word is always formed from a spectral value, 10 spectral values can be coded here. Usually, however, 2 or 4 spectral values are always coded together by one code word, which is why FIG. 2 represents a part of the coded bit stream which comprises 20 or 40 spectral values. In the case where each Huffman code word comprises 2 spectral values, the code word labeled No. 1 represents the first 2 spectral values, the length of code word No. 1 being relatively small, which means that the values of the two first spectral values, ie the two lowest frequency coeffi cients, occur relatively frequently. The code word with the number 2, however, has a relatively large length, which means that the amounts of the 3rd and 4th spectral coefficients are relatively rare in the encoded audio signal, which is why they are encoded with a relatively large amount of bits. From Fig. 2 it can also be seen that the code words with the numbers 3, 4 and 5, which represent the spectral coefficients 5 and 6 , or 7 and 8 or 9 and 10, also occur relatively frequently, since the length of the individual code words is relatively low. The same applies to the code words with the numbers 6-10.

Wie es bereits erwähnt wurde, ist es aus Fig. 2 deutlich ersichtlich, daß die Huffman-Codewörter für die codierten Spektralwerte bezüglich der Frequenz linear ansteigend im Bitstrom angeordnet sind, wenn ein Bitstrom betrachtet wird, der durch eine bekannte Codierungsvorrichtung erzeugt wird.As has already been mentioned, it is clearly evident from FIG. 2 that the Huffman code words for the coded spectral values are arranged linearly increasing in frequency in the bit stream when considering a bit stream which is generated by a known coding device.

Ein großer Nachteil von Huffman-Codes im Falle fehlerbehaf­ teter Kanäle ist die Fehlerfortplanzung. Es sei beispiels­ weise angenommen, daß das Codewort Nr. 2 in Fig. 2 gestört ist. Mit einer gewissen nicht niedrigen Wahrscheinlichkeit ist dann auch die Länge dieses falschen Codeworts Nr. 2 verändert. Dieselbe unterscheidet sich somit von der rich­ tigen Länge. Wenn im Beispiel von Fig. 2 das Codewort Nr. 2 bezüglich seiner Länge durch eine Störung verändert worden ist, ist es für einen Codierer nicht mehr möglich, die An­ fänge der Codewörter 3-10, d. h. fast des gesamten dar­ gestellten Audiosignals, zu bestimmen. Es können also auch alle anderen Codewörter nach dem gestörten Codewort nicht mehr richtig decodiert werden, da nicht bekannt ist, wo diese Codewörter beginnen, und da ein falscher Startpunkt aufgrund des Fehlers gewählt wurde.A major disadvantage of Huffman codes in the case of faulty channels is error propagation. For example, assume that code word # 2 in Fig. 2 is disturbed. The length of this wrong code word No. 2 is then also changed with a certain, not low probability. It is therefore different from the correct length. If in the example of FIG. 2 the code word No. 2 has been changed in terms of its length by a disturbance, it is no longer possible for an encoder to determine the beginning of the code words 3-10 , ie almost the entire audio signal presented , All other code words can therefore no longer be decoded correctly after the disturbed code word, since it is not known where these code words begin and because an incorrect starting point was chosen due to the error.

Das europäische Patent Nr. 0612156 schlägt als Lösung für das Problem der Fehlerfortpflanzung vor, einen Teil der Codewörter variabler Länge in einem Raster anzuordnen, und die restlichen Codewörter in die verbleibenden Lücken zu verteilen, so daß ohne vollständige Decodierung oder bei fehlerhafter Übertragung der Anfang eines Codeworts leichter gefunden werden kann.European patent no. 0612156 suggests a solution for the problem of error propagation, part of the Arrange code words of variable length in a grid, and the remaining code words into the remaining gaps distribute so that without complete decoding or at incorrect transmission of the beginning of a code word easier can be found.

Das bekannte Verfahren schafft für die Fehlerfortpflanzung zwar eine teilweise Abhilfe durch Umsortierung der Code­ wörter. Für manche Codewörter wird ein fester Platz im Bitstrom vereinbart, während für die restlichen Codewörter die verbleibenden Zwischenräume zur Verfügung stehen. Dies kostet keine zusätzlichen Bits, verhindert aber im Fehler­ fall die Fehlerfortpflanzung unter den umsortierten Code­ wörtern.The known method creates for error propagation a partial remedy by rearranging the code words. For some code words, a fixed place in the Bitstream agreed while for the remaining code words the remaining gaps are available. This does not cost any additional bits, but prevents errors error propagation falls under the reordered code words.

Entscheidender Parameter für die Effizienz des bekannten Verfahrens ist jedoch, wie das Raster in der praktischen Anwendung bestimmt wird, d. h. wie viele Rasterpunkte verwendet werden müssen, welchen Rasterabstand die Raster­ punkte haben, usw. Das europäische Patent 0612156 liefert jedoch neben dem allgemeinen Hinweis, ein Raster zur Eindämmung der Fehlerfortpflanzung zu verwenden, keine näheren Hinweise darauf, wie das Raster effizient gestaltet werden soll, um einerseits eine fehlerrobuste Codierung und andererseits auch eine effiziente Codierung zu ermöglichen.Crucial parameter for the efficiency of the known However, the procedure is like the grid in practice Application is determined, d. H. how many halftone dots which grid spacing the grid must be used have points, etc. The European patent 0612156 provides however, in addition to the general note, a grid for Use error propagation containment, none more information on how the grid is designed efficiently should be on the one hand an error-proof coding and on the other hand, to enable efficient coding.

Die Aufgabe der vorliegenden Erfindung besteht darin, Verfahren und Vorrichtungen zum fehlerrobusten und dennoch ef­ fizienten Entropiecodieren zu schaffen.The object of the present invention is methods  and devices for robust and yet ef efficient entropy coding.

Diese Aufgabe wird durch ein Verfahren zum Codieren eines Audiosignals gemäß Anspruch 1 oder 4 sowie durch eine Vor­ richtung zum Codieren eines Audiosignals gemäß Anspruch 13 oder 14 gelöst.This task is accomplished by a method of encoding a Audio signal according to claim 1 or 4 and by a pre Direction for encoding an audio signal according to claim 13 or 14 solved.

Eine weitere Aufgabe der vorliegenden Erfindung besteht da­ rin, Verfahren und Vorrichtungen zum fehlerrobusten und den­ noch effizienten Entropiedecodieren zu schaffen.Another object of the present invention is there rin, methods and devices for the robust and the to create even more efficient entropy decoding.

Diese Aufgabe wird durch ein Verfahren zum Decodieren eines Bitstroms gemäß Anspruch 15 oder 16 sowie durch eine Vor­ richtung zum Decodieren eines Bitstroms gemäß Anspruch 17 oder 18 gelöst.This task is accomplished by a method for decoding a Bitstream according to claim 15 or 16 and by a pre Device for decoding a bit stream according to claim 17 or 18 solved.

Der vorliegenden Erfindung liegt die Erkenntnis zugrunde, daß das bereits vorgeschlagene Raster in bestimmter Weise ausgestaltet bzw. belegt werden muß, um neben einer fehler­ robusten Codierung bzw. Decodierung auch eine effiziente Codierung bzw. Decodierung zu erreichen. Wesentlich dabei ist, daß die Codeworte, die durch eine Entropiecodierung in Form einer Huffman-Codierung erhalten werden, inhärent eine unterschiedliche Länge haben, da der größte Codierungsgewinn erreicht wird, wenn einem zu codierenden Wert, der am häu­ figsten auftritt, ein möglichst kurzes Codewort zugewiesen wird. Dagegen führt ein zu codierender Wert, der relativ selten auftritt, trotz eines relativ langen Codeworts, das demselben zugewiesen wird, zu einer statistisch gesehen op­ timalen Datenmenge. Codeworte, die durch eine Huffman-Codie­ rung erhalten werden, weisen also an sich unterschiedliche Längen auf.The present invention is based on the finding that that the grid already proposed in some way must be designed or documented, in addition to an error robust coding or decoding also an efficient To achieve coding or decoding. Essential here is that the code words that are encoded in by an entropy Huffman encoding can be obtained, inherently one have different lengths because the largest coding gain is reached when a value to be coded that is frequently figsten occurs, the shortest possible code word assigned becomes. In contrast, a value to be coded leads to the relative rarely occurs despite a relatively long code word that it is assigned to a statistically seen op minimal amount of data. Codewords by a Huffman Codie are preserved, so they have different per se Lengths up.

Gemäß einem ersten Aspekt der vorliegenden Erfindung werden an den Rasterpunkten sog. Prioritätscodewörter plaziert, derart, daß trotz eines möglichen Fehlers im Bitstrom auf­ grund des Rasters immer der Anfang der Prioritätscodewörter von einem Decodierer sicher festgestellt werden kann. Unter Prioritätscodewörtern sind Codewörter zu verstehen, die psychoakustisch bedeutsam sind. Dies bedeutet, daß die Spek­ tralwerte, die durch sog. Prioritätscodewörter codiert sind, wesentlich zum Höreindruck eines decodierten Audiosignals beitragen. Wenn das Audiosignal beispielsweise einen großen Anteil an Sprache aufweist, so könnten die Prioritätscode­ wörter die Codewörter sein, die eher niedrigere Spektral­ werte darstellen, da die wesentlichen Spektralinformationen in diesem Falle im niedrigen Spektralbereich auftreten. Wenn an ein Audiosignal gedacht wird, das eine Gruppe von Tönen im mittleren Frequenzbereich aufweist, so könnten die Prio­ ritätscodewörter die Codewörter sein, die den Spektralwerten in dem entsprechenden mittleren Frequenzbereich zugeordnet sind, da dieselben dann die psychoakustisch bedeutsamen Spektralwerte sind. Psychoakustisch bedeutsame Spektralwerte könnten auch Spektralwerte sein, die im Vergleich zu anderen Spektralwerten im Spektrum einen großen Betrag, d. h. eine große Signalenergie, umfassen. Psychoakustisch weniger be­ deutsame Codewörter, die auch als Nicht-Prioritätscodewörter bezeichnet werden, füllen dagegen das Raster auf. Sie werden also nicht mit Rasterpunkten ausgerichtet, sondern in den noch freien Plätzen nach dem Positionieren der Prioritäts­ codewörter auf die Rasterpunkte "einsortiert".According to a first aspect of the present invention so-called priority code words placed at the grid points, such that despite a possible error in the bit stream due to the grid always the beginning of the priority code words  can be reliably determined by a decoder. Under Priority code words are to be understood as code words that are psychoacoustically significant. This means that the spec tral values which are coded by so-called priority code words, essential to the auditory impression of a decoded audio signal contribute. For example, if the audio signal is large Share of speech, so could the priority code words are the codewords, the rather lower spectral represent values since the essential spectral information in this case occur in the low spectral range. If an audio signal is thought to be a group of tones in the middle frequency range, the Prio Rity code words are the code words that correspond to the spectral values assigned in the corresponding middle frequency range because they are the psychoacoustically significant ones Are spectral values. Psychoacoustically significant spectral values could also be spectral values compared to others Spectral values in the spectrum a large amount, d. H. a large signal energy. Less psychoacoustic meaningful code words, also called non-priority code words on the other hand fill the grid. you will be So not aligned with halftone dots, but in the still free spaces after positioning the priority "sorted" codewords onto the grid points.

Gemäß dem ersten Aspekt der vorliegenden Erfindung werden somit die Prioritätscodewörter, die Spektralwerten zugeord­ net sind, welche psychoakustisch bedeutsam sind, in einem Raster derart angeordnet, daß der Anfang der Prioritätscode­ wörter mit den Rasterpunkten zusammenfällt.According to the first aspect of the present invention thus the priority code words that associate spectral values net, which are psychoacoustically significant, in one Grid arranged so that the beginning of the priority code words coincides with the halftone dots.

Gemäß einem zweiten Aspekt der vorliegenden Erfindung wird eine Gruppierung der Spektralwerte in Spektralabschnitte durchgeführt, wobei jedem Spektralabschnitt eine andere Codetabelle zugeordnet wird. Die Zuordnung einer Codetabelle zu einem Spektralabschnitt beruht auf signalstatistischen Aspekten, d. h. welche Codetabelle optimal zur Codierung eines Spektralabschnitts geeignet ist, wobei die Zuordnung einer Codetabelle zu einem Spektralabschnitt in der Technik bereits bekannt ist.According to a second aspect of the present invention a grouping of the spectral values into spectral sections performed, with each spectral section a different one Code table is assigned. The assignment of a code table to a spectral section is based on signal statistics Aspects, d. H. which code table is optimal for coding a spectral section is suitable, the assignment  a code table for a spectral section in the art is already known.

Erfindungsgemäß wird nun ein Raster verwendet, welches mehrere Gruppen von in sich äquidistanten Rasterpunkten aufweist, derart, daß der Abstand der Rasterpunkte einer Gruppe von Rasterpunkten von der Codetabelle abhängt, die zur Codierung eines Spektralabschnitts verwendet wird. In einem anderen Spektralabschnitt wird eine andere Codetabelle verwendet, um eine optimale Datenreduktion zu erreichen. Der anderen Codetabelle ist wiederum eine andere äquidistante Gruppe von Rasterpunkten zugeordnet, wobei der Abstand zwischen zwei Rasterpunkten dieser anderen Gruppen von Rasterpunkten von der entsprechenden weiteren Codetabelle abhängt. Die Abhängigkeit des Abstands zweier Rasterpunkte in den verschiedenen Gruppen von Rasterpunkten kann zumin­ dest auf drei verschiedene Arten und Weisen bestimmt werden.According to the invention, a grid is now used, which several groups of equidistant halftone dots has, such that the distance between the halftone dots one Group of halftone dots depends on the code table that is used to encode a spectral section. In another spectral section becomes a different code table used to achieve optimal data reduction. The another code table is another equidistant Group of grid points assigned, the distance between two grid points of these other groups of Halftone dots from the corresponding further code table depends. The dependence of the distance between two grid points in the different groups of halftone dots at least in three different ways.

Zum einen wird die maximale Länge eines Codeworts einer Codetabelle ermittelt. Der Abstand zweier Rasterpunkte in der Rasterpunktgruppe, die dieser Codetabelle zugeordnet ist, kann nun gleich oder größer als die maximale Codewort­ länge in der Codetabelle gewählt werden, derart, daß auch das längste Codewort dieser Codetabelle in dem Raster Platz hat. Analog dazu wird der Abstand zweier Rasterpunkte einer anderen Gruppe von Rasterpunkten, die wiederum einer anderen Codetabelle entspricht, gemäß der maximalen Codewortlänge dieser anderen Codetabelle bestimmt.First, the maximum length of a code word becomes one Code table determined. The distance between two grid points in the grid point group assigned to this code table is now equal to or greater than the maximum code word length can be selected in the code table, such that the longest code word of this code table in the grid space Has. Similarly, the distance between two grid points becomes one another group of halftone dots, which in turn is another Code table corresponds, according to the maximum code word length this other code table.

Die zweite Alternative, die nachfolgend beschrieben ist, kann ebenfalls zu einer Erhöhung der Anzahl der Rasterpunkte beitragen. Aufgrund der inhärenten Eigenschaften des Huff­ man-Codes sind seltener auftretende Codewörter eher länger als häufiger auftretende Codewörter. Wenn daher der Raster­ punktabstand gleich oder größer als die Länge des Codeworts mit maximaler Länge einer Tabelle gewählt wird, so werden meistens Codewörter ins Raster eingefügt, die kürzer als der Rasterpunktabstand sind. Erfindungsgemäß kann der Rasterpunktabstand daher auch kleiner als die Länge des längsten Codeworts einer Tabelle gewählt werden. Falls dann beim Codieren ein Codewort auftritt, das nicht ins Raster paßt, so wird der nicht ins Raster passende Rest an einer anderen geeigneten Stelle nicht mit dem Raster ausgerichtet in den Bitstrom eingetragen. Dies führt dazu, daß dieses "zers­ tückelte" Codewort nicht mehr wirksam vor einer Fehlerfort­ pflanzung geschützt ist. Da dasselbe jedoch sehr selten auftritt, kann dies im Interesse einer Erhöhung der Anzahl der Rasterpunkte in Kauf genommen werden.The second alternative, which is described below, can also increase the number of halftone dots contribute. Because of the inherent properties of the Huff man codes are rarely occurring code words rather longer as more common code words. So if the grid point spacing equal to or greater than the length of the code word with the maximum length of a table is selected, so mostly codewords inserted into the grid that are shorter than that Dot pitch are. According to the invention, the grid point spacing  therefore less than the length of the longest Code words of a table can be selected. Then if Coding occurs a code word that does not fit in the grid, so the remainder that doesn't fit into the grid becomes another suitable position not aligned with the grid in the Bitstream entered. This leads to this "zer stuck "code word no longer effective before an error plantation is protected. Since the same is very rare occurs, this may be in the interest of increasing the number the halftone dots are accepted.

Die dritte Möglichkeit zum Bestimmen der unterschiedlichen Rasterpunktabstände besteht darin, nicht die maximale Code­ wortlänge einer Tabelle zu berücksichtigen, sondern die Länge des längsten tatsächlich auftretenden Codeworts im Bitstrom in einem codierten Spektralabschnitt zu verwenden.The third way to determine the different Dot spacing is not the maximum code word length of a table, but the Length of the longest code word actually occurring in To use bit stream in an encoded spectral section.

Gemäß einem dritten Aspekt der vorliegenden Erfindung kann anstelle einer im wesentlichen linear mit der Frequenz an­ steigenden Anordnung der Codewörter im Bitstrom ein fre­ quenzmäßig verteiltes Anordnen der Codeworte verwendet wer­ den, wobei dieses Verfahren auch als "Scramblen" bezeichnet wird. Dies hat den Vorteil, daß sog. "Burst"-Fehler nicht zu einer fehlerhaften Decodierung eines kompletten Frequenzban­ des führt, sondern nur kleine Störungen in mehreren ver­ schiedenen Frequenzbereichen erzeugen.According to a third aspect of the present invention instead of being essentially linear with frequency increasing arrangement of the code words in the bit stream a fre who uses coded distribution of the code words the, this method also referred to as "scrambling" becomes. This has the advantage that so-called "burst" errors do not occur incorrect decoding of a complete frequency band of leads, but only small disturbances in several ver generate different frequency ranges.

Gemäß einem vierten Aspekt der vorliegenden Erfindung kann ferner anstelle einer linear mit der Frequenz ansteigenden Anordnung der Codewörter auch eine Anordnung verwendet wer­ den, bei der z. B. nur jedes n-te Codewort (z. B. jedes 2. oder jedes 3. oder jedes 4., . . .) im Raster angeordnet wird. Dadurch wird es möglich, durch Prioritätscodewörter einen möglichst großen Spektralbereich zu überdecken, d. h. gegen eine Fehlerfortpflanzung zu schützen, wenn die Anzahl der möglichen Rasterpunkte kleiner als die Anzahl der Priori­ tätscodewörter ist.According to a fourth aspect of the present invention also instead of increasing linearly with frequency Arrangement of the code words also an arrangement who uses the one where z. B. only every nth code word (e.g. every 2nd or every 3rd or every 4th,. , .) is arranged in a grid. This makes it possible to use one of priority code words to cover the largest possible spectral range, d. H. against to protect an error propagation when the number of possible raster points smaller than the number of priori is code words.

Bevorzugte Ausführungsbeispiele der vorliegenden Erfindung werden nachfolgend bezugnehmend auf die beiliegenden Zeich­ nungen detaillierter erörtert. Es zeigen:Preferred embodiments of the present invention are referred to below with reference to the attached drawing discussed in more detail. Show it:

Fig. 1 ein Beispiel für eine erfindungsgemäße Rasterung eines codierten Bitstroms, der Codewörter enthält, anhand des zweiten Aspekts der vorliegenden Erfin­ dung; und Fig. 1 shows an example of a screening of a coded bit stream according to the invention, which contains code words, based on the second aspect of the present inven tion; and

Fig. 2 eine linear mit der Frequenz ansteigende Anordnung von Codewörtern gemäß dem Stand der Technik. Fig. 2 is a linearly increasing with the frequency arrangement of code words according to the prior art.

Zur Erläuterung der vorliegenden Erfindung sind in Fig. 2, die eine bekannte linear mit der Frequenz ansteigende Anord­ nung von Codewörtern unterschiedlicher Länge darstellt, Prioritätscodewörter schraffiert dargestellt. In Fig. 2 sind Prioritätscodewörter die Codewörter Nr. 1 - Nr. 5. Wie es bereits oben erwähnt wurde, sind die Codewörter, welche frequenzmäßig niedrigen Spektralwerten zugeordnet sind, dann Prioritätscodewörter, wenn das Audiosignal beispielsweise einen hohen Sprachanteil enthält, oder relativ viele Töne, welche niederfrequent sind. Die Codewörter Nr. 6-10 in Fig. 2 beziehen sich auf höherfrequentere Spektralwerte, welche zwar zum Gesamteindruck des decodierten Audiosignals sehr wohl beitragen, welche jedoch keine wesentlichen Aus­ wirkungen auf den Höreindruck haben und somit psychoaku­ stisch weniger bedeutsam sind.To illustrate the present invention, priority code words are hatched in FIG. 2, which shows a known arrangement of code words of different lengths that increases linearly with frequency. In FIG. 2, priority code words are code words No. 1 - No. 5. As already mentioned above, the code words which are assigned to low spectral values in terms of frequency are priority code words if the audio signal contains a high speech component, for example, or a relatively large number of tones which are low frequency. The code words No. 6-10 in Fig. 2 relate to higher-frequency spectral values, which indeed contribute to the overall impression of the decoded audio signal, but which have no significant effects on the hearing impression and are therefore psychoacoustic less significant.

Fig. 1 zeigt nun einen erfindungsgemäßen Bitstrom, der eine Anzahl von Rasterpunkten 10-18 aufweist, wobei der Abstand zwischen dem Rasterpunkt 10 und dem Rasterpunkt 12 als D1 bezeichnet ist, während der Abstand zwischen dem Rasterpunkt 14 und dem Rasterpunkt 16 18 als D2 bezeichnet wird. Fig. 1 now shows a bit stream according to the invention, comprising a number of grid points 10-18, wherein the distance between the raster point 10 and the grid point 12 is referred to as D1, while the distance between the halftone dot 14 and dot 16 18 referred to as D2 becomes.

Bezüglich der Darstellung des ersten Aspekts der vorliegen­ den Erfindung sei lediglich der Teil des Bitstroms betrach­ tet, der sich vom Rasterpunkt 10 bis zum Rasterpunkt 14 er­ streckt. Erfindungsgemäß werden nun die Prioritätscodeworte 1 und 2 im Raster ausgerichtet, damit sichergestellt ist, daß die wesentlichen Spektralanteile, die sich bei dem in Fig. 2 dargestellten Beispielsignal im unteren Frequenz­ bereich befinden, bei einer Codierung keiner Fehlerfort­ pflanzung unterworfen werden. Nicht-Prioritätscodewörter, welche in den Figur nicht schraffiert sind, werden nach den Prioritätscodewörtern angeordnet, um das Raster auszufüllen. Es ist nicht erforderlich, daß die Nicht-Prioritätscodewör­ ter am Stück in das Raster passen, da sich die Länge eines Huffman-Codeworts aus sich selbst ergibt. Ein Decodierer weiß also, ob er nur den Teil eines Codeworts eingelesen hat. In diesem Falle wird er automatisch eine bestimmte Anzahl von Bits nach dem Prioritätscodewort hinter dem nächsten Rasterpunkt dem ersten Codewortstück hinzufügen. Es ist somit möglich, einen ersten Teil eines Nicht-Prioritäts­ codeworts in einer ersten noch freien Position im Raster einzufügen, und den restlichen Teil desselben an einer ande­ ren Stelle, wie es beispielsweise durch die Nicht-Priori­ tätscodewörter 7, 8 und 9 dargestellt ist, welche im Bit­ strom jeweils zweigeteilt worden sind, d. h. 7a, 7b bzw. 8a, 8b bzw. 9a, 9b.With regard to the representation of the first aspect of the present invention, only the part of the bit stream that extends from the raster point 10 to the raster point 14 is considered . According to the invention, the priority code words 1 and 2 are now aligned in the grid, in order to ensure that the essential spectral components, which are in the lower frequency range in the example signal shown in FIG. 2, are not subjected to error propagation during coding. Non-priority code words, which are not hatched in the figures, are placed after the priority code words to fill the grid. It is not necessary that the non-priority code words fit into the grid in one piece, since the length of a Huffman code word results from itself. A decoder therefore knows whether it has only read in part of a code word. In this case, it will automatically add a certain number of bits after the priority code word after the next raster point to the first code word piece. It is thus possible to insert a first part of a non-priority code word in a first, still free position in the grid, and the remaining part of the same at another location, as is represented, for example, by the non-priority code words 7 , 8 and 9 which have each been divided into two in the bit stream, ie 7a, 7b or 8a, 8b or 9a, 9b.

Wie bereits dargestellt wurde, bezieht sich der 2. Teil des Bitstroms von Fig. 1 bereits auf den zweiten Aspekt der vorliegenden Erfindung. Würde der Rasterabstand D1 nicht zu einem kleineren Rasterabstand D2 verändert werden, so würde ein Raster mit dem Abstand D1, in dem alle Prioritätscode­ wörter 1 bis 5 angeordnet werden sollen, zu einem derart langen Bitstrom führen, daß sozusagen nicht genug Nicht- Prioritätscodewörter vorhanden sind, um alle im Raster verbleibenden Lücken aufzufüllen. Erfindungsgemäß werden daher aus einem Audiosignal nur so viel Prioritätscodewörter extrahiert, wie im Bitstrom eingesetzt werden können, damit im wesentlichen keine freien Stellen zurückbleiben, d. h. damit der Bitstrom nicht unnötig verlängert wird.As has already been shown, the second part of the bit stream of FIG. 1 already relates to the second aspect of the present invention. If the grid spacing D1 were not changed to a smaller grid spacing D2, a grid with the spacing D1, in which all priority code words 1 to 5 are to be arranged, would lead to such a long bit stream that there are not enough non-priority code words, so to speak to fill in any gaps remaining in the grid. According to the invention, therefore, only as many priority code words are extracted from an audio signal as can be used in the bit stream, so that essentially no vacancies remain, that is, so that the bit stream is not unnecessarily extended.

Anschließend wird bezugnehmend auf Fig. 1 auf den zweiten Aspekt der vorliegenden Erfindung detailliert eingegangen. The second aspect of the present invention is then discussed in detail with reference to FIG. 1.

Im Falle des Codierverfahrens nach dem Standard MPEG-2 AAC können 11 verschiedene Huffman-Codetabellen zur Codierung verwendet werden. Für die meisten dieser Tabellen beträgt die maximal mögliche Codewortlänge zwischen 10 und 20 Bit. Eine spezielle Tabelle, die sog. "Escape"-Tabelle, umfaßt jedoch eine Länge von maximal 49 Bit. Würde man hier als Rasterabstand D die Länge des längsten Codeworts aller Tabellen verwenden, so erhielte man einen Rasterabstand von 49 Bit, was zu einem Raster mit sehr großer Breite führt und daher für fast alle Tabellen ineffizient ist, da der Bit­ strom viel zu lang werden würde, wenn alle Prioritätscode­ wörter mit einem Rasterpunkt ausgerichtet werden sollen. Erfindungsgemäß wird daher die Breite des Rasters in Ab­ hängigkeit der benutzten Codetabelle eingestellt. Wie bereits eingangs erwähnt wurde, können Spektralwerte in Spektralabschnitte gruppiert werden, wobei dann unter Berücksichtigung signalstatistischer Aspekte jedem Spektralabschnitt eine für denselben optimale Codetabelle zugeordnet wird. Die maximale Codewortlänge in einer Code­ tabelle unterscheidet sich jedoch zumeist von der maximalen Codewortlänge einer anderen Tabelle.In the case of the coding process according to the MPEG-2 AAC standard can use 11 different Huffman code tables for coding be used. For most of these tables is the maximum possible code word length between 10 and 20 bits. A special table, the so-called "escape" table, comprises however, a maximum length of 49 bits. Would you be here as Grid spacing D is the length of the longest code word of all Use tables, you would get a grid spacing of 49 bits, which leads to a grid with a very large width and therefore inefficient for almost all tables since the bit current would be too long if all priority code words to be aligned with a grid point. According to the invention, the width of the grid is therefore in Ab dependency of the code table used. How spectral values in Spectral sections are grouped, then under Consideration of signal statistical aspects everyone Spectral section an optimal code table for the same is assigned. The maximum code word length in a code however, the table usually differs from the maximum Code word length of another table.

So sei angenommen, daß die Spektralwerte, die durch die Codewörter 1 und 2 dargestellt werden, zu einem ersten Spek­ tralabschnitt gehören, während die Spektralwerte, die durch die Codeworte 3-10 dargestellt sind, zu einem zweiten Spektralabschnitt gehören. Der Bitstrom wird nun gerastert, indem 2 Gruppen von Rasterpunkten verwendet werden, wobei die 1. Gruppe von Rasterpunkten die Rasterpunkte 10, 12 und 14 aufweist, während die 2. Gruppe von Rasterpunkten die Rasterpunkte 14, 16 und 18 aufweist. Ferner sei angenommen, daß dem Spektralabschnitt 0 die Huffman-Codetabelle n zuge­ wiesen wurde, während dem Spektralabschnitt 1 die Huffman- Codetabelle m zugeordnet wurde. Außerdem sei angenommen, daß das Codewort 2 das längste Codewort der Tabelle n ist, die dem Spektralabschnitt 0 zugeordnet wurde. Der Rasterabstand der 1. Gruppe von Rasterpunkten wird gemäß der vorliegenden Erfindung größer oder vorzugsweise gleich der maximalen Länge des Codeworts der Tabelle n, im Beispiel also des Code­ worts Nr. 2, eingestellt.Assume that the spectral values represented by code words 1 and 2 belong to a first spectral section, while the spectral values represented by code words 3-10 belong to a second spectral section. The bitstream is now rasterized using two groups of raster points, the first group of raster points having raster points 10 , 12 and 14 , while the second group of raster points has raster points 14 , 16 and 18 . Furthermore, it is assumed that the spectral section 0 was assigned the Huffman code table n, while the spectral section 1 was assigned the Huffman code table m. In addition, assume that code word 2 is the longest code word in table n that was assigned to spectral section 0. According to the present invention, the grid spacing of the 1st group of grid points is set greater or preferably equal to the maximum length of the code word in table n, that is, code word No. 2 in the example.

Der Abschnitt des Bitstroms zwischen dem Rasterpunkt 14 und dem Ende des Bitstroms am Codewort Nr. 10 zeigt dagegen, daß in diesem gewählten Beispiel das Codewort mit der maximalen Länge der Codetabelle m im Bitstrom nicht auftritt. In dem Bitstromraster, das durch die Gruppe 2 bezeichnet ist, existiert also kein Codewort, das eine Länge D2 aufweist.The section of the bit stream between the raster point 14 and the end of the bit stream at code word No. 10, on the other hand, shows that in this selected example the code word with the maximum length of the code table m does not occur in the bit stream. In the bitstream grid, which is designated by group 2 , there is therefore no code word which has a length D2.

Gemäß dem zweiten Aspekt der vorliegenden Erfindung wird die Breite des Rasters also abhängig von der benutzten Codeta­ belle eingestellt. Es sei darauf hingewiesen, daß in diesem Fall jedoch die verwendete Tabelle im Decodierer zur Deco­ dierung bereits bekannt sein muß. Dies ist jedoch der Fall, da als Seiteninformationen ohnehin für jeden Spektralab­ schnitt eine Codetabellennummer übertragen wird, mittels der ein Decodierer die verwendete Codetabelle aus einem vorge­ gebenen Satz von in diesem Beispiel 11 verschiedenen Huff­ man-Tabellen identifizieren kann.According to the second aspect of the present invention, the The width of the grid depends on the codeta used belle set. It should be noted that in this However, the table used in the decoder for deco dation must already be known. However, this is the case since as page information for any spectralab anyway a code table number is transmitted by means of which a decoder the code table used from a pre given set of 11 different Huff in this example one can identify tables.

Wie es bereits angesprochen wurde, ist bei einer Abhängig­ keit des Rasterabstands von der verwendeten Codetabelle besonders wenn an die Escape-Tabelle, deren Länge 49 Bit beträgt, gedacht wird, noch immer keine optimale Datenreduk­ tion zu erreichen, da im Falle einer Escape-Tabelle die Rasterbreite auf 49 Bit eingestellt wird, um maximal große Spektralwerte zu codieren. Escape-Tabellen werden einge­ setzt, um zum einen relativ kurze Codetabellen zu haben, um jedoch zum anderen relativ große Werte mittels der kurzen Codetabellen in Verbindung mit einer Escape-Tabelle codieren zu können. Im Falle eines Werts, der den Wertebereich einer Codetabelle übersteigt, nimmt das Codewort für diesen Spek­ tralwert einen vorbestimmten Wert an, der dem Decodierer signalisiert, daß zusätzlich eine Escape-Tabelle im Codierer verwendet worden ist. Umfaßt eine Codetabelle beispielsweise die Werte von 0-2, so würde ein Wert von 3 in der Code­ tabelle dem Decodierer signalisieren, daß auf eine Escape- Tabelle zurückgegriffen wird. Dem Codewort mit dem Wert 3 der "Grund"-Codetabelle wird gleichzeitig ein Wert der Escape-Tabelle zugeordnet, welcher zusammen mit dem maxi­ malen Wert der Grund-Codetabelle den entsprechenden Spek­ tralwert ergibt.As has already been mentioned, is dependent on one the grid spacing of the code table used especially if the escape table is 49 bits long is, it is still thought, not an optimal data reduction tion because in the case of an escape table the Grid width is set to 49 bits to maximum large To encode spectral values. Escape tables are inserted implements, on the one hand, to have relatively short code tables but on the other hand relatively large values by means of the short ones Code code tables in conjunction with an escape table to be able to. In the case of a value that is within the range of a Code table exceeds, the code word for this spec takes tralwert a predetermined value that the decoder signals that there is also an escape table in the encoder has been used. For example, includes a code table the values from 0-2, so a value of 3 would be in the code signal to the decoder that an escape  Table is used. The code word with the value 3 the "basic" code table becomes a value of the Escape table assigned, which together with the maxi paint value of the basic code table the corresponding spec tral value results.

Gemäß einer weiteren Ausgestaltung des zweiten Aspekts der vorliegenden Erfindung wird der Abstand der Rasterpunkte einer Gruppe (beispielsweise der Gruppe 1 oder der Gruppe 2) nicht mehr gleich der Länge des längsten Codeworts einer Codetabelle eingestellt, sondern gleich der Länge des läng­ sten tatsächlich auftretenden Codeworts in einem Bitstrom, der zu einer Codetabelle gehört. Dies stellt eine weitere Verbesserung gegenüber der ersten Ausgestaltung des zweiten Aspekts der vorliegenden Erfindung dar, da auch trotz dieses Verfahrens die Codiereffizienz bei der Escape-Tabelle immer noch nicht optimal ist. Aus codiertechnischen Gründen ist die Maximallänge des Codes dieser Tabelle (innerhalb eines Spektrums) meist wesentlich geringer. Das längste Codewort in der Escape-Tabelle ist beispielsweise 49 Bit lang. Das längste bei üblichen Audiosignalen tatsächlich auftretende Codewort der Escape-Tabelle ist typischerweise etwa 20 Bit lang. Es ist daher möglich, die Zahl der Rasterpunkte und damit die Zahl der Prioritätscodewörter, die mit den Raster­ punkten ausgerichtet werden können, weiter zu erhöhen, indem zusätzlich die Länge des längsten Codeworts übertragen wird. Die Rasterlänge ergibt sich dann aus dem Minimum aus der tatsächlich auftretenden maximalen Codewortlänge und der theoretisch maximalen Codewortlänge der gerade verwendeten Tabelle. Für die Bestimmung des Minimums ist es möglich, das tatsächlich auftretende Codewort jeder Codetabelle in einem Audioframe oder lediglich das tatsächlich längste Codewort aller Codetabellen in einem Audioframe zu verwenden. Diese Option arbeitet auch für Nicht-Escape-Tabellen, also für "Grund"-Huffman-Tabellen, jedoch bei weitem nicht so effi­ zient wie für die Escape-Tabellen.According to a further embodiment of the second aspect of the present invention, the spacing of the raster points of a group (for example group 1 or group 2 ) is no longer set equal to the length of the longest code word in a code table, but rather to the length of the longest actually occurring code word in a bit stream belonging to a code table. This represents a further improvement over the first embodiment of the second aspect of the present invention, since despite this method, the coding efficiency in the escape table is still not optimal. For reasons of coding technology, the maximum length of the code of this table (within a spectrum) is usually much shorter. For example, the longest code word in the escape table is 49 bits long. The longest code word of the escape table that actually occurs with conventional audio signals is typically about 20 bits long. It is therefore possible to further increase the number of raster points and thus the number of priority code words that can be aligned with the raster points by additionally transmitting the length of the longest code word. The grid length then results from the minimum of the actually occurring maximum code word length and the theoretically maximum code word length of the table currently used. To determine the minimum, it is possible to use the code word of each code table that actually occurs in an audio frame or only the longest code word of all code tables in an audio frame. This option also works for non-escape tables, ie for "basic" Huffman tables, but not nearly as effi ciently as for the escape tables.

Die Übertragung der Maximallänge eines Codeworts in einem Spektralabschnitt hat einen weiteren günstigen Nebeneffekt. Der Decodierer kann nämlich aufgrund der maximalen tatsäch­ lich aufgetretenen Länge erkennen, ob in einem unter Umstän­ den gestörten Bitstrom ein längeres Codewort vorhanden ist. Lange Codeworte bedeuten üblicherweise eine hohe Energie der Spektralwerte. Wenn durch einen Übertragungsfehler ein sehr langes Codewort zustande kommt, können außerordentlich hör­ bare Störungen entstehen. Die Übertragung der Maximallänge ermöglicht somit in den meisten Fällen eine Detektion eines solchen Fehlers und somit Gegenmaßnahmen, welche beispiels­ weise einfach ein Ausblenden dieses zu langen Codeworts sind, oder eine kompliziertere Verschleierungsmaßnahme.The transmission of the maximum length of a code word in one  Spectral section has another favorable side effect. The decoder can namely because of the maximum actual length that has occurred can be recognized whether it is in a a longer code word is present in the disturbed bit stream. Long code words usually mean high energy Spectral values. If by a transmission error a very long code word comes about, can hear extremely bare disturbances arise. The transfer of the maximum length enables detection of a such errors and thus countermeasures, which for example just hide this too long code word are, or a more complicated concealment measure.

An dieser Stelle sei angemerkt, daß für eine möglichst fehlerrobuste und dennoch effiziente Codierung möglichst viele Rasterpunkte erwünscht sind. Die Anzahl der Raster­ punkte nach oben ist jedoch durch die insgesamte Länge des Bitstroms begrenzt. Diese sollte natürlich durch die Raste­ rung nicht vergrößert werden, da dann unbenutzte Stellen im Bitstrom vorhanden sein würden, welche der Philosophie der gesamten Datenkompression widersprechen würden. Dennoch sei darauf hingewiesen, daß zugunsten einer hohen Fehlerrobust­ heit in bestimmten Anwendungsfällen sehr wohl eine Verlän­ gerung des Bitstroms in Kauf genommen werden kann. Anderer­ seits ist es wünschenswert, ein Raster derart anzuordnen, daß möglichst viele Codeworte an Rasterpunkten beginnen. Die vorliegende Erfindung erlaubt somit wirksam im Gegensatz zum Stand der Technik eine Flexibilisierung des Rasterpunktab­ standes. Die Flexibilisierung würde im absolut idealen Fall dazu führen, im wesentlichen jedem Codewort einen Raster­ punkt zuzuordnen, was selbstverständlich nur mit erheblichem Aufwand möglich ist. Die Anordnung der Rasterpunkte, d. h. die Bestimmung der Rasterpunktabstände in Abhängigkeit von den Codetabellen für jeden Spektralabschnitt erlaubt jedoch eine sehr effiziente Annäherung an den Optimalzustand, zumal bei weitem nicht alle Codeworte psychoakustisch bedeutsam sind, und zumal auch alle psychoakustisch weniger bedeutsa­ men Codeworte ebenfalls in den Bitstrom zwischen die rastermäßig angeordneten psychoakustisch bedeutsamen Codeworte so­ zusagen einsortiert werden sollten, damit keine unbenutzten Stellen im Bitstrom erhalten werden.At this point it should be noted that for a possible Error-proof, yet efficient coding if possible many halftone dots are desired. The number of grids points up is due to the total length of the Bit stream limited. This should of course go through the notch enlargement because unused areas in the Bitstream would be present, which is the philosophy of would contradict overall data compression. Still be noted that in favor of a high robustness extension in certain applications bit stream can be accepted. other on the one hand, it is desirable to arrange a grid in such a way that as many code words as possible begin at grid points. The The present invention thus effectively allows in contrast to State of the art to make the grid point more flexible article. The flexibility would be in the absolutely ideal case cause essentially a raster to each code word to assign a point, which is of course only significant Effort is possible. The arrangement of the halftone dots, i. H. the determination of the grid point distances depending on the code tables allowed for each spectral section, however a very efficient approximation to the optimal state, especially since by far not all code words are psychoacoustically significant are, and especially since all psychoacoustically less significant men code words also in the bit stream between the grid  arranged psychoacoustically significant code words promises should be sorted so that no unused ones Digits can be preserved in the bit stream.

Gemäß einem dritten Aspekt der vorliegenden Erfindung wird von der linear mit der Frequenz steigenden Anordnung im Bit­ strom weggegangen, und die Codeworte für verschiedene Spek­ tralwerte werden "gescramblet". Wenn Fig. 1 betrachtet wird, so ist eine gewissermaßen verschachtelte lineare Anordnung der Codeworte mit der Frequenz zu sehen, da die schraffier­ ten Prioritätscodewörter in aufsteigender Frequenzrichtung angeordnet sind, und da die Nicht-Prioritätscodewörter, die nicht schraffiert sind, ebenfalls in aufsteigender Frequenz­ reihenfolge im Bitstrom einsortiert sind. Würde nun bei dem in Fig. 1 dargestellten Bitstrom ein sog. "Burst"-Fehler auftreten, d. h. eine Störung, die zur Beschädigung mehrerer aufeinanderfolgender Codewörter führt, so würden bei­ spielsweise die Codewörter 6, 7a, 2, 3 und 7b gleichzeitig zerstört werden.In accordance with a third aspect of the present invention, the arrangement in the bit stream which increases linearly with the frequency is abandoned and the code words for different spectral values are "scrambled". If FIG. 1 is considered, a somewhat nested linear arrangement of the code words with the frequency can be seen, since the hatched priority code words are arranged in ascending frequency direction, and since the non-priority code words which are not hatched are also in ascending frequency order are sorted in the bitstream. If a so-called "burst" error now occurred in the bit stream shown in FIG. 1, ie a disturbance which leads to the damage of several successive code words, the code words 6 , 7 a, 2 , 3 and 7 b would be simultaneous in example be destroyed.

In dem entsprechenden decodierten Audiosignal würde in dem durch die Prioritätscodewörter 2 und 3 dargestellten Spek­ tralband eine spektralmäßig gesehen relativ breite Störung und damit eher deutlicher hörbare Störung auftreten. Das Problem der Burst-Fehler ist aus dem sehr einfachen Beispiel in Fig. 1 nicht besonders deutlich zu sehen. In der Praxis ist jedoch davon auszugehen, daß viel mehr als fünf Raster­ punkte vorhanden sein werden, wobei sich Burst-Fehler oft über mehrere Rasterpunkte hinweg erstrecken, was zu einem Verlust an Daten für ein relativ breites Frequenzband führen kann. Daher werden gemäß dem dritten Aspekt der vorliegenden Erfindung vorzugsweise die Prioritätscodewörter und optional dazu auch die Nicht-Prioritätscodewörter für die Spektral­ werte nicht mehr in aufsteigender Frequenzreihenfolge sondern "gemischt" angeordnet, derart, daß dieselben eine zufällige oder pseudozufällige frequenzmäßige Anordnung haben. Bei einer pseudozufälligen Anordnung müssen keine Informationen bezüglich der Verteilung als Seiteninformationen übertragen werden, da diese Verteilung im Decodierer a priori fest eingestellt werden kann. Dies würde dann dazu führen, daß ein Verlust von im Bitstrom benachbarten Code­ wörtern nicht zu einem Verlust eines vollständigen Fre­ quenzbands führt, sondern nur zu einem sehr kleinen Verlust in mehreren Frequenzbändern. Diese Störung dürfte kaum hörbar sein und könnte auch effizienter verschleiert werden als ein Verlust eines gesamten Frequenzbands.In the corresponding decoded audio signal, a spectral bandwith relatively broad interference and thus a more clearly audible interference would occur in the spectral band represented by the priority code words 2 and 3 . The problem of burst errors cannot be seen particularly clearly from the very simple example in FIG. 1. In practice, however, it can be assumed that there will be much more than five raster points, with burst errors often extending over several raster points, which can lead to a loss of data for a relatively broad frequency band. Therefore, according to the third aspect of the present invention, preferably the priority code words and optionally also the non-priority code words for the spectral values are no longer arranged in ascending frequency order but "mixed" in such a way that they have a random or pseudo-random frequency arrangement. In the case of a pseudo-random arrangement, no information regarding the distribution has to be transmitted as side information, since this distribution can be set a priori in the decoder. This would then lead to the fact that a loss of code words neighboring in the bit stream does not lead to a loss of a complete frequency band, but only to a very small loss in several frequency bands. This interference is unlikely to be audible and could also be obscured more efficiently than losing an entire frequency band.

Gemäß einem vierten Aspekt der vorliegenden Erfindung ist statt einer linear mit der Frequenz ansteigenden Anordnung der Prioritätscodewörter bzw. der Nicht-Prioritätscodewörter eine Anordnung möglich, die nur z. B. jedes n-te Codewort im Raster anordnet und die restlichen Codewörter dazwischen einsortiert. Wie es bereits erwähnt wurde, ist die Anzahl der Rasterpunkte für einen Bitstrom durch die insgesamte Länge und den gewählten Rasterpunktabstand begrenzt. Wenn beispielsweise an eine Abtastung mit niedriger Bandbreite gedacht wird, so kann der Fall auftreten, daß von den Code­ wörtern die allermeisten psychoakustisch bedeutsame Code­ wörter sind, da das gesamte Signal eine theoretisch mögliche Nutzbandbreite von 8 kHz hat, wenn eine Abtastrate von 16 kHz verwendet wird. Erfahrungsgemäß können nur 30% der Code­ wörter an Rasterpunkten angeordnet werden, wobei die rest­ lichen 70% verwendet werden müssen, um das Raster vollends aufzufüllen. Dies würde jedoch bedeuten, daß nicht der ge­ samte richtige Frequenzbereich bei Sprachsignalen beispiels­ weise der Bereich von 0-4 kHz mit Prioritätscodewörtern, die an Rasterpunkten angeordnet sind, abgedeckt bzw. "ge­ schützt" werden kann. Um dennoch für den wichtigen Frequenz­ bereich einen ausreichenden Schutz vor Fehlerfortpflanzungen zu erreichen, wird daher nicht mehr jedes Prioritätscodewort sondern lediglich jedes 2., 3. oder 4. usw. mit einem Ra­ sterpunkt ausgerichtet, während die dazwischenliegenden Prioritätscodewörter nicht mit Rasterpunkten ausgerichtet werden, sondern das Raster auffüllen. Wenn beispielsweise im niedrigen Frequenzbereich jeder 2. Spektralwert bzw. jeder 3. usw. bekannt ist, so können die dazwischenliegenden Codewörter, wenn sie bei einer Übertragung beschädigt werden, im Decodierer unter Umständen durch Fehlerverschleierungstech­ niken, wie z. B. eine Prädiktion o. ä., wiederhergestellt werden.According to a fourth aspect of the present invention instead of an arrangement that increases linearly with frequency the priority code words or the non-priority code words an arrangement possible that only z. B. every nth code word in Arranges the grid and the remaining code words in between sorted. As it was mentioned before, the number is the grid points for a bit stream through the total The length and the selected grid point spacing are limited. If for example, a low bandwidth scan is thought, the case may occur that of the code most of the words are psychoacoustically significant codes words because the entire signal is theoretically possible Usable bandwidth of 8 kHz if a sampling rate of 16 kHz is used. Experience has shown that only 30% of the code words are arranged at grid points, the rest Lichen 70% must be used to complete the grid fill. However, this would mean that the ge entire correct frequency range for voice signals, for example the range from 0-4 kHz with priority code words, which are arranged at grid points, covered or "ge protects "can. Nevertheless, for the important frequency adequate protection against error propagation therefore, not every priority code word will be reached but only every 2nd, 3rd or 4th etc. with a Ra point aligned, while the intermediate Priority code words not aligned with halftone dots but fill up the grid. For example, if in low frequency range every 2nd spectral value or every 3. etc. is known, the intervening code words,  if they are damaged during transmission, in Decoder may be due to error concealment technology niken, such as B. a prediction or the like, restored become.

Die Verfahren bzw. Vorrichtungen zum Decodieren eines Bit­ stroms arbeiten im wesentlichen spiegelbildlich zu der be­ schriebenen Codierung.The methods and devices for decoding a bit currents work essentially in mirror image of the be written coding.

Bei einem allgemeinen Verfahren zum Decodieren eines Bit­ stroms, der ein codiertes Audiosignal darstellt, wobei der codierte Bitstrom Codewörter mit unterschiedlicher Länge aus einer Codetabelle und ein Raster mit äquidistanten Raster­ punkten (10, 12, 14) aufweist, wobei die Codewörter Priori­ tätscodewörter aufweisen, die bestimmte Spektralwerte dar­ stellen, die im Vergleich zu anderen Spektralwerten psycho­ akustisch bedeutsam sind, und wobei Prioritätscodewörter mit Rasterpunkten ausgerichtet sind, wird (a) der Abstand D1 zwischen zwei benachbarten Rasterpunkten erfaßt. Wenn der Abstand zwischen zwei Rasterpunkten bekannt ist, können (b) die mit den Rasterpunkten ausgerichteten Prioritätscode­ wörter in dem codierten Bitstrom umsortiert werden, derart, daß eine frequenzmäßig lineare Anordnung derselben erhalten wird, wobei der Beginn eines Prioritätscodeworts mit einem Rasterpunkt zusammenfällt. Nun liegen die Prioritätscode­ worte wieder in der in Fig. 2 gezeigten allgemein frequenz­ linearen Anordnung vor, womit (c) die Prioritätscodewörter mit einer Codetabelle, der dieselben angehören, wieder de­ codiert werden können, um decodierte Spektralwerte zu erhalten. Nach einer (d) Rücktransformation der decodierten Spektralwerte in den Zeitbereich liegt ein decodiertes Audiosignal vor, das auf bekannte Art und Weise verarbeitet werden kann, um beispielsweise einem Lautsprecher zugeführt zu werden.In a general method for decoding a bit stream which represents an encoded audio signal, the encoded bit stream having code words of different lengths from a code table and a raster with equidistant raster points ( 10 , 12 , 14 ), the code words having priority code words, which represent certain spectral values that are psycho-acoustically significant compared to other spectral values, and wherein priority code words are aligned with halftone dots, (a) the distance D1 between two adjacent halftone dots is detected. If the distance between two halftone dots is known, (b) the priority code words aligned with the halftone dots can be rearranged in the coded bit stream such that a frequency linear arrangement thereof is obtained, the beginning of a priority code word coinciding with a halftone dot. The priority code words are now again in the generally frequency-linear arrangement shown in FIG. 2, with which (c) the priority code words can be decoded again with a code table to which they belong in order to obtain decoded spectral values. After a (d) inverse transformation of the decoded spectral values into the time domain, there is a decoded audio signal which can be processed in a known manner, for example in order to be supplied to a loudspeaker.

Ist der Bitstrom mit nur einer einzigen Codetabelle codiert, so kann der Abstand der Rasterpunkte einfach erfaßt werden, indem den Seiteninformationen des Bitstroms entnommen wird, mit welcher Codetabelle codiert wurde. Je nach beschriebener Codierung ist der Abstand dann beispielsweise die Länge des längsten Codeworts dieser Tabelle, die im Codierer fest eingestellt sein könnte. Ist der Abstand die Länge des tatsächlich auftretenden längsten Codeworts in einem Teil des Bitstroms, dem eine Codetabelle zugeordnet ist, so wird derselbe mittels der Seiteninformationen, die dem Bitstrom zugeordnet sind, dem Decodierer mitgeteilt, usw.If the bitstream is encoded with only a single code table, so the distance between the halftone dots can be easily grasped, by taking the bitstream's side information,  with which code table was encoded. Depending on the described The distance is then, for example, the length of the coding longest code word of this table, which is fixed in the encoder could be set. The distance is the length of the actually occurring longest code word in one part of the bit stream to which a code table is assigned the same by means of the side information associated with the bit stream assigned to the decoder, etc.

Der Decodierer führt eine Umsortierung der Prioritäts­ codewörter und auch der Nicht-Prioritätscodewörter durch, indem er z. B. einen Zeiger auf den codierten Bitstrom anwendet. Ist dem Decodierer der Rasterabstand bekannt, so kann derselbe bei frequenzmäßig linearer Anordnung der Prioritätscodewörter zu einem Rasterpunkt springen und das dort beginnende Codewort einlesen. Ist das Einlesen eines Codeworts beendet, so springt der Zeiger zu dem nächsten Rasterpunkt und wiederholt den beschriebenen Vorgang. Sind alle Prioritätscodewörter eingelesen, so befinden sich im Bitstrom noch die Nicht-Prioritätscodewörter. Wurde eine jeweils lineare Anordnung der Prioritätscodewörter bzw. der Nicht-Prioritätscodewörter im Bitstrom gewählt, so sind die Nicht-Prioritätscodewörter für sich bereits linear mit der Frequenz angeordnet und können ohne weitere Umsortierung wieder decodiert und rücktransformiert werden.The decoder rearranges the priority code words and also the non-priority code words by by z. B. a pointer to the encoded bit stream applies. If the raster spacing is known to the decoder, then can the same with frequency linear arrangement of Jump priority code words to a grid point and that Read the code word beginning there. Is reading one Code word ends, the pointer jumps to the next one Halftone dot and repeats the process described. are all priority code words are read, so are in the Bitstream still the non-priority code words. Became a each linear arrangement of the priority code words or Non-priority code words selected in the bit stream, so are Non-priority code words are already linear with the Frequency arranged and can be without further resorting be decoded and re-transformed.

Wurde einer Codierung nach dem dritten bzw. vierten Aspekt der vorliegenden Erfindung gewählt, so können Scramble-In­ formationen entweder als Seiteninformationen übertragen werden, oder die Scrambleverteilung ist a priori festgelegt und damit auch dem Decodierer von vorneherein bekannt. Bezüglich des vierten Aspekts gelten dieselben Dinge. Es besteht immer die Möglichkeit, eine Verteilung fest zu vereinbaren oder variabel zu gestalten und dann dem Deco­ dierer über Seiteninformationen mitzuteilen.Has been coding according to the third or fourth aspect of the present invention, scramble-in Formations either transmitted as page information or the scramble distribution is fixed a priori and thus also known to the decoder from the start. The same things apply to the fourth aspect. It there is always the possibility to fix a distribution agree or make variable and then the deco to inform about page information.

Claims (18)

1. Verfahren zum Codieren eines Audiosignals, um einen co­ dierten Bitstrom zu erhalten, mit folgenden Schritten:
  • a) Transformieren von zeitdiskreten Abtastwerten des Audiosignals in den Frequenzbereich, um Spektral­ werte zu erhalten, die das Audiosignal darstellen;
  • b) Codieren der Spektralwerte mit einer Codetabelle, die eine begrenzte Anzahl von Codewörtern unter­ schiedlicher Länge aufweist, um durch Codeworte co­ dierte Spektralwerte zu erhalten, wobei die Länge eines einem Spektralwert zugeordneten Codeworts im allgemeinen um so kürzer ist, je höher die Auf­ trittswahrscheinlichkeit des Spektralwerts ist;
  • c) Festlegen eines Rasters für den codierten Bitstrom, wobei das Raster äquidistante Rasterpunkte (10, 12, 14) aufweist, und wobei der Abstand (D1) der Raster­ punkte von der Codetabelle abhängt; und
  • d) Positionieren von Prioritätscodewörtern, die be­ stimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psychoakustisch bedeutsam sind, im Raster, derart, daß der Beginn jedes Prio­ ritätscodeworts mit einem Rasterpunkt zusammenfällt.
1. A method of encoding an audio signal to obtain a coded bit stream, comprising the following steps:
  • a) transforming discrete-time samples of the audio signal into the frequency domain to obtain spectral values that represent the audio signal;
  • b) coding the spectral values with a code table which has a limited number of code words of different lengths in order to obtain coded spectral values by codewords, the length of a code word assigned to a spectral value being generally shorter, the higher the probability of occurrence of the Is spectral value;
  • c) determining a grid for the coded bit stream, the grid having equidistant grid points ( 10 , 12 , 14 ) and the spacing (D1) of the grid points depending on the code table; and
  • d) positioning priority code words which represent certain spectral values which are psychoacoustically significant in comparison to other spectral values, in such a way that the start of each priority code word coincides with a raster point.
2. Verfahren nach Anspruch 1, bei dem Prioritätscodewörter Codewörter sind, die Spektralwerte mit niedriger Fre­ quenz und/oder hoher Energie codieren.2. The method of claim 1, wherein the priority code words Are codewords, the spectral values with low Fre encode frequency and / or high energy. 3. Verfahren nach Anspruch 1 oder 2, bei dem der Abstand der Rasterpunkte etwas kleiner, gleich oder größer als das längste Codewort der Codetabelle oder gleich oder größer als das längste tatsächlich auftretende Codewort im Bitstrom ist. 3. The method of claim 1 or 2, wherein the distance the halftone dots are slightly smaller, equal to or larger than the longest code word in the code table or equal to or larger than the longest code word actually occurring is in the bitstream.   4. Verfahren zum Codieren eines Audiosignals, um einen co­ dierten Bitstrom zu erhalten, mit folgenden Schritten:
  • a) Transformieren von zeitdiskreten Abtastwerten des Audiosignals in den Frequenzbereich, um Spektral­ werte zu erhalten, die das Audiosignal darstellen;
  • b) Gruppieren der Spektralwerte in aneinandergrenzende Spektralabschnitte, wobei jeder Spektralabschnitt wenigstens einen Spektralwert umfaßt;
  • c) Zuweisen von zumindest zwei unterschiedlichen Code­ tabellen aus einer vorgegebenen Anzahl von Codeta­ bellen zu zwei unterschiedlichen Spektralabschnit­ ten, wobei einem Spektralabschnitt die Codetabelle zugewiesen wird, die für die Codierung der Spektral­ werte in dem Spektralabschnitt am günstigsten ist;
  • d) Codieren der Spektralwerte aus den Spektralabschnit­ ten mit der Codetabelle, die dem entsprechenden Spektralabschnitt zugewiesen ist, wobei die Länge eines einem Spektralwert zugeordneten Codeworts im allgemeinen um so kürzer ist, je höher die Auf­ trittswahrscheinlichkeit des Spektralwerts ist;
  • e) Festlegen eines Rasters für den codierten Bitstrom, wobei das Raster zumindest zwei Gruppen von Raster­ punkten (10, 12, 14 bzw. 14, 16, 18) aufweist, wobei die Rasterpunkte jeder Gruppe in sich äquidistant angeordnet sind, und wobei der Rasterpunktabstand (D1 bzw. D2) jeder Gruppe von einer entsprechenden der zumindest zwei unterschiedlichen Codetabellen abhängt; und
  • f) Positionieren von Prioritätscodewörtern, die be­ stimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psychoakustisch bedeutsam sind, im Raster, derart, daß der Beginn jedes Prioritätscodeworts jeder Codetabelle mit einem Raster­ punkt (10, 12, 14 bzw. 14, 16, 18) in der entspre­ chenden Gruppe von Rasterpunkten zusammenfällt.
4. A method of encoding an audio signal to obtain a coded bit stream, comprising the following steps:
  • a) transforming discrete-time samples of the audio signal into the frequency domain to obtain spectral values that represent the audio signal;
  • b) grouping the spectral values into adjacent spectral sections, each spectral section comprising at least one spectral value;
  • c) assigning at least two different code tables from a predetermined number of code tables to two different spectral sections, with a spectral section being assigned the code table which is the cheapest for coding the spectral values in the spectral section;
  • d) coding the spectral values from the spectral sections with the code table which is assigned to the corresponding spectral section, the length of a code word assigned to a spectral value being generally shorter, the higher the probability of occurrence of the spectral value;
  • e) Definition of a grid for the coded bit stream, the grid having at least two groups of grid points ( 10 , 12 , 14 or 14 , 16 , 18 ), the grid points of each group being arranged equidistantly in each other, and wherein the grid point spacing (D1 or D2) of each group depends on a corresponding one of the at least two different code tables; and
  • f) positioning of priority code words, which represent certain spectral values that are psychoacoustically significant in comparison to other spectral values, in such a way that the beginning of each priority code word of each code table with a raster point ( 10 , 12 , 14 or 14 , 16 , 18 ) in the corresponding group of halftone dots.
5. Verfahren nach Anspruch 4, bei dem der Rasterpunktab­ stand (D1, D2) jeder Gruppe von Rasterpunkten kleiner, gleich oder größer als die Länge des längsten Codeworts der entsprechenden Codetabelle ist.A method according to claim 4, wherein the halftone dot starts stood (D1, D2) of each group of halftone dots smaller, equal to or greater than the length of the longest code word the corresponding code table. 6. Verfahren nach Anspruch 4, bei dem der Rasterpunktab­ stand (D1, D2) jeder Gruppe von Rasterpunkten gleich der Länge des tatsächlich längsten Codeworts für einen Spek­ tralwert in dem entsprechenden Spektralabschnitt ist; und bei dem die Länge des tatsächlichen längsten Codeworts eines Spektralabschnitts als Seiteninformationen zum Bitstrom übertragen wird.The method according to claim 4, wherein the halftone dot starts (D1, D2) of each group of halftone dots equal to that Length of the actually longest code word for a spek tral value in the corresponding spectral section; and where the length of the actual longest code word of a spectral section as side information for Bit stream is transmitted. 7. Verfahren nach Anspruch 4, bei dem der Rasterpunktabstand ei­ ner Gruppe von Rasterpunkten derart bestimmt wird, daß derselbe gleich dem Minimum aus dem tasächlich längsten Codewort aller gruppierten Spektralabschnitte und dem längsten Codewort der Codetabelle dieser Gruppe ist, wo­ bei das tatsächlich längste Codewort als Seiteninforma­ tionen zu einem Decodierer übertragen wird.7. The method according to claim 4, wherein the grid point spacing is egg ner group of halftone dots is determined such that the same as the minimum of the longest actually Codeword of all grouped spectral sections and the longest code word of the code table of this group is where at actually the longest code word as page information tion is transmitted to a decoder. 8. Verfahren nach einem der vorhergehenden Ansprüche, bei dem bezüglich der Prioritätscodewörter und der Nicht- Prioritätscodewörter im Raster des Bitstroms jeweils eine frequenzmäßig im wesentlichen lineare Anordnung der Codewörter eingehalten wird.8. The method according to any one of the preceding claims, at the priority code words and the non- Priority code words in the grid of the bit stream each a frequency linear arrangement of the Code words are observed. 9. Verfahren nach einem der Ansprüche 1-7, bei dem die Codewörter, die codierte Spektralwerte darstellen, im Raster des Bitstroms unabhängig von der Frequenz der entsprechenden Spektralwerte angeordnet werden. 9. The method according to any one of claims 1-7, wherein the Codewords that represent coded spectral values in the Grid of the bit stream regardless of the frequency of the corresponding spectral values can be arranged.   10. Verfahren nach Anspruch 9, bei dem Informationen bezüglich der Zuordnung zwischen der Frequenz und dem Codewort als Seiteninformationen in den Bitstrom ein­ gebracht werden, wenn die von der Frequenz unabhängige Verteilung nicht vorbestimmt ist.10. The method of claim 9, wherein the information regarding the association between the frequency and the Code word as page information in the bit stream brought when the frequency independent Distribution is not predetermined. 11. Verfahren nach einem der vorhergehenden Ansprüche, bei dem lediglich jedes n-te Codewort der Prioritätscode­ wörter im Raster des Bitstroms angeordnet wird, während die restlichen Prioritätscodewörter und Nicht-Priori­ tätscodewörter nicht an Rasterpunkten ausgerichtet wer­ den.11. The method according to any one of the preceding claims, at the priority code only every nth code word words is arranged in the grid of the bit stream while the remaining priority code words and non-priori code words not aligned with grid points the. 12. Verfahren nach einem der vorhergehenden Ansprüche, bei dem die Spektralwerte vor dem Codieren unter Berück­ sichtigung des psychoakustischen Modells quantisiert werden.12. The method according to any one of the preceding claims, at which the spectral values before coding under consideration quantification of the psychoacoustic model become. 13. Vorrichtung zum Codieren eines Audiosignals, um einen codierten Bitstrom zu erhalten, mit folgenden Merkmalen:
  • a) einer Einrichtung zum Transformieren von zeitdis­ kreten Abtastwerten des Audiosignals in den Fre­ quenzbereich, um Spektralwerte zu erhalten, die das Audiosignal darstellen;
  • b) einer Einrichtung zum Codieren der Spektralwerte mit einer Codetabelle, die eine begrenzte Anzahl von Codewörtern unterschiedlicher Länge aufweist, um durch Codeworte codierte Spektralwerte zu erhalten, wobei die Länge eines einem Spektralwert zugeordne­ ten Codeworts im allgemeinen um so kürzer ist, je höher die Auftrittswahrscheinlichkeit des Spektral­ werts ist;
  • c) einer Einrichtung zum Festlegen eines Rasters für den codierten Bitstrom, wobei das Raster äquidi­ stante Rasterpunkte (10, 12, 14) aufweist, und wobei der Abstand (D1) der Rasterpunkte von der Codetabel­ le abhängt; und
  • d) einer Einrichtung zum Positionieren von Prioritäts­ codewörtern, die bestimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psycho­ akustisch bedeutsam sind, im Raster, derart, daß der Beginn jedes Prioritätscodeworts mit einem Raster­ punkt zusammenfällt.
13. An apparatus for encoding an audio signal to obtain an encoded bit stream, having the following features:
  • a) a device for transforming discrete-time samples of the audio signal into the frequency range in order to obtain spectral values which represent the audio signal;
  • b) a device for coding the spectral values with a code table which has a limited number of code words of different lengths in order to obtain spectral values coded by code words, the length of a code word assigned to a spectral value generally being the shorter the higher the probability of occurrence of the spectral value;
  • c) a device for specifying a grid for the coded bit stream, the grid having equidistant grid points ( 10 , 12 , 14 ), and the distance (D1) of the grid points depending on the code table le; and
  • d) a device for positioning priority code words that represent certain spectral values that are psycho-acoustically significant compared to other spectral values, in a grid such that the beginning of each priority code word coincides with a grid point.
14. Vorrichtung zum Codieren eines Audiosignals, um einen codierten Bitstrom zu erhalten, mit folgenden Merkmalen:
  • a) einer Einrichtung zum Transformieren von zeitdiskre­ ten Abtastwerten des Audiosignals in den Frequenzbe­ reich, um Spektralwerte zu erhalten, die das Audio­ signal darstellen;
  • b) einer Einrichtung zum Gruppieren der Spektralwerte in aneinandergrenzende Spektralabschnitte, wobei jeder Spektralabschnitt wenigstens einen Spektral­ wert umfaßt;
  • c) einer Einrichtung zum Zuweisen von zumindest zwei unterschiedlichen Codetabellen aus einer vorgege­ benen Anzahl von Codetabellen zu zwei unterschied­ lichen Spektralabschnitten, wobei einem Spektralab­ schnitt die Codetabelle zugewiesen wird, die für die Codierung der Spektralwerte in dem Spektralabschnitt am günstigsten ist;
  • d) einer Einrichtung zum Codieren der Spektralwerte aus den Spektralabschnitten mit der Codetabelle, die dem entsprechenden Spektralabschnitt zugewiesen ist, wo­ bei die Länge eines einem Spektralwert zugeordneten Codeworts im allgemeinen um so kürzer ist, je höher die Auftrittswahrscheinlichkeit des Spektralwerts ist;
  • e) einer Einrichtung zum Festlegen eines Rasters für den codierten Bitstrom, wobei das Raster zumindest zwei Gruppen von Rasterpunkten (10, 12, 14 bzw. 14, 16, 18) aufweist, wobei die Rasterpunkte jeder Grup­ pe in sich äquidistant angeordnet sind, und wobei der Rasterpunktabstand (D1 bzw. D2) jeder Gruppe von einer entsprechenden der zumindest zwei unterschied­ lichen Codetabellen abhängt; und
  • f) einer Einrichtung zum Positionieren von Prioritäts­ codewörtern, die bestimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psycho­ akustisch bedeutsam sind, im Raster, derart, daß der Beginn jedes Prioritätscodeworts jeder Codetabelle mit einem Rasterpunkt (10, 12, 14 bzw. 14, 16, 18) in der entsprechenden Gruppe von Rasterpunkten zusammenfällt.
14. Device for coding an audio signal in order to obtain a coded bit stream, having the following features:
  • a) a device for transforming time-discrete samples of the audio signal into the frequency range to obtain spectral values that represent the audio signal;
  • b) a device for grouping the spectral values into adjacent spectral sections, each spectral section comprising at least one spectral value;
  • c) a device for assigning at least two different code tables from a predetermined number of code tables to two different spectral sections, one spectral section being assigned the code table which is the cheapest for coding the spectral values in the spectral section;
  • d) a device for coding the spectral values from the spectral sections with the code table which is assigned to the corresponding spectral section, where the length of a code word assigned to a spectral value is generally shorter, the higher the probability of occurrence of the spectral value;
  • e) a device for defining a grid for the coded bit stream, the grid having at least two groups of grid points ( 10 , 12 , 14 or 14 , 16 , 18 ), the grid points of each group being arranged equidistantly in themselves, and wherein the grid point spacing (D1 or D2) of each group depends on a corresponding one of the at least two different code tables; and
  • f) a device for positioning priority code words, which represent certain spectral values that are psycho-acoustically significant compared to other spectral values, in a grid such that the start of each priority code word of each code table with a grid point ( 10 , 12 , 14 and 14 , 16 , 18 ) in the corresponding group of halftone dots.
15. Verfahren zum Decodieren eines Bitstroms, der ein co­ diertes Audiosignal darstellt, wobei der codierte Bit­ strom Codewörter mit unterschiedlicher Länge aus einer Codetabelle und ein Raster mit äquidistanten Raster­ punkten (10, 12, 14) aufweist, wobei der Abstand der Rasterpunkte von der Codetabelle abhängt, wobei die Codewörter Prioritätscodewörter aufweisen, die bestimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psychoakustisch bedeutsam sind, und wobei Prioritätscodewörter mit Rasterpunkten ausgerichtet sind, mit folgenden Schritten:
  • a) Erfassen des Abstands (D1) zwischen zwei benachbar­ ten Rasterpunkten;
  • b) Umsortieren der mit den Rasterpunkten ausgerichteten Prioritätscodewörter in dem codierten Bitstrom, der­ art, daß eine frequenzmäßig lineare Anordnung der­ selben erhalten wird, wobei der Beginn eines Prioritätscodeworts mit einem Rasterpunkt zusammenfällt;
  • c) Decodieren der Prioritätscodewörter mit einer Code­ tabelle, der dieselben angehören, um decodierte Spektralwerte zu erhalten; und
  • d) Rücktransformieren der decodierten Spektralwerte in den Zeitbereich, um ein decodiertes Audiosignal zu erhalten.
15. A method for decoding a bit stream which represents a coded audio signal, the coded bit stream having codewords with different lengths from a code table and a grid having equidistant grids ( 10 , 12 , 14 ), the spacing of the grid points from the Code table, the code words having priority code words that represent certain spectral values that are psychoacoustically significant compared to other spectral values, and wherein priority code words are aligned with halftone dots, with the following steps:
  • a) detecting the distance (D1) between two adjacent grid points;
  • b) reordering the priority code words aligned with the halftone dots in the coded bit stream such that a frequency-linear arrangement of the same is obtained, the start of a priority code word coinciding with a halftone dot;
  • c) decoding the priority code words with a code table to which they belong in order to obtain decoded spectral values; and
  • d) transforming the decoded spectral values back into the time domain in order to obtain a decoded audio signal.
16. Verfahren zum Decodieren eines Bitstroms, der ein co­ diertes Audiosignal darstellt, wobei der codierte Bit­ strom Codewörter mit unterschiedlicher Länge aus zumin­ dest zwei Codetabellen und ein Raster mit zumindest zwei Gruppen von äquidistanten Rasterpunkten (10, 12, 14 bzw. 14, 16, 18) aufweist, wobei der Abstand der Rasterpunkte jeder Gruppe von einer entsprechenden der zumindest zwei unterschiedlichen Codetabellen abhängt, wobei die Code­ wörter Prioritätscodewörter aufweisen, die bestimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psychoakustisch bedeutsam sind, und wobei Prioritätscodewörter mit Rasterpunkten ausgerichtet sind, mit folgenden Schritten:
  • a) Erfassen des Abstands (D1, D2) zwischen zwei benach­ barten Rasterpunkten;
  • b) Umsortieren der mit den Rasterpunkten ausgerichteten Prioritätscodewörter in dem codierten Bitstrom, der­ art, daß eine frequenzmäßig lineare Anordnung der­ selben erhalten wird, wobei der Beginn eines Priori­ tätscodeworts mit einem Rasterpunkt zusammenfällt;
  • c) Ermitteln der einem Spektralabschnitt zugeordneten Codetabelle
  • d) Decodieren der Prioritätscodewörter eines Spektral­ abschnitts mit der entsprechenden Codetabelle, der dieselben angehören, um decodierte Spektralwerte zu erhalten; und
  • e) Rücktransformieren der decodierten Spektralwerte in den Zeitbereich, um ein decodiertes Audiosignal zu erhalten.
16. A method for decoding a bit stream which represents a coded audio signal, the coded bit stream having codewords of different lengths consisting of at least two code tables and a raster with at least two groups of equidistant raster points ( 10 , 12 , 14 and 14 , 16 , 18 ), the spacing of the raster points of each group depending on a corresponding one of the at least two different code tables, the code words having priority code words that represent certain spectral values that are psychoacoustically significant in comparison with other spectral values, and wherein priority code words are aligned with raster points with the following steps:
  • a) detecting the distance (D1, D2) between two neighboring grid points;
  • b) rearranging the priority code words aligned with the raster points in the coded bit stream, such that a frequency-linear arrangement of the same is obtained, the beginning of a priority code word coinciding with a raster point;
  • c) determining the code table assigned to a spectral section
  • d) decoding the priority code words of a spectral section with the corresponding code table to which they belong in order to obtain decoded spectral values; and
  • e) transforming the decoded spectral values back into the time domain in order to obtain a decoded audio signal.
17. Vorrichtung zum Decodieren eines Bitstroms, der ein co­ diertes Audiosignal darstellt, wobei der codierte Bit­ strom Codewörter mit unterschiedlicher Länge aus einer Codetabelle und ein Raster mit äquidistanten Rasterpunk­ ten (10, 12, 14) aufweist, wobei der Abstand der Raster­ punkte von der Codetabelle abhängt, wobei die Codewörter Prioritätscodewörter aufweisen, die bestimmte Spektral­ werte darstellen, die im Vergleich zu anderen Spektral­ werten psychoakustisch bedeutsam sind, und wobei Priori­ tätscodewörter mit Rasterpunkten ausgerichtet sind, mit folgenden Merkmalen:
  • a) einer Einrichtung zum Erfassen des Abstands (D1) zwischen zwei benachbarten Rasterpunkten;
  • b) einer Einrichtung zum Umsortieren der mit den Ra­ sterpunkten ausgerichteten Prioritätscodewörter in dem codierten Bitstrom, derart, daß eine frequenz­ mäßig lineare Anordnung derselben erhalten wird, wo­ bei der Beginn eines Prioritätscodeworts mit einem Rasterpunkt zusammenfällt;
  • c) einer Einrichtung zum Decodieren der Prioritätscode­ wörter mit einer Codetabelle, der dieselben ange­ hören, um decodierte Spektralwerte zu erhalten; und
  • d) einer Einrichtung zum Rücktransformieren der deco­ dierten Spektralwerte in den Zeitbereich, um ein de­ codiertes Audiosignal zu erhalten.
17. Device for decoding a bit stream, which represents a coded audio signal, the coded bit stream having codewords of different lengths from a code table and a grid with equidistant grid points ( 10 , 12 , 14 ), the spacing of the grid points from depends on the code table, the code words having priority code words that represent certain spectral values that are psychoacoustically significant in comparison to other spectral values, and wherein priority code words are aligned with halftone dots, with the following features:
  • a) a device for detecting the distance (D1) between two adjacent raster points;
  • b) means for re-sorting the priority code words aligned with the raster points in the coded bit stream such that a frequency-moderately linear arrangement thereof is obtained where a raster point coincides with the beginning of a priority code word;
  • c) means for decoding the priority code words with a code table which they belong to in order to obtain decoded spectral values; and
  • d) a device for transforming the decoded spectral values back into the time domain in order to obtain a decoded audio signal.
18. Vorrichtung zum Decodieren eines Bitstroms, der ein codiertes Audiosignal darstellt, wobei der codierte Bit­ strom Codewörter mit unterschiedlicher Länge aus zumin­ dest zwei Codetabellen und ein Raster mit zumindest zwei Gruppen von äquidistanten Rasterpunkten (10, 12, 14 bzw. 14, 16, 18) aufweist, wobei der Abstand der Rasterpunkte jeder Gruppe von einer entsprechenden der zumindest zwei unterschiedlichen Codetabellen abhängt, wobei die Code­ wörter Prioritätscodewörter aufweisen, die bestimmte Spektralwerte darstellen, die im Vergleich zu anderen Spektralwerten psychoakustisch bedeutsam sind, und wobei Prioritätscodewörter mit Rasterpunkten ausgerichtet sind, mit folgenden Merkmalen:
  • a) einer Einrichtung zum Erfassen des Abstands (D1, D2) zwischen zwei benachbarten Rasterpunkten;
  • b) einer Einrichtung zum Umsortieren der mit den Ra­ sterpunkten ausgerichteten Prioritätscodewörter in dem codierten Bitstrom, derart, daß eine frequenz­ mäßig lineare Anordnung derselben erhalten wird, wo­ bei der Beginn eines Prioritätscodeworts mit einem Rasterpunkt zusammenfällt;
  • c) einer Einrichtung zum Ermitteln der einem Spektral­ abschnitt zugeordneten Codetabelle;
  • d) einer Einrichtung zum Decodieren der Prioritätscode­ wörter eines Spektralabschnitts mit der entsprechen­ den Codetabelle, der dieselben angehören, um deco­ dierte Spektralwerte zu erhalten; und
  • e) einer Einrichtung zum Rücktransformieren der deco­ dierten Spektralwerte in den Zeitbereich, um ein de­ codiertes Audiosignal zu erhalten.
18. Device for decoding a bit stream, which represents a coded audio signal, the coded bit stream having codewords of different lengths consisting of at least two code tables and a raster with at least two groups of equidistant raster points ( 10 , 12 , 14 or 14 , 16 , 18 ), the spacing of the raster points of each group depending on a corresponding one of the at least two different code tables, the code words having priority code words that represent certain spectral values that are psychoacoustically significant compared to other spectral values, and wherein priority code words are aligned with raster points , with the following features:
  • a) a device for detecting the distance (D1, D2) between two adjacent raster points;
  • b) means for re-sorting the priority code words aligned with the raster points in the coded bit stream such that a frequency-moderately linear arrangement thereof is obtained where a raster point coincides with the beginning of a priority code word;
  • c) a device for determining the code table assigned to a spectral section;
  • d) a device for decoding the priority code words of a spectral section with the corresponding code table to which they belong in order to obtain decoded spectral values; and
  • e) a device for transforming the decoded spectral values back into the time domain in order to obtain a decoded audio signal.
DE19747119A 1997-10-24 1997-10-24 Methods and devices for coding or decoding an audio signal or a bit stream Expired - Lifetime DE19747119C2 (en)

Priority Applications (13)

Application Number Priority Date Filing Date Title
DE19747119A DE19747119C2 (en) 1997-10-24 1997-10-24 Methods and devices for coding or decoding an audio signal or a bit stream
DE19840853A DE19840853B4 (en) 1997-10-24 1998-09-07 Methods and devices for encoding an audio signal
PT04014504T PT1458103E (en) 1997-10-24 1998-10-12 Method and device for coding/decoding an audio signal
ES04014504T ES2329466T3 (en) 1997-10-24 1998-10-12 PROCEDURES AND DEVICES FOR CODING OR DECODING AN AUDIO SIGNAL OR A BIT FLOW.
DE59811685T DE59811685D1 (en) 1997-10-24 1998-10-12 Method and device for encoding or decoding an audio signal
DE59814374T DE59814374D1 (en) 1997-10-24 1998-10-12 Method and devices for coding or decoding an audio signal or a bit stream
EP98119235A EP0911981B1 (en) 1997-10-24 1998-10-12 Method and device for coding/decoding an audio signal
AT98119235T ATE271727T1 (en) 1997-10-24 1998-10-12 METHOD AND DEVICE FOR CODING OR DECODING AN AUDIO SIGNAL
EP04014504A EP1458103B1 (en) 1997-10-24 1998-10-12 Method and device for coding/decoding an audio signal
PCT/EP1998/008475 WO2000039933A1 (en) 1997-10-24 1998-12-28 Method and devices for coding or decoding an audio signal or bit stream
JP2004099418A JP3902642B2 (en) 1997-10-24 2004-03-30 Method and apparatus for encoding or decoding audio signals or bitstreams
JP2004099417A JP4168000B2 (en) 1997-10-24 2004-03-30 Method and apparatus for encoding or decoding audio signals or bitstreams
JP2004099419A JP3978194B2 (en) 1997-10-24 2004-03-30 Apparatus and method for decoding audio signals or bitstreams

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
DE19747119A DE19747119C2 (en) 1997-10-24 1997-10-24 Methods and devices for coding or decoding an audio signal or a bit stream
DE19840853A DE19840853B4 (en) 1997-10-24 1998-09-07 Methods and devices for encoding an audio signal
PCT/EP1998/008475 WO2000039933A1 (en) 1997-10-24 1998-12-28 Method and devices for coding or decoding an audio signal or bit stream
JP2004099418A JP3902642B2 (en) 1997-10-24 2004-03-30 Method and apparatus for encoding or decoding audio signals or bitstreams
JP2004099417A JP4168000B2 (en) 1997-10-24 2004-03-30 Method and apparatus for encoding or decoding audio signals or bitstreams
JP2004099419A JP3978194B2 (en) 1997-10-24 2004-03-30 Apparatus and method for decoding audio signals or bitstreams

Publications (2)

Publication Number Publication Date
DE19747119A1 DE19747119A1 (en) 1999-04-29
DE19747119C2 true DE19747119C2 (en) 2003-01-16

Family

ID=36972705

Family Applications (1)

Application Number Title Priority Date Filing Date
DE19747119A Expired - Lifetime DE19747119C2 (en) 1997-10-24 1997-10-24 Methods and devices for coding or decoding an audio signal or a bit stream

Country Status (3)

Country Link
JP (3) JP4168000B2 (en)
DE (1) DE19747119C2 (en)
WO (1) WO2000039933A1 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19907728C2 (en) 1999-02-23 2001-03-01 Fraunhofer Ges Forschung Device and method for generating a data stream and device and method for reading a data stream
DE19907729C2 (en) 1999-02-23 2001-02-22 Fraunhofer Ges Forschung Method and device for generating a data stream from code words of variable length and method and device for reading a data stream from code words of variable length
US7610195B2 (en) 2006-06-01 2009-10-27 Nokia Corporation Decoding of predictively coded data using buffer adaptation

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0492537A1 (en) * 1990-12-21 1992-07-01 Matsushita Electric Industrial Co., Ltd. Information recording apparatus
EP0612156A2 (en) * 1989-04-17 1994-08-24 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V. Digital coding method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0612156A2 (en) * 1989-04-17 1994-08-24 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V. Digital coding method
EP0717503A2 (en) * 1989-04-17 1996-06-19 Fraunhofer-Gesellschaft Zur Förderung Der Angewandten Forschung E.V. Digital coding and decoding method
EP0492537A1 (en) * 1990-12-21 1992-07-01 Matsushita Electric Industrial Co., Ltd. Information recording apparatus

Also Published As

Publication number Publication date
JP2004264860A (en) 2004-09-24
JP3902642B2 (en) 2007-04-11
JP2004234021A (en) 2004-08-19
DE19747119A1 (en) 1999-04-29
JP3978194B2 (en) 2007-09-19
WO2000039933A1 (en) 2000-07-06
JP4168000B2 (en) 2008-10-22
JP2004234020A (en) 2004-08-19

Similar Documents

Publication Publication Date Title
EP0910927B1 (en) Process for coding and decoding stereophonic spectral values
DE2818052C2 (en) Quantization of a signal with a spectrum extending over a given frequency band
DE19840835C2 (en) Apparatus and method for entropy coding information words and apparatus and method for decoding entropy coded information words
DE3639753C2 (en)
EP0193143B1 (en) Audio signal transmission method
EP0609300B1 (en) Process for transmitting or storing over disturbed channels a digitalized, encoded audio signal composed of a series of information blocks
EP0393526B2 (en) Digital encoding method
DE69726661T2 (en) METHOD AND DEVICE FOR CODING A DIGITAL INFORMATION SIGNAL
DE60015448T2 (en) Sub-band audio coding
WO1999004505A1 (en) Method for signalling a noise substitution during audio signal coding
EP0494918B1 (en) Process for transmitting a signal
DE60022837T2 (en) Device for subband coding
DE19907728C2 (en) Device and method for generating a data stream and device and method for reading a data stream
DE19747119C2 (en) Methods and devices for coding or decoding an audio signal or a bit stream
DE19742201C1 (en) Method of encoding time discrete audio signals, esp. for studio use
DE19840853B4 (en) Methods and devices for encoding an audio signal
DE19907729C2 (en) Method and device for generating a data stream from code words of variable length and method and device for reading a data stream from code words of variable length
DE3733786A1 (en) Digital adaptive transformation coding methods
WO2004021577A1 (en) Scalable coding of image information, especially video image information

Legal Events

Date Code Title Description
OP8 Request for examination as to paragraph 44 patent law
AG Has addition no.

Ref document number: 19840853

Country of ref document: DE

AG Has addition no.

Ref document number: 19840853

Country of ref document: DE

D2 Grant after examination
8364 No opposition during term of opposition
R071 Expiry of right