HK1060431B - Method and device for processing time-discrete audio sampled values - Google Patents
Method and device for processing time-discrete audio sampled values Download PDFInfo
- Publication number
- HK1060431B HK1060431B HK04103402.2A HK04103402A HK1060431B HK 1060431 B HK1060431 B HK 1060431B HK 04103402 A HK04103402 A HK 04103402A HK 1060431 B HK1060431 B HK 1060431B
- Authority
- HK
- Hong Kong
- Prior art keywords
- values
- integer
- window
- inverse
- vector
- Prior art date
Links
Claims (23)
- Procédé de traitement de valeurs de balayage discrètes dans le temps représentant un signal audio, pour obtenir des valeurs à nombre entier, aux étapes suivantes consistant à :diviser en fenêtres des valeurs de balayage discrètes dans le temps avec une fenêtre (w) d'une longueur correspondant à 2N valeurs de balayage discrètes dans le temps, pour créer des valeurs de balayage discrètes dans le temps divisées en fenêtres, en vue d'une conversion des valeurs de balayage discrètes dans le temps en une représentation spectrale au moyen d'une transformation pouvant générer, à partir de N valeurs d'entré, N valeurs de sortie, la division en fenêtres présentant les étapes partielles suivantes consistant à :sélectionner (16) une valeur de balayage discrète dans le temps d'un quart de la fenêtre et une valeur de balayage discrète dans le temps d'un autre quart de la fenêtre, pour obtenir un vecteur de valeurs de balayage discrètes dans le temps ;soumettre le vecteur à une matrice de rotation carrée dont la dimension coïncide avec la dimension du vecteur, la matrice de rotation pouvant être représentée par une pluralité de matrices d'élévation, une matrice d'élévation ne présentant qu'un seul élément qui dépend de la fenêtre (w) et qui est différent de 1 ou 0, l'étape partielle de soumission présentant les sous-étapes suivantes consistant à :multiplier (18) le vecteur par une matrice d'élévation, pour obtenir un premier vecteur de résultat ;arrondir (20) une composante du premier vecteur de résultat par une fonction d'arrondi (r) qui reproduit un nombre réel sur un nombre entier, pour obtenir un premier vecteur de résultat arrondi ; eteffectuer en séquence les étapes de multiplication (22) et d'arrondi (24) par une autre matrice d'élévation, jusqu'à ce que toutes les matrices d'élévation aient été traitées, pour obtenir un vecteur tourné présentant une valeur de balayage divisée en fenêtres à nombre entier du quart de la fenêtre et une valeur de balayage divisée en fenêtres à nombre entier de l'autre quart de la fenêtre.
- Procédé selon la revendication 1, dans lequel les matrices d'élévation sont des matrices 2 x 2, et dans lequel sont présentes en tout trois matrices d'élévation par matrice de rotation.
- Procédé selon la revendication 1 ou 2, dans lequel l'étape de multiplication du vecteur ou d'un vecteur de résultat arrondi est effectuée en formant des produits partiels et en additionnant les produits partiels, l'étape d'arrondi étant effectuée avec des produits partiels non à nombre entier avant que ne soit effectuée l'addition.
- Procédé selon l'une des revendications précédentes, dans lequel la fenêtre présente un nombre 2N de valeurs de balayage qui est égal à une puissance de la base 2.
- Procédé selon l'une des revendications précédentes, dans lequel la matrice de rotation est une matrice de rotation de Givens.
- Procédé selon l'une des revendications précédentes, présentant, par ailleurs, l'étape suivante consistant à :réaliser l'étape de division en fenêtres pour toutes les valeurs de balayage discrètes dans le temps des quarts restants de la fenêtre, pour obtenir 2N valeurs de balayage à nombre entier filtrées ; etconvertir (14) N valeurs de balayage à nombre entier divisées en fenêtres en une représentation spectrale par une DCT à nombre entier pour des valeurs aux valeurs de balayage à nombre entier filtrées du deuxième quart et du troisième quart de la fenêtre, pour obtenir N valeurs spectrales à nombre entier.
- Procédé selon la revendication 6, dans lequel la DCT à nombre entier est une DCT présentant des fonctions de base asymétriques.
- Procédé selon la revendication 7, dans lequel la DCT est une DCT du type IV.
- Procédé selon l'une des revendications 6 à 8, dans laquelle la DCT peut être décomposée en matrices de rotation de Givens et celles-ci, à leur tour, en matrices d'élévation, après chaque multiplication par une matrice d'élévation suivant une étape d'arrondi.
- Procédé selon l'une des revendications précédentes, dans lequel la matrice de rotation de Givens a la forme suivante : dans lequel les matrices d'élévation ont la forme suivante : dans lequel l'angle α est défini comme suit :
k étant un indice de temps des valeurs de balayage discrètes dans le temps et allant de 0 à 2N-1 et w étant une fonction de division en fenêtres. - Procédé selon l'une des revendications précédentes, dans lequel est remplie pour la fonction de division en fenêtres w la condition suivante :
- Procédé selon la condition 11, dans lequel la fenêtre est une fenêtre sinusoïdale.
- Procédé selon l'une des revendications précédentes, dans lequel les valeurs de balayage discrètes dans le temps sont à nombre entier.
- Procédé selon la revendication 6, présentant, par ailleurs, l'étape suivante consistant à :soumettre à un codage entropique les valeurs spectrales à nombre entier, pour obtenir une version codée de manière entropique du signal audio.
- Procédé selon la revendication 6, présentant, par ailleurs, l'étape consistant à quantifier les valeurs spectrales à nombre entier en tenant compte du seuil de masquage psycho-acoustique, pour obtenir des valeurs spectrales quantifiées qui sont quantifiées de sorte que le bruit de quantification soit sensiblement masqué.
- Procédé selon la revendication 6, présentant, par ailleurs, l'étape consistant à filtrer les valeurs spectrales à nombre entier sur la fréquence au moyen d'un prédicteur à boucle fermée et à arrondir les valeurs d'erreur de prédiction.
- Procédé de traitement inverse de valeurs à nombre entier générées par le procédé selon la revendication 1, aux étapes suivantes consistant à :soumettre le vecteur tourné à une matrice de rotation inverse à la matrice de rotation, la matrice de rotation inverse pouvant être représentée par une pluralité de matrices d'élévation inverse, une matrice d'élévation inverse ne présentant qu'un seul élément qui est fonction de là fenêtre et est différent de 1 ou 0, l'étape de soumission présentant les sous-étapes suivantes consistant à :multiplier le vecteur tourné par une matrice d'élévation inverse qui est inverse à la matrice d'élévation qui a été utilisée en dernier lieu lors de la génération des valeurs à nombre entier, pour obtenir un premier vecteur de résultat inverse ;arrondir une composante du premier vecteur de résultat inverse par la fonction d'arrondi, pour obtenir un premier vecteur de résultat inverse arrondi ; eteffectuer en séquence les étapes de multiplication et d'arrondi avec d'autres matrices d'élévation selon un ordre qui est inversé par rapport à l'ordre lors de la génération des valeurs à nombre entier, pour obtenir un vecteur traité inversement qui comporte une valeur de balayage discrète dans le temps à nombre entier d'un quart de la fenêtre et une valeur de balayage discrète dans le temps à nombre entier d'un autre quart de la fenêtre.
- Procédé selon la revendication 17, dans lequel les valeurs à nombre entier sont générées par le procédé selon la revendication 2 et comportent des valeurs spectrales à nombre entier, et dans lequel est, par ailleurs, effectuée, avant l'étape de soumission du vecteur tourné, l'étape suivante consistant à :convertir les valeurs spectrales à nombre entier, par une DCT à nombre entier inverse à la DCT à nombre entier lors de la génération, en une représentation dans le temps, pour obtenir le vecteur tourné.
- Procédé selon la revendication 17 ou 18, dans lequel la fonction d'arrondi est symétrique à un point, et dans lequel les matrices d'élévation inverse sont identiques aux matrices d'élévation, toutefois à angle de rotation négatif.
- Procédé selon la revendication 18, dans lequel la DCT à nombre entier est une DCT dérivée d'une DCT du type IV.
- Procédé selon l'une des revendications 17 à 20, dans lequel les matrices d'élévation inverse sont identiques aux matrices d'élévation correspondantes, toutefois à l'exception d'éléments de diagonale auxiliaire qui, par rapport aux matrices d'élévation, sont négatifs dans les matrices d'élévation inverse.
- Dispositif de traitement de valeurs de balayage discrètes dans le temps représentant un signal audio, pour obtenir des valeurs à nombre entier, aux caractéristiques suivantes :un dispositif destiné à diviser en fenêtres les valeurs de balayage discrètes dans le temps avec une fenêtre (w) d'une longueur correspondant à 2N valeurs de balayage discrètes dans le temps, pour créer des valeurs de balayage discrètes dans le temps divisées en fenêtres, en vue d'une conversion des valeurs de balayage discrètes dans le temps en une représentation spectrale au moyen d'une transformation pouvant générer, à partir de N valeurs d'entrée, N valeurs de sortie, le dispositif destiné à diviser en fenêtres présentant les caractéristiques partielles suivantes :un dispositif destiné à sélectionner (16) une valeur de balayage discrète dans le temps d'un quart de la fenêtre et une valeur de balayage discrète dans le temps d'un autre quart de la fenêtre, pour obtenir un vecteur de valeurs de balayage discrètes dans le temps ;un dispositif destiné à soumettre le vecteur à une matrice de rotation carrée dont la dimension coïncide avec la dimension du vecteur, la matrice de rotation pouvant être représentée par une pluralité de matrices d'élévation, une matrice d'élévation ne présentant qu'un seul élément qui est fonction de la fenêtre (w) et qui est différent de 1 ou 0, le dispositif destiné à soumettre présentant les sous-caractéristiques suivantes :un dispositif destiné à multiplier (18) le vecteur par une matrice d'élévation, pour obtenir un premier vecteur de résultat ;un dispositif destiné à arrondir (20) une composante du premier vecteur de résultat par une fonction d'arrondi (r) qui reproduit un nombre réel sur un nombre entier, pour obtenir un premier vecteur de résultat arrondi ; etun dispositif destiné à effectuer en séquence les étapes de multiplication (22) et d'arrondi (24) avec une autre matrice d'élévation, jusqu'à ce que soient traitées toutes les matrices d'élévation, pour obtenir un vecteur tourné comportant une valeur de balayage divisée en fenêtres à nombre entier du quart de la fenêtre et une valeur de balayage divisée en fenêtres à nombre entier de l'autre quart de la fenêtre.
- Dispositif de traitement inverse de valeurs à nombre entier qui ont été générées par le dispositif selon la revendication 22, aux caractéristiques suivantes :un dispositif destiné à soumettre le vecteur tourné à une matrice de rotation inverse à la matrice de rotation, la matrice de rotation inverse pouvant être représentée par une pluralité de matrices d'élévation inverse, une matrice d'élévation inverse ne présentant qu'un seul élément qui est fonction de la fenêtre et qui est différent de 1 ou 0, le dispositif destiné à soumettre présentant les caractéristiques partielles suivantes :un dispositif destiné à multiplier le vecteur tourné par une matrice d'élévation inverse qui est inverse à la matrice d'élévation qui a été utilisée en dernier lieu lors de la génération des valeurs à nombre entier, pour obtenir un premier vecteur de résultat inverse ;un dispositif destiné à arrondir une composante du premier vecteur de résultat inverse par la fonction d'arrondi, pour obtenir un premier vecteur de résultat inverse arrondi ; etun dispositif destiné à effectuer en séquence la multiplication et l'arrondi avec d'autres matrices d'élévation selon un ordre qui est inversé par rapport à l'ordre lors de la génération des valeurs à nombre entier, pour obtenir un vecteur traité inversement qui comporte une valeur de balayage discrète dans le temps à nombre entier d'un quart de la fenêtre et une valeur de balayage discrète dans le temps à nombre entier d'un autre quart de la fenêtre.
Applications Claiming Priority (3)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| DE10129240.6 | 2001-06-18 | ||
| DE10129240A DE10129240A1 (de) | 2001-06-18 | 2001-06-18 | Verfahren und Vorrichtung zum Verarbeiten von zeitdiskreten Audio-Abtastwerten |
| PCT/EP2002/005865 WO2002103684A1 (fr) | 2001-06-18 | 2002-05-28 | Procede et dispositif de traitement de valeurs d'echantillonnage audio discretes dans le temps |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| HK1060431A1 HK1060431A1 (en) | 2004-08-06 |
| HK1060431B true HK1060431B (en) | 2005-03-24 |
Family
ID=
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| US7275036B2 (en) | Apparatus and method for coding a time-discrete audio signal to obtain coded audio data and for decoding coded audio data | |
| US7343287B2 (en) | Method and apparatus for scalable encoding and method and apparatus for scalable decoding | |
| KR100892152B1 (ko) | 시간-이산 오디오 신호를 부호화하기 위한 장치 및 방법그리고 부호화 오디오 데이터를 복호화하기 위한 장치 및방법 | |
| US6721700B1 (en) | Audio coding method and apparatus | |
| US7512539B2 (en) | Method and device for processing time-discrete audio sampled values | |
| US7917564B2 (en) | Device and method for processing a signal having a sequence of discrete values | |
| CN100416553C (zh) | 用于转换为变换表示或对变换表示进行反转换的设备和方法 | |
| EP0661827A2 (fr) | Filtrage en sous-bandes utilisant une transformation discrète inverse de cosinus | |
| KR100804053B1 (ko) | 2 이상의 입력 값을 처리하기 위한 장치 및 방법 | |
| HK1060431B (en) | Method and device for processing time-discrete audio sampled values | |
| Chen et al. | Fast time-frequency transform algorithms and their applications to real-time software implementation of AC-3 audio codec | |
| HK1072122B (en) | Device and method for scalable coding and device and method for scalable decoding | |
| Herre | Audio Coding Based on Integer Transforms | |
| HK1085033B (en) | Device and method for conversion into a transformed representation or for inversely converting the transformed representation | |
| HK1086367B (en) | Device and method for processing at least two input values | |
| HK1096760B (en) | Device and method for processing a signal with a sequence of discrete values |