EP2022046A1 - Conversion between subband field representations for time-dependent filter banks - Google Patents

Conversion between subband field representations for time-dependent filter banks

Info

Publication number
EP2022046A1
EP2022046A1 EP07766042A EP07766042A EP2022046A1 EP 2022046 A1 EP2022046 A1 EP 2022046A1 EP 07766042 A EP07766042 A EP 07766042A EP 07766042 A EP07766042 A EP 07766042A EP 2022046 A1 EP2022046 A1 EP 2022046A1
Authority
EP
European Patent Office
Prior art keywords
matrix
sub
conversion
blocks
coefficients
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.)
Withdrawn
Application number
EP07766042A
Other languages
German (de)
French (fr)
Inventor
Guillaume Picard
Abdellatif Benjelloun Touimi
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.)
Orange SA
Original Assignee
France Telecom SA
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 France Telecom SA filed Critical France Telecom SA
Publication of EP2022046A1 publication Critical patent/EP2022046A1/en
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/04Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using predictive techniques
    • G10L19/16Vocoder architecture
    • G10L19/173Transcoding, i.e. converting between two coded representations avoiding cascaded coding-decoding
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L19/00Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis
    • G10L19/02Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders
    • G10L19/0204Speech or audio signals analysis-synthesis techniques for redundancy reduction, e.g. in vocoders; Coding or decoding of speech or audio signals, using source filter models or psychoacoustic analysis using spectral analysis, e.g. transform vocoders or subband vocoders using subband decomposition
    • G10L19/0208Subband vocoders

Abstract

Conversion between sub-band field representations for time-dependent filter banks. The invention relates to a transcoding processing operation between different sub-band fields, aiming to compact the application of a first vector representing the signal in a first sub-band field to a synthesis filter bank, and then to an analysis filter bank, in order to obtain a second vector representing the signal in a second sub-band field. In particular, the synthesis bank and /or the analysis bank are time-dependent. Within the scope of the invention, matrix filtering of the first vector is anticipated in order to directly obtain the second vector, this matrix filtering being represented by a global conversion matrix comprising pre-calculated sub-blocks of matrices (Ai0,…, Aip2-1) taking into consideration possible time-dependent variations in the filter banks, then stored into memory. The global conversion matrix is then constructed by calls to the memory in order to obtain the sub-blocks at pre-calculated successive instants.

Description

Conversion entre représentations en domaines de sous-bandes pour des bancs de filtres variant dans le temps Converting Representations to Subband Domains for Time-Variable Filter Banks
La présente invention concerne un traitement de données pour un transcodage.The present invention relates to data processing for transcoding.
Un traitement de signal, notamment pour un codage en compression, vise à ramener un signal dans un domaine de sous-bandes. En référence à la figure 1, ce traitement consiste à appliquer un banc de filtres d'analyse BA à une première expression x du signal (par exemple temporelle) incluant éventuellement un sous-échantillonnage (décimation) DEC, pour obtenir une seconde expression du signal [yo,yι,...,yM^ι) dans le domaine des sous-bandes précité. A l'inverse, pour retrouver la première expression du signal x , à partir de sa seconde expression (_y0 , ^1 , ..., yu_x ) , on applique à la seconde expression (yQ,yλ,...,yM_x ) un banc de filtres de synthèse BS, incluant un sur-échantillonnage (expansion) EXP.Signal processing, in particular for compression coding, aims to bring a signal back into a subband domain. With reference to FIG. 1, this processing consists in applying a bank of analysis filters BA to a first expression x of the signal (for example temporal) possibly including a subsampling (decimation) DEC, to obtain a second expression of the signal. [y o , y ι , ..., y M ^ ι ) in the aforementioned subband domain. On the other hand, to find the first expression of the signal x, from its second expression (_y 0 , ^ 1 , ..., y u _ x ), we apply to the second expression (y Q , y λ , ..., y M _ x ) a synthesis filter bank BS, including oversampling (expansion) EXP.
Le traitement dit "de transcodage" vise alors une conversion entre différents domaines de sous-bandes. En référence à la figure 2, pour réaliser ce type de traitement, on cherche à compacter en une même étape TRC l'application d'un premier vecteur X représentant le signal dans un premier domaine de sous-bandes à un banc de filtres de synthèse BSl, puis à un banc de filtres d'analyse BA2, pour obtenir un second vecteur F représentant le signal dans un second domaine de sous-bandes. Les notations BSl et BA2 respectives des bancs de synthèse et d'analyse se justifient par le fait que le banc BSl est relatif à la conversion dans le premier domaine de sous-bandes, tandis que le banc BA2 est relatif à la conversion dans le second domaine de sous-bandes.The so-called "transcoding" processing then aims at a conversion between different subband domains. With reference to FIG. 2, in order to carry out this type of processing, it is sought to compact in the same step TRC the application of a first vector X representing the signal in a first domain of sub-bands to a bank of synthesis filters. BS1, then to an analysis filter bank BA2, to obtain a second vector F representing the signal in a second subband domain. The respective ratings BS1 and BA2 of the synthesis and analysis benches are justified by the fact that the bank BS1 is relative to the conversion in the first domain of sub-bands, while the bank BA2 is relative to the conversion in the second domain. subband domain.
Le transcodage est un point crucial dans la communication d'un signal numérique (audio, vidéo, multimédia, plus généralement un signal représentant des données quelconques). En effet, la diversité des formats de codage, supportés par des terminaux différents et utilisés pour la communication de signaux, pose souvent des problèmes d'incompatibilité, notamment dans certaines applications de délivrance de contenu. Le transcodage pour l'adaptation du format d'un signal au type du décodage supporté par un terminal de restitution apporte une solution à ce problème.Transcoding is a crucial point in the communication of a digital signal (audio, video, multimedia, more generally a signal representing any data). Indeed, the diversity of coding formats, supported by different terminals and used for signal communication, often poses incompatibility problems, particularly in certain content delivery applications. Transcoding for the adaptation of the format of a signal to the type of decoding supported by a rendering terminal provides a solution to this problem.
La technique conventionnelle de transcodage introduit souvent un retard algorithmique supplémentaire et nécessite une certaine complexité de traitement.The conventional transcoding technique often introduces additional algorithmic delay and requires some processing complexity.
Le transcodage dit "intelligent" vise à réduire ces paramètres. En traitement de signaux audionumériques notamment, les codeurs utilisés sont à base de codage par transformée. Souvent, différents formats de compression utilisent différents types de transformées ou "bancs de filtres". Une première difficulté à surmonter consiste donc à réaliser des structures efficaces de passage entre différentes représentations en domaine de sous-bandes, notamment lorsque le nombre de filtres d'un banc d'un premier domaine de sous-bandes est différent du nombre de filtres d'un banc d'un second domaine.The so-called "intelligent" transcoding aims to reduce these parameters. In digital audio signal processing in particular, the encoders used are based on transform coding. Often, different compression formats use different types of transforms or "filterbanks". A first difficulty to be overcome therefore consists in producing efficient structures for switching between different subband domain representations, especially when the number of filters of a bank of a first subband domain is different from the number of subband filters. a bench of a second domain.
Une solution générale à ce problème a été proposée dans le document FR-2,875,351 et vise un filtrage matriciel unique, remplaçant l'application successive du banc de synthèse du premier domaine et du banc d'analyse du second domaine, ce filtrage unique étant représenté par une matrice carrée de dimension valant le plus petit commun multiple des nombres de filtres par banc respectivement dans le premier et dans le second domaine.A general solution to this problem has been proposed in document FR-2,875,351 and aims at a single matrix filtering, replacing the successive application of the synthesis bench of the first domain and the analysis bench of the second domain, this unique filter being represented by a square matrix of dimension equal to the smallest common multiple of the number of filters per bank respectively in the first and in the second domain.
Néanmoins, il peut se poser une difficulté supplémentaire liée au fait que les bancs de filtres précités peuvent varier dans le temps.Nevertheless, there may be an additional difficulty related to the fact that the aforementioned filter banks may vary over time.
En effet, la plupart des codeurs actuels (MPEG-4 AAC, Dolby AC-3) utilisent des bancs de filtres variant dans le temps, alors que les conversions entre différents domaines de sous-bandes qui ont été proposées dans l'état de l'art ne sont applicables que pour des représentations temps/fréquences correspondantes invariantes dans le temps.Indeed, most current encoders (MPEG-4 AAC, Dolby AC-3) use time-varying filter banks, while conversions between different subband domains that have been proposed in the state of the art. art are not applicable only for time / frequency representations that are invariant in time.
En particulier, les codeurs les plus récents (notamment en codage normalisé MPEG- 2/4 AAC, ou en codage de type Dolby AC-3, pour des signaux audionumériques) utilisent des représentations temps/fréquences où la résolution peut être variable dans le temps. La résolution dépend en particulier des propriétés à court terme du signal traité. Dans ce cas, les coefficients définissant les bancs de filtres d'analyse et de synthèse appliqués pour le passage d'un premier à un second domaine de sous-bandes et vice- versa, varient dans le temps et les principales équations du système de conversion, proposées dans le document précité FR-2,875,351, ne peuvent plus être appliquées directement. Ainsi, pour étendre l'application du transcodage au cas d'une variabilité en fonction du temps, les équations de conversion entre représentations du signal dans différents domaines de sous-bandes doivent permettre de traiter le cas des codeurs perceptuels les plus récents dans lesquels interviennent des bancs de filtres variant dans le temps.In particular, the most recent coders (in particular in standard MPEG-2/4 AAC coding, or in Dolby AC-3 coding for digital audio signals) use time / frequency representations where the resolution may be variable over time. . The resolution depends in particular on the short-term properties of the processed signal. In this case, the coefficients defining the banks of analysis and synthesis filters applied for the passage of a first to a second domain of subbands and vice versa, vary in time and the main equations of the conversion system. , proposed in the aforementioned document FR-2,875,351, can no longer be applied directly. Thus, to extend the application of transcoding to the case of variability as a function of time, the conversion equations between signal representations in different subband domains should make it possible to deal with the case of the most recent perceptual coders in which intervene filter banks varying over time.
La présente invention vient améliorer la situation.The present invention improves the situation.
Elle propose à cet effet un procédé mis en œuvre par des ressources informatiques pour traiter un signal par passage entre domaines différents de sous-bandes. Le procédé vise à compacter en un même traitement l'application d'un premier vecteur représentant le signal dans un premier domaine de sous-bandes à un banc de filtres de synthèse, puis à un banc de filtres d'analyse, pour obtenir un second vecteur représentant le signal dans un second domaine de sous-bandes.To this end, it proposes a method implemented by computer resources for processing a signal by passing between different subband domains. The method aims at compacting in the same process the application of a first vector representing the signal in a first domain of sub-bands to a bank of synthesis filters, then to a bank of analysis filters, to obtain a second vector representing the signal in a second domain of subbands.
On prévoit dans ce type de procédé l'application d'un filtrage matriciel au premier vecteur pour obtenir directement le second vecteur.In this type of method, the application of matrix filtering to the first vector is provided to directly obtain the second vector.
Selon l'invention, le banc de synthèse et/ou le banc d'analyse sont variants dans le temps. Le filtrage matriciel est représenté par une matrice globale de conversion comportant des sous-blocs matriciels :According to the invention, the synthesis bench and / or the analysis bench are variant in time. The matrix filtering is represented by a global conversion matrix comprising matrix sub-blocks:
• pré-calculés en tenant compte des variations possibles dans le temps des bancs de filtres, • et stockés en mémoire, et la matrice globale de conversion est construite par appel à ladite mémoire pour obtenir lesdits sous-blocs pré-calculés à des instants successifs.• pre-calculated taking into account the possible variations in time of the banks of filters, • and stored in memory, and the global matrix of conversion is built by calling to said memory to obtain said pre-calculated sub-blocks at successive times .
Avantageusement, on prévoit un nombre fini d'états possibles auxquels sont associés des jeux respectifs de coefficients des bancs de synthèse et/ou d'analyse, et les sous- blocs précités sont pré-calculés à partir desdits jeux respectifs pour tous les états possibles, tandis que la matrice globale de conversion est déterminée pour au moins un état possible défini à partir des propriétés du signal à traiter, notamment des propriétés de stationnante du signal.Advantageously, a finite number of possible states are provided with respective sets of coefficients of the synthesis and / or analysis banks, and the aforementioned sub-blocks are pre-calculated from said respective sets for all possible states. , while the overall conversion matrix is determined for at least one possible state defined from the properties of the signal to be processed, in particular stationary properties of the signal.
La présente invention vise aussi un dispositif pour traiter un signal par passage entre domaines différents de sous-bandes. Un exemple d'un tel dispositif est illustré sur la figure 11 qui sera décrite en détail plus loin. Pour la mise en œuvre du procédé au sens de l'invention, il comporte, outre des ressources informatiques générales incluant notamment un processeur (non représenté) :The present invention is also directed to a device for processing a signal by passing between different subband domains. An example of such a device is illustrated in Figure 11 which will be described in detail later. For the implementation of the method within the meaning of the invention, it comprises, in addition to general computer resources including in particular a processor (not shown):
- une mémoire DD stockant les sous-blocs pré-calculés,a memory DD storing the pre-calculated sub-blocks,
- une horloge HOR pour déterminer des instants successifs, eta clock HOR for determining successive instants, and
- un module de filtrage matriciel MFM agencé pour récupérer de la mémoire DD les sous-blocs pré-calculés pour ces instants successifs, pour la construction de la matrice globale de conversion.an MFM matrix filtering module arranged to recover from the DD memory the pre-calculated sub-blocks for these successive instants, for the construction of the global conversion matrix.
Avantageusement, le dispositif comporte en outre une commande de bascule SW pour:Advantageously, the device further comprises a SW toggle control for:
- définir, à partir du signal à traiter, l'un desdits états possibles et des jeux de coefficients associés, et - gérer l'accès à ladite mémoire en fonction de l'état défini. Un tel dispositif peut être intégré à un équipement tel qu'un serveur, une passerelle, ou encore un terminal, destinés à un réseau de communication.- Define, from the signal to be processed, one of said possible states and sets of associated coefficients, and - manage access to said memory according to the defined state. Such a device can be integrated into an equipment such as a server, a gateway, or a terminal, intended for a communication network.
La présente invention vise aussi un programme informatique, destiné à être stocké dans une mémoire d'un tel dispositif et comportant des instructions pour la mise en œuvre du procédé au sens de l'invention. Un algorithme possible d'un tel programme peut être représenté très schématiquement par l'organigramme de la figure 14 qui sera décrite en détail plus loin.The present invention also relates to a computer program, intended to be stored in a memory of such a device and including instructions for the implementation of the method within the meaning of the invention. A possible algorithm of such a program can be represented very schematically by the flowchart of FIG. 14 which will be described in detail later.
D'autres avantages et caractéristiques de l'invention apparaîtront à l'examen de la description détaillée ci-après, donnée à titre d'exemple de réalisations, et des dessins annexés sur lesquels, outre les figures 1 et 2 décrites précédemment :Other advantages and characteristics of the invention will appear on examining the detailed description given below, given by way of example of embodiments, and the appended drawings in which, in addition to FIGS. 1 and 2 previously described:
- la figure 3 illustre des recouvrements de blocs successifs longs et courts intervenant pendant deux transitions d'une transformée TV-MLT, en comparaison d'un axe temporel TEMP ;FIG. 3 illustrates recoveries of long and short successive blocks occurring during two transitions of a TV-MLT transform, in comparison with a temporal axis TEMP;
- la figure 4A représente une fonction de transition Aitart(») d'une transformée TV-FIG. 4A represents a transition function A itart (») of a TV-transform
MLT ;MLT;
- la figure 4B représente le fenêtrage intervenant pendant deux changements de résolution de la transformée TV-MLT ; - la figure 5A illustre un banc de filtres d'analyse variant dans le temps, à décimation maximale ;FIG. 4B represents the windowing occurring during two changes of resolution of the TV-MLT transform; FIG. 5A illustrates a bank of time-varying analysis filters with maximum decimation;
- la figure 5B illustre un banc de filtres de synthèse variant dans le temps, à décimation maximale ;FIG. 5B illustrates a bank of time-varying synthetic filters with maximum decimation;
- la figure 6 est un schéma conventionnel détaillé de la conversion entre différents domaines de sous-bandes ;FIG. 6 is a detailed conventional diagram of the conversion between different subband domains;
- la figure 7 est un schéma illustrant la conversion entre les représentations d'un signal par deux transformées TV-MLT de tailles différentes, à titre d'exemple pour un transcodage entre le format Dolby AC-3 vers le format MPEG-2/4 AAC ;FIG. 7 is a diagram illustrating the conversion between the representations of a signal by two TV-MLT transforms of different sizes, as an example for a transcoding between the Dolby AC-3 format and the MPEG-2/4 format AAFC;
- la figure 8A illustre une étape intermédiaire de la construction des états d'une sous- matrice de conversion basée sur une première forme, dite "forme A" ci-après ; - la figure 8B illustre une étape intermédiaire de la construction des états d'une sous- matrice de conversion basée sur une seconde forme, dite "forme B" ci-après ;FIG. 8A illustrates an intermediate step of the construction of the states of a conversion sub-matrix based on a first form, referred to as "form A"below; FIG. 8B illustrates an intermediate step of the construction of the states of a conversion sub-matrix based on a second form, called "form B"below;
- la figure 9A illustre la construction des états de la matrice globale de conversion T(w,Z ) dans un cas général K = ppcm(L,M) sous la forme A ; - la figure 9B illustre la construction des états de la matrice globale de conversion T(Z ,n) dans un cas général K = ppcm(L,M) sous la forme B ;FIG. 9A illustrates the construction of the states of the global conversion matrix T (w, Z) in a general case K = ppcm (L, M) in the form A; FIG. 9B illustrates the construction of the states of the global conversion matrix T (Z, n) in a general case K = ppcm (L, M) in the form B;
- la figure 1OA illustre un exemple de conversion globale comme une transformée à recouvrement dans un premier cas particulier où M = pL ;FIG. 10A illustrates an example of global conversion as a recovery transform in a first particular case where M = pL;
- la figure 1OB illustre un exemple de conversion globale comme une transformée à recouvrement dans un second cas particulier où L = pM ;FIG. 10B illustrates an example of global conversion as a recovery transform in a second particular case where L = pM;
- la figure 11 illustre un exemple de réalisation d'un système global de conversion au sens de l'invention ;FIG. 11 illustrates an exemplary embodiment of a global conversion system within the meaning of the invention;
- la figure 12A illustre le fonctionnement d'un sous-système d'ordre i du système de la figure 11 , pour délivrer une composante polyphasée convertie V1. (n) d'un vecteur signal de sortie, à la manière d'un système linéaire variant dans le temps, pour une mise en œuvre selon la forme A ;FIG. 12A illustrates the operation of an order subsystem i of the system of FIG. 11, to deliver a converted polyphase component V 1 . (n) an output signal vector, in the manner of a linear time-varying system, for an implementation of the form A;
- la figure 12B illustre une représentation du système global de conversion, défini sous la forme A , comme un ensemble de sous-systèmes linéaires variant dans le temps ;FIG. 12B illustrates a representation of the global conversion system, defined in the form A, as a set of linear subsystems varying in time;
- la figure 12C illustre le fonctionnement d'un sous-système d'ordre / du système de la figure 11, pour délivrer une composante polyphasée convertie V.(n) d'un vecteur signal de sortie, à la manière d'un système linéaire variant dans le temps, pour une mise en œuvre selon la forme B ;FIG. 12C illustrates the operation of an order subsystem / of the system of FIG. 11, for delivering a converted polyphase component V. (n) of an output signal vector, in the manner of a system linear time-varying, for implementation in form B;
- la figure 12D illustre une représentation du système global de conversion, défini sous la forme B, comme un ensemble de sous-systèmes linéaires variant dans le temps ; - la figure 12E illustre le développement du système global de conversion, en tant que système linéaire variant dans le temps et utilisant les transformations à recouvrement (OLA) ;FIG. 12D illustrates a representation of the global conversion system, defined in the form B, as a set of linear subsystems varying in time; FIG. 12E illustrates the development of the overall conversion system, as a time-varying linear system using overlapping transformations (OLA);
- les figures 13A et 13B illustrent une matrice de conversion globale, tridimensionnelle, représentée par des sous-blocs ; - la figure 14 illustre un exemple de réalisation des étapes de construction de la matrice globale de conversion.FIGS. 13A and 13B illustrate a global, three-dimensional conversion matrix represented by sub-blocks; FIG. 14 illustrates an exemplary embodiment of the steps for constructing the global conversion matrix.
Avant de décrire en détail un ou plusieurs modes de réalisation, on justifie ci-après le choix de l'approche que propose la présente invention. En particulier, on justifie dans ce qui suit le fait de représenter des transformées variant dans le temps par des bancs de filtres et on démontre d'ailleurs une équivalence dans leur représentation par des bancs de filtres.Before describing in detail one or more embodiments, the choice of the approach proposed by the present invention is justified below. In particular, the fact that time-varying transforms are represented by filter banks is justified in the following, and an equivalence in their representation by filter banks is demonstrated.
Les codeurs notamment de type MPEG-2/4 AAC et Dolby AC-3 utilisent des représentations temps/fréquences à résolution variable . Ils opèrent en procédant à des analyses par transformées à recouvrement variant dans le temps, dont un exemple est la transformée de type dit "TV-MLT" (pour "time-varying modulated lapped tmnsform" ce qui se traduit par "transformée modulée à recouvrement, variant dans le temps") où la taille des blocs traités dépend des propriétés instantanées du signal. La représentation temps/fréquences de ces codeurs est qualifiée d'adaptative car les fonctions de base de la transformée à recouvrement varient dans le temps, selon les caractéristiques à court terme du signal.The coders in particular of the MPEG-2/4 AAC and Dolby AC-3 types use variable resolution time / frequency representations. They operate by performing time-varying overlap transform analyzes, an example of which is the so-called "TV-MLT" transform ("time-varying modulated lapped tmnsform") which translates to "modulated transform overlay". , varying in time ") where the size of the processed blocks depends on the instantaneous properties of the signal. The time / frequency representation of these encoders is qualified as adaptive because the basic functions of the overlay transform vary over time, depending on the short-term characteristics of the signal.
La représentation d'une transformée MLT classique (invariante dans le temps) par un banc de filtres uniforme à reconstruction parfaite est connue. On rappelle qu'une transformée MLT est un cas particulier d'analyse/synthèse par banc de filtres modulé en cosinus, où la longueur N des filtres (équivalente au degré des filtres "plus 1") est égale à deux fois le nombre de sous-bandes M (équivalente au nombre de filtres par banc), soit Λr = 2Af .The representation of a classical MLT transform (invariant in time) by a uniform filter bank with perfect reconstruction is known. It is recalled that an MLT transform is a special case of analysis / synthesis by cosine-modulated filter bank, where the length N of the filters (equivalent to the degree of the "plus 1" filters) is equal to twice the number of sub-filters. -bands M (equivalent to the number of filters per bank), ie Λ r = 2Af.
On ne décrit pas en détail le principe des transformées MLT invariables dans le temps, étant entendu qu'il est divulgué largement dans l'art antérieur, notamment dans : "Signal Processing with Lapped Transform" de H.S. Malvar, Artech House, Boston, 1992. On décrit ici le cas d'une variation temporelle de la conversion, suite par exemple à un changement de résolution de l'un des codeurs intervenant dans le transcodage.The principle of time-invariant MLT transforms is not described in detail, it being understood that it is widely disclosed in the prior art, especially in HS Malvar's Signal Processing with Lapped Transform, Artech House, Boston, 1992. . The case of a temporal variation of the conversion is described here, following, for example, a change of resolution of one of the coders involved in the transcoding.
Les codeurs de type MPEG-2/4 AAC et Dolby AC-3 fonctionnent avec des transformées MLT dont le paramètre M peut prendre deux valeurs qui définissent deux tailles de fonction fenêtre h(n) différentes (M1 ou M2 selon le tableau ci-après).The MPEG-2/4 AAC and Dolby AC-3 encoders operate with MLT transforms whose parameter M can take two values which define two different window function sizes h (n) (M 1 or M 2 according to the table below). -after).
Tailles des fenêtres des codeurs MPEG-2/4 AAC et Dolby AC-3.Window sizes of MPEG-2/4 AAC and Dolby AC-3 encoders.
Le passage d'une taille de fenêtre à l'autre crée une variation dans le temps de la résolution fréquentielle de la transformée. Par ailleurs, ce passage doit être opéré tout en conservant la propriété de reconstruction parfaite du signal. Les transformées TV- MLT utilisées par les codeurs précités vérifient bien cette condition. Plus particulièrement, la technique de commutation de fenêtres (pour "windows switching"), définie dans la norme MPEG-2/4 AAC, utilise des fonctions fenêtres de transition asymétriques notées ci-après hstart et hstop , pendant les périodes de changement de résolution.The transition from one window size to another creates a variation in the time of the frequency resolution of the transform. Moreover, this passage must be operated while retaining the property of perfect reconstruction of the signal. The TV-MLT transforms used by the above-mentioned coders verify this condition. More particularly, the Windows switching technique, defined in the MPEG-2/4 AAC standard, uses asymmetrical transition window functions noted below, h start and h stop , during the changeover periods. resolution.
On définit ci-après les opérations mises en œuvre par les transformées TV-MLT en suivant l'allure des fenêtres de transitions hstart et hstop qui garantissent la propriété de reconstruction parfaite.The operations implemented by the TV-MLT transforms are defined below by following the shape of the windows of transitions h start and h stop which guarantee the property of perfect reconstruction.
La matrice de transformée à recouvrement, P , est décomposée de la manière suivanteThe overlap transform matrix, P, is decomposed in the following manner
P = DM ®hΛ/ où l'opérateur ® est défini comme le produit composantes à composantes et lignes à lignes des éléments matriciels. Dw est la matrice de modulation, de taille, M x 2M , définie par :P = D M ®h Λ / where the operator ® is defined as the product component to components and lines to lines of the matrix elements. D w is the modulation matrix, size, M x 2M, defined by:
avec les fonctions de base telles que : with basic functions such as:
et * = O,...,M -1 , w = 0,1,...,(2M -I) . and * = O, ..., M -1, w = 0.1, ..., (2M-I).
On note hw le vecteur associé à la fonction fenêtre de longueur 2M , avec : hM = (hM (O) hM(\)...hM(2M -\)) Ses composantes hM (n) peuvent être définies par exemple par la fonction sinusoïdaleWe denote h w the vector associated with the window function of length 2M, with: h M = (h M (O) h M (\) ... h M (2M - \)) Its components h M (n) can be defined for example by the sinusoidal function
(la plus couramment utilisée dans les applications de traitement de signaux audio), de type :(most commonly used in audio signal processing applications), of type:
On note enfin hM et hM les vecteurs associés respectivement aux fonctions fenêtres de longueurs respectives M1 et M2 , et r le ratio tel que r = MxIM1 (>1).Finally, we denote by h M and h M the vectors respectively associated with the window functions of respective lengths M 1 and M 2 , and r the ratio such that r = M x IM 1 (> 1).
On adopte une représentation en composantes polyphasées du signal d'entée x{n) telle que : u,(m) = x(mM -l), / = O,...,M -1 Le bloc d'échantillons représentant une composante polyphasée d'indice m est alors défini par : u(m) = {uM ^m)...U1(In) uo(m))' , où la notation xτ désigne la transposée du vecteur x . Pour obtenir un bloc de 2M échantillons, on concatène deux blocs successifs tel que :A representation in polyphase components of the input signal x {n) is adopted such that: u, (m) = x (mM-1), / = O, ..., M -1 The block of samples representing a polyphase component of index m is then defined by: u (m) = {u M ^ m) ... U 1 (In) u o (m)) ' , where the notation x τ designates the transpose of the vector x. To obtain a block of 2M samples, two successive blocks are concatenated such as:
U(m) = (u(m - V) u{m))' (4)U (m) = (u (m - V) u (m)) ' (4)
La transformée du bloc signal UJm) , notée Y_{m) , est déterminée par :The signal block transform UJm), denoted Y_ {m), is determined by:
Y(m) = ¥U(m) (5) où Yjjri) = (yo(m) y\ (m) ...yM_χ (m))' est le vecteur des coefficients transformés.Y (m) = ¥ U (m) (5) where Yjjri) = (y o (m) y \ (m) ... y M _ χ (m)) ' is the vector of the transformed coefficients.
Lors d'un passage d'une fenêtre longue à une fenêtre courte, on prend le cas d'un vecteur de signal U_{m) de longueur 2M1 auquel on applique une fenêtre longue de transition, notée hstart , avec la matrice de modulation DM . Le vecteur précédent H(m ~ 1) es* de longueur 2M1 auquel on a normalement appliqué une fenêtre longue standard hM avec la matrice de modulation Dw . En revanche, les r vecteurs aux instants suivants (m+l, m+2, ..., m+r), notés W_(m + V) , Wjjn + 2) ,..., W_(m + r) , sont tous de longueur courte 2M2 . On leur applique des fenêtres courtes standard hw avec la matrice de modulation DM .During a transition from a long window to a short window, we take the case of a signal vector U_ {m) of length 2M 1 to which we apply a long transition window, denoted h start , with the matrix of modulation D M. The previous vector H ( m ~ 1) es * of length 2M 1 to which a standard long window h M has normally been applied with the modulation matrix D w . On the other hand, the vectors r at the following instants (m + 1, m + 2, ..., m + r), denoted by W (m + V), W ijn + 2), ..., W (m + r) , are all of short length 2M 2 . Standard short windows h w are applied with the modulation matrix D M.
Ensuite, lors d'un passage d'une fenêtre courte à une fenêtre longue, le signal U_(m + 2) est de longueur 2M1 et on applique une fenêtre longue de transition, notée hstop , avec la matrice de modulation OM .Then, during a passage from a short window to a long window, the signal U_ (m + 2) is of length 2M 1 and a long transition window, denoted h stop , is applied with the modulation matrix O M .
Les composantes des vecteurs qui interviennent pendant les deux changements successifs de taille de fenêtre s'écrivent :The components of the vectors that intervene during the two successive changes of window size are written:
U (m) = [xφn - 2)Mι + 1) ...x(mMx )) W_(m + 1) = (x((m - I)M1 + An + 1) ...x({m - V)Mx + An + 2M1))U (m) = [ x φ n - 2) M ι + 1) ... x (mM x )) W_ (m + 1) = (x ((m - I) M 1 + An + 1) .. .x ({m - V) M x + An + 2M 1 ))
W(m + r) = (Jt(Cm -I)M1 + An + (r -I)M2 + V)... x((m -I)M1 + An + (r + V)M2)) U_(m + 2) = (x(mMι +ï)...x((m + 2)Mι))W (m + r) = (Jt (Cm -I) M 1 + An + (r -I) M 2 + V) ... x ((m -I) M 1 + An + (r + V) M 2 )) U_ (m + 2) = (x (mM ι + ï) ... x ((m + 2) M ι ))
Le paramètre An est fixé à la valeur An = (Mι -M2)I2 . Les dispositions de ces vecteurs sont illustrées sur la figure 3 pour le cas où MJM1 = 2 . La figure 3 illustre en particulier une transition fenêtre longue à fenêtre courte à l'instant mMλ et une transition fenêtre courte à fenêtre longue à l'instant (m + I)M1. L'axe des temps porte la référence TEMP. On constate un recouvrement entre le vecteur long UJm) et les vecteurs courts WJm + 1) , WJm + 2) suivants. Ce recouvrement est le même que celui entre les vecteurs courts et le premier vecteur long suivant UJm + 2) .The parameter An is set to the value An = (M ι -M 2 ) I2. The provisions of these vectors are illustrated in Figure 3 for the case where MJM 1 = 2. In particular, FIG. 3 illustrates a long window to short window transition at time mM λ and a short window to long window transition at time (m + I) M 1 . The time axis is referenced TEMP. There is an overlap between the long vector UJm) and the following short vectors WJm + 1), WJm + 2). This overlap is the same as that between the short vectors and the first long vector following UJm + 2).
Dans ces conditions, il a été montré que la propriété de reconstruction parfaite de la transformée TV-MLT ne dépend, comme pour le cas d'une transformée MLT classique, que des fonctions fenêtres utilisées et, en particulier, des deux fenêtres de transition hstart et hstop de longueur 2M1 . La condition de reconstruction parfaite est vérifiée pendant les périodes de transitions si ces fenêtres de transitions sont celles définies selon les quatre conditions ci-après, en supposant que la dimension de la transformée change à l'instant mMx de M1 vers M2 , puis à l'instant (m + I)M1 de M2 vers M1 .Under these conditions, it has been shown that the perfect reconstruction property of the TV-MLT transform depends, as in the case of a conventional MLT transform, only on the windows functions used and, in particular, on the two transition windows. start and h stop of length 2M 1 . The perfect reconstruction condition is verified during the transition periods if these transition windows are those defined according to the following four conditions, assuming that the dimension of the transform changes at the instant mM x from M 1 to M 2 , then at the instant (m + I) M 1 of M 2 to M 1 .
* Première condition : la fonction fenêtre, pour une transformée de taille M1 , est telle que :* First condition: the window function, for a transform of size M 1 , is such that:
* Seconde condition : la fonction fenêtre qui intervient à la transition de M1 vers M2 est telle que : * Second condition: the window function that intervenes at the transition from M 1 to M 2 is such that:
* Troisième condition : la fonction fenêtre, pour une transformée de taille M2 , est telle que :* Third condition: the window function, for a transform of size M 2 , is such that:
* Quatrième condition : la fonction fenêtre qui intervient à la transition de M2 vers M, est telle que :* Fourth condition: the window function that intervenes at the transition from M 2 to M, is such that:
Pour la troisième condition, il y a r transformées MLT successives de dimension M2 entre deux périodes de transition. La première transformée débute à l'instant (m - I)M \ + An . La dernière transformée se termine à l'instant mMλ + M1 + An .For the third condition, there are successive MLT transforms of dimension M 2 between two transition periods. The first transform starts at the instant (m - I) M \ + An. The last transform ends at the instant mM λ + M 1 + An.
La figure 4A illustre l'allure de la fonction de transition hstm(n) qui intervient pendant un changement de dimension de M1 vers M2 définie par les quatre conditions ci-avant assurant une reconstruction parfaite. On notera que la fenêtre de transition hstop(n) réciproque intervenant pendant une transition de M2 vers Mx est simplement telle que :FIG. 4A illustrates the shape of the transition function h stm (n) which occurs during a change in size from M 1 to M 2 defined by the four conditions above ensuring a perfect reconstruction. Note that the transition window h stop (n) reciprocal intervening during a transition from M 2 to M x is simply such than :
La figure 4B représente la succession des fenêtres de transition qui interviennent pendant les deux périodes de changement de résolution temporelle de la transforméeFIG. 4B represents the succession of transition windows that occur during the two periods of change of temporal resolution of the transform
TV-MLT. Plus particulièrement, la figure 4B illustre le fenêtrage intervenant pendant les deux changements de résolution de M1 vers M1 , puis de M2 vers M1 , avec dans l'exemple représenté M1 = 1024 et M2 = 128.TV-MLT. More particularly, FIG. 4B illustrates the windowing occurring during the two resolution changes from M 1 to M 1 , then from M 2 to M 1 , with M 1 = 1024 and M 2 = 128 in the example represented.
En pratique, on peut alors considérer plusieurs changements de résolution de la transformée. Ces changements de résolution interviennent aux instants multiples de M1 et sont déclenchés en fonction des propriétés du signal incident, notamment de stationnarité. Cette propriété est connue des codeurs à changement dynamique de résolution.In practice, we can then consider several changes in the resolution of the transform. These changes in resolution occur at multiple times of M 1 and are triggered depending on the properties of the incident signal, including stationarity. This property is known to dynamic resolution change coders.
En particulier, en référence à la figure 4B, on note des équivalents de transformées MLT :In particular, with reference to FIG. 4B, there are equivalents of MLT transforms:
- sur une fenêtre longue pour les instants n compris entre 0 et 2047, appelée ci-après "première région", - sur une première fenêtre de transition pour assurer une reconstruction parfaite, pour les instants n compris entre 1024 et 2623, appelée ci-après "deuxième région",on a long window for the instants n between 0 and 2047, hereinafter referred to as the "first region", on a first transition window to ensure a perfect reconstruction, for times n between 1024 and 2623, referred to hereinafter as after "second region",
- sur une succession d'une pluralité de fenêtres courtes ( r fenêtres hM> de taille M2 ), pour les instants n compris entre 2496 et 3647, appelée ci-après "troisième région", eton a succession of a plurality of short windows (r windows h M> of size M 2 ), for instants n between 2496 and 3647, hereinafter called "third region", and
- sur une seconde fenêtre de transition pour assurer une reconstruction parfaite vers un retour à une fenêtre longue, pour les instants n compris entre 3520 et 5119, appelée ci- après "quatrième région".on a second transition window to ensure a perfect reconstruction towards a return to a long window, for instants n between 3520 and 5119, hereinafter called "fourth region".
L'observation du fenêtrage sur la transition, comportant en particulier la troisième région avec la succession de fenêtres courtes, est importante pour la suite de la description.The observation of the windowing on the transition, including in particular the third region with the succession of short windows, is important for the continuation of the description.
La transformation TV-MLT globale peut être définie de façon complète par une matrice globale de conversion, de dimension "infinie", notée T(m) et telle que :The overall TV-MLT transformation can be defined in a complete way by a global matrix of conversion, of dimension "infinite", noted T (m) and such that:
où P0 (m) et P1(W) sont des sous-matrices de taille M xM définies aux indices de bloc m qui correspond à l'instant mMx . where P 0 (m) and P 1 (W) are sub-matrices of size M xM defined at the block indices m which corresponds to the instant mM x .
En particulier, la concaténation P(m) = [P0(/w) P1(^)] dé taille M1 X 2M1 représente la matrice de transformation à recouvrement dont les expressions seront données ci- après pour tout instant mMx .In particular, the concatenation P (m) = [P 0 (/ w) P 1 (^)] of size M 1 X 2M 1 represents the recovery transformation matrix whose expressions will be given below for any moment mM x .
La condition de reconstruction parfaite qu'assure la transformée TV-MLT est régie par l'égalité :The condition of perfect reconstruction provided by the transform TV-MLT is governed by equality:
T" (m)Υ(m) = IT " (m) Υ (m) = I
En utilisant la formulation (6) de la matrice de transformation, la condition de reconstruction parfaite est définie de façon équivalente simplement par les trois égalités suivantes :Using the formulation (6) of the transformation matrix, the perfect reconstruction condition is equivalently defined simply by the following three equalities:
La condition de reconstruction parfaite (7) implique que la matrice de transformée à recouvrement P(Vw) reste orthogonale aux deux matrices voisines P(m -l) et V(m + 1) . En reprenant les quatre conditions données plus haut, avec la succession de changements de taille de la transformation, les matrices de transformées à recouvrement sont alors définies par :The perfect reconstruction condition (7) implies that the transform matrix overlap P (Vw) remains orthogonal to the two neighboring matrices P (m-1) and V (m + 1). By taking up the four conditions given above, with the succession of changes in size of the transformation, the overlapping transform matrices are then defined by:
La matrice de transformée à recouvrement, finie, associée au bloc m + l qui correspond à r transformées MLT successives de taille M2 ("troisième région" de la figure 4B) est, quant à elle, définie par :The finite recovery transform matrix, associated with the m + 1 block corresponding to r successive MLT transformations of size M 2 ("third region" of FIG. 4B) is, for its part, defined by:
où et sont les matrices de transformées à recouvrement de la transformée MLT de taille M2 x 2M, et qui se décomposent aussi sous une forme du type where and are the transform transform matrices of the transform MLT size M 2 x 2M, and which also break down into a form of the type
On montre ainsi qu'il existe quatre situations possibles (quatre régions de la figure 4B) définies par quatre valeurs possibles de la matrice F (m) . On comprendra déjà que la matrice de transformée à recouvrement P(w) admet quatre "états" possibles.It is thus shown that there are four possible situations (four regions of FIG. 4B) defined by four possible values of the matrix F (m). It will be already understood that the overlap transform matrix P (w) has four possible "states".
Dans la suite, l'expression de la matrice P(m + 1) donnée ci-avant, correspondant à l'un des quatre états admissibles, sera notée QM pour qualifier de manière générale cet état parmi les quatre états admissibles.In the following, the expression of the matrix P (m + 1) given above, corresponding to one of the four admissible states, will be denoted Q M to generally qualify this state among the four admissible states.
Partant des définitions des matrices à recouvrements possibles P(m) , on montre que les conditions de reconstruction parfaite (7) sont vérifiées quand les fonctions fenêtres des filtres prototypes hstart et hstop sont celles définies par les quatre conditions ci- avant.Starting from the definitions of possible overlapping matrices P (m), we show that the perfect reconstruction conditions (7) are verified when the window functions of the h start and h stop prototype filters are those defined by the four conditions above.
L'opération de transformation directe de la transformée TV-MLT est alors définie par :The direct transformation operation of the TV-MLT transform is then defined by:
Y(m) ≈ Ϋ(m)U(m) (10) où Y_{m) est le vecteur des coefficients transformés à l'instant mMx et U_{m) est un vecteur défini à partir du vecteur d'entrée par la relation (3) ci-avant.Y (m) ≈ Ϋ (m) U (m) (10) where Y_ {m) is the vector of the transformed coefficients at time mM x and U_ {m) is a vector defined from the input vector by relation (3) above.
L'opération de transformation inverse est définie, comme pour le cas invariant de la transformée MLT, par deux étapes :The inverse transformation operation is defined, as for the invariant case of the MLT transform, by two steps:
- transformation inverse des vecteurs des coefficients transformés :inverse transformation of the vectors of the transformed coefficients:
Z (m) = P(m)' Y (m) (11)Z (m) = P (m) Y (m) (11)
- addition avec recouvrement (ou OLA pour "overlap and add") des vecteurs obtenus û{m) = zo(m) + zι{m -l) (12) où on note :addition with overlay (or OLA for "overlap and add") of the vectors obtained û {m) = z o (m) + z ι {m-1) (12) where we note:
" z_o(m) e* h(m) ^es blocs de taille M1 composant le vecteur ZJjn) , tel que Z(m) = (zo(m) z,(w)) , et - û(m) le vecteur reconstruit, censé valoir le vecteur initial u(m) car la reconstruction est parfaite."z_ o ( m ) e * h ( m ) ^ es blocks of size M 1 constituting the vector ZJjn), such that Z (m) = (z o (m) z, (w)), and - û (m ) the reconstructed vector, supposed to be worth the initial vector u (m) because the reconstruction is perfect.
On décrit maintenant les bases d'une représentation d'une transformée TV-MLT par des bancs de filtres.The bases of a representation of a TV-MLT transform by filter banks are now described.
La transformée TV-MLT présentée ci-avant permet de passer d'une transformée MLT de taille M1 à une transformée MLT de taille M2 (ou inversement de M2 à M1 ), tout en conservant la propriété de reconstruction parfaite du signal. On a ainsi montré comment traiter les transformations directes et inverses de la transformation TV-MLT, sur des blocs vecteurs de même taille constante 2M1 .The TV-MLT transform presented above makes it possible to go from an MLT transform of size M 1 to an MLT transform of size M 2 (or vice versa from M 2 to M 1 ), while preserving the property of perfect reconstruction of the signal. . We have shown how to treat the direct and inverse transformations of the TV-MLT transformation on vector blocks of the same constant size 2M 1 .
En considérant le cas de la transformation du vecteur U_(m + Ï) par la matrice de transformation à recouvrement donnée par la relation (9) ci-avant (troisième région de la figure 4B), le vecteur 7(m + 1) de taille Mx , tel que :Considering the case of the transformation of the vector U_ (m + Ï) by the overlap transformation matrix given by the relation (9) above (third region of FIG. 4B), the vector 7 (m + 1) of size M x , such as:
Y(m + l) = Ϋ(m + l)U(m + l) est défini, par construction, comme étant la concaténation des r vecteurs transformés suivants, tous de taille M2 :Y (m + 1) = Ϋ (m + 1) U (m + 1) is defined, by construction, as the concatenation of the following transformed vectors, all of size M 2 :
. .
On rappelle que cette construction découle de l'observation de la figure 4B dont l'importance était soulignée ci-avant.It is recalled that this construction follows from the observation of FIG. 4B whose importance was underlined above.
La matrice de transformée à recouvrement du bloc (m + 1) est construite de manière à respecter le décalage temporel An (figure 3).The overlap transform matrix of the block (m + 1) is constructed to respect the time offset An (FIG. 3).
Dans le cadre de la modélisation du système de conversion entre différents domaines de sous-bandes, il est avantageux de disposer d'une architecture d'implémentation de la transformée TV-MLT qui conduit à des opérations d'analyse/synthèse à dimension constante. Il est proposé ci-après une architecture en bancs de filtres à décimation maximale variant dans le temps définie comme suit.In the context of modeling the conversion system between different subband domains, it is advantageous to have an implementation architecture of the TV-MLT transform which leads to constant-size analysis / synthesis operations. It is proposed hereinafter a time-varying maximum decimation filter bank architecture defined as follows.
La transformation TV-MLT utilisée notamment par les codeurs normalisés MPEG-2/4The TV-MLT transformation used in particular by standard MPEG-2/4 coders
AAC ou Dolby AC-3 et décrite précédemment admet une représentation en banc de filtres à décimation maximale variant dans le temps. La longueur des filtres est égale à deux fois le nombre M1 de sous-bandes. Le banc de filtres d'analyse (respectivement de synthèse) équivalent est décrit par le diagramme de la figure 5A (respectivement de la figure 5B) et les représentations dans le domaine de la variable Z des filtres H''(n,Z ),...,HMι"l(n,Z ) (respectivement F0 (Z , n),...,FM>~1 (Z , n) ) aux instants mMx sont définies comme suit.AAC or Dolby AC-3 and previously described has a time-varying maximum decimation filter bank representation. The length of the filters is twice the number M 1 of sub-bands. The equivalent analysis (respectively synthetic) filter bank is described by the diagram of FIG. 5A (respectively of FIG. 5B) and the representations in the range of the Z variable of the filters H '' (n, Z), ..., H Mι "l (n, Z) (respectively F 0 (Z, n), ..., F M> ~ 1 (Z, n)) at instants mM x are defined as follows.
Sur une période à résolution temporelle M1 , les coefficients des réponses impulsionnelles hϋ k {mMλ),...,h2 k M^ {mMx) et fo k(mMx),...,f2 k λf^x(mMx) , avec k = 0,...,M1 -1 , sont donnés par les relations (13) et (14) :Over a period with a time resolution M 1 , the coefficients of the impulse responses h ϋ k {mM λ ), ..., h 2 k M ^ {mM x ) and f o k (mM x ), ..., f 2 k λf ^ x (mM x ), with k = 0, ..., M 1 -1, are given by the relations (13) and (14):
II s'agit d'un premier état possible correspondant à la situation de la première région de la figure 4B.This is a first possible state corresponding to the situation of the first region of FIG. 4B.
Pendant une période à résolution temporelle M2 , les coefficients des réponses impulsionnelles , avec k = 0,...,M1 -1 , sont donnés par les relations (15) et (16) :During a period with a time resolution M 2 , the coefficients of the impulse responses , with k = 0, ..., M 1 -1, are given by relations (15) and (16):
II s'agit d'un deuxième état possible correspondant à la situation de la troisième région de la figure 4B.This is a second possible state corresponding to the situation of the third region of FIG. 4B.
Pendant une période de transition passant d'une résolution M1 vers M1 , les coefficients des réponses impulsionnelles etDuring a transition period passing from a resolution M 1 to M 1 , the coefficients of the impulse responses and
avec k = 0,...,Mx —l , sont donnés par les relations (17) et (18) : with k = 0, ..., M x -l, are given by the relations (17) and (18):
11 s'agit d'un troisième état possible correspondant à la situation de la deuxième région en figure 4B. This is a third possible state corresponding to the situation of the second region in FIG. 4B.
Pendant une période de transition passant d'une résolution M2 vers M1 , les coefficients des réponses impulsionnelles et fcj(mMr ),..., f*M ^λ{mMx) , avec k = 0,...,Mx ~\ , sont donnés par les relations (19) et (20) :During a transition period passing from a resolution M 2 to M 1 , the coefficients of the impulse responses and f c j (mM r ), ..., f * M ^ λ {mM x ), with k = 0, ..., M x ~ \, are given by the relations (19) and (20):
II s'agit enfin d'un quatrième état possible correspondant à la situation de la quatrième région de la figure 4B.Finally, it is a fourth possible state corresponding to the situation of the fourth region of FIG. 4B.
Les résultats ci-avant seront utiles pour ce qui suit, dans le sens où les termes définissant les filtres sont finalement déterminés directement à partir de la matrice de modulation D, connue et exprimée par la relation (1), d'une part, et à partir des fenêtres h définies par les quatre conditions ci-avant pour satisfaire la reconstruction parfaite, d'autre part.The above results will be useful for the following, in the sense that the terms defining the filters are finally determined directly from the modulation matrix D, known and expressed by the relation (1), on the one hand, and from the windows h defined by the four conditions above to satisfy the perfect reconstruction, of somewhere else.
Le banc de filtres d'analyse/synthèse ainsi défini est alors à reconstruction parfaite. Telle est la base de la représentation de la transformée TV-MLT par des bancs de filtres. Ici, seuls les coefficients des filtres varient dans le temps, le nombre de sous- bandes restant fixe.The analysis / synthesis filter bank thus defined is then perfectly reconstructed. This is the basis of the representation of the TV-MLT transform by filter banks. Here, only the coefficients of the filters vary in time, the number of subbands remaining fixed.
On retiendra alors, en termes généraux, que chaque jeu de coefficients du banc d'analyse ou de synthèse, associé à un état possible, peut être calculé en fonction d'une matrice de modulation D et d'un vecteur h caractérisant cet état possible et assurant une propriété de reconstruction parfaite (comme dans l'exemple décrit ci-avant) ou encore "quasi-parfaite". On entend par reconstruction "quasi-parfaite" la propriété de reconstruction des bancs de filtres utilisés dans des codeurs de type MPEG- 1/2 layer I&I1 notamment. On comprendra alors que, dans le cas par exemple d'une combinaison d'un codeur de ce type à un codeur variant dans le temps, les propriétés décrites ci- avant peuvent encore être observées.It will then be retained, in general terms, that each set of coefficients of the analysis or synthesis bench, associated with a possible state, can be calculated as a function of a modulation matrix D and of a vector h characterizing this possible state. and ensuring a perfect reconstruction property (as in the example described above) or still "almost perfect". "Near-perfect" reconstruction is understood to mean the property of reconstruction of the filterbanks used in coders of the MPEG-1/2 type I & I1 type in particular. It will then be understood that, in the case for example of a combination of an encoder of this type with a time-varying coder, the properties described above can still be observed.
On a ainsi vaincu un préjugé de l'état de l'art selon lequel il n'était pas possible de représenter une transformée variante dans le temps par des bancs de filtres. Ici, on a démontré qu'une transformée TV-MLT était bien équivalente à une représentation en bancs de filtres avec un nombre fixe de sous-bandes, maximum, correspondant à l'état où la fenêtre de pondération est longue, et ce, quelque soit l'état de la transformée TV- MLT. Cette réalisation permet alors d'anticiper tous les changements possibles d'état de la transformée TV-MLT.It has thus been overcome by a prejudgment of the state of the art according to which it was not possible to represent a variant transform in time by filter banks. Here, it has been shown that a TV-MLT transform is indeed equivalent to a representation in filter banks with a fixed number of sub-bands, maximum, corresponding to the state where the weighting window is long, and this, whatever the state of the TV-MLT transform. This embodiment then makes it possible to anticipate all the possible changes of state of the TV-MLT transform.
En particulier, on a montré l'équivalence de la représentation des transformées à recouvrement variant dans le temps TV-MLT par un banc de filtres FIR (à réponse impulsionnelle finie) et à décimation maximale variant dans le temps. Des systèmes variant dans le temps, couramment utilisés, notamment par les codeurs MPEG-2/4 AAC et Dolby AC-3, peuvent alors mettre en œuvre des représentations en sous- bandes adaptatives, lesquelles peuvent être définies, comme décrit ci-avant, par le formalisme des systèmes linéaires variant dans le temps.In particular, the equivalence of the representation of TV-MLT time varying overlap transforms has been shown by a finite impulse (FIR) filter bank and a time-varying maximum decimation filter. Time-varying systems commonly used, in particular MPEG-2/4 AAC and Dolby AC-3 coders, can then implement adaptive subband representations, which can be defined, as described above, by the formalism of linear systems varying in time.
Des détails sur le formalisme des systèmes linéaires variant dans le temps sont décrits notamment dans : "Time-Varying Filters and Filter Banks: Some Basic Principles" ', S Phoong et P.P.Details of the formalism of linear time-varying systems are described in particular in: "Time-Varying Filters and Filter Banks: Some Basic Principles", S Phoong and P.P.
Vaidyanathan, IEEE Transactions on Signal Processing, volume 44, n°12, pages 2971-Vaidyanathan, IEEE Transactions on Signal Processing, Volume 44, No. 12, pages 2971-
2987 (Décembre 1996), et2987 (December 1996), and
" Factorizability of lossless time-varying filters and filter banks", S Phoong et P.P."Factorizability of lossless time-varying filters and filter banks", S Phoong and P.P.
Vaidyanathan, IEEE Transactions on Signal Processing, volume 45, n° 8, pages 1971- 1986 (AoUt 1997). On décrit maintenant la technique de conversion au sens de l'invention, elle-même, en tenant compte de cas particuliers de transcodage, ainsi que le contrôle du retard algorithmique induit par la conversion au sens de l'invention.Vaidyanathan, IEEE Transactions on Signal Processing, Volume 45, No. 8, pp. 1971-1986 (August 1997). We will now describe the conversion technique within the meaning of the invention, itself, taking into account particular cases of transcoding, as well as the control of the algorithmic delay induced by the conversion in the sense of the invention.
Comme indiqué précédemment, on décrit des conversions où les représentations temps/fréquences varient dans le temps.As previously indicated, conversions are described where the time / frequency representations vary over time.
La figure 6 montre la représentation en blocs multi-cadences pour illustrer la conversion.Figure 6 shows the multi-rate block representation to illustrate the conversion.
Des vecteurs de signaux en sous-bandes X(κ) = [x0 («),... ,Λi_1(n)]' sont transmis en entrée d'un banc de filtres de synthèse F°(Z ,n),...,FL~ι(Z ,n) comportant L canaux, après avoir subi une expansion (sur-échantillonnage d'un facteur L ). Le signal synthétisé x(n) est analysé par le banc de filtres Hυ(«,Z ),..., H^"1 («, Z ) comportant M canaux et on obtient en sortie, suite à l'application d'une décimation (sous- échantillonnage d'un facteur M), de nouveaux signaux en sous-bandesSignal vectors in sub-bands X (κ) = [x 0 ("),..., Λ i- 1 (n)] ' are transmitted at the input of a bank of synthesis filters F ° (Z, n), ..., F L ~ ι (Z, n) having L channels, after having undergone an expansion (oversampling of an L factor). The synthesized signal x (n) is analyzed by the filter bank H υ (", Z),..., H ^ " 1 (", Z) having M channels and the output is obtained following the application of decimation (sub-sampling by a factor M), new signals in sub-bands
Y(«) = [>Ό («),---, yM _](«)]' • On comprendra alors que le nombre de canaux L et M restent constants mais les valeurs des coefficients des filtres changent notamment selon le fenêtrage (fenêtres longues, fenêtre courtes, fenêtres de transition, conformément à l'observation de la figure 4B). Sur la figure 6, la notation T L correspond à un suréchantillonnage (ou expansion) d'un facteur L tandis que la notation X M correspond à un sous-échantillonnage (ou décimation) d'un facteur M.Y («) = [> Ό («), ---, y M _ ] («)] ' • It will be understood that the number of L and M channels remains constant, but the values of the filter coefficients change in particular according to the windowing (long windows, short windows, transition windows, according to the observation of Figure 4B). In FIG. 6, the notation TL corresponds to an oversampling (or expansion) of a factor L whereas the notation XM corresponds to a subsampling (or decimation) of a factor M.
On cherche alors à fusionner en une seule étape l'application des deux bancs de filtres synthèse/analyse pour réduire la complexité algorithmique (nombre d'opérations de calcul et mémoire requise).It is then sought to merge in a single step the application of the two banks of synthesis / analysis filters to reduce the algorithmic complexity (number of calculation operations and required memory).
Les techniques de conversion entre représentations du signal dans différents domaines de sous-bandes sont utilisées pour effectuer les transcodages notamment entre les codeurs :Conversion techniques between signal representations in different domains sub-bands are used to perform the transcodings, in particular between the coders:
- selon la norme MPEG- 1/2 (layer I et II),- according to the MPEG-1/2 (layer I and II) standard,
- et/ou MPEG-2/4 AAC, - et/ou du type Dolby AC-3, etand / or MPEG-2/4 AAC, and / or of the Dolby AC-3 type, and
- et/ou encore selon la norme G 722.1 (par exemple le codeur dit "TDAC" pour « Time Domain Aliasing Cancellation »).and / or according to standard G 722.1 (for example the so-called "TDAC" coder for "Time Domain Aliasing Cancellation").
Les représentations temps/fréquences du signal utilisées par ces codeurs, sont précisées dans les normes et sont telles que :The time / frequency representations of the signal used by these coders are specified in the standards and are such that:
• pour MPEG- 1/2 layer I et layer II, on utilise une représentation du signal en sous-bandes, basée sur l' analyse/synthèse par bancs de filtres de type pseudo- QMF (pour « Quadrature Mirror Filter » qui se traduit par « filtre miroir en quadrature »), comportant 32 canaux, • pour MPEG-2/4 AAC, on utilise des représentations en sous-bandes à résolution variable et des analyses par transformées à recouvrement, variant dans le temps TV-MLT où la longueur des blocs 2M transformés dépend des propriétés du signal traité,• for MPEG-1/2 layer I and layer II, we use a representation of the signal in sub-bands, based on the analysis / synthesis by pseudo-QMF filter banks (for "Quadrature Mirror Filter" which translates by "quadrature mirror filter"), with 32 channels, • for MPEG-2/4 AAC, variable resolution subband representations and TV-MLT time-lapse transform analyzes are used where the length of transformed 2M blocks depends on the properties of the processed signal,
• pour Dolby AC-3, on utilise une représentation du signal par transformée TV- MLT, à recouvrement variante dans le temps avec M = 256 ou M = 128 ,• for Dolby AC-3, we use a representation of the signal TV-MLT transform, recovery variant in time with M = 256 or M = 128,
• pour G 722.1 (TDAC), on utilise une représentation par bancs de filtres TDAC comportant 320 sous-bandes.• for G 722.1 (TDAC), a TDAC filter bank representation with 320 subbands is used.
Dans ces conditions, le codeur G 722.1 et les codeurs MPEG-1/2 (layer I & II) utilisent des représentations par bancs de filtres invariant dans le temps. Par ailleurs, il a été souligné plus haut que les transformées TV-MLT des codeurs MPEG-2/4 AAC et AC- 3 admettent une représentation sous la forme d'un banc de filtres à décimation maximale et à nombre M de sous-bandes fixe, avec des filtres variant dans le temps.Under these conditions, the G 722.1 encoder and the MPEG-1/2 (layer I & II) coders use time-invariant filter bank representations. Furthermore, it has been pointed out above that the TV-MLT transforms of the MPEG-2/4 AAC and AC-3 coders admit a representation in the form of a bank of maximum decimation filters and M number of sub-bands. fixed, with filters varying over time.
On propose alors de définir ci-après les filtres d'analyses Hk(n, Z ) et de synthèse Fk(Z ,n) , pour tous les types de codeurs cités. Ainsi, la figure 6 représente formellement tous les cas de conversions possibles entre les différents exemples de codeurs cités.It is then proposed to define hereinafter the analysis filters H k (n, Z) and of synthesis F k (Z, n), for all types of coders mentioned. Thus, FIG. 6 formally represents all possible conversions between the various examples of coders mentioned.
On note : le vecteur colonne regroupant les M filtres d'analyse variant dans le temps, etWe note: the column vector grouping the M filters time-varying analysis, and
- F(Z , n) = [F° (Z , n),...,FL"ι(Z ,n)] le vecteur ligne regroupant les L filtres de synthèse variant dans le temps.- F (Z, n) = [F ° (Z, n), ..., F L "ι (Z, n)] the row vector regrouping the L time varying synthesis filters.
* Définition de l'expression selon la forme A* Definition of the expression according to form A
Les représentations dans le domaine Z correspondantes peuvent être notées :The corresponding representations in the Z domain can be noted:
où l longueurs respectives des filtres Nh (d'analyse) et Nf (de synthèse) sont constantes. where the respective lengths of the filters N h (of analysis) and N f (of synthesis) are constant.
Le vecteur des signaux en sous-bandes, Y(«) , à la sortie du banc de filtres d'analyse, s'écrit :The vector of the sub-band signals, Y ("), at the output of the analysis filter bank, is written:
où on définit l'opérateur matriciel g(n,Z ) = H(n,Z )F(Z ,n) par sa représentation dans le domaine Z d'une forme dite ci-après "forme A" telle que ses éléments sont définis par : where we define the matrix operator g (n, Z) = H (n, Z) F (Z, n) by its representation in the domain Z of a form called hereinafter "form A" such that its elements are defined by:
ave kx =0,..., (M-I) et k2 =0,..., (L-I). Ses coefficients g*"*2(«) sont définis par : have k x = 0, ..., (MI) and k 2 = 0, ..., (LI). Its coefficients g * "* 2 (") are defined by:
* Définition de l'expression selon la forme B* Definition of the expression according to form B
On peut définir aussi l'opérateur g(/7,Z) = H(«,Z)F(Z,«) sous une autre forme, dite ci-après "forme B ", comme suit :We can also define the operator g (/ 7, Z) = H (", Z) F (Z,") in another form, hereinafter called "form B", as follows:
avec £, ,..., (M-I) et A2 =0,..., (L-I) et les coefficients g^ι'kl(n) étant définis par : with £,, ..., (MI) and A 2 = 0, ..., (LI) and the coefficients g ^ ι ' kl (n) being defined by:
Dans ce cas, l'équation générale de la conversion entre les signaux en sous-bandes, définie selon cette forme B s'écrit :In this case, the general equation of the conversion between the signals in sub-bands, defined according to this form B is written:
On comprendra donc que ces deux variantes d'expression selon la forme A ou selon la forme B sont équivalentes mais diffèrent simplement par la manière de calculer mathématiquement les matrices g. En reprenant le formalisme des systèmes variant dans le temps décrit ci-avant, on cherche maintenant à fusionner des opérations induites par le schéma conventionnel de conversion.It will therefore be understood that these two variants of expression in the form A or in the form B are equivalent but simply differ in the manner of mathematically calculating the matrices g. By repeating the formalism of the time-varying systems described above, we are now seeking to merge operations induced by the conventional conversion scheme.
Dans la suite, les représentations des opérateurs matriciels g(«,Z ) ou g(Z ,«) sont notées de la manière suivante :In the following, the representations of matrix operators g (", Z) or g (Z,") are denoted as follows:
• Selon la forme• According to the form
• Selon la forme • According to the form
Ainsi, à un instant d'indic n donné, gf (n) (respectivement gf(«) ) définit la matrice de dimension M x L et comportant tous les z-èmes coefficients de filtrage gf"*2 («) donnés par la relation (24) ci-avant (respectivement donnés par la relation (26)).Thus, at a given instant n given, gf (n) (respectively gf (")) defines the matrix of dimension M x L and having all the z-th filter coefficients gf" * 2 (") given by the relation (24) above (respectively given by relation (26)).
On utilise maintenant des principes du document FR-2,875,351 et on note à cet effet K = ppcm(L,M) , le plus petit entier commun multiple des nombres M et L .We now use the principles of document FR-2,875,351 and we note for this purpose K = ppcm (L, M), the smallest multiple common multiple of the numbers M and L.
On note aussi px , p2 les entiers naturels tels que K = P1M = p2L .We also note p x , p 2 the natural numbers such that K = P 1 M = p 2 L.
On note U -(Λ) le vecteur de la j -ème composante de la décomposition polyphasée d'ordre pn du vecteur X(w) défini ar :We denote U - (Λ) the vector of the j-th component of the polyphase decomposition of order p n of the vector X (w) defined ar:
Le vecteur d'entrée X(«) des signaux en sous-bandcs se décompose comme suitThe input vector X (") of the subband signals is decomposed as follows
et l'équation de conversion (22) s'écrit : and the conversion equation (22) is written:
Par ailleurs, en décomposant le vecteur des signaux Y(«) en sous-bandes en pλ composantes polyphasées telles que , où i = 0,...,p{ , on obtient une nouvelle équation de conversion pour la z' -ème composante polyphasées du vecteur signal en sous-bande Y(n) telle que : Moreover, by decomposing the vector of the signals Y («) into sub-bands into p λ polyphase components such that, where i = 0, ..., p { , we obtain a new conversion equation for the z ' -th polyphase component of the sub-band signal vector Y (n) such that:
Cette équation (31) est importante car elle représente la conversion des composantes polyphasées d'ordre p2 des signaux d'entrée vers celles d'ordre pλ des signaux de sortie.This equation (31) is important because it represents the conversion of the polyphase components of order p 2 of the input signals to those of order p λ of the output signals.
En notant T(«,Z ) la matrice de conversion globale définie par la représentation selon la forme A , ses sous-éléments de filtrage A1. .(n,Z ) sont tels queNoting T («, Z) the global conversion matrix defined by the representation according to the form A, its filtering sub-elements A 1 . (n, Z) are such that
On notera ici que les sous-blocs A/ y.(«,Z ) ont la même dimension (L lignes et M colonnes) que la matrice g dont les coefficients sont donnés à la relation (24) ou (26) ci-avant (^1 compris entre 0 et M-I et kj compris entre 0 et L-I) et que la matrice globale T, carrée, comporte bienp2Z=^ lignes etpiM -K colonnes.It will be noted here that the sub-blocks A / y . (", Z) have the same dimension (L rows and M columns) as the matrix g whose coefficients are given in relation (24) or (26) above. (1 ^ between 0 and MI and kj between 0 and LI) and that the overall matrix T, square, comprises bienp 2 = Z ^ -K lines etpiM columns.
On notera en outre une caractéristique remarquable des sous-blocs A1 ^ (H, Z ) de la matrice de conversion globale T(n,Z ) . Les sous-blocs A. -(«,Z ) de même indice i peuvent être calculés pour un même instant i intervenant dans l'expression «+iM pour le calcul de la matrice g. En référence à la figure 13 A, ces blocs A1. .(n,Z ) calculés pour un même instant i sont répartis sur un « plan horizontal » de la matrice globale de conversion T(«,Z ) , tridimensionnelle. La matrice de conversion T(n,Z ) présente une profondeur (axe z tel que représenté sur la figure 13A) correspondant à la dimension (ou au degré) des filtres. Si Ton choisit de représenter la matrice de conversion en deux dimensions (projection perpendiculaire à l'axe z), les sous-blocs calculés pour un même instant i sont répartis sur une même ligne de sous-blocs.Note also a remarkable characteristic of sub-blocks A 1 ^ (H, Z) of the global conversion matrix T (n, Z). The sub-blocks A. - (", Z) of the same index i can be computed for the same instant i involved in the expression" + iM for the calculation of the matrix g. With reference to FIG. 13A, these blocks A 1 . (n, Z) calculated for the same instant i are distributed on a "horizontal plane" of the global conversion matrix T (", Z), three-dimensional. The conversion matrix T (n, Z) has a depth (z-axis as shown in Figure 13A) corresponding to the size (or degree) of the filters. If you choose to represent the conversion matrix in two dimensions (projection perpendicular to the z axis), the sub-blocks calculated for the same instant i are distributed on the same line of sub-blocks.
L'équation de conversion se met finalement sous une forme plus simple :The conversion equation finally comes in a simpler form:
V(») ≈ T(ι»,Z )U(n) (33) où U(«) = [U0(«),...,U^_,(«)T et V(«) = [V0 {ri),... ,V _,(«)]' sont les vecteurs des composantes polyphasées des signaux, respectivement d'ordre p2 en entrée, et d'ordre P1 en sortie.V ()) ≈ T (ι, Z) U (n) (33) where U ()) = [U 0 ()), ..., U _, ()) T and V ()) = [V 0 {ri), ..., V _, («)] ' are the vectors of the polyphase components of the signals, respectively of order p 2 at the input, and of order P 1 at the output.
En choisissant maintenant une expression selon la forme B , on utilise l'expression g(Z ,n) ici selon la relation (25) pour représenter les opérations successives de filtrages et on obtient une équation de conversion de la forme : V(w) = T(Z ,n)U(n) (34)By now choosing an expression according to the form B, we use the expression g (Z, n) here according to the relation (25) to represent the successive operations of filterings and we obtain a conversion equation of the form: V (w) = T (Z, n) U (n) (34)
La matrice de conversion T(Z , ri) est alors définie par des sous-blocs A. j(Z ,n) tels quThe conversion matrix T (Z, ri) is then defined by sub-blocks A. j (Z, n) such that
Là encore, les sous-blocs A.7(Z ,«) de même indice j peuvent être calculés pour un même instant y intervenant dans l'expression n + jL pour le calcul de la matrice g. En référence à la figure 13B, ces blocs A1. ;(Z ,n) calculés pour un même instant y sont répartis sur un « plan vertical » de la matrice globale de conversion T(w,Z ) . Si l'on choisit de représenter la matrice de conversion en deux dimensions (projection perpendiculaire à l'axe z), les sous-blocs calculés pour un même instant/ sont répartis sur une même colonne de sous-blocs. On pressent alors que les sous-blocs de la matrice globale de conversion peuvent être pré-calculés et stockés en mémoire pour différents instants et surtout pour différents états admissibles. Les sous-blocs associés à de mêmes instants peuvent être alors récupérés de la mémoire selon les changements dans le temps qui interviennent dans les formats de codage. Cette propriété d'un système au sens de l'invention sera décrite en détail plus loin, notamment en référence à la figure 11.Again, the sub-blocks A. 7 (Z ") with the same index j can be calculated for the same instant are involved in the expression n + jL for the calculation of the matrix g. With reference to FIG. 13B, these blocks A 1 . ; (Z, n) calculated for the same instant are distributed on a "vertical plane" of the global conversion matrix T (w, Z). If one chooses to represent the conversion matrix in two dimensions (projection perpendicular to the z axis), the sub-blocks computed for the same instant / are distributed on the same column of sub-blocks. It is then pressed that the sub-blocks of the global conversion matrix can be pre-calculated and stored in memory for different times and especially for different admissible states. The sub-blocks associated with the same instants can then be recovered from the memory according to the changes in time that occur in the encoding formats. This property of a system within the meaning of the invention will be described in detail below, in particular with reference to FIG. 11.
En termes plus généraux, on applique les étapes suivantes lorsque le vecteur d'entrée comporte un nombre L de composantes en sous-bandes respectives et le vecteur de sortie comporte un nombre M de composantes en sous-bandes respectives, après détermination d'un nombre K, plus petit commun multiple entre L et M :In more general terms, the following steps are applied when the input vector has a number L of respective subband components and the output vector has a number M of respective subband components, after determining a number K, least common multiple between L and M:
- conversion série/parallèle du vecteur d'entrée pour obtenir p2 vecteurs composantes polyphasées, avec p2 = KfL , et- serial / parallel conversion of the input vector to obtain p 2 polyphase component vectors, with p 2 = KfL, and
- conversion parallèle/série pour obtenir le vecteur de sortie. La matrice de conversion est alors appliquée aux P1 composantes polyphasées du vecteur d'entrée pour obtenir pλ composantes polyphasées du vecteur de sortie, avec P1 = KjM . Dans ces conditions, la matrice de conversion est carrée, de dimension Kx K , et comporte /?, lignes et p2 colonnes de sous-blocs Ay comportant chacun L lignes et M colonnes. En particulier, comme observé ci-avant en référence aux figures 13A et 13B, des sous-blocs Ay d'un même indice i (forme A) ou des sous-blocs Ay d'un même indice y (forme B) sont pré-calculés pour un même instant.- parallel / serial conversion to obtain the output vector. The conversion matrix is then applied to the polyphase P 1 components of the input vector to obtain p λ polyphase components of the output vector, with P 1 = KjM. Under these conditions, the conversion matrix is square, of dimension Kx K, and has / ?, rows and p 2 columns of sub-blocks A y each having L rows and M columns. In particular, as observed above with reference to FIGS. 13A and 13B, sub-blocks A y of the same index i (form A) or sub-blocks A y of the same index y (form B) are pre-calculated for the same moment.
Ainsi encore, en référence aux figures 13A et 13B, la matrice de conversion est tridimensionnelle, avec : - une première dimension définie par l'indice courant i des sous-blocs,Again, with reference to FIGS. 13A and 13B, the conversion matrix is three-dimensional, with: a first dimension defined by the current index i of the sub-blocks,
- une deuxième dimension définie par l'indice courant 7 des sous-blocs,a second dimension defined by the current index 7 of the sub-blocks,
- et une troisième dimension (axe Z) définie par le degré du filtrage matriciel.- and a third dimension (Z axis) defined by the degree of matrix filtering.
Les sous-blocs pré-calculés pour un même instant forment alors des plans matriciels s'étendant vers la troisième dimension et sont : - horizontaux et pré-calculés pour p\ instants successifs dans une expression selon la forme l,Sub-blocks pre-calculated for the same instant then form matrix planes extending to the third dimension and are: - horizontal and pre-calculated for p \ successive moments in an expression according to the form 1,
- ou verticaux et pré-calculés pour pi instants successifs dans une expression selon la forme B.- or vertical and pre-calculated for successive instants in an expression according to form B.
Dans la conversion entre domaines de sous-bandes au sens de l'invention, on cherche maintenant à minimiser le retard algorithmique introduit par le traitement des signaux en sous-bandes.In the conversion between subband domains in the sense of the invention, it is now sought to minimize the algorithmic delay introduced by the processing of the signals in sub-bands.
A cet effet, on introduit d'abord des avances dans le schéma de conversion conventionnel de la figure 6 pour réduire le retard créé par les bancs de filtres. Il s'agit alors de contrôler le retard algorithmique en ajoutant :For this purpose, advances are first introduced in the conventional conversion scheme of Figure 6 to reduce the delay created by the filter banks. It is then a question of controlling the algorithmic delay by adding:
• une avance Z α en entrée du banc de filtres de synthèse, • une avance Z * en entrée du banc de filtres d'analyse, où a et b sont des paramètres numériques à déterminer.A Z α advance at the input of the synthesis filter bank; a Z * advance at the input of the analysis filter bank, where a and b are numerical parameters to be determined.
Le contrôle du retard algorithmique est en tout point conforme à celui décrit dans le document FR-2,875,351, à la différence près néanmoins que les sous-blocs Ay dépendent ici du temps.The control of the algorithmic delay is in all respects to that described in document FR-2,875,351, with the difference that the sub-blocks Ay depend on the time.
Dans ces conditions, la matrice de conversion T(«,Z ) définie par la représentation de domaine de tous ses éléments, est telle que :Under these conditions, the conversion matrix T («, Z) defined by the domain representation of all its elements, is such that:
Les sous-blocs matriciels g(«,Z ) sont tels que :The matrix sub-blocks g («, Z) are such that:
avec A1 =O,...,(M-1) et A2 =0,...,(1-1) et les coefficients gf"*2(w) de gf(n) sont définis par with A 1 = O, ..., (M-1) and A 2 = 0, ..., (1-1) and the coefficients gf "* 2 ( w ) of gf (n) are defined by
La matrice de conversion T(Z, ή) selon la forme B maintenant, définie par la représentation de domaine de tous ses éléments, est telle que :The conversion matrix T (Z, ή) according to the form B now, defined by the domain representation of all its elements, is such that:
avec i = 0,...,P1-I et j = 0,...,p2-l. Les matrices g(Z ,#) sont telles que : with i = 0, ..., P 1 -I and j = 0, ..., p 2 -l. The matrices g (Z, #) are such that:
avec A1 =0,...,(M-I) et A2 =0,...,(Z-I) et les coefficients gfukl (n) de gf («) sont définis par : with A 1 = 0, ..., (MI) and A 2 = 0, ..., (ZI) and the coefficients gf uk1 (n) of gf (") are defined by:
Dans les deux cas selon la forme A ou selon la forme B, l'exposant eij=aL + b + iM - jL avec i = 0,...,P1 -1 et j = 0,...,p2-l qui apparaît dans la construction de la matrice de conversion, varie entre les deux valeurs extrêmes : e mm=aL + b-κ + L pour, z = 0, J = P2-I. eιmx=aL + b + K-M pour, i = px - 1, j = 0.In both cases according to the form A or the form B, the exponent e ij = aL + b + iM - jL with i = 0, ..., P 1 -1 and j = 0, ..., p 2 -l which appears in the construction of the conversion matrix, varies between the two extreme values: e mm = aL + b - κ + L for, z = 0, J = P 2 -I. e ιmx = aL + b + KM for, i = p x - 1, j = 0.
Les filtres de la matrice de conversion sont causaux si e^ ≤ K - 1 et de ce fait, on obtient la condition supplémentaire suivante : aL+b≤M-lThe filters of the conversion matrix are causal if e ^ ≤ K - 1 and so we obtain the following additional condition: aL + b≤Ml
Pour un système de conversion à retard algorithmique minimal, il convient d'introduire le maximum d'avance possible. Le choix de a et b est fait avantageusement de manière à ce que elliax = K-I, ce qui implique : aL + b-M-lFor a minimum algorithmic conversion system, the maximum advance must be entered. The choice of a and b is advantageously so that e lliax = KI, which implies: aL + bMl
D'après les équations de construction des matrices de filtrages g(«,Z) et g(Z,«), un choix avantageux des entiers (a,b) consiste à prendre : a = p2-l et, b = M + L-K-l (42)According to the construction equations of the filter matrices g (", Z) and g (Z,"), an advantageous choice of the integers (a, b) consists in taking: a = p 2 -l and, b = M + LKl (42)
Néanmoins, une alternative possible à la détermination du couple d'entiers (a,b) consiste à choisir a = 0 et b = M — l .Nevertheless, a possible alternative to the determination of the pair of integers (a, b) is to choose a = 0 and b = M - 1.
Dans ce cas, l'avance est contrôlée au niveau du signal intermédiaire x(n) en sortie du banc de filtres de synthèse et à l'entrée du banc de filtres d'analyse.In this case, the advance is controlled at the intermediate signal x (n) at the output of the synthesis filter bank and at the input of the analysis filter bank.
Pour construire la matrice de conversion, on cherche à identifier les composantes de la décomposition polyphasée de type 1 d'ordre K de la matrice g(« + /M,Z). On distingue alors deux cas selon les valeurs de et . =aL + b + iM - jL quand i = 0,...,-l et J = 0,...,p2 -1 :To construct the conversion matrix, we seek to identify the components of the K-type polyphase type 1 decomposition of the matrix g ("+ / M, Z). We then distinguish two cases according to the values of e t . = aL + b + iM - jL when i = 0, ..., Pι-1 and J = 0, ..., p 2 -1:
- si 0 < e,. ;. < K-I, l'élément d'indice i,j de la matrice de conversion T(«,Z) est la et . -ème composante polyphasée de type 1 d'ordre K de g(« + iM, Z ) , de sorte que :- if 0 <e ,. ; . <KI, the index element i, j of the conversion matrix T («, Z) is the e t . -the K-type type 1 polyphase component of g ("+ iM, Z), so that:
- si {aL + b + L- K)≤et j <-\ , l'élément d'indice i,j de la matrice de conversion T(«,Z) est la (K + etj)-ème composante polyphasée de type 1 d'ordre K de g(« + iM + K,Z), composée avec un retard Z , et on obtient :if {aL + b + L-K) ≤e tj <- \, the index element i, j of the conversion matrix T («, Z) is the (K + e tj ) -th polyphase component of type 1 of order K of g ("+ iM + K, Z), composed with a delay Z ~ ι , and we obtain:
Dans le cas d'une expression selon la forme B , pour construire la matrice de conversion, on identifie d'abord les composantes de la décomposition polyphasée de type 2 d'ordre K de la matrice g(Z , n + (J - ά)L) . On distingue encore deux cas :In the case of an expression in the form B, to construct the conversion matrix, we first identify the components of the multiphase decomposition of type 2 of order K of the matrix g (Z, n + (J - ά) L). There are two more cases:
- si O≤βj j ≤K -I, l'élément d'indice i,j de la matrice de conversion T(Z , ri) est la et ;. -ème composante polyphasée de type 2 d'ordre K de g(Z ,n + (j- a)L) et on a donc :- if O≤β dd ≤K -I, the index element i, j of the T conversion matrix (Z, n) is e t; . -polyphase component of type 2 of order K of g (Z, n + (j-a) L) and we have:
- si aL + b + L — K≤βij≤-l, l'élément d'indice i,j de la matrice de conversion T(Z, «) est la {K + et ^) -ème composante polyphasée de type 2 d'ordre AT de g(Z ,n + (j - a)L) composée avec un retard Z ~! et :if aL + b + L-K ββi j ≤-1, the index element i, j of the conversion matrix T (Z, «) is the {K + e t ^) -th polyphase component of type 2 of order AT of g (Z, n + (j - a) L) composed with a delay Z ~! and
Dans la suite, on considère un système à retard minimal où a et b sont définis par la relation (42).In the following, we consider a minimal delay system where a and b are defined by the relation (42).
Pour les systèmes de conversion définis selon la forme A, quand i = 0,...,px-\ et j = O,...,p2-l:For conversion systems defined according to the form A, when i = 0, ..., p x - \ and j = O, ..., p 2 -l:
• si 0 < ei j < K - 1 , le sous-bloc A1. } {n, Z ) de T(/z, Z ) est tel que :• if 0 <e ij <K - 1, the sub-block A 1 . } {n, Z) of T (/ z, Z) is such that:
où les matrices sont définies par where the matrices are defined by
• si aL + b + L-K≤eu <-l, le sous-bloc A(/(«,Z) de T(«,Z) est tel que :• if aL + b + LK≤e u <-l, the sub-block A (/ («, Z) of T («, Z) is such that:
où les matrices On définit la longueur NA intervenant dans l'indice maximum des termes des sommes ci-avant par :where the matrices We define the length N A intervening in the maximum index of the terms of the sums above by:
1 , si 0≤e:j <r0,ou si 0≤K + et ; <r0 1, if 0≤e : j <r 0 , or if 0≤K + e t; <r 0
si r0 + 1 < e, j ≤ K - 1, ou si r0 + 1 < K + el} ≤K-l où r0 = (N. +Nf—2) mod K , la notation "mod K" désignant la fonction "modulo K".if r 0 + 1 <e, j ≤ K - 1, or if r 0 + 1 <K + e l} ≤Kl where r 0 = (N + N f -2) mod K, the notation "mod K" designating the function "modulo K".
Pour les systèmes de conversion définis selon la forme B quand i = 0,...,p1 -1 et j = 0,...,p2-ï:For the conversion systems defined according to the form B when i = 0, ..., p 1 -1 and j = 0, ..., p 2 -i:
• s , le sous-bloc A1 ; (Z , ή) de T(Z , ή) s'écrit • s, the sub-block A 1; (Z, ή) of T (Z, ή) is written
les matrices A™; (n) étant définies par • si , le sous-bloc A1 (Z , w) de T(Z , n) s'écrit the matrices A ™ ; (n) being defined by • if, the sub-block A 1 (Z, w) of T (Z, n) is written
les matrices A"' (n) étant définies par the matrices A "'(n) being defined by
• si ai + b + L - K ≤ et >y < -1 , le sous-bloc A, ; (Z , n) de T(Z , ή) s'écrit• if ai + b + L - K ≤ e t> y <-1, the sub-block A ,; (Z, n) of T (Z, ή) is written
les matrices («AT + (y - a)L) . La longueur N4 est déterminée par matrices ("AT + (y - a) L). The length N 4 is determined by
où ro = h + Nf -3 + K)mod K . where r o = h + N f -3 + K) mod K.
Pour simplifier les notations, on utilisera plus simplement les représentations suivantes, ci-après :To simplify the notations, we will use more simply the following representations, hereafter:
pour représenter les sous-blocs des matrices de conversion respectivement définies sous une forme A ou B . to represent the sub-blocks of the conversion matrices respectively defined in a form A or B.
Certains éléments A™y.(n) sont identiquement nuls et on obtient ainsi une longueur unique Nτ pour toutes les composantes de la matrice globale de conversion, définie par :Some elements A ™ y . (N) are identically zero and thus we obtain a unique length N τ for all the components of the global conversion matrix, defined by:
On traite ci-après le cas particulier où les nombres de sous-bandes respectives sont multiples l'un de l'autre, avec, tout d'abord M = pL .The following is the particular case where the numbers of respective subbands are multiples of one another, with, firstly M = pL.
Il s'agit du cas pratique où le nombre de sous-bandes du banc de filtres d'analyse est un multiple entier de celui du banc de filtres de synthèse. La conversion entre domaines de sous-bandes est alors définie par l'équation de conversion :This is the practical case where the number of sub-bands of the analysis filter bank is an integer multiple of that of the synthesis filter bank. The conversion between subband domains is then defined by the conversion equation:
où la matrice de conversion T(«,Z ) est définie par : where the conversion matrix T («, Z) is defined by:
Les sous-blocs de la matrice de conversion sont les composantes (M -1- JL) -ème de la décomposition polyphasée de type 1 d'ordre M de g(«,Z ) telle queThe sub-blocks of the conversion matrix are the components (M -1-JL) -th of the M-type polyphase decomposition of order M of g (", Z) such that
De plus, on choisit la relation (42) pour les paramètres de retard algorithmique, soit : a = p — \ et ό = Z -l et, dans ces conditions, les éléments e la matrice de filtrage g/ (n) sont déterminés parMoreover, we choose the relation (42) for the algorithmic delay parameters, namely: a = p - \ and ό = Z -l and, under these conditions, the elements e the matrix of filtering g / (n) are determined by
On notera encore deux alternatives possibles concernant le choix des paramètres de contrôle du retard algorithmique : (a, b) = (p , -1) ou (a, h) = (0,M - 1)We will also note two possible alternatives concerning the choice of algorithmic delay control parameters: (a, b) = (p, -1) or (a, h) = (0, M - 1)
Un deuxième cas particulier est celui où le nombre de sous-bandes du banc de filtres de synthèse est un multiple entier de celui du banc de filtres d'analyse, soit : L = pM . Ici, le choix des paramètres d'avance (42) est tel que : α = 0 et ό = M -l De ce fait, les éléments de la matrice de filtrage gf («) sont déterminés par : A second special case is one in which the number of sub-bands of the synthesis filter bank is an integer multiple of that of the analysis filter bank, ie: L = pM. Here, the choice of the advance parameters (42) is such that: α = 0 and ό = M-1 As a result, the elements of the filter matrix gf (") are determined by:
' (51)'(51)
L'équation de conversion de la composante V.(«) , définie sous la forme B , devientThe conversion equation of the component V ("), defined in the form B, becomes
avec / = 0,...,p -l . La conversion entre domaines de sous-bandes est définie par l'équation de conversion V(») = T(Z ,«)X(n) (52) où la matrice de conversion T(Z , n) est définie par with / = 0, ..., p -l. The conversion between subband domains is defined by the conversion equation V (») = T (Z,«) X (n) (52) where the conversion matrix T (Z, n) is defined by
Chaque sous-bloc de la matrice de conversion correspond à la M - 1 + iM -ème composante polyphasée de type 2 d'ordre Z de la matrice de filtrage g(Z ,«) à l'instant nL et on obtientEach sub-block of the conversion matrix corresponds to the M-1 + iM -th polyphase component of type 2 of order Z of the filtering matrix g (Z, ") at time nL and we obtain
II a été donné, dans ce qui précède, les équations à la base de la conversion au sens de l'invention. Dans ce qui suit, on décrit la manière de construire les opérateurs principaux intervenant dans un système au sens de l'invention, ainsi que la mise en œuvre pratique des traitements, pour l'exécution de l'invention.In the foregoing, the equations underlying the conversion within the meaning of the invention have been given. In what follows, the manner of constructing the main operators intervening in a system within the meaning of the invention, as well as the practical implementation of the treatments, for the execution of the invention is described.
Pour la construction pratique des opérateurs du système de conversion, il est distingué tout d'abord les cas où les dimensions M et L sont des multiples entiers l'un de l'autre, puis le cas général où le plus petit commun multiple K est différent des nombres respectifs de sous-bandes L et M . En effet, les cas où les dimensions sont des entiers multiples l'un de l'autre, sont d'abord décrits, pour plus de clarté de l'exposé, en vue de la construction des matrices principales de conversion T(«,Z ) (selon la forme A) ou T(Z , n) (selon la forme B).For the practical construction of the operators of the conversion system, it is distinguished first of all the cases where the dimensions M and L are integer multiples of each other, then the general case where the least common multiple K is different from the respective numbers of L and M subbands. In fact, the cases where the dimensions are integers that are multiples of one another, are first described, for the sake of clarity, with a view to the construction of the main conversion matrices T («, Z ) (according to the form A) or T (Z, n) (according to the form B).
La conversion pour le cas où M = pL est préférentiellement défini par une application de la forme A des opérations de filtrage. Le cas réciproque où L = pM est préférentiellement défini par une application de la forme B . Dans les deux cas, la construction des matrices principales de conversion suit deux étapes.The conversion for the case where M = pL is preferentially defined by an application of the form A of the filtering operations. The reciprocal case where L = pM is preferentially defined by an application of the form B. In both cases, the construction of the main conversion matrices follows two steps.
En particulier, dans le cas M = pL : - on construit la sous-matrice g(#,Z) dont les coefficients sont définis par la relation (50) :In particular, in the case M = pL: the sub-matrix g (#, Z) whose coefficients are defined by the relation (50) is constructed:
où ^1=O,...,M-I, ^2=O,...,1-1 et i = 0,...,(Nh+Nf-2), - puis, on construit les p composantes polyphasées de type 1 d'ordre M de g(«,Z) telles que : where ^ 1 = O, ..., MI, ^ 2 = O, ..., 1-1 and i = 0, ..., (N h + N f -2), - then, we build the p polyphase components of type 1 of order M of g (", Z) such that:
avec j = 0,...,p-\, et on applique une concaténation de ces p blocs de composantes polyphasées pour obtenir finalement la matrice globale T(«,Z), définie par la relation (48) : with j = 0, ..., p- \, and we apply a concatenation of these p blocks of polyphase components to finally obtain the global matrix T («, Z), defined by the relation (48):
Dans le cas où L = pM :In the case where L = pM:
- on construit la matrice g(Z , ri) dont les coefficients sont définis par la relation (51):the matrix g (Z, ri) whose coefficients are defined by the relation (51) is constructed:
où *, =0,...,M-l, /t2=0,...,L-I et i = 0,...,(Nh+Nf~2), where *, = 0, ..., M1, / t 2 = 0, ..., LI and i = 0, ..., (N h + N f ~ 2),
- puis, on construit la matrice principale de conversion T(Z , n) , définie par :- Then, we build the main conversion matrix T (Z, n), defined by:
où chaque sous-bloc de la matrice de conversion est la ( M - 1 + iM )-ème composante polyphasée de type 2 d'ordre L de la sous-matrice g(Z ,n) à l'instant nL. where each sub-block of the conversion matrix is the (M - 1 + iM) -th polyphase component of type 2 of order L of the sub-matrix g (Z, n) at time nL.
* premier cas particulier M — pL* first special case M - pL
Pour le cas M = pL, les coefficients de filtrage des bancs de synthèse (respectivement d'analyse) sont constants par morceaux et varient en fonction de l'instant n , en particulier aux instants multiples de L (respectivement de M ). De ce fait, pour effectuer les produits de convolution des réponses impulsionnelles des deux bancs de filtre il convient de tenir compte des variations dans leFor the case M = pL, the filter coefficients of the synthesis banks (respectively analysis) are constant in pieces and vary as a function of the instant n, in particular at the multiple instants of L (respectively of M). Therefore, to perform the convolution products impulse responses of the two filter banks account should be taken of variations in the
temp des réponses impulsionnelles de F(Z ,n + L — l — i) quand i = 0,...,(Nk + Nf - 2) . En effet, l'indice i de numérotation des coefficients d'une tranche matricielle gf («) apparaît dans le produit de convolution, à la fois comme indice de convolution et comme variable temporelle. Cette notion de "tranche matricielle" sera décrite plus loin en référence à la figure 8A.impulse responses of F (Z, n + L - l - i) when i = 0, ..., (N k + N f - 2). Indeed, the coefficient index i of the coefficients of a matrix slice gf (") appears in the convolution product, both as a convolution index and as a temporal variable. This notion of "matrix slice" will be described later with reference to FIG. 8A.
De ce fait :Thereby :
• si (N h + N, - 2) ≤ L , à un instant ri = nL , les coefficients des filtres deIf (N h + N, - 2) ≤ L, at a time ri = nL, the coefficients of the filters of
F(Z ,nL + L -l -i) sont constants quelle que soit la valeur de z = 0,...,Nh + Nf -2 , • si (N11 + Nf - 2) > L , les réponses impulsionnelles deF (Z, nL + L -l -i) are constant whatever the value of z = 0, ..., N h + N f -2, • if (N 11 + N f - 2)> L, the impulse responses of
F°(Z ,n + L -l-i),...,FL~1(Z ,n + L -l -i) du banc de synthèse F(Z , n + L - 1 - ï) effectuent un changement d'état au moins une fois avec l'indice i .F ° (Z, n + L-1i), ..., F L ~ 1 (Z, n + L-1 -i) of the synthesis bank F (Z, n + L - 1 - 1) make a change at least once with the index i.
Dans ce dernier cas, pour construire le sous-bloc matriciel à un instant donné, il faut disposer de plusieurs états successifs du banc de filtres de synthèse et de l'état courant du banc de filtre d'analyse.In the latter case, to build the matrix sub-block at a given instant, it is necessary to have several successive states of the synthesis filter bank and the current state of the analysis filter bank.
On se réfère maintenant à la figure 7 illustrant la conversion entre deux transformées TV-MLT. On indique que Nh = 2M1 , Nf = 2L1 et dans ce cas, ι = 0,...,2(p + I)I1 - 2.Referring now to Figure 7 illustrating the conversion between two TV-MLT transforms. It is indicated that N h = 2M 1 , N f = 2L 1 and in this case, ι = 0, ..., 2 (p + I) I 1 - 2.
Ainsi, pour déterminer l'état de la sous-matrice g(n',Z ) à un instant ri = ItM1 , les opérations de convolution partielle suivantes sont effectuées : Thus, to determine the state of the sub-matrix g (n ', Z) at a time ri = ItM 1 , the following partial convolution operations are performed:
Pour construire la matrice g(nMx,Z ) d'après les relations de calcul de ses coefficients données ci-avant, on fournit, d'une part, les coefficients du banc d'analyse H(nM,,Z ) et, d'autre part, les coefficients des filtres des 2p + 2 bancs de synthèse : F(Z 9MM1XF(Z 5WM1 -L1 ),..., F(Z , nMx - (2 p + I)L1) , lesquels se succèdent dans le temps.To construct the matrix g (nM x , Z) according to the computation relations of its coefficients given above, one gives, on the one hand, the coefficients of the analysis bench H (nM ,, Z) and, on the other hand, the coefficients of the filters of the 2p + 2 synthetic banks: F (Z 9 MM 1 XF (Z 5 WM 1 -L 1 ), ..., F (Z, nM x - (2 p + I ) L 1 ), which follow one another in time.
Ce traitement revient à effectuer 2p + 2 produits de convolution et concaténer 2p + 2 segments obtenus, de longueur L1 , pour obtenir les coefficients gf(«Mj) pour tous i = Q,...,2(p + Y)L1 -I . Si par exemple p = 2 , on regroupe les 2p + 2 = 6 états successifs du banc de filtres de synthèse autour de l'instant ri = nMx pour calculer les produits de convolution et obtenir des "tranches" (figure 8A) gg (nMx),...,gi(p+x), _,(«M,) qui définissent l'état de la sous-matrice g(n',Z ) à l'instant ri = nMx .This treatment amounts to performing 2p + 2 convolution products and concatenating 2p + 2 obtained segments, of length L 1 , to obtain the coefficients gf («M j ) for all i = Q, ..., 2 (p + Y) L 1 -I. If for example p = 2, group the 2p + 2 = 6 successive states of the synthesis filter bank around the instant ri = nM x to calculate the convolution products and obtain "slices" (FIG. 8A) g g (nM x ), ..., gi (p + x) , _, («M,) which define the state of the submatrix g (n ', Z) at time ri = nM x .
Ce résultat est valable pour le cas général de la conversion entre deux transformées TV-MLT. Par ailleurs, dans le cas général de deux bancs de filtres dont les longueurs sont déterminées par Nh et JV, , on détermine le terme :This result is valid for the general case of conversion between two TV-MLT transforms. Moreover, in the general case of two banks of filters whose lengths are determined by N h and JV, the term is determined:
Af = [(Nh + Nf -I)IL] + I (56) correspondant au nombre d'états successifs du banc de filtres de synthèse et on calcule les produits de convolution selon la relation (50) avec un seul état du banc de filtres d'analyse pour déterminer toutes les "tranches" matricielles gf (nM) . Cette construction est illustrée sur la figure 8A, laquelle montre schématiquement les regroupements réalisés pour effectuer les produits de convolution des états successifs du banc de filtres de synthèse avec ceux du banc de filtres d'analyses. Dans l'exemple représenté sur la figure 8A, on a p = 3 et Δ^ = 4 , dans le cas M=pL.A f = [(N h + N f -I) IL] + I (56) corresponding to the number of successive states of the synthesis filter bank and the convolution products according to the relation (50) are calculated with a single state the analysis filter bank to determine all matrix "slices" gf (nM). This construction is illustrated in FIG. 8A, which schematically shows the groupings made to perform the convolution products of the successive states of the synthesis filter bank with those of the analysis filter bank. In the example shown in FIG. 8A, ap = 3 and Δ ^ = 4, in the case M = pL.
Avec ces regroupements, il est alors possible de calculer les états de la sous-matrice g(«',Z ) aux instants ri ≈ nM, (« + X)M, (n + 2)M,... etc.With these groupings, it is then possible to calculate the states of the sub-matrix g ("', Z) at times ri ≈ nM, (" + X) M, (n + 2) M, etc.
Ensuite, pour la construction de la matrice globale de conversion, les sous-blocs de cette matrice globale de conversion T(«,Z ) = [A0(«,Z ),...,Ap_j(«,Z )] sont lesThen, for the construction of the global conversion matrix, the sub-blocks of this global conversion matrix T («, Z) = [A 0 («, Z), ..., A p _ j («, Z )] are the
(M - 1 - jL) -ème composantes de la décomposition polyphasée de type 1 , d'ordre M , de la sous-matrice g(n,Z ) , avec :(M - 1 - jL) -th components of the type 1 multiphase decomposition of order M, of the submatrix g (n, Z), with:
Lorsque la sous-matrice g(«,Z ) est déterminée, il reste donc à extraire et ordonner les "tranches" matricielles gf(«M) pour construire chaque sous-bloc de la matrice globale T(«,Z ) . On notera alors que ces tranches matricielles gf (nM) sont toutes déterminées pour un même instant nM. En référence aux figures 13A et 13B, il s'agit de plans perpendiculaires à l'axe Z et définis chacun pour une puissance de Z , puisqu'il est rappelé que l'axe Z représente la dimension des filtres.When the sub-matrix g («, Z) is determined, it remains to extract and order the matrix" slices "gf (" M ") to construct each sub-block of the global matrix T (", Z). It will then be noted that these matrix slices gf (nM) are all determined for the same instant nM. With reference to FIGS. 13A and 13B, these are planes perpendicular to the Z axis and each defined for a power of Z, since it is recalled that the Z axis represents the size of the filters.
Ainsi, un état de la matrice globale de conversion T(«,Z ) est défini suite à la détermination de N7 tranches matricielles de taille M xM . Ci-après, on note Pm(n) la tranche matricielle d'indice m de la matrice de conversion T(«,Z ) , définie à l'instant d'indice n par avec m = 0,...,(W7, -1) . De ce fait, la matrice de conversion T(n,Z ) définie par la relation (48), s'écrit aussi :Thus, a state of the global conversion matrix T («, Z) is defined following the determination of N 7 matrix slices of size M xM. Hereinafter, we denote P m (n) the matrix slice of index m of the conversion matrix T («, Z), defined at the instant of index n by with m = 0, ..., (W 7 , -1). As a result, the conversion matrix T (n, Z) defined by the relation (48) can also be written:
Le nombre N7. de tranches matricielles P0 («),... ,P^-1OO est défini par la valeur de la longueur maximale des composantes polyphasées d'ordre M de g(«,Z ) telle queThe number N 7 . matrix slices P 0 («), ..., P ^ -1 OO is defined by the value of the maximum length of the polyphase components of order M of g («, Z) such that
Ainsi, la matrice T(«,Z ) , exprimée selon la forme A, préférée dans le cas M = pL , s'écrit en fonction des sous-blocs Ay. selon les relations données ci-avant, et chaque sous-bloc A7. s'exprime en fonction des matrices g dont les coefficients g^'{n) dépendent des coefficients des filtres hk et fk déterminés, eux-mêmes, en fonction des quatre cas possibles illustrés sur la figure 4B. Finalement, on a construit complètement la matrice de conversion T(«,Z ) .Thus, the matrix T («, Z), expressed in the form A, preferred in the case M = pL, is written as a function of the sub-blocks A y . according to the relations given above, and each sub-block A 7 . is expressed as a function of the matrices g whose coefficients g ^ ' {n) depend on the coefficients of the filters h k and f k determined, themselves, as a function of the four possible cases illustrated in FIG. 4B. Finally, the conversion matrix T («, Z) was completely constructed.
* second cas particulier L = pM* second special case L = pM
On décrit maintenant la construction de la sous-matrice g(Z ,«) pour le cas où L = pM . La différence principale avec le cas M = pL précédent est que les matrices de conversion sont préférentiellement définies sous la forme de type B. Le calcul des coefficients de filtrages gf1'*2 («) est déterminé parWe now describe the construction of the sub-matrix g (Z, ") for the case where L = pM. The main difference with the previous case M = pL is that the conversion matrices are preferentially defined in the form of type B. The calculation of the filtering coefficients gf 1 '* 2 («) is determined by
On retrouve la même propriété sur l'indice i qui est à la fois un indice de convolution et une variable temporelle. Il faut donc tenir compte des variations du banc de filtres d'analyse H(« -M + l + z",Z ) , c'est-à-dire des changements d'états du banc de filtres, pendant le calcul des tranches matricielles gζ (n),,..,gB m+N ^2(n) . On a illustré sur la figure 8B le regroupement des états du banc de filtres d'analyse qui est utilisé pour déterminer les états de la sous-matrice g(Z ,«') aux instants ri = nMι,(n + l)Mι,(n + 2)Mι,....We find the same property on the index i which is both a convolution index and a temporal variable. It is therefore necessary to take into account the variations of the analysis filter bank H ("-M + 1 + z " , Z), that is to say the changes in states of the filter bank, during the calculation of the slices. matrixes gζ (n) ,, .., g B m + N ^ 2 (n). FIG. 8B illustrates the grouping of the states of the analysis filter bank which is used to determine the states of the sub-matrix g (Z, "') at the times ri = nM ι , (n + 1) M ι , (n + 2) M ι , ....
Dans l'exemple représenté, on a p = 3 et Ah = 4 , cette quantité : déterminant le nombre d'état successifs du banc de filtres d'analyse H(n -M + l + i,Z ) regroupés avec un état du banc de filtres de synthèse F(Z , ri) et permettant le calcul d'un état de la sous-matrice g(Z ,n) suivant une convolution partielle.In the example represented, ap = 3 and A h = 4, this quantity: determining the number of successive states of the analysis filter bank H (n -M + 1 + i, Z) grouped with a state of the synthesis filter bank F (Z, ri) and allowing the calculation of a state of the sub-matrix g (Z, n) following a partial convolution.
Dans ce second cas particulier où L = pM , la matrice de conversion T(Z , n) est définie par :In this second particular case where L = pM, the conversion matrix T (Z, n) is defined by:
chaque sous-bloc A1-(Z 9W) de la matrice principale de conversion est la (M -1 + iM )-ème composante polyphasée de type 2 d'ordre L de g(Z ,«) à l'instant nL et on obtient each sub-block A 1 - (Z 9 W) of the main conversion matrix is the (M -1 + iM) -th polyphase component of type 2 of order L of g (Z, ") at time nL and we get
Un état de la matrice principale de conversion T(Z , n) est construit à partir de la donnée de l'état g(Z ,«) à l'instant nL . Il reste à extraire et ordonner les tranches matricielles de g(Z , nL) , déterminées pour un même instant nL, pour identifier les composantes polyphasées de type 2 d'ordre L . Cette dernière étape est aussi semblable à celle décrite dans le document FR-2,875,351 pour la construction de la matrice de conversion T(z) à partir de g(z) .A state of the main conversion matrix T (Z, n) is constructed from the data of the state g (Z, ") at time nL. It remains to extract and order the matrix slices of g (Z, nL), determined for the same instant nL, to identify the polyphase components of type 2 of order L. This last step is also similar to that described in document FR-2,875,351 for the construction of the conversion matrix T (z) from g (z).
La matrice de conversion T(Z ,ri) est donc définie par la donnée, à chaque instant n , de ses Nτ tranches matricielles de taille Lx L . On note Pm (n) la tranche matricielle d'indice m de la matrice de conversion T(Z ,n) , définie à l'instant n parThe conversion matrix T (Z, ri) is therefore defined by the data, at each instant n, of its N τ matrix slices of size Lx L. We denote by P m (n) the matrix slice of index m of the conversion matrix T (Z, n), defined at time n by
avec m = 0,...,(Nr -l) . De ce fait, la matrice de conversion T(Z , n) définie par la relation (53), s'écrit aussi with m = 0, ..., (N r -l). As a result, the conversion matrix T (Z, n) defined by the relation (53) can also be written
Le nombre de tranches matricielles P0 (Λ), ... ,P^-1(W) est défini par la valeur de la longueur maximale des composantes polyphasées d'ordre L de g(Z ,n) , ici, telle queThe number of matrix slices P 0 (Λ), ..., P ^ -1 (W) is defined by the value of the maximum length of the polyphase components of order L of g (Z, n), here, such that
Là encore, on a complètement construit la matrice de conversion T(Z ,n) à ce stade. Again, the conversion matrix T (Z, n) was completely constructed at this point.
* Cas général K = ppcm{L,M)* General case K = ppcm {L, M)
Forme AForm A
Dans le cas général maintenant où les nombres respectifs de filtres dans les bancs ne sont pas multiples l'un de l'autre (K = ppcm(L,M)), sous la forme A , la détermination des états de la sous-matrice g(«,Z ) est définie par le calcul de tous ses coefficients de filtrage gf"k2 (n) tels que :In the general case now where the respective numbers of filters in the banks are not multiples of one another (K = ppcm (L, M)), in the form A, the determination of the states of the sub-matrix g (", Z) is defined by the calculation of all its filter coefficients gf" k2 (n) such that:
avec A1 = O,...,(M -1) et k2 = 0,...,(L -I) et les paramètres de contrôle du retard algorithmique sont déterminés par les solutions données aux relations (42). On effectue, là encore, des regroupements de Af états successifs du banc de filtres de synthèse pour effectuer un produit de convolution, partiel, avec un état du banc de filtres d'analyse H(H,Z ) (figure 9A). with A 1 = O, ..., (M -1) and k 2 = 0, ..., (L-I) and the algorithmic delay control parameters are determined by the solutions given to the relations (42). Here again, groupings of A f successive states of the synthesis filter bank are performed to produce a partial convolution product with a state of the H (H, Z) analysis filter bank (FIG. 9A).
La matrice principale de conversion T(«,Z ) est définie par la construction de ses sous-blocs A .. (n, Z ) tels que : The main conversion matrix T («, Z) is defined by the construction of its sub-blocks A .. (n, Z) such that:
avec i = 0,...,P1 -1 et j = 0,...,p2-\.with i = 0, ..., P 1 -1 and j = 0, ..., p 2 - \.
Lorsque O≤e^ ≤K-l, l'élément A1. j(n,Z) de la matrice de conversion principale T(M,Z) est la e.y-ème composante polyphasée de type 1 d'ordre K de la matrice g(n + iM,Z ) et on a donc When O≤e ^ ≤Kl, the element A 1 . j (n, Z) of the main conversion matrix T (M, Z) is e. y- th polyphase component of type 1 of order K of the matrix g (n + iM, Z) and we therefore have
L'indice courant / désigne à la fois le numéro de la composante polyphasé avec et j et une avance temporelle iM . Dans ces conditions, la construction d'un état de la matrice principale de conversion est déterminée par la donnée de pλ états successifs de g(ra',Z) pris aux instants ri = nK,nK + M,...,(n + l)K-M .The current index / designates both the number of the polyphase component with e tj and a time advance iM. Under these conditions, the construction of a state of the main conversion matrix is determined by the data of p λ successive states of g (ra ', Z) taken at the times ri = nK, nK + M, ..., ( n + 1) KM.
Cette propriété est aussi vérifiée pour les composantes polyphasées ei} telles que (aL + b + L-K)≤etj <-l. L'élément A.;(w,Z) de la matrice de conversion principale T(n,Z) est la (K-Ve1 ;.)-ème composante polyphasée de type 1 d'ordre K de g(« + iM + K,Z) composée avec un retard Z "' , soit :This property is also verified for polyphase components e i} such that (aL + b + LK) ≤e tj <-l. The element A .; (w, Z) of the main conversion matrix T (n, Z) is the (K-Ve 1 ;.) - polyphase component of type 1 of order K of g ("+ iM + K, Z) composed with a delay Z " ', that is:
On détermine donc les états de g(«',Z) pris aux instants ri = nK,nK + M,...,(n + \)K -M pour construire un état de la matrice principale de conversion.We thus determine the states of g («', Z) taken at the instants ri = nK, nK + M, ..., (n + \) K -M to build a state of the main conversion matrix.
La figure 9A illustre les regroupements de plusieurs états de g(«,Z) permettant de calculer un état de la matrice de conversion. Dans l'exemple représenté, on a choisi P1 =3 et P2=A. Un état de g(n',Z) à l'instant ri = nK + ïM permet d'extraire la série de composantes polyphasée A1 (n, Z ) avec j = 0, ...,/?,— 1. Cette série représente une ligne de p2 composantes parmi les pχ lignes deT(«,Z). Il est important d'observer, sur cette figure 9A, que l'ordonnancement des composantes polyphasées A1., (n, Z ) représente les états de la matrice transposée T' («,Z ) de T(«,Z ) .Figure 9A illustrates the groupings of several states of g (", Z) for calculating a state of the conversion matrix. In the example shown, we chose P 1 = 3 and P 2 = A. A state of g (n ', Z) at time ri = nK + ïM is used to extract the series of polyphase components A 1 (n, Z) with j = 0, ..., /?, - 1. This series represents a line of p 2 components among the p χ lines of T («, Z). It is important to observe in this figure 9A that the scheduling of polyphase components A 1 , (n, Z) represents the states of the transposed matrix T ' («, Z) of T («, Z).
* Cas général K = ppcm(L,M)* General case K = ppcm (L, M)
Forme BForm B
Sous la forme B des opérateurs et toujours dans le cas général, les états de g(Z , n) sont déterminés par le calcul des coefficients de filtrages g*"*2 (n) tels que :In the form B of the operators and always in the general case, the states of g (Z, n) are determined by the calculation of the filtering coefficients g * "* 2 (n) such that:
avec kx = 0,...,(M -I) et k2 = O,...,(I -1) et les paramètres de contrôle du retard algorithmique sont déterminés par les solutions des relations (42). Il faut regrouper Δh états successifs du banc de filtres d'analyse pour effectuer un produit de convolution partiel avec un état du banc de filtres de synthèse F(n,Z ) (figure 9B). with k x = 0, ..., (M-I) and k 2 = O, ..., (I -1) and the algorithmic delay control parameters are determined by the solutions of the relations (42). It is necessary to group Δ h successive states of the analysis filter bank to produce a partial convolution product with a state of the synthesis filter bank F (n, Z) (FIG. 9B).
La matrice principale de conversion est déterminée par la représentation de domaine de tous les sous-blocs A . (Z , n) tels queThe main conversion matrix is determined by the domain representation of all sub-blocks A. (Z, n) such as
avec / = 0,...,/?, -1 et / = 0,...,/>, -1. with / = 0, ..., / ?, -1 and / = 0, ..., />, -1.
Lorsque 0 ≤ et ;. < K -I , l'élément A1- . (Z , H) de la matrice de conversion T(Z , n) est la e(. . -ème composante polyphasée de type 2 d'ordre iT de g(Z ,n + (j -a)L) et on a donc On notera que l'indice j intervient à la fois dans le numéro e(. de composante polyphasée et dans l'avance temporelle (j -a)L . De ce fait, pour calculer l'état de la matrice principale de conversion à l'instant n , on détermine p2 états successifs de g(Z ,«') associés aux instants n' = (n — X)K + L,(n - I)K + 2L,...,nK ( a = p0 -1 ). Ce regroupement permet de construire aussi les composantes polyphasées e . telles que aL + b + L - K ≤ et J ≤ -1 . L'élément A^(Z ,w) de la matrice de conversion principale T(Z , n) est la (X + e; /)-ème composante polyphasée de type 2 d'ordre K de g(Z ,n + (j - Ci)L) , composée avec un retard Z ~] . Il s'écrit :When 0 ≤ e t; . <K -I, the element A 1 -. (Z, H) of the conversion matrix T (Z, n) is the e ( . -Th polyphase component of type 2 of order iT of g (Z, n + (j -a) L) and therefore Note that the index j occurs both in the number e ( of polyphase component and in the time advance (j -a) L. Thus, to calculate the state of the main conversion matrix instant n, we determine p 2 successive states of g (Z, "') associated with instants n' = (n - X) K + L, (n - I) K + 2L, ..., nK (a = p 0 -1) This grouping also makes it possible to construct the polyphase components e. that aL + b + L - K ≤ and t J ≤ -1. The element A ^ (Z, w) of the main conversion matrix T (Z, n) is the (X + e ; / ) -th polyphase component of type 2 of order K of g (Z, n + ( j - Ci) L), composed with a delay Z ~] . It is written:
Pour la mêm raison, on détermine au préalable p2 états de g(Z , n') associés aux instants n' = (n — I)K + L,(n -l)K + 2L,...,nK , pour construire toutes les composantes polyphasées qui constituent un état de la matrice principale de conversion. For the same reason, we first determine p 2 states of g (Z, n ') associated with instants n' = (n - I) K + L, (n-1) K + 2L, ..., nK, to build all polyphase components that constitute a state of the main conversion matrix.
La figure 9B illustre la construction de la matrice de conversion correspondant au cas où P1 = 4 et p2 = 3. Un état de g(Z , n') pris à l'instant n' = (n - I)K + (j + I)L permet de construire une colonne complète, constituée de p{ composantes polyphasées A. (Z ,n) avec i = 0,...,pι —l . Finalement, la matrice globale de conversion à chaque instant est obtenue suite à la construction des P1 colonnes.FIG. 9B illustrates the construction of the conversion matrix corresponding to the case where P 1 = 4 and p 2 = 3. A state of g (Z, n ') taken at time n' = (n - I) K + (j + I) L makes it possible to construct a complete column, consisting of p { polyphase components A. (Z, n) with i = 0, ..., p ι -l. Finally, the global conversion matrix at each instant is obtained following the construction of P 1 columns.
On définit maintenant un système de conversion au sens de l'invention.We now define a conversion system within the meaning of the invention.
Pour le cas où M = pL , la relation de la conversion (47) établie sous la forme Y(«) = T(«,Z )U(M) définit, sous la forme A , un filtrage matriciel variant dans le temps du vecteur U(n) par la matrice globale T(n,Z ) . Les signaux en sous-bandes Y(n),Y(κ + l),...,Y(« + JV7, -1) successifs sont obtenus par les opérations :For the case where M = pL, the relation of the conversion (47) established in the form Y (") = T (", Z) U (M) defines, in the form A, a time-varying matrix filtering of the vector U (n) by the global matrix T (n, Z). The Y (n), Y (κ + 1), ..., Y ("+ JV 7 , -1) subband signals are obtained by the following operations:
Y(n) = F0(n)υ(n) + P] (n)υ(n -l) + ...+ P^(n)V(n ~ Nτ +l) Y(« + 1) = P0 (n + I)U(M + 1) + P1 (n + l)U(n) + ... + PV/ _, (n + l)U(n - Nτ + 2)Y (n) = F 0 (n) υ (n) + P ] (n) υ ( n-1 ) + ... + P (n) V (n-N τ + 1) Y (+ 1) = P 0 (n + I) U (M + 1) + P 1 (n + 1) U (n) + ... + P V / _, (n + 1) U (n - N τ + 2)
Y(n + N7. -1) = Po(« + Nτ -l)U(w + Nτ - 1) + ...+ Pv+1(« + Nτ -l)U(w)Y (n + N 7. -1) = P o ("+ N τ-1 ) U (w + N τ -1) + ... + P v + 1 (+ N τ-1 ) U (w )
Le schéma de la figure 1OA illustre une mise en œuvre de la conversion (avec Λf r = 3 dans l'exemple représenté) des signaux en sous-bandes successifs U(«),...,U(« + 3) . Il apparaît donc que le système de conversion peut être construit par de simples matrices de transformées, suivie d'une addition avec recouvrement des blocs des vecteurs transformés.The diagram of FIG. 10A illustrates an implementation of the conversion (with Λ f r = 3 in the example represented) of the signals in successive subbands U («),..., U (« + 3). he Thus, it appears that the conversion system can be constructed by simple transform matrices, followed by an overlap addition of the transformed vector blocks.
Pour l'autre cas particulier des conversions où L = pM , la relation de conversion est établie sous la forme V(n) = T(Z ,n)X(n) et représente un filtrage matriciel de type B variant dans le temps du vecteur des signaux en sous-bandes X(n) par l'opérateur de conversion T(Z , ri) . La conversion s'effectue directement sur les signaux en sous- bandes en entrée d'un transcodeur, tandis qu'on effectue une décomposition polyphasée d'ordre p des signaux après conversion. Les composantes polyphasées successives V(w),V(« + l),...,V(n + iVr -1) , d'ordre p , sont obtenues par les opérations :For the other particular case of the conversions where L = pM, the conversion relation is established in the form V (n) = T (Z, n) X (n) and represents a time-varying type B matrix filtering. vector of the signals in sub-bands X (n) by the conversion operator T (Z, ri). The conversion takes place directly on the sub-band signals at the input of a transcoder, while a polyphase decomposition of order p of the signals after conversion is carried out. The successive polyphase components V (w), V ("+ 1), ..., V (n + iV r -1), of order p, are obtained by the operations:
V(ή) = 'P0(n)X(n) + Vi(n -\)X(n -ï) + ...+ V^_ι(n -Nτ +ï)X(n -Nτ +l)V (ή) = ' P 0 (n) X (n) + V i (n - \) X (n-1) + ... + V ^ _ ι (n -N τ + 1) X (n - N τ + 1)
Y(n + 1) = ¥0(n + l)X(n + l) + ¥1(n)X(n) + ...+ PN^1(H - Nτ + 2)X(n - Nτ + 2)Y (n + 1) = ¥ 0 (n + 1) X (n + 1) + ¥ 1 (n) X (n) + ... + P N 1 1 (H - N τ + 2) X (n - N τ + 2)
V{n + Nτ -l) = F0(n + Nτ - l)X(n + N1, - 1) + ... + P^+1 (w)X(n)V {n + N τ-1 ) = F 0 (n + N τ -1) X (n + N 1 , -1) + ... + P + 1 (w) X (n)
Le schéma de la figure 1OB illustre la conversion (ici avec Nτ = 3 ) des signaux en sous-bandes successifs X(n),...,X(n + 3) . Il apparaît encore que le système de conversion peut être mis en œuvre par des matrices de transformées, suivi d'une addition avec recouvrement.The diagram of FIG. 1OB illustrates the conversion (here with N τ = 3) of the signals in successive subbands X (n),..., X (n + 3). It still appears that the conversion system can be implemented by transform matrices, followed by a recovery addition.
On décrit maintenant un exemple de fonctionnement du système de conversion global au sens de l'invention.An example of operation of the overall conversion system in the sense of the invention will now be described.
En référence à la figure 11, un système de conversion entre représentations du signal dans différents domaines de sous-bandes comporte un module CSP de conversion série/parallèle du vecteur signal incident X(ri) comportant les composantes xn (n '),..., xL ,(«') en sous-bandes respectives. Le module CSP effectue l'équivalent d'une décomposition polyphasée d'ordre /?2 du vecteur signal X(n') , pour délivrer pi composantes U0 (H) ,. .., Upi_, (/i) d'un vecteur U(«) .With reference to FIG. 11, a conversion system between signal representations in different subband domains comprises a serial / parallel conversion module CSP of the incident signal vector X (ri) comprising the components x n (n ') ,. .., x L , ('') in respective sub-bands. The CSP module performs the equivalent of a polyphase decomposition of order /? 2 of the signal vector X (n '), to deliver pi components U 0 (H),. .., U pi _, (/ i) of a vector U («).
Ces composantes du vecteur U(«) sont alors appliquées à un module de filtrage matriciel MFM variant dans le temps et caractérisé par la matrice globale de conversion T(n,Z ) (ou T(Z ,n) selon la forme B) du type défini ci-avant. Le module MFM utilise alors des matrices de conversion variant dans le temps.These components of the vector U (") are then applied to a time-varying MFM matrix filtering module and characterized by the global conversion matrix T (n, Z) (or T (Z, n) according to the B form). type defined above. The MFM module then uses time-varying conversion matrices.
Les p\ composantes V0 («) ,..., Vp _j («) du vecteur V(«) issu du module MFM de filtrage matriciel sont finalement appliquées à un module CPS de conversion parallèle/série, lequel délivre les composantes yQ{n"\...,yM_ι {n") du vecteur signal de sortie Y(n"). Le module CPS réalise alors l'équivalent d'une recombinaison des composantes polyphasées d'ordre /J1. Le vecteur signal de sortie Y(n") , ainsi converti, peut être utilisé dans son nouveau format par exemple par quantification et codage, ou véhiculé, ou encore stocké pour des applications ultérieures.The p \ components V 0 («), ..., V p _ j («) of the vector V («) coming from the matrix filter MFM module are finally applied to a parallel / serial conversion CPS module, which delivers the components y Q {n "\ ..., y M _ ι {n") of the output signal vector Y (n ") The CPS module then realizes the equivalent of a recombination of the polyphase components of order / J 1. The output signal vector Y (n "), thus converted, can be used in its new format, for example by quantization and coding, or transported, or stored for subsequent applications.
L'ensemble de ces trois traitements successifs que réalisent les modules CSP, MFM et CPS est indiqué par un contour SYS en traits pointillés sur la figure 11 pour illustrer les modules réalisant la conversion proprement dite. On indique en outre qu'un module de commande de bascule SW peut détecter la meilleure résolution temps/fréquence, compte tenu par exemple des propriétés de stationnarité des signaux incidents. Cette commande peut contrôler avantageusement le mécanisme de commutation d'états parmi une pluralité d'états admissibles, notamment ceux décrits en référence aux différentes fenêtres de la figure 4B. De manière générale, on indique que le module de commande de bascule SW peut rechercher dans la mémoire DD tous les sous-blocs pré-calculés en fonction de tous les états possibles de la matrice de conversion T, par exemple tranches matricielles par tranches matricielles.All of these three successive processes performed by the CSP, MFM and CPS modules are indicated by a SYS outline in dashed lines in FIG. 11 to illustrate the modules carrying out the actual conversion. It is furthermore indicated that a flip-flop control module SW can detect the best time / frequency resolution, taking into account for example the stationarity properties of the incident signals. This control can advantageously control the state switching mechanism among a plurality of admissible states, in particular those described with reference to the different windows of FIG. 4B. In general, it is indicated that the flip-flop control module SW can search in the memory DD for all the pre-calculated sub-blocks as a function of all the possible states of the conversion matrix T, for example matrix slices by matrix slices.
Un exemple de fonctionnement d'une commande de bascule SW est illustré sur la figure 14. Une horloge HOR (étape H 145) détermine un instant courant r . On a déterminé la matrice de conversion T à un instant t = nKTe , (avec K=ppcm(L,M) dans le cas général) où Te est la période d'échantillonnage du signal à traiter dans le domaine temporel). Si cet instant t a atteint un instant suivant (n+\)KTe (test T141), on doit redéterminer la matrice T . On vérifie néanmoins que les propriétés du signal n'ont pas changé (test T142), auquel cas les tranches matricielles récupérées de la mémoire DD (étape S 146) sont données pour des états différents (étape AM 144) de celles récupérées pour l'instant précédent nKTe (étape AM 143). En fonction de l'état défini au test T142, on détermine la matrice T (étape S 147) jusqu'à un instant suivant (n+2)KTe (boucle S 148). Dans l'exemple représenté, on peut donc analyser les propriétés du signal au test T 142, tous les KTe instants, pour construire globalement la matrice T .An example of operation of a flip-flop control SW is illustrated in FIG. 14. A clock HOR (step H 145) determines a current instant r. The conversion matrix T was determined at a time t = nKT e , (with K = ppcm (L, M) in the general case) where T e is the sampling period of the signal to be processed in the domain. temporal). If this instant reaches a next instant (n + \) KT e (test T141), we must redetermine the matrix T. However, it is verified that the properties of the signal have not changed (test T142), in which case the matrix slices recovered from the memory DD (step S 146) are given for different states (step AM 144) of those recovered for the previous instant nKT e (step AM 143). Depending on the state defined in the test T142, the matrix T (step S 147) is determined until a next instant (n + 2) KT e (loop S 148). In the example shown, it is therefore possible to analyze the properties of the signal on the test T 142, all the KT e instants, to construct the matrix T globally.
Dans une variante de la réalisation illustrée sur la figure 14, puisque les lignes (forme A) ou les colonnes (forme B) de sous-blocs A17 de la matrice de conversion T sont pré-calculées pour de mêmes instants, on peut augmenter la fréquence du test Tl 42 sur les propriétés du signal, soit donc réduire la période d'exécution du test T 142 à MTe (pour la forme A) ou à LTe (pour la forme B) et récupérer des tranches matricielles à jour quant à la variation dans le temps des états possibles précités. Une telle variation, pouvant intervenir au sein d'une période KTe, sera alors détectée et prise en compte pour la construction de la matrice T.In a variant of the embodiment illustrated in FIG. 14, since the lines (form A) or columns (form B) of sub-blocks A 17 of the conversion matrix T are pre-calculated for the same moments, it is possible to increase the frequency of the test Tl 42 on the properties of the signal, either to reduce the execution period of the test T 142 to MT e (for the form A) or to LT e (for the form B) and to recover up to date matrix slices as to the variation in time of the aforementioned possible states. Such a variation, which may occur within a period KT e , will then be detected and taken into account for the construction of the matrix T.
Ainsi, dans cette variante, la matrice globale de conversion T est construite progressivement par appels à la mémoire DD à des instants successifs pour lesquels les sous-blocs Ay ont été pré-calculés.Thus, in this variant, the global conversion matrix T is progressively built up by calls to the memory DD at successive times for which the sub-blocks A have been pre-calculated therein .
La commande de bascule SW de la figure 11 gère donc les appels en mémoire DD des états de la matrice de conversion. La mémoire DD délivre, en retour, les tranches matricielles notées P0 («),... ,PV _,(«) pré-calculées pour un même instant n. Il est avantageux de prévoir à cet effet une mémoire rapide. Ainsi, les tranches P0 («),... ,PΛ _j(«) peuvent être pré-calculées en tenant compte des différents états admissibles, tandis que les appels en mémoire DD de ces tranches de filtrage peuvent être effectués à la volée, à chaque instant successif nK (ou, dans la variante précitée de la figure 14 : à chaque instant nM ou nL pour appeler des lignes (forme A) ou des colonnes (forme B) de sous-blocs et calculer progressivement la matrice globale de conversion T ).The flip-flop control SW of FIG. 11 thus manages the DD memory calls of the states of the conversion matrix. The memory DD delivers, in return, the matrix slices denoted P 0 («), ..., P V _, («) pre-calculated for the same instant n. It is advantageous to provide for this purpose a fast memory. Thus, the slices P 0 («), ..., P Λ _ j («) can be pre-calculated taking into account the different admissible states, while the calls in DD memory of these filtering slices can be made to the fly, at each successive instant nK (or, in the aforementioned variant of FIG. 14: at each instant nM or nL to call lines (form A) or columns (form B) of sub-blocks and progressively calculate the matrix global conversion T).
On précise ci-après une relation entre l'indice n relatif aux états du système de conversion, d'une part, et les indices temporels notés ri et ri sur la figure 11, relatifs aux signaux en sous-bandes.A relationship between the index n relative to the states of the conversion system, on the one hand, and the time indices denoted r 1 and r 1 in FIG. 11, relating to the signals in sub-bands, is specified below.
On note à cet effet fe la fréquence d'échantillonnage du signal temporel Xt et fx la fréquence d'échantillonnage des signaux en sous-bandes X(V) . Par construction, les signaux X(V) sont les signaux en sous-bandes définis dans le domaine transformé du banc de filtres de synthèse et on a une relation du type : fx = fJL La conversion série/parallèle correspond à une décomposition polyphasée d'ordre p2 de chacun des sous-signaux. De ce fait, la fréquence d'échantillonnage, notée fu , des vecteurs de composantes U(«) est p2 fois plus petite de sorte que : fu = fjp2 En principe, la conversion des vecteurs U (ri) afin d'obtenir les vecteurs \(n) ne fait pas intervenir de changement de fréquence. Par conséquent, la fréquence d'échantillonnage fv relative à V(n) est telle que /v = fu .It is noted for this purpose e f the sampling frequency of the time signal X t and f x the sampling frequency of the X sub-band signals (V). By construction, the X (V) signals are the subband signals defined in the transformed domain of the synthesis filter bank and we have a relation of the following type: f x = fJL The serial / parallel conversion corresponds to a polyphase decomposition of order p 2 of each of the sub-signals. As a result, the sampling frequency, denoted f u , of the component vectors U («) is p 2 times smaller so that: f u = fjp 2 In principle, the conversion of the vectors U (ri) in order to getting the vectors \ (n) does not involve a change of frequency. Therefore, the sampling frequency f v relative to V (n) is such that / v = f u .
En revanche, la conversion parallèle/série correspond à une recombinaison des composantes polyphasées d'ordre px du signal en sous-bandes Y(n") . On note / la fréquence d'échantillonnage des signaux en sous-bande de sortie, de sorte que : Par conséquent, pour garantir l'adaptation de cadence des trois échantillonnages intervenant dans le système de conversion, les trois indices temporels ri , n et ri vérifient la relation d'égalité : n' L = nK = ri M avec K = ppcm(L,M) . De ce fait, à une fréquence d'échantillonnage fe donnée, relative au domaine temporel, un nouveau L -uplet de coefficients en sous-bandes X(V) arrive en entrée du système de conversion aux instants multiples de L , c'est-à-dire après qu'une durée égale à LIf e se soit écoulée. Les changements d'état de la matrice de conversion interviennent aux instants multiples de K . Les tranches de filtrage P0(w),...,P^(n) arrivent donc en retour de la mémoire quand une durée K/fe s'est écoulée dans la réalisation illustrée à titre d'exemple sur la figure 14. On notera encore que dans la variante précitée de cette figure 14, on peut encore délivrer les lignes (forme A) ou les colonnes (forme B) de sous-blocs Atj pour de mêmes instants n, tous les M/fe ou tous les L/fe , respectivement, pour construire progressivement la matrice T. Au final, on délivre en sortie du système de conversion un nouveau M -uplet de coefficient en sous-bandes aux instants multiples de M , c'est-à-dire après qu'une durée de M/fe se soit écoulée.On the other hand, the parallel / series conversion corresponds to a recombination of the polyphase components of order p x of the signal in sub-bands Y (n "). We note / the sampling frequency of the signals in subband of output, of so that: Therefore, to guarantee the cadence adaptation of the three samplings involved in the conversion system, the three temporal indices ri, n and ri satisfy the equality relation: n 'L = nK = ri M with K = ppcm (L , M). Therefore, at a sampling frequency f e given, relative to the time domain, a new L -uplet of coefficients in sub-bands X (V) arrives at the input of the conversion system at multiple instants of L, it is after a time equal to LIf e has elapsed. State changes in the conversion matrix intervene at multiple moments of K. The filtering slices P 0 (w),..., P (n) therefore come back from the memory when a duration K / f e has elapsed in the embodiment illustrated by way of example in FIG. 14. It will also be noted that in the aforementioned variant of this FIG. 14, it is still possible to deliver the lines (form A) or the columns (form B) of sub-blocks A tj for the same instants n, all the M / f e or all L / f e , respectively, to progressively build the matrix T. Finally, the output of the conversion system a new M -uplet of coefficient in sub-bands at multiple instants of M, that is, say after a period of M / f e has elapsed.
Ainsi, en termes plus généraux, pour la forme A, le signal à traiter étant numérique et échantillonné initialement à une période Te, la matrice globale de conversion est déterminée périodiquement pour des instants multiples d'une quantité KTe et s'exprime en fonction de matrices de type g(«,Z ) , calculées quant à elles pour des instants successifs multiples d'une quantité MTe.Thus, in more general terms, for the form A, the signal to be processed being digital and initially sampled at a period T e , the global conversion matrix is determined periodically for multiple instants of a quantity KT e and is expressed in function of matrices of type g («, Z), calculated for successive multiple instants of a quantity MT e .
En particulier, le calcul des coefficients de chaque matrice de type g(«,Z ) à un instant multiple de la quantité MTe s'effectue alors en prenant :In particular, the computation of the coefficients of each matrix of type g (", Z) at a time multiple of the quantity MT e is then carried out by taking:
- Af jeux successifs (ou "états admissibles") de coefficients du banc de filtres de synthèse déterminés pour Δ/ instants successifs dans une période MT e, et à partir d'un instant multiple de MTe,Successive successive sets (or "allowable states") of coefficients of the synthesis filter bank determined for Δ / successive instants in a period MT e , and starting from a multiple instant of MT e ,
- et un jeu de coefficients du banc de filtres d'analyse déterminé pour cet instant multiple de MTe, et en appliquant une convolution partielle entre les jeux successifs de coefficients du banc de synthèse et les coefficients du banc d'analyse, avec Δ/ = [(Nh +Nf-I)/ L]+l, où Nj1 et Nf sont les longueurs respectives des filtres d'analyse et de synthèse.and a set of coefficients of the analysis filter bank determined for this multiple instant of MT e , and applying a partial convolution between the successive sets of coefficients of the synthesis bench and the coefficients of the analysis bench, with Δ / = [(N h + Nf-I) / L] + 1, where Nj 1 and Nf are the respective lengths of the analysis and synthesis filters.
Pour la forme B, la matrice globale de conversion est déterminée périodiquement pour des instants multiples d'une quantité KTe et s'exprime en fonction de matrices de type g(Z ,n) , calculées quant à elles pour des instants successifs multiples d'une quantitéFor form B, the global conversion matrix is determined periodically for multiple instants of a quantity KT e and is expressed as a function of matrices of type g (Z, n), calculated for successive multiple instants of a quantity
LTe.LT e .
Plus particulièrement, le calcul des coefficients de chaque matrice de type g(Z ,«) à un instant multiple de la quantité LTe s'effectue alors en prenant : - Δ/, jeux successifs (ou "états admissibles") de coefficients du banc de filtres d'analyse déterminés pour Δ;, instants successifs dans une période LT e, et à partir d'un instant multiple de LTe,More particularly, the computation of the coefficients of each matrix of type g (Z, «) at a multiple instant of the quantity LT e is then carried out by taking: - Δ / , successive sets (or" admissible states ") of coefficients of the bank of analysis filters determined for Δ ;, successive instants in a period LT e , and starting from a multiple instant of LT e ,
- et un jeu de coefficients du banc de filtres de synthèse déterminé pour cet instant multiple de LT e, et en appliquant une convolution partielle entre lesdits jeux successifs de coefficients du banc d'analyse et les coefficients du banc de synthèse, avec Δ/, = [(Nh+Nf-l)/M]+l, où Nh et Nf sont les longueurs respectives des filtres d'analyse et de synthèse.and a set of coefficients of the synthesis filter bank determined for this multiple instant of LT e , and by applying a partial convolution between said successive sets of coefficients of the analysis bank and the synthesis bench coefficients, with Δ / , = [(N h + Nf-1) / M] + 1, where N h and Nf are the respective lengths of the analysis and synthesis filters.
On décrit maintenant comment la conversion au sens de l'invention peut être représentée par un schéma similaire à une représentation par un système linéaire, périodiquement variant dans le temps, ou LPTV (pour "Linear Periodically Time Varying"), décrite dans le document FR-2,875,351. Ci-après, une représentation ainsi similaire à une représentation par un système LPTV sera notée "s-LPTV".We now describe how the conversion in the sense of the invention can be represented by a scheme similar to a representation by a linear system, periodically varying in time, or LPTV (for "Linear Periodically Time Varying"), described in the document FR -2875351. Hereinafter, a representation thus similar to a representation by an LPTV system will be noted "s-LPTV".
* Mise en œuvre selon la forme A* Implementation according to form A
Sous la forme A, pour i = 0,...,pι -\ , la relation de conversion est telle que la composante polyphasée numérotée i des signaux en sous-bandes de sortie est déterminée parIn the form A, for i = 0, ..., p ι - \, the conversion relation is such that the polyphase component numbered i of the output subband signals is determined by
Dans ces conditions et tenant compte de la forme A , on obtient un sous-système numéroté / qui délivre la composante V1-(Ji) du signal de sortie comme représenté sur la figure 12 A. A titre illustratif, on a représenté un commutateur COM en entrée du sous-système, pour schématiser le "parcours" des p2 étages du sous-système à tour de rôle. Les opérations de filtrage qu'effectue le sous-système sont caractérisées par les composantes A. . (n, Z ) de la matrice principale de conversion (avec j = O, ..., p2 - 1 ). Under these conditions and taking into account the form A, we obtain a subsystem numbered / which delivers the component V 1 - (Ji) of the output signal as shown in FIG. 12 A. As an illustration, a switch is represented COM input subsystem, to schematize the "path" of p 2 stages of the subsystem in turn. The filtering operations performed by the subsystem are characterized by the A. components. (n, Z) of the main conversion matrix (with j = O, ..., p 2 - 1).
Le fonctionnement du système global de conversion, dans le cas général, défini sous la forme A , peut être vu comme la structure de la figure 12B. Il comporte alors />, sous- systèmes linéaires variant dans le temps et le "commutateur" COMl à l'entrée opère périodiquement (avec une période p2 / ' fx ).The operation of the overall conversion system, in the general case, defined as A, can be seen as the structure of Figure 12B. It then comprises />, linear subsystems varying in time and the "switch" COM1 at the input operates periodically (with a period p 2 / ' f x ).
Chaque sous-système parmi cet ensemble (numéroté i avec i = 0,...,pι —l sur la figure 12B) est caractérisé par les p2 filtres A. ;(«,Z ) avec / = 0,...,/?, -1. Ces sous- systèmes fonctionnent en parallèle et le "commutateur" de sortie COM2 choisit aussi une de leurs sorties périodiquement comme sortie du système de conversion avec une période px l f . Les coefficients de filtrage de la matrice principale de conversionEach subsystem out of this set (numbered i with i = 0, ..., p ι-1 in FIG. 12B) is characterized by the p 2 filters A .; (", Z) with / = 0, ..., / ?, -1. These subsystems operate in parallel and the output "switch" COM2 also selects one of their outputs periodically as output from the conversion system with a period p × lf. The filter coefficients of the main conversion matrix
T(n,Z ) varient avec le temps et ses changements d'état s'opèrent après chaque période de durée Ki fe . Le système global est donc équivalent à un système linéaire, périodiquement variant dans le temps, et de période K I fe , avec :T (n, Z) vary with time and its changes of state occur after each period of duration Ki f e . The global system is thus equivalent to a linear system, periodically varying in time, and of period KI f e , with:
K = P2L = P1PI eI fe = Lfx = Mfy K = P 2 L = P 1 PI eI f e = Lf x = Mf y
Les deux commutateurs à l'entrée COMl et à la sortie COM2 du système opèrent avec une fréquence fe l K qui correspond à la fréquence de changement d'état des composantes A. ;. {n, Z ) . La sortie Y(«) de la conversion, à l'instant »//, est égale à la sortie du sous-système s-LPTV numéroté i , à l'instant n /'fv , quand i = n modp, . L'entrée X(n) , à l'instant kl fx , contacte les connections numérotées j de chacun des pλ sous-systèmes s-LPTV quand j - k moâp2 .The two switches at the input COM1 and at the output COM2 of the system operate with a frequency f e l K which corresponds to the frequency of change of state of the components A ; . {n, Z). The output Y («) of the conversion, at the instant» //, is equal to the output of the subsystem s-LPTV numbered i, at the instant n / 'f v , when i = n modp,. The entry X (n), at the moment kl f x , contact the numbered connections j of each p λ subsystems s-LPTV when j - k moâp 2 .
Dans le cas particulier où M = pL , il suffît de poser simplement pλ = 1 et /?, = p et l'équation de conversion se réduit à :In the particular case where M = pL, it suffices to simply put p λ = 1 and / ?, = p and the conversion equation is reduced to:
La représentation du sys me comme un système s-LPTV, dans ce cas particulier, correspond en tout point au schéma de la figure complètement représentée par la structure de la figure 12A et la sortie V;.(«) correspond directement au signal Y(n) en sous-bandes après conversion.The representation of the system as an LPTV system, in this particular case, corresponds in every respect to the diagram of the figure completely represented by the structure of FIG. 12A and the output V ; (") Corresponds directly to the Y (n) signal in sub-bands after conversion.
* Mise en œuvre selon la forme B* Implementation according to form B
Pour / = 0,...,/», -1 , l'équation de conversion définie sous la forme B est telle que la composante polyphasée numérotée i des signaux en sous-bandes de sortie est déterminée parFor / = 0, ..., / ", -1, the conversion equation defined in the form B is such that the polyphase component numbered i of the output subband signals is determined by
Dans le cas particulier où L - pM , on a p2 = 1 et P1 = p et l'équation de conversion se réduit simplement àIn the particular case where L - pM, we have ap 2 = 1 and P 1 = p and the conversion equation is simply reduced to
Dans ces conditions et tenant compte de la forme B , on obtient un sous-système numéroté / qui détermine la composante V( («) du signal de sortie comme représenté sur la figure 12C. Le commutateur COM de l'entrée parcourt les p2 étages de ce sous- système et effectue les opérations de filtrage caractérisé par les composantes A; j(Z ,n) avec j = O, ..., p2 - 1 de la matrice principale de conversion.Under these conditions and taking into account the form B, we obtain a subsystem numbered / which determines the component V ( (") of the output signal as shown in Figure 12C. The COM switch of the input travels the p 2 floors of this subsystem and carries out the filtering operations characterized by the components A ; j (Z, n) with j = O, ..., p 2 - 1 of the main conversion matrix.
Le système de conversion dans le cas général et défini sous la forme B peut être interprété comme un ensemble de sous-systèmes comme représenté sur la figure 12D. Cette structure comporte px sous-systèmes linéaires variant dans le temps et le commutateur COMl à l'entrée est périodique de période P2 Zfx - Le sous-système numéroté / avec i = O,...,pr —l , parmi cet ensemble, est caractérisé par les p-, filtres A1. j (Z ,n) avec j = 0,...,p2 -1. Ces sous-systèmes fonctionnent en parallèle et on choisit une de leurs sorties périodiquement comme sortie du système de conversion avec une période pj fy . Les coefficients de filtrage de la matrice principale de conversion T(Z , n) varient avec le temps et ses changements d'état s'opèrent après chaque période de durée K I fe . Le système global est donc linéaire périodiquement variant dans le temps de période Kl fe , avec :The conversion system in the general case and defined in the form B can be interpreted as a set of subsystems as shown in FIG. 12D. This structure comprises p × linear subsystems varying in time and the COM1 switch at the input is period periodic P 2 Zf x - The subsystem numbered / with i = O, ..., p r -l, among this set, is characterized by the p-, filters A 1 . j (Z, n) with j = 0, ..., p 2 -1. These subsystems operate in parallel and one of their outputs is periodically selected as the output of the conversion system with a period pj f y . The filter coefficients of the main conversion matrix T (Z, n) vary with time and its changes of state occur after each period of duration KI f e . The global system is therefore linear periodically varying in the period of time Kl f e , with:
K = P2L = P1M et fe = Lfx = Mfy K = P 2 L = P 1 M and f e = Lf x = Mf y
Les deux commutateurs à l'entrée COMl et à la sortie COM2 de la structure de la figure 12D opèrent avec une fréquence fJK qui est aussi la fréquence de changement d'état des composantes A1. .(Z , ri) .The two switches at the input COM1 and at the output COM2 of the structure of FIG. 12D operate with a frequency fJK which is also the frequency of change of state of the components A 1 . (Z, ri).
La sortie Y(«) de la conversion, à l'instant ni fy , est égale à la sortie du sous-système s-LPTV numéroté / , à l'instant ni fy , quand i = n mod/j, . L'entrée X(«) , à l'instant kl fx , contacte les connections numérotées j de chacun des p{ sous-systèmes s- LPTV quand j = k mod p2 . On décrit maintenant une réalisation basée sur les transformations à recouvrement. On note à cet effet, comme dans FR-2,875,351, B («) (i = 0,...,pι -1 et j = 0,...,p2 -I ) des matrices de taille NxM xL , "réarrangées" et associées à chacune des composantes A (n,Z ) pour la forme A et associées à chacune des composantes A (Z ,ή) pour la forme B telles que :The output Y («) of the conversion, at the instant ni f y , is equal to the output of the subsystem s-LPTV numbered /, at the instant ni f y , when i = n mod / j,. The input X («), at the instant kl f x , contacts the connections numbered j of each of the p { LPTV subsystems when j = k mod p 2 . An embodiment based on overlap transformations is now described. We note for this purpose, as in FR-2,875,351, B (") (i = 0, ..., p ι -1 and j = 0, ..., p 2 -I) matrices of size N x M xL, "rearranged" and associated with each of the components A (n, Z) for the form A and associated with each of the components A (Z, ή) for the form B such that:
Forme A :Form A:
Avec ces définitions, les représentations s-LPTV des systèmes globaux selon les figures 12B et 12D associées respectivement aux formes A et B , sont réarrangées naturellement et conduisent au schéma de la figure 12E. Les opérations de mise en mémoire sont effectuées après les multiplications matricielles des signaux en entrées par les matrices BhJ (n) . Les blocs notés OLA (pour "overlap and add" en anglais) effectuent la mise en mémoire et les opérations d'addition avec recouvrement final des vecteurs transformés par les matrices B^ } (n) . La procédure de calcul pour la conversion entre domaines de sous-bandes se fait préférentiellement comme suit :With these definitions, the s-LPTV representations of the global systems according to FIGS. 12B and 12D respectively associated with the forms A and B, are rearranged naturally and lead to the diagram of FIG. 12E. The storage operations are performed after matrix multiplications of the input signals by the matrices B hJ (n). The OLA-rated blocks (for "overlap and add" in English) perform the storage and addition operations with final recovery of the vectors transformed by the matrices B ^ (n). The calculation procedure for the conversion between subband domains is preferentially as follows:
- chaque nouveau vecteur X(w') tel que U («) = X(n') } avec n' = np2 + j , est placé en entrée des blocs matriciels B (n) ( i = O, ..., p} - 1 ) ;each new vector X (w ') such that U («) = X (n') } with n '= np 2 + j, is placed at the input of the matrix blocks B (n) (i = O, ... , p } - 1);
- pour chaque "numéro" i fixé, on applique :- for each "number" i fixed, apply:
• une transformation matricielle de U7 (n) par la matrice B1 y (n) , • une sommation de tous les vecteurs transformés en sortie des matrices A matrix transformation of U 7 (n) by the matrix B 1 y (n), a summation of all the vectors transformed at the output of the matrices
• une addition avec recouvrement sur ces vecteurs, l'opération OLA s'effectuant sur des vecteurs de longueur NrM avec un recouvrement deAn overlap addition on these vectors, the OLA operation being carried out on vectors of length N r M with a recovery of
(N1 -I)M , - la sortie Y(«") du système de conversion correspond à la sortie V1. (n) du sous- système s-LPTV numérotée i avec n" - npx + i .(N 1 -I) M, the output Y ("") of the conversion system corresponds to the output V 1 (n) of the subsystem s-LPTV numbered i with n "-np x + i.
On rappelle que les matrices B; y(/î) varient dans le temps. A part ce point important, le traitement mené globalement reste similaire à celui décrit dans le document FR-2,875,351. On a représenté sur la figure 12E le principe du traitement global.It is recalled that the matrices B ; y (/ i) vary in time. Apart from this important point, the treatment carried out globally remains similar to that described in document FR-2,875,351. FIG. 12E shows the principle of global processing.
De manière générale, on retiendra que la conversion globale met en jeu une transformée à recouvrement avec addition, en tenant compte en particulier d'une évolution temporelle dans les quantités qui sont additionnées avec recouvrement.In general, it will be remembered that the overall conversion involves an addition-recovery transform, taking into account in particular a temporal evolution in the quantities which are added with overlap.
* Exemples de réalisation* Examples of realization
On décrit ci-après des applications de l'invention aux cas de codeurs audio MPEG- 1/2, MPEG-2/4, Dolby AC-3, G722.1 (type TDAC de la Demanderesse), normalisés pour la plupart.The following are applications of the invention in the case of MPEG-1/2, MPEG-2/4, Dolby AC-3, G722.1 audio coders (TDAC type of the Applicant), most of which are standardized.
Selon les caractéristiques de chacun des bancs de filtres utilisés par ces codeurs, on obtient un système de conversion correspondant généralement au cas K = ppcm(L,M) , mais avec aussi des occurrences fréquentes des deux cas particuliers M = pL et L = pM . Il peut advenir aussi que l'un des bancs de filtres d'analyse ou de synthèse soit invariant dans le temps. Bien entendu, les cas où les deux bancs de filtres sont invariants dans le temps sont traités couramment par l'état de l'art, notamment dans le document FR-2,875,351.According to the characteristics of each of the banks of filters used by these coders, we obtain a conversion system generally corresponding to the case K = ppcm (L, M), but with also frequent occurrences of the two particular cases M = pL and L = pM . It may also happen that one of the analysis or synthesis filter banks is invariant in time. Of course, the cases where the two banks of filters are invariant in time are commonly treated by the state of the art, in particular in the document FR-2,875,351.
Le tableau suivant résume les différents cas observés auprès des types de codeurs existants. The following table summarizes the different cases observed with existing types of coders.
On notera que les cas de conversion où M = pL correspondent aux cas particuliers où les nombres de canaux "déterminants" des bancs de filtres sont des multiples entiers. On note, dans ces cas, simplement que K = M (P1 = I) et p2 = p .It will be noted that the conversion cases where M = pL correspond to the particular cases where the number of "determining" channels of the filterbanks are integer multiples. In these cases, we simply note that K = M (P 1 = I) and p 2 = p.
La plupart des représentations utilisées par les codeurs MPEG-2/4 AAC ou Dolby AC- 3 sont définies par deux dimensions notées M1 et M2 . Néanmoins, comme montré précédemment, les deux dimensions sont, de façon équivalente, des transformées à recouvrement variant dans le temps TV-MLT (définies en fonction du rapport M1ZM2 ). Pour ce qui concerne les codeurs précités, les cas M = pL indiquent implicitement que la dimension la plus grande M1 de la transformée TV-MLT (avec MJMj) du banc de filtres d'analyse est un multiple de celle (notée L1 ) de la transformée TV-MLT (avec LxIL1 ) du banc de filtres de synthèse. De façon plus explicite, on peut parler alors d'une "conversion des cas où M1 = pLλ ".Most of the representations used by MPEG-2/4 AAC or Dolby AC-3 encoders are defined by two dimensions denoted M 1 and M 2 . Nevertheless, as shown above, the two dimensions are equivalently TV-MLT time-lapse transforms (defined as a function of the ratio M 1 ZM 2 ). With regard to the above-mentioned coders, the cases M = pL implicitly indicate that the largest dimension M 1 of the TV-MLT transform (with MJMj) of the analysis filter bank is a multiple of that (denoted L 1 ). of the TV-MLT transform (with L x IL 1 ) of the synthesis filterbank. More explicitly, we can speak of a "conversion of the cases where M 1 = pL λ ".
A titre d'exemple, le schéma conventionnel de la conversion entre le codeur audio Dolby AC-3 et le codeur MPEG-2/4 AAC est représenté sur la figure 7, sur laquelle on a L1 = 256 et M1 = 1024 , soit donc simplement p = A vérifiant M\ = pL\. Ainsi, la condition de proportionnalité s'applique seulement sur la dimension la plus grande du banc de filtres variant dans le temps.By way of example, the conventional scheme of the conversion between the Dolby audio encoder AC-3 and the MPEG-2/4 AAC encoder is shown in FIG. a L 1 = 256 and M 1 = 1024, so simply p = A satisfying M \ = pL \. Thus, the condition of proportionality applies only to the largest dimension of the filter bank varying over time.
* Exemple de conversion entre un banc de filtres de type P-QMF(L) et un banc de filtres de type TV-MLT(M1IM2) avec L et M1 multiples* Example of conversion between a P-QMF (L) type filter bank and a TV-MLT (M 1 IM 2 ) filter bank with multiple L and M 1
On considère le cas où le banc de filtres de synthèse est de type P-QMF( L ), pour un transcodage entre un codeur de type MPEG-1/2 layer I et II vers un codeur de type MPEG-2/4 AAC et/ou un codeur de type MPEG- 1/2 layer I et II vers un codeur de type Dolby AC-3.Consider the case where the synthesis filter bank is of the P-QMF (L) type, for a transcoding between an MPEG-1/2 layer I and II encoder to an MPEG-2/4 AAC type encoder and / or an MPEG-1/2 layer I and II encoder to a Dolby AC-3 type encoder.
Il s'agit typiquement de deux exemples de conversion conformes au cas M = pL .These are typically two conversion examples according to the case M = pL.
Le banc de filtre de synthèse du schéma conventionnel est invariant dans le temps. Il comporte L = 32 sous-bandes et la longueur des filtres est Nf ≈ 512 . La transforméeThe synthesis filter bank of the conventional scheme is invariant in time. It has L = 32 subbands and the length of the filters is N f ≈ 512. The transformed
TV-MLT( MxIM2) est définie par les valeurs M1 /M2 = 1024/128 pour le codeur MPEG-2/4 AAC et MJM2 = 256/128 pour le codeur Dolby AC-3. On trouve alors les constantes caractéristiques du système de conversion comme suit :TV-MLT (M x IM 2 ) is defined by the values M 1 / M 2 = 1024/128 for the MPEG-2/4 AAC encoder and MJM 2 = 256/128 for the Dolby AC-3 encoder. The characteristic constants of the conversion system are then as follows:
Le nombre Δ/ n'est pas défini dans ce cas puisque le banc de filtres P-QMF est invariant dans le temps et, de ce fait, les tranches matricielles de g(n,Z ) sont définies simplement comme : The number Δ / is not defined in this case since the filter bank P-QMF is invariant in time and, therefore, the matrix slices of g (n, Z) are defined simply as:
L'indice / est un indice de convolution simple et les coefficients des filtres de synthèse ne varient pas.The index / is a simple convolution index and the coefficients of the synthesis filters do not vary.
On note Δr le nombre d'états admissibles de la matrice principale de conversionWe denote Δ r the number of admissible states of the main conversion matrix
T(«,Z ) . Il existe A1, = 4 états possibles et différents pour les variations temporelles (indice n ) de la matrice globale T(«,Z ) . Le banc de filtres d'analyse H(n,Z ) admet en effet quatre états distincts. De ce fait, à un instant «M, , la matrice principale de conversion T(«,Z ) est construite, d'une part, à partir des coefficients du filtre de synthèse P-QMF( L ) et, d'autre part :T («, Z). There exists A 1 , = 4 possible and different states for the temporal variations (index n) of the global matrix T («, Z). The analysis filter bank H (n, Z) indeed has four distinct states. As a result, at one instant "M, the main conversion matrix T (", Z) is constructed, on the one hand, from the coefficients of the synthesis filter P-QMF (L) and on the other hand :
- des coefficients de la transformée TV-MLT définis par la relation (13), si la transformée est à résolution temporelle longue 2M1 ;coefficients of the TV-MLT transform defined by the relation (13), if the transform has a long time resolution 2M 1 ;
- ou des coefficients de la transformée TV-MLT définis par la relation (15), si la transformée est à résolution temporelle courte 2M2 ;or coefficients of the TV-MLT transform defined by the relation (15), if the transform has a short time resolution 2M 2 ;
- ou des coefficients de la transformée TV-MLT définis par la relation (17), si la transformée effectue un changement de résolution longue 2M1 vers courte 2M2 ;or coefficients of the TV-MLT transform defined by the relation (17), if the transform makes a long 2M 1 to short 2M 2 resolution change;
- ou des coefficients de la transformée TV-MLT définis par la relation (19), si la transformée effectue un changement de résolution courte 2M2 vers longue 2M1 .or coefficients of the TV-MLT transform defined by the equation (19), if the transform makes a short resolution change from 2M 2 to 2M 1 long.
Les Δr = 4 états admissibles de la matrice de conversion T(«,Z ) sont déterminés à partir des N7. tranches qui sont toutes de taille M1 x M1 .The Δ r = 4 acceptable states of the conversion matrix T («, Z) are determined from the N 7 . slices that are all of size M 1 x M 1 .
Dans le cas d'une conversion réciproque avec I1 = pM où le banc de filtres P- QMF( M ) est le banc de filtres d'analyse, tandis que la transformée TV-MLT(I1ZZ-, ) est le banc de filtres de synthèse, le système de conversion est défini sous la forme B .In the case of a reciprocal conversion with I 1 = pM where the P-QMF filter bank (M) is the analysis filter bank, while the TV-MLT transform (I 1 ZZ-,) is the bench of synthesis filters, the conversion system is defined as B.
La matrice de conversion T(Z , n) admet Δ7 = 4 états différents et chaque état est déterminé par Nτ tranches comportant Lx x Lx coefficients de filtrage. Si 1/Z2 = 1024/128 (cas de la transformée MDCT du codeur MPEG-2/4 AAC), alors N1. = 4 et si L1IL2 = 256/128 (cas de la transformée MDCT du codeur Dolby AC-3), alors Nτ = 3 .The conversion matrix T (Z, n) admits Δ 7 = 4 different states and each state is determined by N τ slices comprising L x x L x filter coefficients. If 1 / Z 2 = 1024/128 (case of the MDCT transform of the MPEG-2/4 AAC encoder), then N 1 . = 4 and if L 1 IL 2 = 256/128 (case of the MDCT transform of the Dolby AC-3 encoder), then N τ = 3.
* Cas de transformées TV-MLT(L1ZL2) et TV-MLT(MxIM2) avec Lx et M1 multiples* Cases of transformations TV-MLT (L 1 ZL 2 ) and TV-MLT (M x IM 2 ) with L x and M 1 multiples
II s'agit par exemple du cas du transcodage entre le codeur audio Dolby AC-3 vers les codeurs MPEG-2/4 AAC. Le système de conversion correspond au cas particulier où M1 = PL1 avec L1IL2 = 256/128 et M1ZM, = 1024/128. Les constantes du système de conversion sont donc déterminées par p = A A7 = IO Nτ = 3This is the case, for example, of transcoding between the Dolby AC-3 audio coder and the MPEG-2/4 AAC coders. The conversion system corresponds to the particular case where M 1 = PL 1 with L 1 IL 2 = 256/128 and M 1 ZM, = 1024/128. The constants of the conversion system are thus determined by p = AA 7 = IO N τ = 3
Un état de la matrice de conversion comporte N7. = 3 tranches de coefficients de filtrage P0 («),?,(«), P2 (n) . Chaque tranche de coefficients est de taille 1024x1024.A state of the conversion matrix has N 7 . = 3 slices of filter coefficients P 0 («),?, («), P 2 (n). Each coefficient range is 1024x1024.
On montre que le nombre maximal d'états différents de la matrice principale de conversion T(«,Z ) est égal à A7. = 1152. Ce nombre est obtenu à partir de la valeur du terme uk d'une suite de Fibonacci, définie pour les valeurs initiales u\=A, «2=6, quand k = Af . On a observé en effet que, de manière générale, le dénombrement d'états possibles de la matrice T respectait les variations d'une suite de Fibonacci. Ce nombre d'états différents A7 est déterminé en supposant que les changements d'états du banc de filtres de synthèse F(Z , n) et ceux du banc de filtres d'analyse H(n,Z ) sont indépendants. Il est préférentiellement prévu deux commandes de bascule SW indépendantes qui contrôlent les changements de résolution des deux transformées TV- MLT. Pour la transformée TV-MLT( L1IL2 ), ce contrôle s'effectue à tous les instants multiples de L1 et pour la transformée TV-MLT( M1IM2), ce contrôle s'effectue à tous les instants multiples de M1 . Comme indiqué ci-avant, les commandes de bascule SW opèrent avantageusement sur la base d'une analyse des propriétés statistiques du signal incident et déterminent, notamment par des critères d'entropie perceptuelle, quelles sont les résolutions les plus adaptées pour chaque bloc de longueur 2I1 ou 2M1 . Ces commandes sont au moins en partie cohérentes et certains changements de résolution de la transformée TV- MLT(Z1ZL2 ) interviennent avantageusement de façon synchrones avec ceux de la transformée TV-MLT(M1ZM2). Par exemple, si la transformée TV-MLT(L1ZI2 ) procède sur plusieurs périodes, par des transformées de résolution L2 , la transformée TV-MLT(M1ZM2) n'effectue pas, a priori, de changement de résolution M2 -» M, ou ne passe pas par des états définis par la résolution M1 . Il convient donc de préciser que le nombre d'états admissibles Aτ = 1152 est maximum car certains états parmi les Δr états ne sont plus admissibles s'ils ne sont plus cohérents par rapport au fonctionnement de la commande de transition du transcodeur.It is shown that the maximum number of different states of the main conversion matrix T («, Z) is equal to A 7 . = 1152. This number is obtained from the value of the term u k of a Fibonacci sequence, defined for the initial values u \ = A, " 2 = 6, when k = A f . It has been observed that, in general, the enumeration of possible states of the matrix T respects the variations of a sequence of Fibonacci. This number of different states A 7 is determined by assuming that the state changes of the synthesis filter bank F (Z, n) and those of the analysis filter bank H (n, Z) are independent. It is preferentially provided two independent SW flip-flop commands that control the resolution changes of the two TV-MLT transforms. For the TV-MLT transform (L 1 IL 2 ), this control is carried out at all the multiple instants of L 1 and for the TV-MLT transform (M 1 IM 2 ), this control is carried out at all the multiple instants. of M 1 . As indicated above, the SW toggle controls advantageously operate on the basis of an analysis of the statistical properties of the incident signal and determine, in particular by perceptual entropy criteria, which are the most suitable resolutions for each block of length. 2I 1 or 2M 1 . These commands are at least partly consistent and certain changes in the resolution of the TV-MLT transform (Z 1 ZL 2 ) are advantageously synchronous with those of the TV-MLT transform (M 1 ZM 2 ). For example, if the TV-MLT transform (L 1 ZI 2 ) proceeds over several periods, by transformations of resolution L 2 , the transform TV-MLT (M 1 ZM 2 ) does not carry out, a priori, a change of resolution M 2 - »M, or does not pass through states defined by the resolution M 1 . It should therefore be specified that the number of admissible states A τ = 1152 is maximum because some states among the Δ r states are no longer admissible if they are no longer consistent with the operation of the transition control of the transcoder.
Pour le cas de la conversion intervenant dans le transcodage entre le format MPEG-2Z4 AAC vers le format dolby AC-3, on a L1 = PM1 avec p = 4 et le système de conversion est défini sous la forme B . La construction de la matrice g(Z ,«) nécessite d'effectuer des regroupements de Δft = 10 états successifs de la transformée TV- MLT(M1ZM2). Chaque état de la matrice de conversion T(Z , n) est déterminé par la donnée de N7. = 4 tranches de 1024x 1024 coefficients. On peut dénombrer un total maximum de 1022 états différents admissibles pour la matrice de conversion.For the case of the conversion involved in the transcoding between the MPEG-2Z4 AAC format and the dolby AC-3 format, we have L 1 = PM 1 with p = 4 and the conversion system is defined as B. The construction of the matrix g (Z, «) requires grouping of Δ ft = 10 successive states of the transform TV-MLT (M 1 ZM 2 ). Each state of the conversion matrix T (Z, n) is determined by the data of N 7 . = 4 slices of 1024x 1024 coefficients. There may be a maximum total of 1022 different states eligible for the conversion matrix.
* Codeur TDAC(L) et transformée TV-MLT(MxIM2) avec K = PfCm(L7M1)* TDAC coder (L) and TV-MLT transform (M x IM 2 ) with K = PfCm (L 7 M 1 )
Dans le cas où le banc de filtres de synthèse est un banc de filtres de type TDAC comportant L = 320 sous-bandes, chaque filtre étant de longueur N = 640, il n'existe pas de multiplicité entre la dimension L et la dimension M1 = 1024 du codeur MPEG- 2/4 AAC, ni entre la dimension L et la dimension M1 = 256 du codeur Dolby AC-3. Dans ces deux cas de conversion, le système de conversion est déterminé par la valeur de K = PpCm(L7M1) telle que K = 5120 avec le codeur MPEG-2/4 AAC et iïT = 1280 avec le codeur Dolby AC-3. Le système peut être mis en œuvre sous la forme A ou sous la forme B .In the case where the synthesis filter bank is a TDAC type filterbank comprising L = 320 subbands, each filter being of length N = 640, there is no multiplicity between the dimension L and the dimension M 1 = 1024 of the MPEG encoder 2/4 AAC, or between the L dimension and the M 1 = 256 dimension of the Dolby AC-3 encoder. In these two conversion cases, the conversion system is determined by the value of K = PpCm (L 7 M 1 ) such that K = 5120 with the MPEG-2/4 AAC encoder and iit = 1280 with the Dolby AC coder. 3. The system can be implemented in the form A or in the form B.
Dans le cas d'une mise en œuvre selon la forme A , il existe quatre états admissibles pour la sous-matrice de filtrage g(n,Z ) car les coefficients du banc de filtres de synthèse sont invariants dans le temps, tandis que ceux du banc de filtres d'analyse relatifs à la transformée TV-MLT(M1ZM2) admettent quatre définitions différentes.In the case of an implementation of the form A, there are four admissible states for the filtering sub-matrix g (n, Z) because the coefficients of the synthesis filter bank are invariant in time, while those of the analysis filter bank relating to the TV-MLT transform (M 1 ZM 2 ) admit four different definitions.
Pour la construction de la matrice principale, on regroupe pλ états successifs de g(«,Z ) dans le but de construire un état de T(«,Z ) . En supposant que les règles de changements d'état de g(n,Z ) sont les mêmes que celles de la transformée TV- MLT(Af1 /M2), le nombre total d'états Aτ de T(«,Z ) est déduit des valeurs d'une suite de Fibonacci. On obtient donc A1 = uk , calculé avec k = px .For the construction of the principal matrix, we group p λ successive states of g («, Z) in order to build a state of T («, Z). Assuming that the state change rules of g (n, Z) are the same as those of the TV-MLT transform (Af 1 / M 2 ), the total number of states A τ of T («, Z ) is deduced from the values of a Fibonacci sequence. We thus obtain A 1 = u k , calculated with k = p x .
Dans le cas du transcodage où intervient le codeur MPEG-2/4 AAC, on a ^1 = 16 et Δr = 8362. Un état de la matrice de conversion comporte N1, = 1 seule tranche avec 5120 coefficients. Dans le cas du transcodage où intervient le format Dolby AC-3, on a P1 = 4 etIn the case of transcoding involving the MPEG-2/4 AAC encoder, we have ^ 1 = 16 and Δ r = 8362. A state of the conversion matrix has N 1 , = 1 single slice with 5120 coefficients. In the case of transcoding where the Dolby AC-3 format intervenes, we have P 1 = 4 and
Δr = 26. Un état de la matrice de conversion comporte N1. = 1 seule tranche avec 1280 coefficients de filtrage.Δ r = 26. A state of the conversion matrix has N 1 . = 1 single slice with 1280 filter coefficients.
Bien entendu, la présente invention ne se limite pas à la forme de réalisation décrite ci- avant à titre d'exemple ; elle s'applique à d'autres variantes. De manière générale, l'invention s'applique à tout transcodage entre formats de codage, notamment audio, utilisant des bancs de filtres variants dans le temps. Ces transcodeurs peuvent être mis en œuvre dans des passerelles, notamment en des nœuds de réseaux de télécommunication, ou dans des serveurs de contenu multimédia dans le cadre d'applications de diffusion en mode dit "de streaming", ou de téléchargement ou de diffusion pour télévision numérique (format MPEG-4 AAC vers un format MPEG- 2 Layer II ou Dolby AC-3), ou autres.Of course, the present invention is not limited to the embodiment described above by way of example; it applies to other variants. In general, the invention applies to any transcoding between coding formats, in particular audio formats, using banks of filters that vary over time. These transcoders may be implemented in gateways, in particular in telecommunication network nodes, or in multimedia content servers in the context of "streaming" mode broadcasting applications, or downloading or broadcasting applications. digital television (MPEG-4 AAC format to MPEG-2 Layer II or Dolby AC-3 format), or others.
Elle peut être appliquée aussi à toute mise en œuvre pour un passage entre deux représentations de sous-bandes, notamment au sein de codeurs au format MPEG-4 HE- AAC et/ou MPEG Surround Audio Coding.It can also be applied to any implementation for a transition between two representations of sub-bands, in particular within MPEG-4 encoders HE-AAC and / or MPEG Surround Audio Coding.
Par ailleurs, la plupart des formats de codage indiqués ci-avant opèrent sur des signaux audionumériques, mais la présente invention s'applique à tout type de transcodage variant dans le temps et opéré sur tout type de signal. Moreover, most of the coding formats indicated above operate on digital audio signals, but the present invention applies to any type of transcoding that varies over time and operates on any type of signal.

Claims

REVENDICATIONS
1. Procédé mis en œuvre par des ressources informatiques pour traiter un signal par passage entre domaines différents de sous-bandes, visant à compacter en un même traitement l'application d'un premier vecteur représentant le signal dans un premier domaine de sous-bandes à un banc de filtres de synthèse, puis à un banc de filtres d'analyse, pour obtenir un second vecteur représentant le signal dans un second domaine de sous-bandes, dans lequel on prévoit l'application d'un filtrage matriciel au premier vecteur pour obtenir directement le second vecteur, caractérisé en ce que le banc de synthèse et/ou le banc d'analyse sont variants dans le temps, en ce que le filtrage matriciel est représenté par une matrice globale de conversion comportant des sous-blocs matriciels : • pré-calculés en tenant compte des variations possibles dans le temps des bancs de filtres,A method implemented by computer resources for processing a signal by passing between different subband domains, aiming at compacting in a single process the application of a first vector representing the signal in a first subband domain to a synthesis filter bank, then to an analysis filter bank, to obtain a second vector representing the signal in a second subband domain, wherein the application of matrix filtering to the first vector is provided for directly obtaining the second vector, characterized in that the synthesis bench and / or the analysis bench are time-variant, in that the matrix filtering is represented by a global conversion matrix comprising matrix sub-blocks: • pre-calculated taking into account the possible variations in time of the filter banks,
• et stockés en mémoire, et en ce que la matrice globale de conversion est construite par appel à ladite mémoire pour obtenir lesdits sous-blocs pré-calculés à des instants successifs.And stored in memory, and in that the global conversion matrix is constructed by calling said memory to obtain said pre-calculated sub-blocks at successive instants.
2. Procédé selon la revendication 1, caractérisé en ce que la matrice globale de conversion est construite progressivement par appels à ladite mémoire à des instants successifs pour lesquels lesdits sous-blocs ont été pré-calculés.2. Method according to claim 1, characterized in that the global conversion matrix is built progressively by calls to said memory at successive times for which said sub-blocks have been pre-calculated.
3. Procédé selon l'une des revendications 1 et 2, caractérisé en ce que, le premier vecteur comportant un premier nombre L de composantes en sous-bandes respectives tandis que le second vecteur comporte un second nombre M de composantes en sous-bandes respectives, après détermination d'un troisième nombre K, plus petit commun multiple entre le premier nombre L et le second nombre M : - on applique une conversion série/parallèle du premier vecteur pour obtenir />, vecteurs composantes polyphasées, avec p2 = K/ L , et3. Method according to one of claims 1 and 2, characterized in that the first vector having a first number L of components in respective subbands while the second vector comprises a second number M of components in respective subbands after determining a third number K, the least common multiple between the first number L and the second number M: a series / parallel conversion of the first vector is applied to obtain polyphase component vectors, with p 2 = K / L, and
- on applique une conversion parallèle/série pour obtenir ledit second vecteur, en ce que : * la matrice de conversion est appliquée auxdites p2 composantes polyphasées du premier vecteur pour obtenir px composantes polyphasées du second vecteur, avec P1 = K/ M , et- applying a parallel / serial conversion to obtain said second vector, in that: * the conversion matrix is applied to said p 2 polyphase components of the first vector to obtain p x polyphase components of the second vector, with p 1 = K / M , and
* la matrice de conversion est carrée, de dimension K x K , et comporte px lignes et P1 colonnes de sous-blocs Ay comportant chacun L lignes et M colonnes, et en ce que des sous-blocs Ay d'un même indice /' ou des sous-blocs Ay d'un même indicey sont pré-calculés pour un même instant.the conversion matrix is square, of dimension K x K, and has p x lines and P 1 columns of sub-blocks Ay each having L rows and M columns, and in that sub-blocks Ay of the same index / 'or sub-blocks of the same Ay indicey are pre-calculated for the same instant.
4. Procédé selon la revendication 3, caractérisé en ce que la matrice de conversion est tridimensionnelle, avec : - une première dimension définie par l'indice courant / des sous-blocs,4. Method according to claim 3, characterized in that the conversion matrix is three-dimensional, with: a first dimension defined by the current index / sub-blocks,
- une deuxième dimension définie par l'indice courant y des sous-blocs,a second dimension defined by the current index y of the sub-blocks,
- et une troisième dimension définie par un degré de filtrage matriciel, et en ce que les sous-blocs pré-calculés pour un même instant forment des plans matriciels s'étendant vers ladite troisième dimension.and a third dimension defined by a degree of matrix filtering, and in that the sub-blocks pre-calculated for the same instant form matrix planes extending towards said third dimension.
5. Procédé selon l'une des revendications 3 et 4, caractérisé en ce que les sous-blocs Ay s'expriment chacun :5. Method according to one of claims 3 and 4, characterized in that the Ay sub-blocks are each expressed:
• en fonction d'un type de matrice g(n, Z ), dont les éléments sont donnés par :• according to a type of matrix g (n, Z), whose elements are given by:
• ou, de façon équivalente, en fonction d'un type de matrice g(Z ,n), dont les éléments sont donnés par : • or, equivalently, according to a type of matrix g (Z, n), whose elements are given by:
où : or :
- Ni, est la longueur des filtres d'analyse,- Ni, is the length of the analysis filters,
- Nf est la longueur des filtres de synthèse,Nf is the length of the synthesis filters,
- n est une variable temporelle, - Z est une variable de domaine transformé,n is a time variable, Z is a transformed domain variable,
- k\ est compris entre O et M-I et &2 compris entre O et L-I, etk \ is between O and MI and & 2 between O and LI, and
- les coefficients gf"*2 («) , dans chaque cas, s'expriment en fonction des coefficients des filtres d'analyse et de synthèse.the coefficients gf "* 2 ("), in each case, are expressed as a function of the coefficients of the analysis and synthesis filters.
6. Procédé selon la revendication 5, prise en combinaison avec la revendication 4, caractérisé en ce que chaque sous-bloc d'indice i, exprimé en fonction d'une matrice de type g(n,Z ) est donné par :6. Method according to claim 5, taken in combination with claim 4, characterized in that each sub-block of index i, expressed as a function of a matrix of type g (n, Z) is given by:
A., (n, Z ) = [g (n + ïM, Z ) Z iM'jL 1 où la notation i K désigne une décimation d'un facteur K, et les plans matriciels sont constitués de sous-blocs de même indice de ligne i et sont horizontaux, et en ce que la matrice globale de conversion est constituée par lesdits plans matriciels horizontaux pré-calculés pourri instants successifs.A., (n, Z) = [g (n + ïM, Z) Z iM'jL 1 where the notation i K denotes a decimation of a factor K, and the matrix planes consist of sub-blocks of the same index line i and are horizontal, and in that the overall conversion matrix is constituted by said predefined horizontal matrix planes rotten successive instants.
7. Procédé selon la revendication 5, prise en combinaison avec la revendication 4, caractérisé en ce que chaque sous-bloc d'indice j, exprimé en fonction d'une matrice de t3Φe g (Z ,n) , est donné par :7. Method according to claim 5, taken in combination with claim 4, characterized in that each sub-block of index j, expressed as a function of a matrix of t3Φ e g (Z, n), is given by:
A . (Z , n) = | Z lM'jLg (Z ,n + jL) \ , où la notation i K désigne une décimation d'un facteur K, et les plans matriciels sont constitués de sous-blocs de même indice de colonne j et sont verticaux, et en ce que la matrice globale de conversion est constituée par lesdits plans matriciels verticaux pré-calculés pour /^2 instants successifs. AT . (Z, n) = | Z lM'jL g (Z, n + jL) \, where the notation i K denotes a decimation of a factor K, and the matrix planes consist of sub-blocks with the same column index j and are vertical, and that the global conversion matrix is constituted by said vertical matrix planes pre-calculated for / ^ 2 successive instants.
8. Procédé selon l'une des revendications 5 et 6, caractérisé en ce que le nombre M est un multiple du nombre L (M=pL), et en ce que chaque sous-bloc s'exprime en fonction d'une matrice de type g(«,Z ) .8. Method according to one of claims 5 and 6, characterized in that the number M is a multiple of the number L (M = pL), and in that each sub-block is expressed as a function of a matrix of type g (", Z).
9. Procédé selon l'une des revendications 5 et 7, caractérisé en ce que le nombre L est un multiple du nombre M (L=pM), et en ce que chaque sous-bloc s'exprime en fonction d'une matrice de type g (Z , rî) .9. Method according to one of claims 5 and 7, characterized in that the number L is a multiple of the number M (L = pM), and in that each sub-block is expressed as a function of a matrix of type g (Z, r).
10. Procédé selon l'une des revendications 5, 6 et 8, caractérisé en ce que, le signal à traiter étant numérique et échantillonné initialement à une période Te, la matrice globale de conversion est déterminée périodiquement pour des instants multiples d'une quantité KTe et s'exprime en fonction de matrices de type g(«,Z ) , calculées quant à elles pour des instants successifs multiples d'une quantité MTe.10. Method according to one of claims 5, 6 and 8, characterized in that, the signal to be processed being digital and initially sampled at a period T e , the overall conversion matrix is determined periodically for multiple instants of a quantity KT e and is expressed as a function of matrices of type g (", Z), calculated for successive multiple instants of a quantity MT e .
11. Procédé selon la revendication 10, caractérisé en ce que le calcul des coefficients de chaque matrice de type g (M, Z ) à un instant multiple de la quantité MTe s'effectue en prenant :11. Method according to claim 10, characterized in that the calculation of the coefficients of each matrix of type g (M, Z) at a time multiple of the quantity MT e is carried out by taking:
- Δ/jeux successifs de coefficients du banc de filtres de synthèse déterminés pour Δ/ instants successifs dans une période MT e, et à partir d'un instant multiple de MTe, - et un jeu de coefficients du banc de filtres d'analyse déterminé pour ledit instant multiple de MTe, et en appliquant une convolution partielle entre lesdits jeux successifs de coefficients du banc de synthèse et les coefficients du banc d'analyse, avec Af = [(Nh+Nfl)/L]+l, où Nt, et Nf sont les longueurs respectives des filtres d'analyse et de synthèse.- Δ / successive sets of coefficients of the synthesis filter bank determined for Δ / successive instants in a period MT e , and from a multiple instant of MT e , - and a set of coefficients of the analysis filter bank determined for said multiple instant of MT e , and applying a partial convolution between said successive sets of coefficients of the synthesis bench and the coefficients of the analysis bench, with Af = [(N h + Nfl) / L] + 1, where Nt, and Nf are the respective lengths of the analysis and synthesis filters.
12. Procédé selon l'une des revendications 5, 7 et 9, caractérisé en ce que, le signal à traiter étant numérique et échantillonné à une période Te, la matrice globale de conversion est déterminée périodiquement pour des instants multiples d'une quantité KTe et s'exprime en fonction de matrices de type g(Z ,n) , calculées quant à elles pour des instants successifs multiples d'une quantité LT e.12. Method according to one of claims 5, 7 and 9, characterized in that, the signal to be processed being digital and sampled at a period T e , the global conversion matrix is determined periodically for multiple instants of a quantity. KT e and is expressed according to matrices of type g (Z, n), computed as for them for multiple successive instants of a quantity LT e .
13. Procédé selon la revendication 12, caractérisé en ce que le calcul des coefficients de chaque matrice de type g(Z ,n) à un instant multiple de la quantité LTe s'effectue en prenant :13. Method according to claim 12, characterized in that the computation of the coefficients of each matrix of type g (Z, n) at a multiple instant of the quantity LT e is carried out by taking:
- Δ/, jeux successifs de coefficients du banc de filtres d'analyse déterminés pour Δ/( instants successifs dans une période LTe, et à partir d'un instant multiple de LTe,- Δ / , successive sets of coefficients of the bank of analysis filters determined for Δ / ( successive instants in a period LT e , and from a multiple instant of LT e ,
- et un jeu de coefficients du banc de filtres de synthèse déterminé pour ledit instant multiple de L Te, et en appliquant une convolution partielle entre lesdits jeux successifs de coefficients du banc d'analyse et les coefficients du banc de synthèse, avec A/, = [(Nk +NfY)IM]+!, où Nh et Nf sont les longueurs respectives des filtres d'analyse et de synthèse.and a set of coefficients of the synthesis filter bank determined for said multiple instant of LT e , and applying a partial convolution between said successive sets of coefficients of the analysis bank and the synthesis bench coefficients, with A / , = [(N k + NfY) IM] + !, where N h and Nf are the respective lengths of the analysis and synthesis filters.
14. Procédé selon l'une des revendications précédentes, caractérisé en ce que l'on prévoit un nombre fini d'états possibles auxquels sont associés des jeux respectifs de coefficients des bancs de synthèse et/ou d'analyse, et en ce que lesdits sous-blocs sont pré-calculés à partir desdits jeux respectifs pour tous les états possibles, tandis que la matrice globale de conversion est déterminée pour au moins un état possible défini à partir de propriétés du signal à traiter.14. Method according to one of the preceding claims, characterized in that a finite number of possible states are provided which are associated respective sets of coefficients of the synthesis and / or analysis banks, and in that said sub-blocks are pre-calculated from said respective sets for all possible states, while the overall conversion matrix is determined for at least one possible state defined from properties of the signal to be processed.
15. Procédé selon la revendication 14, caractérisé en ce que chaque jeu est calculé en fonction d'une matrice de modulation et d'un vecteur h caractérisant un état possible et assurant une propriété de reconstruction parfaite ou quasi-parfaite.15. Method according to claim 14, characterized in that each set is calculated as a function of a modulation matrix and of a vector h characterizing a possible state and ensuring a perfect or quasi-perfect reconstruction property.
16. Procédé selon la revendication 15, dans lequel les bancs de synthèse et/ou d'analyse sont variants dans le temps par changements de résolution, caractérisé en ce que l'on dénombre quatre états possibles et en ce que lesdits vecteurs h définissent : - une fenêtre longue correspondant à un premier état possible, - une succession de fenêtres courtes correspondant à un second état possible,16. The method according to claim 15, wherein the synthesis and / or analysis banks are time-variant by resolution changes, characterized in that there are four possible states and in that said vectors h define: a long window corresponding to a first possible state, a succession of short windows corresponding to a second possible state,
- une fenêtre de transition de la fenêtre longue vers la succession de fenêtres courtes correspondant à un troisième état possible, eta transition window from the long window to the succession of short windows corresponding to a third possible state, and
- une fenêtre de transition de la succession de fenêtres courtes vers la fenêtre longue correspondant à un quatrième état possible.a transition window from the succession of short windows to the long window corresponding to a fourth possible state.
17. Procédé selon l'une des revendications 3 à 16, caractérisé en ce que l'on tient compte et on applique en conséquence un contrôle d'un retard algorithmique produit par un traitement des signaux en sous-bandes.17. Method according to one of claims 3 to 16, characterized in that one takes into account and applies accordingly a control of an algorithmic delay produced by a processing of the signals in sub-bands.
18. Procédé selon l'une des revendications précédentes, caractérisé en ce que la conversion globale met enjeu une transformée à recouvrement avec addition, en tenant compte d'une évolution temporelle dans les quantités qui sont additionnées.18. Method according to one of the preceding claims, characterized in that the global conversion involves an overlap transform with addition, taking into account a temporal evolution in the quantities that are added.
19. Dispositif pour traiter un signal par passage entre domaines différents de sous- bandes, caractérisé en ce qu'il comporte, pour la mise en œuvre du procédé selon l'une des revendications précédentes :19. Apparatus for processing a signal by passing between different subband domains, characterized in that it comprises, for the implementation of the method according to one of the preceding claims:
- une mémoire (DD) stockant les sous-blocs pré-calculés,a memory (DD) storing the pre-calculated sub-blocks,
- une horloge (HOR) pour déterminer des instants successifs, et - un module de filtrage matriciel (MFM) agencé pour récupérer de ladite mémoire les sous-blocs pré-calculés pour lesdits instants successifs pour la construction de la matrice globale de conversion.a clock (HOR) for determining successive instants, and a matrix filtering module (MFM) arranged to recover from said memory the pre-calculated sub-blocks for said successive instants for the construction of the global conversion matrix.
20. Dispositif selon la revendication 19, pour la mise en œuvre du procédé selon la revendication 14, caractérisé en ce qu'il comporte en outre une commande de bascule (SW) pour :20. Device according to claim 19, for carrying out the method according to claim 14, characterized in that it further comprises a rocker control (SW) for:
- définir, à partir du signal à traiter, l'un desdits états possibles et des jeux de coefficients associés, etdefining, from the signal to be processed, one of said possible states and sets of associated coefficients, and
- gérer l'accès à ladite mémoire en fonction de l'état défini. - Manage access to said memory according to the defined state.
21. Dispositif selon l'une des revendications 19 et 20, pour la mise en œuvre du procédé selon la revendication 3, caractérisé en ce qu'il comporte en outre :21. Device according to one of claims 19 and 20, for the implementation of the method according to claim 3, characterized in that it further comprises:
- un convertisseur série/parallèle (CSP) en amont du module de filtrage matriciel, eta serial / parallel converter (CSP) upstream of the matrix filtering module, and
- un convertisseur parallèle/série (CPS) en aval du module de filtrage matriciel.- a parallel / serial converter (CPS) downstream of the matrix filtering module.
22. Dispositif selon l'une des revendications 19 à 21, caractérisé en ce qu'il est intégré à un équipement tel qu'un serveur, une passerelle, ou encore un terminal, destinés à un réseau de communication.22. Device according to one of claims 19 to 21, characterized in that it is integrated in a device such as a server, a gateway, or a terminal for a communication network.
23. Programme informatique, destiné à être stocké dans une mémoire d'un dispositif selon l'une des revendications 19 à 22, caractérisé en ce qu'il comporte des instructions pour la mise en œuvre du procédé selon l'une des revendications 1 à 18. 23. Computer program intended to be stored in a memory of a device according to one of claims 19 to 22, characterized in that it comprises instructions for the implementation of the method according to one of claims 1 to 18.
EP07766042A 2006-05-19 2007-05-14 Conversion between subband field representations for time-dependent filter banks Withdrawn EP2022046A1 (en)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FR0604507A FR2901433A1 (en) 2006-05-19 2006-05-19 CONVERSION BETWEEN REPRESENTATIONS IN SUB-BAND DOMAINS FOR TIME-VARYING FILTER BENCHES
PCT/FR2007/051266 WO2007135319A1 (en) 2006-05-19 2007-05-14 Conversion between subband field representations for time-dependent filter banks

Publications (1)

Publication Number Publication Date
EP2022046A1 true EP2022046A1 (en) 2009-02-11

Family

ID=37607406

Family Applications (1)

Application Number Title Priority Date Filing Date
EP07766042A Withdrawn EP2022046A1 (en) 2006-05-19 2007-05-14 Conversion between subband field representations for time-dependent filter banks

Country Status (4)

Country Link
US (1) US20090307294A1 (en)
EP (1) EP2022046A1 (en)
FR (1) FR2901433A1 (en)
WO (1) WO2007135319A1 (en)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2875351A1 (en) * 2004-09-16 2006-03-17 France Telecom METHOD OF PROCESSING DATA BY PASSING BETWEEN DOMAINS DIFFERENT FROM SUB-BANDS
FR2918228A1 (en) * 2007-06-29 2009-01-02 France Telecom CONVERSION BETWEEN AREAS OF SUB-BANDS FOR MODULATED FILTER BENCHES.
EP2099027A1 (en) * 2008-03-05 2009-09-09 Deutsche Thomson OHG Method and apparatus for transforming between different filter bank domains
US9990935B2 (en) 2013-09-12 2018-06-05 Dolby Laboratories Licensing Corporation System aspects of an audio codec

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2782147B2 (en) * 1993-03-10 1998-07-30 日本電信電話株式会社 Waveform editing type speech synthesizer
SE519552C2 (en) * 1998-09-30 2003-03-11 Ericsson Telefon Ab L M Multichannel signal coding and decoding
US7072412B1 (en) * 1999-11-09 2006-07-04 Maurice Bellanger Multicarrier digital transmission system using an OQAM transmultiplexer
US6963842B2 (en) * 2001-09-05 2005-11-08 Creative Technology Ltd. Efficient system and method for converting between different transform-domain signal representations
KR100499047B1 (en) * 2002-11-25 2005-07-04 한국전자통신연구원 Apparatus and method for transcoding between CELP type codecs with a different bandwidths
CA2481629A1 (en) * 2004-09-15 2006-03-15 Dspfactory Ltd. Method and system for active noise cancellation
FR2875351A1 (en) * 2004-09-16 2006-03-17 France Telecom METHOD OF PROCESSING DATA BY PASSING BETWEEN DOMAINS DIFFERENT FROM SUB-BANDS

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
See references of WO2007135319A1 *

Also Published As

Publication number Publication date
WO2007135319A1 (en) 2007-11-29
FR2901433A1 (en) 2007-11-23
US20090307294A1 (en) 2009-12-10

Similar Documents

Publication Publication Date Title
EP1794748B1 (en) Data processing method by passage between different sub-band domains
EP2732448B1 (en) Adaptations of analysis or synthesis weighting windows for transform coding or decoding
EP2104936B1 (en) Low-delay transform coding using weighting windows
US9093065B2 (en) Method and device for transcoding audio signals exclduing transformation coefficients below −60 decibels
EP3330964B1 (en) Resampling of an audio signal for encoding/decoding with low delay
WO2015197989A1 (en) Resampling of an audio signal by interpolation for low-delay encoding/decoding
TW200926146A (en) Efficient design of MDCT/IMDCT filterbanks for speech and audio coding applications
WO2007135319A1 (en) Conversion between subband field representations for time-dependent filter banks
FR2867648A1 (en) TRANSCODING BETWEEN INDICES OF MULTI-IMPULSE DICTIONARIES USED IN COMPRESSION CODING OF DIGITAL SIGNALS
WO2013057453A2 (en) Improved hierarchical coding
WO2009081003A1 (en) Transform-based coding/decoding, with adaptive windows
EP2319039A1 (en) Method for updating an encoder by filter interpolation
WO2023165946A1 (en) Optimised encoding and decoding of an audio signal using a neural network-based autoencoder
EP2126904B1 (en) Audio encoding method and device
FR2911227A1 (en) Digital audio signal coding/decoding method for telecommunication application, involves applying short and window to code current frame, when event is detected at start of current frame and not detected in current frame, respectively
CN113222113B (en) Signal generation method and device based on deconvolution layer
WO2007091000A2 (en) Method for coding a source audio signal and corresponding computer program products, coding device, decoding method, signal and data medium
WO2009004263A1 (en) Conversion between sub-band domains for banks of module filters
FR2915306A1 (en) Digital audio signal processing e.g. analysis processing, method for e.g. voice enhancement, involves applying additional weights during transition between two sets of filtering windows to obtain perfect reconstruction
Huang et al. Efficient Partial Spectrum Reconstruction using an Asymmetric PQMF Algorithm for MPEG-Coded Stereo Audio
WO2015145050A1 (en) Estimation of encoding noise created by compressed micda encoding
FR2905539A1 (en) Multi-dimensional digital signal coding method for telecommunications network, involves estimating values of flow of samples associated to quantifier values, which have non-zero occurrence during iteration, using estimation technique

Legal Events

Date Code Title Description
PUAI Public reference made under article 153(3) epc to a published international application that has entered the european phase

Free format text: ORIGINAL CODE: 0009012

17P Request for examination filed

Effective date: 20081121

AK Designated contracting states

Kind code of ref document: A1

Designated state(s): AT BE BG CH CY CZ DE DK EE ES FI FR GB GR HU IE IS IT LI LT LU LV MC MT NL PL PT RO SE SI SK TR

AX Request for extension of the european patent

Extension state: AL BA HR MK RS

17Q First examination report despatched

Effective date: 20101215

GRAP Despatch of communication of intention to grant a patent

Free format text: ORIGINAL CODE: EPIDOSNIGR1

DAX Request for extension of the european patent (deleted)
STAA Information on the status of an ep patent application or granted ep patent

Free format text: STATUS: THE APPLICATION IS DEEMED TO BE WITHDRAWN

18D Application deemed to be withdrawn

Effective date: 20111018