FR2837332A1 - Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants - Google Patents

Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants Download PDF

Info

Publication number
FR2837332A1
FR2837332A1 FR0203196A FR0203196A FR2837332A1 FR 2837332 A1 FR2837332 A1 FR 2837332A1 FR 0203196 A FR0203196 A FR 0203196A FR 0203196 A FR0203196 A FR 0203196A FR 2837332 A1 FR2837332 A1 FR 2837332A1
Authority
FR
France
Prior art keywords
data
segments
fec
sets
sequences
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.)
Pending
Application number
FR0203196A
Other languages
English (en)
Inventor
Philippe Bordes
Edouard Francois
Philippe Guillotel
Thierry Kerber
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.)
Thomson Licensing SAS
Original Assignee
Thomson Licensing SAS
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 Thomson Licensing SAS filed Critical Thomson Licensing SAS
Priority to FR0203196A priority Critical patent/FR2837332A1/fr
Priority to US10/383,454 priority patent/US7155657B2/en
Priority to EP03290553A priority patent/EP1345334A1/fr
Priority to MXPA03002187A priority patent/MXPA03002187A/es
Priority to KR10-2003-0015396A priority patent/KR20030074386A/ko
Priority to JP2003072558A priority patent/JP2003318867A/ja
Priority to CNB031204449A priority patent/CN100338925C/zh
Publication of FR2837332A1 publication Critical patent/FR2837332A1/fr
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/07Responding to the occurrence of a fault, e.g. fault tolerance
    • G06F11/08Error detection or correction by redundancy in data representation, e.g. by using checking codes
    • G06F11/10Adding special bits or symbols to the coded information, e.g. parity check, casting out 9's or 11's
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0071Use of interleaving
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
    • H03M13/35Unequal or adaptive error protection, e.g. by providing a different level of protection according to significance of source information or by adapting the coding according to the change of transmission channel characteristics
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/007Unequal error protection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/0078Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
    • H04L1/0083Formatting with frames or packets; Protocol or part of protocol for error control

Abstract

La présente invention conceme un dispositif d'insertion (1) de codes de correction d'erreurs dans des flux de données (11) destinés à être diffusés par paquets dans un réseau (8), un dispositif de reconstitution (9) de flux de données (13), et des procédés et produits correspondants. Le dispositif d'insertion comprend une unité d'identification (3) d'indicateurs de re-synchronisation répartis dans les flux de données et une unité de détermination (4) de segments successifs dans ces flux, les segments formant des partitions des données comprises entre deux indicateurs de re-synchronisation consécutifs. Il comprend aussi une unité d'attribution (6) à chacun de ces segments, d'un ensemble de codes de correction d'erreurs, ces ensembles de codes ayant des tailles décroissantes entre deux quelconques des indicateurs de re-synchronisation consécutifs. De préférence, le dispositif comprend aussi une unité d'entrelacement (7) de données.

Description

rr r- ^m La presente invention se rapporte a des dispositifs et a des
procedes dtinsertion de codes de correction d'erreurs dans des flux de donnees et de reconstitution de flux de donnees, ainsi qu'a des produits correspondents. Les techniques de transmission en continu de fichiers multimedia, appelees aussi << streaming >>, autorisent des internautes a fire ces fichiers en temps reel pendant la transmission, sans avoir a attendre leurs telechargements complete. Pour ce faire, les donnees des fichiers vent 0 classiquement decoupees en petite elements de maniere a etre transportees d'un serveur vers un client dans des paquets de taille inferieure a une taille critique. Cette taille, notee habituellement MTU_size, represente la taille maximale que peut transporter le reseau. Wile est determinee a la fois par des considerations materielles ou hardware telles que la physique du reseau (mode de transfert asynchrone, note ATM pour << Asynchronous Transfer Mode >>; protocole Internet ou IP; communication sans fil...), et par
des considerations logicielles ou software (routeurs constituent le reseau).
En pratique, du fait de l'heterogeneite a la fois des routeurs (aux capacites differentes) et du trafic (protocole Internet de controle de transmission ou TCP pour a Transmission Control Protocol >>; protocole de datagramme utilisateur ou UDP pour << User Datagram Protocol >>... avec des debits fortement variables dans le temps), un reseau Internet est sujet a des congestions locales qui se traduisent notamment par des pertes de
paquets.
Au niveau du client, associe a un decodeur, la perte diun paquet se traduit par une discontinuite ou plusieurs discontinuites (en cas
d'utilisation d'une technique d'entrelacement) dans les donnees qu'il re, coit.
o Le decodeur doit alors se re-synchroniser sur des mots speciaux du train binaire (en anglais << bit stream >>), tels que des entetes dtimages ou des marqueurs de re-synchronisation s'ils vent presents, comme c'est le cas -2 dans de la video transmise selon la norme de compression MPEG4. L'ajout de ces derniers marqueurs augmente la robustesse aux erreurs (en anglais << errors resilience >>), mais ajoute du surdebit, appele egaiement << overhead >> (environ 25 octets). Ainsi, I'efficacite du codage est reduite, ce qui conduit a en restreindre ['usage.
Par la suite, on designee par << indicateurs de re-
synchronisation >> des indicateurs inseres dans le flux de donnees, et servant a effectuer une synchronisation, de preference lors du processus de decodage, qu'il s'agisse d'un changement de temps dans le flux (comme avec des entetes d'images) ou d'une synchronisation au sein d'une meme image (done au cours d'un meme instant temporel, comme avec des
marqueurs de re-synchronisation).
Le protocole TCP permet de remedier au probleme de perte de paquets, en retransmettant systematiquement les paquets perdus non acquittes en retour par le client. Mais ce protocole est peu approprie au streaming video, car il introduit des valeurs de delais de retransmission et de
gigue inacceptables. On lui prefere done le protocole UDP.
Pour proteger des flux UDP contre des pertes, une technique repandue consiste en l'utilisation de codes de correction d'erreurs sans vole de retour, ou FEC (pour << Forward Error Correction codes >>), avec entrelacement de donnees. De tels FEC peuvent notamment consister en des codes de parite ou des codes Reed-Solomon. Ils introduisent un niveau
predefini de redondance permettant de reconstituer des paquets perdus.
On distingue deux types de telles techniques de correction d'erreurs: les methodes a entrelacement avec protection uniforme ou techniques ELPentrelace (pour << Equal Lost Protection >>), protegeant uniformement chaque paquet de donnees, -3 - et les methodes a entrelacement avec protection variable ou techniques ULP-entrelace (pour << Unequal Lost Protection >>), protegeant davantage certaines parties du train binaire que d'autres, selon le type de
donnees des paquets.
Cependant, les reconstitutions d'une partie des paquets perdus s'averent conduire a une taille de donnees exploitable moindre que celle quton pourrait esperer. En effet, lorsqu'on retablit des paquets sans pouvoir les synchroniser de maniere appropriee, ces paquets vent generalement
inutilisables. Pour reduire les risques de pertes des indicateurs de re-
synchronisation (tels qu'entetes d'images ou marqueurs de re-
synchronisation), on peut appliquer la methode ULP-entrelace en accordant un niveau de protection superieur a ces indicateurs. L'efficacite des reconstitutions reste neanmoins restreinte, car toute interruption dans la chane des paquets synchronises porte atteinte aux paquets suivants,
jusquiou prochain indicateur de re-synchronisation.
La presente invention concerne un dispositif d'insertion de codes de correction d'erreurs dans des flux de donnees, permettant d'augmenter I'efficacite des reconstitutions, c'est-a-d ire la taille moyenne de don nees exploitables par un recepteur, par rapport a des methodes ELPentrelace et
ULP-entrelace connues.
Le dispositif de ['invention peut procurer une amelioration sensible des resultats, tout en etant capable d'offrir des parametres de controle precis permettant d'adapter la technique mise en ceuvre selon l'environnement. II peut reposer sur une architecture autorisant la mise en oeuvre de techniques classiques de streaming pour flux de type UDP, sans requerir un
developpement et une mise en ceuvre complexes.
L'invention concerne egalement un procede d'insertion ayant les avantages mentionnes ci-dessus, et un dispositif et un procede de -4 reconstitution de flux de donnees correspondents. Wile stapplique de plus a
un signal numerique et un programme d'ordinateur.
A cet effet, I'invention a pour objet un dispositif d'insertion de codes de correction d'erreurs dans au moins un flux de donnees destine a etre diffuse par paquets dans un reseau. Chacun de ces flux inclut des indicateurs de re-synchronisation repartis dans le flux, et les donnees comprises entre deux quelconques des indicateurs de re-synchronisation consecutifs constituent un bloc de donnees. Le dispositif dtinsertion de codes comprend: - une unite de determination de segments de donnees successifs dans les flux, - et une unite d'attribution a chacun de ces segments, d'un ensemble de codes de correction d'erreurs, preferentiellement du type codes FEC, ces ensembles de codes ayant des tailles variables selon les segments. Selon ['invention, le d ispositif d' insertion comprend egalement u ne unite d'identification des indicateurs de re-synchronisation, I'unite de determination de segments est prevue pour determiner les segments en effectuant des partitions des blocs de donnees et ['unite d'attribution est prevue pour affecter des tailles decroissantes aux ensembles de codes entre
deux quelconques des indicateurs de re-synchronisation consecutifs.
En mentionnant que les tailles des ensembles de codes vent << decroissantes >> entre deux quelconques des indicateurs de re synchronisation consecutifs du flux considere, appeles ci-apres respectivement indicateurs de re-synchronisation amont et aval, on entend que: - la taille de 1'ensemble de codes associe au segment immediatement en aval de l'indicateur de re-synchronisation amont est -5 strictement superieure a la taille de ['ensemble de codes associe au segment immediatement en amont de l'indicateur de re-synchronisation aval, - et les tailles des ensembles de codes respectivement associes aux segments consecutifs du bloc de donnees compris entre les indicateurs de resynchronisation amont et aval vent non croissantes, done vent soit
constantes, soit strictement decroissantes.
Ainsi, selon ['invention, on applique un niveau de protection variable aux donnees selon leur emplacement dans le flux: dans chaque bloc de donnees compris entre deux indicateurs de re-synchronisation amont et aval consecutifs, plus les paquets vent proches de l'indicateur de resynchronisation amont, mieux ils vent proteges ( mieux>> pouvant signifier un niveau de protection stationnaire sur certaines parties). Cette realisation contraste de maniere inattendue avec les methodes connues du type ULP-entrelace, dans lesquelles la protection variable depend du type de donnees. Le dispositif de ['invention permet de tenir compte des consequences plus ou moins dommageables de la perte de paquets, selon leurs positions par rapport aux indicateurs de re-synchronisation. Ceci est illustre sur les figures 1A et 1B, qui representent de maniere schematique un bloc B de donnees comprises entre deux marqueurs de resynchronisation respectivement amont RM, et aval RMj+' dans un flux 12 de donnees. Les dimensions des differentes entites representees sur ces figures vent purement illustratives. A titre d'exemple, le bloc B est partage en quatre segments de donnees consecutifs SM1,SM2,SM3 et SM4. Les autres blocs
du flux 12 vent presumes construits de maniere similaire.
La perte du dernier segment SM4 du bloc B (Figure 1A), creant une discontinuite DIS-A, ne porte pas prejudice aux autres segments SM1, SM2 et SM3. Ainsi, les donnees exploitables ont une longueur LA couvrant la majorite du bloc B. En revanche, la perte du deuxieme segment SM2 -6 (Figure 1 B), creant une discontinuite DIS-B, rend inutilisables aussi les segments suivants SM3 et SM4 du bloc B. puisque a la reception, il n'est pas possible de synchroniser correctement leur contenu. Les donnees exploitables du bloc B vent alors reduites a la longueur LB du seul segment SM1, unique segment pouvant etre correctement decode. La protection decroissante en fonction de lteloignement de l'indicateur de re-synchronisation amont (en ['occurrence le marqueur RM')
appara^'t ainsi particulierement judicieuse.
En plus de son caractere inattendu, le dispositif de ['invention va totalement a l'encontre d'une approche classique de la question. En effet, comme indique plus haut, les techniques usuelles de protection des donnees reposent sur un entrelacement des paquets de donnees (methodes ELP entrelace ou ULP-entrelace), qui permet de reduire considerablement les risques de pertes conjointes d'informations utiles et d'informations de redondance. Or, la simple application de l'entrelacement ULP classique a des tailles de codes FEC variables en fonction des positions des paquets, non seulement ne conduit pas a une amelioration de la situation, mais la
degrade.
A titre d'illustration, on peut reprendre l'exemple precedent (en reference aux figures 1A et 1B) et considerer ['application de la methode ELP-entrelace (Figure 2A). Les quatre segments SM1...SM4 ayant une meme ta il le et eta nt associes respectivement a des e n se m bles de codes FEC notes FEC1...FEC4, egalement de taille constante, on definit des sequences Sj formees chacune respectivement de donnees associees aux segments SMj (notees aussi SMj pour simplifier) et de ['ensemble de codes FECj associe, avec j = 1, 2, 3 ou 4. Ces sequences Sj forment un groupe G0, utilise pour l'entrelacement. Pour constituer les paquets P0, de tailles identiques, on juxtapose des portions de tailles constantes respectivement
des sequences S1 a S4.
-7 Dans une version ULP-entrelace mettant en ocuvre des niveaux variables de protection selon les parties du bloc B (Figure 2B), on transpose les methodes connues dans ce domaine en definissant des sequences S'1...S'4 de taille constante pour constituer un groupe G'0. Chacune d'entre elles S'j est formee de donnees associees a un segment SM'j (notees aussi SM'j pour simplifier) et d'un ensemble de codes FEC note FEC'j, les ensembles FEC'j ayant une taille decroissante en fonction de l'eloignement des segments SM'j associes au marqueur amont RMi. Ainsi, le premier 0 ensemble FEC'1 a la taille maximale, le quatrieme FEC'4 a la taille minimale, et les deuxieme et troisieme ensembles FEC'2 et FEC'3 ont une taille intermediaire. Les donnees associees aux segments SM'j ont par
consequent une evolution contraire.
De plus, etant donne que le bloc B est predefini, ces segments SM'j en constituent une nouvelle partition, et leur taille cumulee est done la meme que celle des segments SMj de la methode ELP-entrelace. Qui plus est. afin de pouvoir comparer correctement les techniques ELP et ULP, on dispose du meme volume total de codes FEC pour le bloc B dans les deux cast En pratique, on se contente de transferer une portion de protection prevue pour le quatrieme segment vers le premier segment. Comme pour la methode ELP-entrelace, on construit alors des paquets P'0 en juxtaposant d es portions de tai l le constante respective ment des quatre sequ ences
S'1...S'4.
On peut verifier que ltefficacite de la methode ULP-entrelace ainsi obtenue, en appliquant des regles usuelles au nouveau concept de
['invention, conduit a une perte d'efficacite par rapport a la methode ELP-
entrelace. En effet, en notant p2 et p3 respectivement les probabilites de perte de deux et de trots paquets dans le bloc B (p3 < p2), et LSMj et LSM'j respectivement les tailles des segments SMj et SM'j: -8 - le gain statistique de la methode ELP-entrelace par rapport a ULP-entrelace est donne par le produit p3 x LSM'1, car en cas de perte de trots paquets, au lieu de perdre tous les segments du bloc B. on preserve le premier de taille LSM'1; - mais la pe rte statistique est don nee par l e prod u it p2 x LS M4, car en cas de perte de deux paquets, au lieu de conserver tous les segments du bloc B. on perd le quatrieme, de taille LSM4; - de telle sorte que le bilan vaut: (p3 x LSM'1 - p2 x LSM4), qui
est negatif.
Le constat de cet exemple est generalisable, car la meilleure protection des segments amont, de taille reduite, est contrebalancee par la moins bonne protection des segments aval, de taille accrue, et les pertes de paquets causent un prejudice en aval qui ntest pas compense par la
securisation en amont.
Le dispositif de ['invention est done non seulement inattendu, mais egalement surprenant, car il va a l'encontre de ce qui semblerait redhibitoire pour des personnel explorant cette vole selon des procedes connus. Les
modes de realisation mentionnes plus teas et la description detaillee
permettront au lecteur de constater que le dispositif de ['invention peut permettre malgre tout d'obtenir des gains substantiels par rapport a la
methode ELP-entrelace.
De preference, les indicateurs de re-synchronisation comprennent
des marqueurs de re-synchronisation eVou des entetes d'images.
Dans une forme preferee de realisation, le d ispositif d' insertion comprend egalement une unite d'entrelacement de donnees, apte a o determiner des groupes de sequences de donnees et a former les paquets
en juxtaposant des portions de ces sequences.
_9_ Le dispositif de ['invention est en effet particulierement adapte a l'entrelacement de donnees, qui peut permettre comme dans les formes plus traditionnelles de reduire considerablement les risques de pertes conjointes a la fois d'informations utiles et d'informations redondantes associees (done les risques de pertes irremediables), bien que les resultats exposes plus
haut puissent laisser croire le contraire.
L'entrelacement de don n ees n 'est cependa nt pas necessa ire et dans une variante de realisation, on forme les paquets de maniere sequentielle a partir des donnees, en stassurant que la taille de cheque segment et de cheque ensemble de codes de correction d'erreurs est superieure a la taille des paquets. Cette variante, plus simple a mettre en ceuvre, conduit a des performances moindres que celles pouvant etre
obtenues avec entrelacement.
Dans les realisations avec entrelacement, I'unite d'entrelacement de donnees est preferentiellement telle que chacune des sequences est constituee d'un des segments et de ['ensemble de codes de correction d'erreurs associe a ce segment. On ameliore ainsi les possibilites de
controle de la formation des paquets et on facilite leur mise en ceuvre.
On distingue deux formes de realisation particulierement interessantes avec cette definition des sequences. Selon la premiere forme d'entrelacement, I'unite d'entrelacement de donnees est capable d'etre telle que: - pour chacun des groupes de sequences, les sequences, les segments, les ensembles de codes, les paquets et les portions de sequences ont respectivement des tailles constantes, - et chacun des paquets associes a ce groupe de sequences est forme en juxtaposant des portions respectivement de toutes les sequences
de ce groupe.
-10 Cette realisation, representant un type inhabituel d'entrelacement, permet de surmonter les difficultes mentionnees plus haut et de cumuler les avantages de l'entrelacement et des niveaux de protection variables selon
les positions des paquets par rapport aux indicateurs de resynchronisation.
On observe de fait qu'une amelioration significative d'efficacite peut etre obtenue par rapport a une technique ELP-entrelace. Le succes de cette solution stexplique de la maniere suivante: dans chaque groupe de sequences utilise pour des entrelacements, les codes FEC ont une taille constante. Ainsi, la perte de paquets a des consequences uniformes sur I'ensemble des sequences de ce groupe, et on evite de la sorte d'affaiblir de fa,con prejudiciable la protection de certaines des sequences. Qui plus est. le niveau de protection variable selon la position par rapport aux indicateurs de re-synchronisation, reporte aux groupes de sequences, reduit les risques de rendre des donnees inexploitables par defaut de synchronisation. Pour simplifier, on designee cette realisation comme mettant en oeuvre une
<< protection groupee >.
Avantageu seme nt, I' u n ite d 'e ntrelace ment de don n ees est alors telle que pour chacun des blocs de donnees, les segments inclus dans tous zo les groupes de sequences comprenant au moins une des sequences
associees a ce bloc ont une taille constante.
On parvient de cette maniere a une meilleure ma^'trise des niveaux de protection dans chaque bloc, puisque les tailles des ensembles de codes de correction d'erreurs dans chacun des groupes de sequences associes a ce bloc representent exactement la proportion de codes de
correction d'erreurs.
Selon la deuxieme forme d'entrelacement dans laquelle chaque sequence est constituee d'un segment et de ltensemble de codes associe, I'unite d'entrelacement de donnees est capable d'etre telle que: -11 - les segments, les paquets et les portions ont respectivement des tailles constantes et les ensembles de codes de correction d'erreurs et les sequences ont des tailles variables, - le groupe de sequences est constitue d'au moins deux sous groupes de sequences associes a respectivement au moins deux blocs de donnees successifs, - et chacun des paquets associes a ce groupe de sequences est forme en juxtaposant des portions respectivement de sequences distinctes
de ce groupe.
Cette realisation constitue egalement une forme inhabituelle d'entrelacement, avec des tailles variables des sequences et la prise en compte conjointe de plusieurs blocs dans chaque groupe de sequences. Son succes s'explique par la constance des tailles de segments de donnees, en depit des tailles variables des ensembles de codes au sein du groupe, et par
les potentialites de report des constitutions de fins de paquets d'un sous-
groupe au suivant. Pour simplifier, on designee cette realisation comme mettant en couvre un K enchanement temporel >. Le dispositif d'insertion
dispose de preference des deux formes d'entrelacement ci-dessus.
Par ailleurs, I'unite d'entrelacement de donnees est avantageusement capable d'etre telle qu'au moins un des groupes de sequences contient des sequences associees a plusieurs des blocs de donnees successifs et que chacun des paquets est forme en juxtaposant des portions de sequences associees a tous ces blocs. Ce mode d'entrelacement peut etre combine avec la premiere ou la deuxieme formes mentionnees plus haut. Pour simplifier, on designee cette realisation
comme mettant en aeuvre un << entrelacement temporel >.
11 est particulierement interessant que le dispositif d'insertion ait la capacite d'exercer plusieurs des modes d'entrelacement exposes plus haut, car il devient alors possible d'adapter la strategic de d'entrelacement en -12 fonction des flux consideres et des specificites du reseau. Ainsi, dans une mise en ceuvre preferee, on effectue une partition des tailles de blocs en trots intervalles definissant respectivement des blocs de K petite >>, << moyenne >> et grande >> tailles. Les limites de ces intervalles vent choisies notamment en fonction de la taille des paquets (dependent des specificites du reseau), du nombre de segments de chaque bloc (dependent en particulier des capacites de traitement pour le codage et le decodage) et des niveaux de protection mis en ceuvre. On associe ensuite a chacun des intervalles les methodes d'entrelacement suivantes: grande taille de blocs: premiere forme d'entrelacement (protection groupee) sans entrelacement temporel; - moyenne taille de blocs: deuxieme forme d'entrelacement (enchanement temporel) sans entrelacement temporel; - et petite taille de blocs: premiere forme d'entrelacement
(protection groupee) avec entrelacement temporel.
Cette mise en oeuvre procure une simplicite de chargement (<< payload >>) pour les grandes tailles, evite l'entrelacement temporel pour les
tailles moyennes et evite des entetes trop complexes pour les petites tailles.
Dans des variantes de mise en ceuvre, on definit seulement deux intervalles de tailles de blocs au lieu de trots, en les associant respectivement a deux des techniques mentionnees. Avantageusement, I'unite d'entrelacement comprend des moyens de selection automatique des methodes d'entrelacement en fonction de la taille des blocs (c'est-a-dire en fonction de
la periodicite des indicateurs de re-synchronisation).
De preference, cheque sequence etant constituee d'un segment et de ['ensemble de codes de correction d'erreurs associe, le dispositif d'insertion comprend aussi une unite de calcul de tailles, prevue pour calculer les tailles des ensembles de codes de correction d'erreurs relativement aux tailles des segments correspondents, en fonction d'une estimation d'un modele de perte actualise du reseau, avantageusement au 13 moyen de donnees contenues dans des rapports selon le protocole RTCP
(pour << Real-Time Control Protocol >>).
Ainsi, on peut exploiter de maniere particulierement efficace les parametres de tailles des ensembles de codes, en adaptant notamment le
schema de decroissance du niveau de protection entre les indicateurs de re-
synchronisation consecutifs.
Avantageusement: - le dispositif d'insertion comprend aussi une unite de reconnaissance de types de donnees, - I'unite de determination de segments est apte a etablir les segments selon ces types de donnees, - et ['unite d'attribution de codes est prevue pour ponderer les tailles des ensembles de codes de correction d'erreurs en fonction des types
de donnees des segments correspondent a ces ensembles.
On ameliore ainsi l'efficacite de la methode en la combinant a des techniques ULP-entrelace traditionnelles. En pratique, cette realisation revient a appliquer separement sur chacun des types de donnees, la methode de protection variable en fonction de la position. Ces types de donnees vent alors choisis de preference parmi les elements suivants de donnees video numeriques compressees: - des images de types 1, P ou B; - des entites de partition de types entetes, vecteurs mouvements ou texture; eVou des couches de types couche de base ou couches
optionnelles d'amelioration.
L'invention est egalement relative a un procede d'insertion de codes de correction d'erreurs dans au moins un flux de donnees destine a etre diffuse par paquets dans un reseau. Chacun des flux de donnees inclut -14 des indicateurs de re-synchronisation de reference repartis dans ce flux, et les donnees comprises entre deux quelconques des indicateurs de re synchronisation consecutifs constituent un bloc de donnees. Le procede d'insertion comprend les etapes suivantes: - determination de segments de donnees successifs dans les flux, - et attribution a chacun de ces segments, d'un ensemble de codes de correction d'erreurs, ces ensembles de codes ayant des tailles
variables selon les segments.
Selon ['invention, le procede d'insertion comprend egalement une etape d'identification des indicateurs de re-synchronisation, on determine les segments de donnees en effectuant des partitions des blocs de donnees et on affecte des tailles decroissantes aux ensembles de codes entre deux
quelconques des indicateurs de re-synchronisation consecutifs.
Ce procede est preferentiellement mis en ceuvre au moyen d'un
dispositif d'insertion conforme a l'un quelconque des modes de realisation de
['invention. L'invention s'applique de plus a un signal numerique relatif a au moins un flux de donnees. Chacun de ces flux de donnees inclut des indicateurs de re-synchronisation de reference repartis dans ce flux, les donnees comprises entre deux quelconques des indicateurs de re synchronisation consecutifs constituent un bloc de donnees. Le signal numerique comprend des informations representatives de segments de donnees successifs dans les flux et d'ensembles de codes de correction d'erreurs respectivement attribues aux segments, ces ensembles de codes
ayant des tailles variables selon les segments.
Selon ['invention, les segments de donnees forment des partitions des blocs de donnees et les ensembles de codes ont des tailles -15 decroissantes entre deux quelconques des indicateurs de resynchronisation consecutifs. Ce signal numerique est preferentiellement obtenu au moyen d'un
dispositif d'insertion conforme a l'un quelconque des modes de realisation de
['invention. L'invention porte egalement sur un dispositif de reconstitution de flux de donnees a partir de signaux numeriques re,cus par paquets en provenance d'un reseau, ces signaux numeriques comprenant des informations representatives de segments de donnees successifs dans les flux et d'ensembles de codes de correction d'erreurs respectivement attribues a ces segments. Le dispositif de reconstitution comprend: - une unite de reconstitution des segments de donnees de paquets manquants a partir des informations representatives de segments de donnees et d'ensembles de codes de correction d'erreurs des paquets re,cus, cette unite de reconstitution etant apte a operer sur des ensembles de codes de correction d'erreurs de tailles variables selon les segments, - une unite d'ordonnancement des segments de donnees re,cus et reconstitues, - et une unite de synchronisation des segments de donnees au moyen d'indicateurs de re-synchronisation de reference contenus dans les paquets. Selon ['invention, I'unite de reconstitution est prevue pour operer sur des ensembles de codes de correction d'erreurs de taille decroissante
entre deux quelconques des indicateurs de re-synchronisation consecutifs.
Ce dispositif de reconstitution est de preference prevu pour traiter
des signaux conformes au signal de ['invention.
-16 L'invention concerne aussi un procede de reconstitution de flux de donnees a partir de signaux numeriques rec us par paquets en provenance d'un reseau, ces signaux numeriques comprenant des informations representatives de segments de donnees successifs dans les flux et d'ensembles de codes de correction d'erreurs respectivement attribues aux segments et ces ensembles de codes ayant des tailles variables selon les segments. Le procede de reconstitution comprend les etapes suivantes: reconstitution des segments de donnees de paquets manquants a partir des informations representatives de segments de donnees et d'ensembles de codes de correction d'erreurs des paquets re,cus, - ordonnancement des segments de donnees recus et reconstitues, - et synchronisation des segments de donnees au moyen d'indicateurs de re-synchronisation de reference contenus dans les
paquets.
Selon ['invention, on reconstitue les flux de donnees a partir d'ensembles de codes de correction d'erreurs de taille decroissante entre
deux quelconques des indicateurs de re-synchronisation consecutifs.
Ce procede de reconstitution est de preference mis en ceuvre au
moyen d'un dispositif de reconstitution conforme a ['invention.
L' invention a egalement pou r objet un produ it programme d'ordinateur comprenant des instructions de code de programme pour ['execution des etapes du procede d'insertion de codes de correction d'erreurs ou du procede de reconstitution de flux de donnees selon
['invention, lorsque ce programme est execute sur un ordinateur.
-17 Par < produit programme d'ordinateur >>, on entend tout support de ce programme, qu'il soit de type materiel (disque, disquette, cassette...)
ou sous forme de signal (signal electronique, electromagnetique, optique.. .).
L' invention sera mieux com prise et ill u stree au moyen des exemples suivants de realisation et de mise en ceuvre, nullement limitatifs, en reference aux figures annexses sur lesquelles: - la Figure 1A est un schema de principe representant un bloc de donnees entre deux indicateurs de re-synchronisation consecutifs, et l'effet de la perte d'un segment aval de ce bloc sur les donnees effectivement
exploitables;
- la Figure 1B montre l'effet de la perte d'un segment amont du bloc de la Figure 1A sur les donnees effectivement exploitables; - la Figure 2A illustre ['application de la methode ELP-entrelace a un flux incluant le bloc des Figures 1A et 1 B (partition en quatre segments); - la Figure 2B illustre ['application d'une methode d'entrelacement avec codes FEC de tailles variables selon les positions des donnees par rapport a des indicateurs de re-synchronisation, a un flux comprenant le bloc des Figures 1A et 1B (partition en quatre segments); - la Figure 3 est un schema bloc representant un dispositif d'insertion de codes de correction d'erreurs et un dispositif de reconstitution de flux conformes a ['invention, communiquant a travers un reseau; - la Figure 4 represente quatre groupes de sequences utilises z5 par le dispositif d'insertion de la Figure 3 pour ['application d'une premiere technique d'entrelacement avec codes FEC de tailles variables selon les positions des donnees par rapport a des indicateurs de re-synchronisation (technique du type protection groupee); - la Figure 5 donne les efficacites comparees de la protection FEC (taille moyenne de donnees exploitables par un recepteur rapportee a la taille complete) en fonction du taux d'erreurs, respectivement obtenues -18 par une methode ELP-entreiace classique et par la technique de la Figure 4, avec un modele de perte Gaussien; - la Figure 6 donne les efficacites comparees de la protection FEC (taille moyenne de donnees exploitables par un recepteur rapportee a la taille complete) en fonction du taux d'erreurs, respectivement obtenues par une methode ELP-entrelace classique et par la technique de la Figure 4, avec un modele de perte de Markov a deux etats (q = 0,6); - la Figure 7 represente quatre groupes de sequences utilises par le dispositif d'insertion de la Figure 3 pour ['application d'une deuxieme technique d'entrelacement avec codes FEC de tailles variables selon les positions des donnees par rapport a des indicateurs de re-synchronisation (technique du type protection groupee a entrelacement temporal); - la Figure 8 montre un groupe de donnees de differents types avec codes FEC associes, utilise par le dispositif d'insertion de la Figure 3 1s en combinaison avec l'une des techniques d'entrelacement illustrees aux Figures 4 ou 7; - et la Figure 9 represente un groupe de sequences compose de deux sous-groupes, utilise par le dispositif d'insertion de la Figure 3 pour ['application d'une troisieme technique d'entrelacement avec codes FEC de tailles variables selon les positions des donnees par rapport a des indicateurs de re-synchronisation (technique du type a enchanement temporal). Sur la Figure 3, les entites representees sous forme de blocs vent 2s purement fonctionnelles, et ne correspondent done pas necessairement a
des entites physiques.
Un dispositif d'insertion 1 de codes FEC d'un emetteur est prevu pour recevoir un flux 11 de donnees - ou plusieurs flux multiplexes - et pour produire a partir de ce flux 11, un flux 12 comprenant des codes FEC de 19 protection des donnees, emis sous forme de paquets P dans un reseau 8 de
communication, tel que par exemple Internet.
Un dispositif de reconstitution 9 de flux d'un recepteur 15, associe au dispositif d'insertion 1, est prevu pour recevoir le flux 12 et pour produire un flux 13 de donnees, dans lequel les donnees manquantes vent si possible reconstituees au moyen des codes FEC par une unite de reconstitution 16 de segments, et les informations vent ordonnees et synchronisees, respectivement par une unite d'ordonnancement 17 de segments et une
o unite de synchronisation 18.
Le dispositif d'insertion 1 comprend: - une unite de reconnaissance 2 des types de donnees du flux 1 1 re,cu; ces types de donnees consistent par exemple en les types d'images en video (image 1, P ou B), les types de donnees de partition (entetes, vecteurs mouvement ou texture) eVou les types d'extension de codage (couche de base ou couches d'amelioration optionnelles); - une unite d'identification 3 d'indicateurs de resynchronisation, entetes dtimages ou marqueurs de re-synchronisation, repartis dans le flux 1 2 entrant; les donnees comprises entre deux indicateurs de re synchronisation consecutifs forment un bloc; - une unite de determination 4 de segments, prevue pour definir des segments SM consecutifs dans le flux 12 en effectuant des partitions des blocs B de donnees; - une unite de calcul 5 de tailles d'ensembles de codes FEC (notes << FEC >> de maniere generique) a affecter respectivement aux segments SM; ces tailles vent calculees en fonction de ['estimation d'un modele de perte du reseau 8, par exemple au moyen de donnees contenues dans les rapports RTCP; -20 - une unite d'attribution 6 respective des ensembles de codes FEC aux segments SM, en fonction des resultats produits par ['unite de calcul 5;
- et une unite d'entrelacement 7 des donnees.
Les unites 16, 17 et 18 du dispositif de reconstitution 9 vent adaptees aux modes operationnels du dispositif d'insertion 1. Ce dernier introduit par exemple des indicateurs de traitements en tete de flux 12, indiquant la technique d'entrelacement utilisee, ainsi que les tailles des paquets P. des segments SM et des ensembles de codes FEC associes a
ces segments SM.
De maniere generique pour ['expose qui suit, on definit des sequences S respectivement comme les unions des segments SM et des 1s ensembles FEC associes, et des groupes G de sequences utilises isolement
pour former des paquets P par entrelacement de donnees.
L'unite d'entrelacement 7 de donnees est apte a mettre en ceuvre plusieurs modes d'entrelacement. Selon l'un d'entre eux (protection groupee, Figure 4), elle definit pour cheque bloc B (cf. Figures 1A et 1B) plusieurs groupes G1-G4 de sequences de donnees (notes G de maniere generique pour ['ensemble des realisations). Ces groupes G1-G4 vent constitues respectivement de groupes GSM1-GSM4 de segments et de groupes GFEC1-GFEC4 d'ensembles de codes FEC associes. Chacun d'entre eux 2 contient une succession de segments du bloc B considere, de taille uniforme pour tous les groupes G1-G4, et la totalite des segments forme une partition de ce bloc B. Les groupes Gi vent ainsi ordonnes en fonction des
positionnements successifs des segments entre les indicateurs de re-
synchronisation RMj et RM'+ en amont et en aval du bloc B. De plus, a chaque groupe Gi est associee une taille unique fi des ensembles de codes FEC (avec i = 1, 2...4 dans l'exemple), et les groupes -21 G1-G4 ont des tailles f1-f4 de ces ensembles de codes qui decroissent avec l'ordre de ces groupes (decroissance pouvant signifier stationnarite sur certaines parties). Ces tailles fi donnent les proportions de codes FEC en fonction des positions des segments dans le bloc B. En fonctionnement, I'unite d'entrelacement 7 forme pour chaque groupe Gi respectivement des paquets Pi, en prelevant pour chacun de ces paquets Pi une portion de chacune des sequences du groupe Gi. Les paquets Pi vent ainsi constitues transversalement par rapport aux sequences
des groupes Gi.
L'efficacite de cette methode pour des paquets de taille suffisamment grande a ete mise en evidence dans un exemple simple, dans lequel cheque bloc est segmente en quatre segments de cinq paquets chacun (20 paquets de donnees). Le taux global de protection FEC vaut
%, soit 8 paquets FEC pour les 20 paquets de donnees de chaque bloc.
Avec la methode ELP-entrelace classique, on associe a chacun des quatre segments, deux paquets FEC. De plus, on applique la methode de protection groupee ci-dessus, en adaptant au taux d'erreur la distribution des tailles f1-f4 de codes FEC (c'est-a-dire le nombre de paquets FEC)
respectivement associees a chacun des segments.
La distribution des paquets FEC et l'efficacite obtenue, mesuree comme la taille moyenne de donnees exploitables par le recepteur 15 rapportee a la taille maximale, vent exposees en fonction du taux de perte (en pourcentage) dans les tableaux 1 et 2, respectivement relatifs a un
modele de perte Gaussien et a un modele de perte de Markov a deux etats.
De plus, on a represente (Figures 5 et 6) les courbes donnant o l'efficacite FEC (axe 22) en fonction du taux de perte (axe 21), pour ces deux modeles (representations 30 et 35). On observe que respectivement pour le modele de perte Gaussien et le modele de perte de Markov, les courbes 32 -22 et 37 obtenues par la methode de protection groupee vent systematiquement au-dessus des courbes 31 et 36 obtenues par la methode ELP-entrelace, de faction sensible pour certains taux de pertest Tableau 1 - Efficacite et distribution FEC pour modele Gaussien | Taux de perte ELP Protection Distribution de | (%) (2,2,2,2) groupee codes FEC
2 0,99955 0,99955 (2,2,2,2)
0,9904 0,9904 (2,2,2,2)
8 0,963025 0,963025 (2,2,2,2)
0,9367 0,9367 (2,2,2,2)
13 0,87825 0,88655 (3,2,2,1)
0,82765 0,847425 (3,2,2,1)
17 0,771625 0,7989 (3,2,2,1)
0,677925 0,722225 (3,2,2,1)
22 0,61685 0,6693 (3,2,2,1)
0,5265 0,598775 (3,3,2,0)
0,382475 0,498675 (4,3,1,0)
0,264225 0,406625 (5,3,0,0)
0,17725 0,34335 (5.3,0,0)
0,1158 0,2797 (6,2,0,0)
0,072325 0,224675 (7,1,0,0)
0,045075 0,1982 (8,0,0,0)
0,0276 0,16475 (8,0,0,0)
0,007125 0,086575 (8,0,0,0)
0,000075 0,00155 (8,0,0,0)
-23 Tableau 2 - Efficacite et distribution FEC pour modele de Markov | Taux de ELP Protection groupee Distribution (P,q), pe rte (%) (2,2,2,2) FEC
2,5 0,95085 0,957475 (3,3,2,0) (0,01; 0,6)
4,8 0,905275 0,916625 (4,2,2,0) (0,02; 0,6)
9,3 0,81125 0,83785 (4,2,2,0) (0,04; 0,6)
17 0,64825 0,694725 (5,2,1,0) (0,08; 0,6)
,2 0,578075 0,6314 (5,2,1,0) (0,1; 0,6)
27,3 0,430425 0,50245 (4,3,1,0) (0,15; 0,6)
33,4 0,3182 0,413475 (5,2,1,0) (0,2; 0,6)
38,3 0,238125 0,3472 (5,3,0,0) (0,25; 0,6)
46,8 0,1291 0,25725 (6,2,0,0) (0,35; 0,6)
53 0,070725 0,20515 (8,0,0,0) (0,45; 0,6)
62 0,01845 0,151475 (8,0,0,0) (0,85; 0,6)
,3 0,000275 0,072975 (8,0,0,0) (0,95; 0,6)
Dans un autre mode d'entrelacement (protection groupee avec entrelacement temporel, Figure 7), I'unite d'entrelacement 7 construit cheque groupe G de sequences, tel que G10, G20, G30 et G40, a partir de plusieurs segments SM de blocs consecutifs disposes en des emplacements similaires dans chacun de ces blocs. Par exemple, le premier groupe G10 contient les premiers segments (groupes de segments SM1-1, SM1-2, SM1 3 et SM1-4) respectivement de quatre blocs consecutifs, ainsi que les ensembles de codes FEC associes (groupe FEC10). De fa,con similaire, les blocs G20, G30 et G40 contiennent chacun respectivement quatre groupes de segments SM2j, SM3j et SM4j (avec j = 1...4) en des emplacements similaires de ces quatre blocs, ainsi que les groupes d'ensembles FEC20,
FEC30 et FEC40 de codes FEC associes.
Dans chacun des groupes G. les ensembles FEC ont une taille constante (respectivement f1, f2, f3 et f4 pour les groupes G10, G20, G30 et G40 de l'exemple), et les segments SM des differents groupes G ont tous la
meme taille.
-24 En fonctionnement, I'unite d'entrelacement 7 forme pour les groupes G10, G20, G30 et G40 respectivement des paquets P10, P20, P30 et P40, en prelevant transversalement pour chacun de ces paquets P une portion de chacune des sequences du groupe G (comme pour la protection groupee simple). Cette methode d'entrelacement temporel est particulierement adaptee pour des paquets de petite taille, notamment quand
la taille des segments SM est tres inferieure a la taille critique MTU_size.
L'unite d'entrelacement 7 permet de combiner l'une ou l'autre des Jo methodes ci-dessus avec une technique ULP-entrelace traditionnelle, en utilisant les informations donnees par ['unite de reconnaissance 2 de types de donnees. Pour ce faire, elle applique separement a chaque type de donnees, la methode d'entrelacement selectionnee. Par exemple (Figure 8), elle definit un groupe GD de sequences S de donnees en distinguant des donnees INFO de type informations, de type D1 et de type D2, et en
associant respectivement a ces trots types de donnees des coefficients FEC-
INFO, FEC-D1 et FEC-D2 de codes FEC. Chacun de ces coefficients sert ensuite a ponderer pour le type de donnees associe, les codes FEC utilises
selon les methodes exposees ci-dessus.
Dans encore un autre mode d'entrelacement (enchanement
temporel, Figure 9), qui peut aussi etre combine avec la methode ULP-
entrelace par type de donnees, I'unite d'entrelacement 7 constitue cheque groupe G de sequences sur la base d'au moins deux blocs, mais en prevoyant de ne former les paquets P a partir de prelevements associes a plusieurs de ces blocs que lors de transitions d'un bloc au suivant
(contra irem ent a l' entrelacem ent tempo ral).
Ainsi, par exemple, le groupe G100 de sequences contient deux sousgroupes SG1 et SG2 respectivement associes a deux blocs consecutifs et formes de maniere similaire - memes nombres de sequences S. memes
tailles des segments SM et des ensembles FEC pour les deux sous-groupes.
-25 De plus, les segments SM ont une taille constante pour ltensemble du groupe G100, tandis que les ensembles FEC ont une taille variable, decroissante entre les indicateurs de re-synchronisation amont et aval pour chaque bloc. Ainsi, dans ltexemple illustre, les sous-groupes SG1 et SG2 comprennent respectivement quatre sequences S11-S14 et S21-S24, les segments SM ont une taille uniforme de quatre K portions >> chacun et les ensembles FEC ont un schema de decroissance 3-2-2-1 (en nombre de portions) associe a chaque bloc. Les sous-groupes SG1 et SG2 ont ainsi
une forme identique, du type trapezodale a base large superieure.
En revanche, les modes de formation des paquets P vent dissymetriques d'un sous-groupe SG1 a l'autre SG2, et impliquent des liaisons de transition entre les sous-groupes tout en assurant une taille constante de ces paquets P (en l'espece, quatre portions). Plus precisement, dans le premier sous-groupe SG1, le premier paquet P101 est forme en prelevant dans chacune des sequences S11-S14 la premiere portion. De fa,con similaire, I'unite d'entrelacement 7 constitue chacun des paquets suivants P102-P105 en prelevant respectivement dans toutes les sequences S11-S14 du sous-groupe SG1 des portions correspondantes, d'abord des segments SM (paquets P102 a P104), puis des ensembles FEC (paquet
P105).
Lorsque ce mode de prelevement n'est plus possible parce que les portions de la derriere sequence S14 vent epuisees, I'unite d'entrelacement 7 complete le paquet P106 en cours de formation en prelevant la portion manquante dans la premiere sequence S21 du second sous-groupe SG2. De fa, con similaire, le paquet suivant P107 initie avec la derriere portion de la premiere sequence S11, est complete en prelevant les trots portions manquantes respectivement dans les trots premieres sequences S21-S23 du sous-groupe SG2. Les paquets suivants P108-P112 vent constitues entierement dans le sous-groupe SG2, par prelevement de
portions successives respectivement dans ses quatre sequences S21-S24.
-26 Contrairement a ce qu'on obtiendrait par une application de la methode ULP traditionnelle, le schema de construction permet de beneficier par rapport a la methode ELP-entrelace d'une protection accrue pour les donnees amont dans les blocs, sans que la perte de paquets entrane un
accroissement significatif de pertes irremediables dans les donnees en aval.
Cette methode permet le traitement de paquets de taille moyenne sans avoir
recours a ltentrelacement temporel.
La configuration particuliere decrite dans l'exemple autorise une
periodicite sur deux blocs. Cependant, dans d'autres modes de realisation,
la periodicite est obtenue sur trots blocs ou davantage. Plus precisement, le nombre de blocs impliques depend du nombre de portions manquantes pour assurer la formation complete de tous les paquets de meme taille dans un sous-groupe de sequences, par prelevement de portions dans des
sequences distinctes pour cheque paquet.
L'unite d'entrelacement 7 du dispositif d'insertion 1 decrit a titre d'exemple dispose de la capacite de mettre en couvre l'une quelconque des strategies detaillees plus haut. La technique adoptee peut etre definie par le responsable de ['emission, ou etre selectionnee de maniere automatique par le dispositif d'insertion 1 en fonction notamment de la taille des paquets P. -27

Claims (17)

REVENDICATIONS
1. Dispositif dtinsertion (1) de codes de correction d'erreurs (FEC) dans au moins un flux de donnees (11) destine a etre diffuse par paquets (P)
dans un reseau (8), chacun desdits flux (11) incluant des indicateurs de re-
synchronisation de reference (RM) repartis dans ledit flux et les donnees comprises entre deux quelconques desdits indicateurs de resynchronisation consecutifs constituent un bloc de donnees (B), ledit dispositif d'insertion (1) de codes comprenant: - une unite de determination (4) de segments de donnees (SM) successifs dans lesdits flux (11), - et une unite d'attribution (6) a chacun desdits segments (SM) , d'un ensemble de codes de correction d'erreurs (FEC), lesdits ensembles de codes ayant des tailles variables selon lesdits segments, caracterise en ce que ledit dispositif diinsertion (1) comprend
egalement une unite d'identification (3) desdits indicateurs de re-
synchronisation (RM), en ce que ['unite de determination (4) de segments est prevue pour determiner les segments (SM) en effectuant des partitions desdits blocs de donnees (B) et en ce que ['unite d'attribution (6) est prevue pour affecter des tailles decroissantes aux dits ensembles de codes (FEC) entre deux quelconques desdits indicateurs de re- synchronisation (RM) consecutifs.
2. Dispositif d'insertion selon la revendication 1, caracterise en ce que lesdits indicateurs de re- synchronisation comprennent des marqueurs
de re-synchronisation (RM).
-28
3. Dispositif d'insertion selon l'une des revendications 1 ou 2,
caracterise en ce que lesdits indicateurs de re-synchronisation comprennent
des entetes d'images (ENT).
4. Dispositif d'insertion selon l'une quelconque des revendications
precedentes, caracterise en ce qutil comprend egalement une unite d'entrelacement (7) de donnees, apte a determiner des groupes (G) de sequences de donnees (S) et a former lesdits paquets (P) en juxtaposant
des portions desdites sequences (S).
5. Dispositif d'insertion selon la revendication 4, caracterise en ce que ['unite d'entrelacement (7) de donnees est telle que chacune des À sequences (S) est constituee d'un des segments (SM) et de ['ensemble de
codes de correction d'erreurs (FEC) associe audit segment (SM).
: 6. Dispositif d'insertion selon la revendication 5, caracterise en ce que ['unite d'entrelacement (7) de donnees est capable d'etre telle que: pour chacun desdits groupes (G1-G4; G10, G20, G30, G40) de sequences, lesdites sequences (S), lesdits segments (SM), lesdits ensembles de codes (FEC), lesdits paquets (P) et lesdites portions de sequences ont respectivement des tailles constantes, - et chacun desdits paquets (P) associes audit groupe (G) de sequences est forme en juxtaposant des portions respectivement de toutes
lesdites sequences (S) audit groupe (G).
7. Dispositif d'insertion selon la revendication 6, caracterise en ce que ['unite d'entrelacement (7) de donnees est telle que pour chacun desdits blocs de donnees (B), lesdits segments (SM) inclus dans tous les groupes (G1-G4; G10, G20, G30, G40) de sequences comprenant au moins une des
sequences (S) associees audit bloc (B), ont une taille constante.
-29
8. Dispositif d'insertion selon l'une quelconque des revendications
a 7, caracterise en ce que ['unite d'entrelacement (7) de donnees est capable d'etre telle que: - lesdits segments (SM), lesdits paquets (P) et lesdites portions ont respectivement des tailles constantes et lesdits ensembles de codes de correction d'erreurs (FEC) et lesdites sequences (S) ont des tailles variables, - ledit groupe (G100) de sequences est constitue d'au moins deux sous-groupes (SG1, SG2) de sequences associes a respectivement au moins deux blocs de donnees (B) successifs, - et chacun desdits paquets (P) associes audit groupe (G100) de sequences est forme en juxtaposant des portions respectivement de
sequences (S) distinctes audit groupe (G100).
9. Dispositif dtinsertion selon l'une quelconque des
revendications 4 a 8, caracterise en ce que ['unite d'entrelacement (7) de
donnees est capable d'etre telle qu'au moins un des groupes (G1O, G2O, G3O, G40) de sequences contient des sequences (S) associees a plusieurs desdits blocs de donnees (B) successifs et en ce que chacun desdits paquets (P1O, P2O, P3O, P40) est forme en juxtaposant des portions de
sequences associees a tous lesdits blocs (B).
10. Dispositif d'insertion selon l'une quelconque des
revendications precedentes, caracterise en ce qu'il comprend aussi une
unite de calcul (5) de tailles, prevue pour calculer les tailles des ensembles de codes de correction d'erreurs (FEC) relativement aux tailles des segments (SM) correspondents, en fonction d'une estimation d'un modele de perte actualise audit reseau (8), avantageusement au moyen de donnees
contenues dans des rapports selon le protocole RTCP.
11. Dispositif dtinsertion selon l'une quelconque des
revendications precedentes, caracterise en ce qutil comprend aussi une
unite de reconnaissance (2) de types de donnees, en ce que ['unite de -30 determination (4) de segments est apte a etablir les segments (SM) selon lesdits types de donnees et en ce que i'unite d'attribution (6) de codes est prevue pour ponderer les tailles des ensembles de codes de correction d'erreurs (FEC) en fonction desdits types de donnees des segments (SM) correspondent aux dits ensembles (FEC).
12. Dispositif d'insertion selon la revendication 11, caracterise en ce que lesdits types de donnees vent choisis parmi les elements suivants de donnees video numeriques compressees: o - des images de types 1, P ou B; - des entites de partition de types entetes, vecteurs mouvements ou texture; - et/ou des couches de types couche de base ou couches
optionnelles d'amelioration.
13. Procede dtinsertion de codes de correction d'erreurs (FEC) dans au moins un flux (11) de donnees destine a etre diffuse par paquets (P) dans un reseau (8), chacun desdits flux (11) incluant des indicateurs de re synchronisation de reference (RM) repartis dans ledit flux (11) et les donnees comprises entre deux quelconques desdits indicateurs de re synchronisation (RM) consecutifs constituent u n bloc de don nees (B), led it procede d'insertion comprenant les etapes suivantes: - determination de segments de donnees (SM) successifs dans lesdits flux (11), - et attribution a chacun desdits segments (SM), d'un ensemble de codes de correction d'erreurs (FEC), lesdits ensembles de codes ayant des tailles variables selon lesdits segments (SM), caracterise en ce que ledit procede d'insertion comprend egalement une etape d'identification desdits indicateurs de re synchronisation (RM), en ce qu'on determine les segments de donnees (SM) -31 en effectuant des partitions desdits blocs de donnees (B) et en ce qu'on affecte des tailles decroissantes aux dits ensembles de codes (FEC) entre deux quelconques desdits indicateurs de resynchronisation (RM) consecutifs, ledit procede etant preferentiellement mis en osuvre au moyen du
dispositif d'insertion selon l'une quelconque des revendications 1 a 12.
14. Signal numerique (12) relatif a au moins un flux de donnees
o (11), chacun desdits flux de donnees incluant des indicateurs de re-
synchronisation de reference (RM) repartis dans ledit flux (11), les donnees comprises entre deux quelconques desdits indicateurs de resynchronisation (RM) consecutifs constituent un bloc de donnees (B), ledit signal numerique (12) comprenant des informations representatives de segments de donnees (SM) successifs dans lesdits flux (11) et d'ensembles de codes de correction d'erreurs (FEC) respectivement attribuees aux dits segments (SM), lesdits ensembles de codes (FEC) ayant des tailles variables selon lesdits segments (SM), caracterise en ce que lesdits segments de donnees (SM) forment des partitions desdits blocs de donnees (B) et en ce que lesdits ensembles de codes (FEC) ont des tailles decroissantes entre deux quelconques desdits indicateurs de resynchronisation (RM) consecutifs, led it signal nu merique etant preferentiellement obtenu au moyen
du dispositif d'insertion selon l'une quelconque des revendications 1 a 12.
15. Dispositif de reconstitution (9) de flux de donnees (13) a partir de signaux numeriques (12) re,cus par paquets (P) en provenance d'un reseau (8), lesdits signaux numeriques (12) comprenant des informations representatives de segments de donnees (SM) successifs dans lesdits flux (13) et d'ensembles de codes de correction d'erreurs (FEC) respectivement -32 attribues aux dits segments (SM), ledit dispositif de reconstitution (9) comprenant: - une unite de reconstitution (16) des segments de donnees (S M) de paquets (P) manq u ants a pa rtir des informations representatives de segments de donnees (SM) et d'ensembles de codes de correction d'erreurs (FEC) des paquets (P) re,cus, ladite unite de reconstitution (16) etant apte a operer sur des ensembles de codes de correction d'erreurs (FEC) de tailles variables selon lesdits segments (SM), - une unite d'ordonnancement (17) des segments de donnees (SM) re, cus et reconstitues, - et une unite de synchronisation (18) desdits segments de donnees (SM) au moyen dtindicateurs de re-synchronisation de reference (RM) contenus dans lesdits paquets, caracterise en ce que ladite unite de reconstitution (16) est prevue pour operer sur des ensembles de codes de correction d'erreurs (FEC) de taille decroissante entre deux quelconques desdits indicateurs de re synchronisation de reference (RM), ledit dispositif de reconstitution (9) etant de preference prevu pour
reconstituer des signaux (12) conformes au signal de la revendication 14.
16. Procede de reconstitution de flux de donnees (13) a partir de signaux numeriques (12) rec,us par paquets (P) en provenance d'un reseau (8), lesdits signaux numeriques (12) comprenant des informations representatives de segments de donnees (SM) successifs dans lesdits flux (13) et d'ensembles de codes de correction d'erreurs (FEC) respectivement attribuees aux dits segments (SM) et lesdits ensembles de codes (FEC) ayant des tailles variables selon lesdits segments (SM), ledit procede de reconstitution comprenant les etapes suivantes: -33 - reconstitution des segments de donnees (SM) de paquets (P) manquants a partir des informations representatives de segments de don nees (S M) et d'ensembles de codes de correction d'erreu rs (FEC) des paquets (P) recus, ordonnancement des segments de donnees (SM) re,cus et reconstitues, - et synchronisation desdits segments de donnees (SM) au moyen d'indicateurs de re-synchronisation de refbrence (RM) contenus dans lesdits paquets, caracterise en ce qu'on reconstitue lesdits flux de donnees (13) a partir d'ensembles de codes de correction d'erreurs (FEC) de taille decroissante entre deux quelconques desdits indicateurs de re synchronisation de reference (RM), ledit procede de reconstitution etant de preference mis en ceuvre au moyen d'un dispositif de reconstitution (9) conforme a la revendication 15.
17. Produit programme d'ordinateur comprenant des instructions de codes de programme pour ['execution des etapes du procede d'insertion de codes de correction d'erreurs selon la revendication 13 ou du procede de reconstitution de flux de donnees selon la revendication 16 lorsque ledit
programme est execute sur un ordinateur.
FR0203196A 2002-03-15 2002-03-15 Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants Pending FR2837332A1 (fr)

Priority Applications (7)

Application Number Priority Date Filing Date Title
FR0203196A FR2837332A1 (fr) 2002-03-15 2002-03-15 Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants
US10/383,454 US7155657B2 (en) 2002-03-15 2003-03-06 Device and method for inserting error correcting codes and for reconstructing data streams, and corresponding products
EP03290553A EP1345334A1 (fr) 2002-03-15 2003-03-07 Appareil et méthode pour l'insertion de codes correcteurs d'erreurs et pour la reconstruction d'un flux de données
MXPA03002187A MXPA03002187A (es) 2002-03-15 2003-03-12 Dispositivo y metodo para insertar codigos de correccion de error y para reconstruir corrientes de datos, y los productos correspondientes.
KR10-2003-0015396A KR20030074386A (ko) 2002-03-15 2003-03-12 에러 정정 코드를 삽입하며 데이터 스트림을 재구성하기위한 디바이스 및 방법, 및 해당 컴퓨터 프로그램 제품
JP2003072558A JP2003318867A (ja) 2002-03-15 2003-03-17 エラー補正コードを挿入し、データストリームを再構成するための装置及び方法、及び対応するプロダクト
CNB031204449A CN100338925C (zh) 2002-03-15 2003-03-17 在数据流中插入纠错码和重建数据流的装置和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0203196A FR2837332A1 (fr) 2002-03-15 2002-03-15 Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants

Publications (1)

Publication Number Publication Date
FR2837332A1 true FR2837332A1 (fr) 2003-09-19

Family

ID=27763740

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0203196A Pending FR2837332A1 (fr) 2002-03-15 2002-03-15 Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants

Country Status (7)

Country Link
US (1) US7155657B2 (fr)
EP (1) EP1345334A1 (fr)
JP (1) JP2003318867A (fr)
KR (1) KR20030074386A (fr)
CN (1) CN100338925C (fr)
FR (1) FR2837332A1 (fr)
MX (1) MXPA03002187A (fr)

Families Citing this family (44)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US6816194B2 (en) * 2000-07-11 2004-11-09 Microsoft Corporation Systems and methods with error resilience in enhancement layer bitstream of scalable video coding
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
EP1552617A2 (fr) 2002-10-05 2005-07-13 Digital Fountain, Inc. Codage et decodage systematique de codes de reaction en chaine
US7454431B2 (en) * 2003-07-17 2008-11-18 At&T Corp. Method and apparatus for window matching in delta compressors
CN1954501B (zh) * 2003-10-06 2010-06-16 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法
JP4971144B2 (ja) 2004-05-07 2012-07-11 デジタル ファウンテン, インコーポレイテッド ファイルダウンロードおよびストリーミングのシステム
US7721184B2 (en) * 2004-08-11 2010-05-18 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
WO2006038055A1 (fr) * 2004-10-06 2006-04-13 Nokia Corporation Assemblage de trames de correction d'erreurs sans voie de retour
US7480847B2 (en) * 2005-08-29 2009-01-20 Sun Microsystems, Inc. Error correction code transformation technique
KR101292851B1 (ko) * 2006-02-13 2013-08-02 디지털 파운튼, 인크. 가변적 fec 오버헤드 및 보호 구간을 이용하는 스트리밍및 버퍼링
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7428306B2 (en) * 2006-04-18 2008-09-23 International Business Machines Corporation Encryption apparatus and method for providing an encrypted file system
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9419749B2 (en) 2009-08-19 2016-08-16 Qualcomm Incorporated Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9356730B2 (en) * 2007-01-30 2016-05-31 Telefonaktiebolaget Lm Ericsson (Publ) Method for adding error protection bits to match codeword length
US7600759B2 (en) * 2007-07-26 2009-10-13 The Net Return, Llc Multi-sports ball return net system and method thereof
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
CN101488827B (zh) * 2008-01-14 2015-07-08 华为技术有限公司 实现数据报错的方法和装置
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US9124425B2 (en) 2009-06-30 2015-09-01 Nokia Technologies Oy Systems, methods, and apparatuses for ciphering error detection and recovery
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
US9917874B2 (en) 2009-09-22 2018-03-13 Qualcomm Incorporated Enhanced block-request streaming using block partitioning or request controls for improved client-side handling
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9319448B2 (en) 2010-08-10 2016-04-19 Qualcomm Incorporated Trick modes for network streaming of coded multimedia data
US8539319B2 (en) * 2011-01-28 2013-09-17 Cisco Technology, Inc. Providing capacity optimized streaming data with forward error correction
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP streaming
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
KR102081980B1 (ko) 2012-10-08 2020-02-27 삼성전자 주식회사 메모리 시스템에서의 라이트 동작 또는 리드 동작 수행 방법
JP6514570B2 (ja) * 2015-05-29 2019-05-15 アンリツネットワークス株式会社 パケット転送システム、中継装置、パケット転送方法及びプログラム
US9875211B2 (en) * 2015-06-04 2018-01-23 Synaptics Incorporated Signal conditioner for high-speed data communications

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0936772A2 (fr) * 1998-02-11 1999-08-18 Lucent Technologies Inc. Protection à niveaux inégaux pour codeur perceptuel de signaux audio
WO2002001561A2 (fr) * 2000-06-27 2002-01-03 Seagate Technology Llc Procede et appareil de codage permettant de realiser une protection inegale dans les canaux d'enregistrement magnetique a codes de correction d'erreurs concatenes
WO2002007322A2 (fr) * 2000-07-17 2002-01-24 Koninklijke Philips Electronics N.V. Codage d'un train de donnees

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6754277B1 (en) * 1998-10-06 2004-06-22 Texas Instruments Incorporated Error protection for compressed video
US6317462B1 (en) * 1998-10-22 2001-11-13 Lucent Technologies Inc. Method and apparatus for transmitting MPEG video over the internet
US6965636B1 (en) * 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
US6816194B2 (en) * 2000-07-11 2004-11-09 Microsoft Corporation Systems and methods with error resilience in enhancement layer bitstream of scalable video coding
TR200200680T1 (tr) * 2000-07-17 2002-09-23 Koninklijke Philips Electronics N. V. Sinyal kodlama.
WO2002007327A1 (fr) * 2000-07-17 2002-01-24 Koninklijke Philips Electronics N.V. Codage de flux de donnees
WO2002052558A2 (fr) * 2000-12-26 2002-07-04 Pioneer Corporation Appareil d'enregistrement/reproduction d'information, et support d'enregistrement d'information
US20020157058A1 (en) * 2001-02-20 2002-10-24 Cute Ltd. System and method for feedback-based unequal error protection coding
US6910175B2 (en) * 2001-09-14 2005-06-21 Koninklijke Philips Electronics N.V. Encoder redundancy selection system and method

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0936772A2 (fr) * 1998-02-11 1999-08-18 Lucent Technologies Inc. Protection à niveaux inégaux pour codeur perceptuel de signaux audio
WO2002001561A2 (fr) * 2000-06-27 2002-01-03 Seagate Technology Llc Procede et appareil de codage permettant de realiser une protection inegale dans les canaux d'enregistrement magnetique a codes de correction d'erreurs concatenes
WO2002007322A2 (fr) * 2000-07-17 2002-01-24 Koninklijke Philips Electronics N.V. Codage d'un train de donnees

Also Published As

Publication number Publication date
US20040015768A1 (en) 2004-01-22
JP2003318867A (ja) 2003-11-07
CN100338925C (zh) 2007-09-19
CN1445968A (zh) 2003-10-01
US7155657B2 (en) 2006-12-26
MXPA03002187A (es) 2005-02-14
KR20030074386A (ko) 2003-09-19
EP1345334A1 (fr) 2003-09-17

Similar Documents

Publication Publication Date Title
FR2837332A1 (fr) Dispositif et procede d&#39;insertion de codes de correction d&#39;erreurs et de reconstitution de flux de donnees, et produits correspondants
FR2939993A1 (fr) Procede de transmission d&#39;un flux de donnees multi-canal sur un tunnel multi-transport, produit programme d&#39;ordinateur, moyen de stockage et tetes de tunnel correspondantes
EP1997254B1 (fr) Procede de protection de donnees multimedia au moyen de couches d&#39;abstraction reseau (nal) supplementaires
US20140173677A1 (en) Media stream handling
FR2839405A1 (fr) Procede de transmission et de reception de paquets de longueur variable base sur le codage fec(forward error correction)
FR2903253A1 (fr) Procede permettant de determiner des parametres de compression et de protection pour la transmission de donnees multimedia sur un canal sans fil.
WO1995028058A1 (fr) Procede de diffusion de programmes a acces conditionnel progressif et a separation du flux d&#39;information et recepteur correspondant
EP2332335A1 (fr) Systeme et procede de determination de parametres de codage
CN102740064A (zh) 对讲系统中流媒体传输的组包方法
FR2895181A1 (fr) Procede et systeme de transmission d&#39;un flux de donnees multimedia
WO2005101836A1 (fr) Procede et systeme de diffusion securisee de flux audiovisuels proteges a un groupe dynamique de recepteurs
JP4506185B2 (ja) 受信装置および方法、並びにプログラム
HUE025532T2 (en) Procedure and system for determining the quality of video stream
EP2119077B1 (fr) Procede et dispositif contre la perte de salves dans un systeme de transmission dvb-h
EP1845685B1 (fr) Transmission perfectionnée de paquets IP de contenus, par adjonction à ces paquets IP de données d&#39;information relatives aux contenus
US20120265858A1 (en) Streaming portions of a quilted graphic 2d image representation for rendering into a digital asset
EP1302078B1 (fr) Procede et dispositif de codage d&#39;un flux d&#39;images video
EP3357244A1 (fr) Procédé d&#39;encodage de flux de données vidéo basées sur des groupements d&#39;images (gop)
EP1570672A1 (fr) Synchronisation de flux audiovisuels securisés
FR2867928A1 (fr) Procede et systeme hautement securises pour la distribution de flux audiovisuels
EP1590959A2 (fr) Dispositif securise pour la diffusion, l &#39; enregistrement et la visualisation a la demande des oeuvres audiovisuelles au format de type mpeg-2 ts
FR2839403A1 (fr) Procede de multiplexage dynamique de flux numeriques, signal dispositif de multiplexage dynamique et recepteur correspondant
EP1623578B1 (fr) Procede et systeme pour securiser l embrouillage, le desembrouillage et la distribution de sequences visuelles vectorielles
WO2009007261A2 (fr) Procede et dispositif pour l&#39;emission de salves de taille variable
ES2312298B2 (es) Metodo de transmision de contenidos multimedia.