FR2907990A1 - Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants. - Google Patents

Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants. Download PDF

Info

Publication number
FR2907990A1
FR2907990A1 FR0609473A FR0609473A FR2907990A1 FR 2907990 A1 FR2907990 A1 FR 2907990A1 FR 0609473 A FR0609473 A FR 0609473A FR 0609473 A FR0609473 A FR 0609473A FR 2907990 A1 FR2907990 A1 FR 2907990A1
Authority
FR
France
Prior art keywords
buffer
capture
capture buffer
complexity
encoding module
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.)
Granted
Application number
FR0609473A
Other languages
English (en)
Other versions
FR2907990B1 (fr
Inventor
Tanguy Person
Thomas Guionnet
Mickael Ropert
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.)
MK Systems USA Inc
Original Assignee
Envivio France SARL
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 Envivio France SARL filed Critical Envivio France SARL
Priority to FR0609473A priority Critical patent/FR2907990B1/fr
Priority to US11/875,099 priority patent/US8254442B2/en
Publication of FR2907990A1 publication Critical patent/FR2907990A1/fr
Application granted granted Critical
Publication of FR2907990B1 publication Critical patent/FR2907990B1/fr
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M7/00Conversion of a code where information is represented by a given sequence or number of digits to a code where the same, similar or subset of information is represented by a different sequence or number of digits
    • H03M7/30Compression; Expansion; Suppression of unnecessary data, e.g. redundancy reduction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/109Selection of coding mode or of prediction mode among a plurality of temporal predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/152Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/156Availability of hardware or computational resources, e.g. encoding based on power-saving criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/184Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

L'invention concerne un encodeur temps-réel et contraint en débit, du type comprenant : une mémoire tampon de capture (2), stockant des trames en attente d'être traitées ; un module d'encodage (3), recevant des trames issues de la mémoire tampon de capture et délivrant des trames compressées ; une mémoire tampon intermédiaire (4), stockant les trames compressées issues du module d'encodage ; et une mémoire tampon d'émission (5), stockant des paquets de données, résultant du découpage de trames compressées issues de la mémoire tampon intermédiaire, et émettant, avec un débit contrôlé, lesdits paquets de données sur un canal de communication. L'encodeur comprend un module de contrôle (RTCC) comprenant des moyens de réglage dynamique de la taille maximale de la mémoire tampon de capture, permettant d'augmenter temporairement la taille maximale de la mémoire tampon de capture tant que la mémoire tampon d'émission n'est pas vide.

Description

1 Encodeur temps-réel contraint en débit et en délai, procédé, produit
programme d'ordinateur et moyen de stockage correspondants. 1. DOMAINE DE L'INVENTION Le domaine de l'invention est celui de la compression de données (audio et/ou vidéo). Plus précisément, l'invention concerne une technique d'encodage temps-réel, sous contraintes de débit et de délai. Dans un mode de réalisation de l'invention, il est proposé un encodeur/décodeur (codec) temps-réel et contraint en débit et en délai. 2. ART ANTÉRIEUR Dans la présente description, on définit une trame comme un ensemble de données successives et une scène comme un ensemble de trames successives. Dans le cas particulier de la vidéo, une trame est une image. La quantité d'information (entropie) contenue dans un signal peut varier énormément au cours du temps. Par exemple, dans le cas d'un signal vidéo, on peut passer d'une scène statique contenant des textures lisses à une scène comportant beaucoup d'objets en mouvement et des textures complexes. Dans ce cas, on observe une augmentation importante de la complexité de la scène, et donc de la quantité d'information. Lorsque l'on met en oeuvre des techniques de compression, cette variabilité naturelle a deux conséquences : tout d'abord, le débit de données généré par l'encodeur varie en fonction de la scène ; - ensuite, suivant la stratégie de mise en oeuvre choisie, le temps nécessaire à l'encodage de chaque trame peut varier.
Des solutions ont été développées pour pallier ces deux problèmes. Des techniques dites de contrôle de débit, permettent de réguler le débit en sortie de l'encodeur. On peut assurer soit un débit constant (ou CBR, pour Constant Bit Rate en anglais), soit un débit variable (ou VBR, pour Variable Bit Rate en anglais). Dans les deux cas, on respecte une contrainte externe, comme par exemple la capacité physique d'un canal de communication. Si cette contrainte externe varie au cours du temps, alors on est dans le cas du débit variable (VBR). Le contrôle de débit 2907990 2 s'appuie sur l'utilisation d'une modélisation de la mémoire tampon d'émission, aussi appelée buffer d'émission ou encore VBE (pour Vérificateur du Buffer d'Emission ). La mémoire tampon d'émission est aussi appelée VBV (pour Vérificateur du Buffer Vidéo ) dans le cas de la compression d'un signal vidéo ou 5 réservoir-bit dans le cas de la compression d'un signal audio. Davantage de détails sur le contrôle de débit peuvent être trouvés dans : Efficient algorithms for MPEG video compression , Dzung Tien Hoang, Jeffrey Scott Vitter, WILEY, 2002. Pour assurer un temps d'encodage constant par trame, la solution la plus simple 10 consiste à sur-dimensionner le matériel (processeur, FPGA, ...). Cependant cette solution est coûteuse et sous-optimale, puisque le matériel n'est que rarement utilisé à sa pleine capacité. Le raisonnement inverse consiste à limiter la complexité de l'encodeur. Dans ce cas, on limite l'efficacité de la compression et par conséquent la qualité des données compressées. De la même manière, le matériel n'est que rarement utilisé à sa 15 pleine capacité. De plus, la qualité n'est pas optimale sur des scènes peu complexes. Idéalement, il faudrait pouvoir limiter la complexité de l'encodeur seulement en cas de scène trop complexe pour être traitée en temps réel avec le matériel disponible. Une telle technique de contrôle dynamique de complexité est présentée dans le document de brevet WO 03/061298 A1, du 24 juillet 2003.
20 Avant de résumer cette technique de contrôle dynamique de complexité, nous décrivons un exemple d'encodeur temps réel classique, en nous appuyant sur la figure 1. L'encodeur est synchronisé sur une horloge discrète. Cette horloge est ajustée sur la fréquence des trames. Par exemple, à 25 trames par secondes, l'horloge donnera 1 top toutes les 40 ms. Ces tops d'horloge sont indexés par la variable t. La période des 25 tops, c'est-à-dire la durée entre deux tops successifs est notée P. L'exemple d'encodeur temps réel de la figure 1 comprend : un module de capture 1 (réalisé par exemple sous la forme d'une carte ou un appareil) qui capture les trames en entrée et qui les convertit en un format utilisable par le module d'encodage. Par exemple, une entrée vidéo 30 peut être au format SDI et la sortie correspondante au format YUV brut ; 2907990 3 une mémoire tampon de capture 2 (aussi appelée buffer de capture , ou Capture buffer en anglais) où sont stockées les trames en attente d'être traitées par le module d'encodage. A l'instant t, cette mémoire tampon de capture contient Np) trames ; un module d'encodage 3 (réalisé par exemple sous la forme d'un appareil) qui effectue la compression. Il prend en entrée une trame capturée et renvoie en sortie une trame compressée. Il traite Ve(t) trames par période d'horloge à l'instant t ; une mémoire tampon intermédiaire 4 (aussi appelée Output buffer en anglais) où sont stockées les trames compressées issues du module d'encodage, en attente d"être transférées vers la mémoire tampon d'émission (VBE). A l'instant t, cette mémoire tampon intermédiaire contient No(t) trames compressées ; - une mémoire tampon d'émission 5 (aussi appelée VBE pour Vérificateur 15 du Buffer d'Emission ) qui est un élément essentiel au bon fonctionnement de la régulation de débit. Le VBE, avec sa logique de contrôle de débit, permet d'amortir en partie la variation de la taille des trames compressées tout en garantissant le respect de la contrainte de débit. Le rôle de la logique de contrôle de débit est de s'assurer que le VBE n'est 20 jamais en dépassement de capacité. Le VBE modélise une mémoire tampon qui stocke les trames compressées jusqu'à ce qu'elle soient transmises sur le canal de communication. Chaque trame compressée dans le VBE est découpée en paquets de données de taille fixe. A l'instant t, le VBE contient D,(t) paquets de données.
25 Les différents éléments 1 à 5 compris dans l'encodeur sont classiquement réalisés de manière informatique, avec un ou plusieurs éléments matériels (composants mémoires et processeurs notamment) et/ou logiciels (programmes). Les transferts de données, référencés A à E sur la figure 1, sont décrits ci- dessous. Un transfert de données est dit synchronisé s'il est aligné sur l'horloge, c'est-à-30 dire s'il a lieu à chaque top . Un transfert de donnée non synchronisé est complètement indépendant de l'horloge.
5 10 2907990 4 Transfert A (synchronisé) : à chaque top, une trame sort du module de capture 1 et est stockée dans la mémoire tampon de capture 2. Transfert B (non synchronisé) : à l'instant t, le module d'encodage 3 prend en entrée Ve(t) trames par période d'horloge.
5 Transfert C (non synchronisé) : à l'instant t, le module d'encodage 3 renvoie également en sortie Ve(t) trames compressées par période d'horloge. Transfert D (synchronisé) : à chaque top, le VBE 5 prend en entrée 1/0(t) paquets de données (qui correspondent généralement à une trame compressée). Transfert E (synchronisé) : le VBV renvoie en sortie un paquet de données à 10 chaque top. Il garantit ainsi un débit contrôlé sur le canal de communication. Dans le cas d'un débit constant (CBR), la taille des paquets de données est constante et donc le débit en sortie est constant. Classiquement, le processus que constitue l'ensemble des transferts A à E est contrôlé par un programme exécuté par un ou plusieurs processeurs compris dans 15 l'encodeur. Les deux mémoires tampons de capture 2 et intermédiaire 4 ont pour fonction d'amortir la variation de temps de traitement par trame de l'encodeur (Ve(t)). Ces deux mémoires tampons sont synchronisées. Lorsque l'une se vide, l'autre se remplit. Soit Mc la taille maximale de chacune de ces deux mémoires tampons. On a : N0(t) = M~ û NN.(t).
20 Si le temps de traitement par le module d'encodage reste supérieur à p (c'est-à-dire si Ve(t)<1) pendant une période trop longue, la mémoire tampon de capture se remplit. Le seul moyen de respecter la contrainte de temps réel est alors d'éliminer des trames. Dans le cas d'un décodage vidéo, lorsque la vidéo compressée est décodée et affichée, cela se traduit par des saccades visuellement gênantes.
25 Afin d'éviter la suppression de trames, la technique présentée dans le document de brevet WO 03/061298 Al consiste en la mise en oeuvre d'un mécanisme de contrôle de complexité. Ce mécanisme est maintenant décrit en relation avec la figure 2. L'encodeur comprend l'élément supplémentaire suivant : un module de contrôle 6 (aussi appelé RTC, pour Real-Time Controler ) qui suit le niveau de remplissage Ne(t) de la 30 mémoire tampon de capture 2 (ce suivi est représenté par la flèche référencée 7). Ce niveau de remplissage Np) est le nombre de trames contenues dans la mémoire tampon 2907990 5 de capture. En fonction de ce remplissage, il commande la complexité du module d'encodage (cette commande est représentée par la flèche référencée 8). Une série de seuils avec hystérésis sont prédéfinis. A chaque niveau de remplissage de la mémoire tampon de capture 2 correspond un pararnétrage du module d'encodage 3. Du fait de la 5 propriété de synchronisation mentionnée ci-dessus (entre la mémoire tampon de capture 2 et la mémoire tampon intermédiaire 4), il n'est pas nécessaire de surveiller le remplissage de la mémoire tampon intermédiaire 4. Malheureusement la solution présentée ci-dessus est efficace mais pas optimale pour deux raisons : 10 - tout d'abord, le fait de réduire la complexité du module d'encodage 3 implique une baisse de qualité des trames compressées ; ensuite, si malgré le réglage de complexité du module d'encodage 3, le temps d'encodage reste trop long, il est toujours possible d'être amené à supprimer des trames. Ce problème est celui d'un pic de complexité trop 15 long. En augmentant la taille de la mémoire tampon de capture 2, il est possible de traiter des pics de complexité plus long, ou bien de maintenir la qualité des données compressées (par exemple de la vidéo) le temps du passage d'un pic de complexité. Mais cela introduit un délai supplémentaire en sortie de l'encodeur complet. En effet, 20 l'encodeur tel qu'il est présenté introduit un délai d'une taille minimale de Mc. C'est-à-dire que si une trame entre dans l'encodeur à l'instant t, elle en ressort au plus tôt à l'instant t+P.MM. De même, chaque élément de l'encodeur peut introduire un délai. Si on appelle De le délai introduit par le module d'encodage 3 de l'encodeur et Dvbe le délai introduit par la mémoire tampon d'émission 5 (VBE), alors le délai total de l'encodeur 25 est : D = Mc. + De + Dvbe. 3. OBJECTIFS DE L'INVENTION L'invention, dans au moins un mode de réalisation, a notamment pour objectif de pallier ces différents inconvénients de l'état de la technique. Plus précisément, l'un des objectifs de la présente invention, dans au moins un 30 mode de réalisation, est de fournir une technique d'encodage temps-réel et sous contraintes de débit, qui soit également sous contrainte de délai.
2907990 6 L'invention a également pour objectif, dans au moins un mode de réalisation, de fournir une telle technique permettant d'augmenter la tolérance d'un encodeur au variation de complexité d'une scène sans nécessairement recourir au contrôle dynamique de la complexité dudit encodeur.
5 Un autre objectif de l'invention, dans au moins un mode de réalisation, est de fournir une telle technique permettant, par rapport à l'art antérieur, de diminuer le nombre de suppressions de trames liées au dépassement de la capacité de la mémoire tampon de capture sans augmenter le délai induit par l'encodeur complet, ni diminuer la qualité des trames compressées.
10 Un objectif complémentaire de l'invention, dans au moins un mode de réalisation, est de fournir une telle technique pouvant être combinée avec le principe connu du contrôle dynamique de la complexité du module d'encodage 3. Un autre objectif de l'invention, dans au moins un mode de réalisation, est de fournir une telle technique qui soit simple à mettre en oeuvre et peu coûteuse. 15 4. EXPOSÉ DE L'INVENTION Dans un mode de réalisation particulier de l'invention, il est proposé un encodeur temps-réel et contraint en débit, du type comprenant : - une mémoire tampon de capture, stockant des trames en attente d'être traitées ; - un module d'encodage, recevant des trames issues de la mémoire tampon de 20 capture et délivrant des trames compressées ; - une mémoire tampon intermédiaire, stockant les trames compressées issues du module d'encodage ; et - une mémoire tampon d'émission, stockant des paquets de données, résultant du découpage de trames compressées issues de la mémoire tampon intermédiaire, et 25 émettant, avec un débit contrôlé., lesdits paquets de données sur un canal de communication ; ledit encodeur comprenant un module de contrôle comprenant des moyens de réglage dynamique de la taille maximale de la mémoire tampon de capture, permettant d'augmenter temporairement la taille maximale de la mémoire tampon de capture tant 30 que la mémoire tampon d'émission n'est pas vide.
2907990 7 Le principe général de l'invention consiste donc à augmenter temporairement la taille de la mémoire tampon de capture ( Capture buffer ) sans augmenter le délai de l'encodeur complet. L'idée consiste à exploiter le niveau de remplissage de la mémoire tampon d'émission (VBE), c'est-à-dire le nombre de paquets contenus dans la mémoire 5 tampon d'émission. En effet, pour un niveau de remplissage donné, le temps de vidage du VBE est connu a priori, grâce à la contrainte de débit. La capacité la mémoire tampon de capture peut être augmentée temporairement, tant que le VBE n'est pas vide. Le retard pris ainsi doit être rattrapé avant que le VBE ne se vide. Ainsi il est possible de supporter des pics de complexités plus longs sans diminuer la qualité des trames 10 compressées, ni augmenter le délai de l'encodeur complet. De façon avantageuse, la taille maximale temporaire Me' de la mémoire tampon de capture est définie par l'équation suivante : Mc Me'<_ Me + DM), avec M, la taille maximale initiale de la mémoire tampon de capture, et Dy(t) le niveau de remplissage de la mémoire tampon d'émission exprimé en nombre de paquets contenus dans la mémoire 15 tampon d'émission. Avantageusement, le module de contrôle comprend des moyens de gestion du rythme de vidage de la mémoire tampon intermédiaire en fonction du niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture.
20 Selon une caractéristique avantageuse, lesdits moyens de gestion du rythme de vidage de la mémoire tampon intermédiaire appliquent les règles suivantes : - si N,(t) Me, alors le vidage de la mémoire tampon intermédiaire se fait de manière synchronisée avec le remplissage de la mémoire tampon de capture, et - si N,(t) > Mc, alors le vidage de la mémoire tampon intermédiaire se fait de 25 manière instantanée et sans synchronisation avec le remplissage de la mémoire tampon de capture, avec M, est la taille maximale initiale de la mémoire tampon intermédiaire, et Nc(t) le niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture.
30 Dans un mode de réalisation avantageux de l'invention, le module de contrôle comprend des moyens de réglage dynamique de la complexité du module d'encodage 2907990 8 par sélection dynamique d'un niveau de complexité parmi au moins deux niveaux de complexités distincts, en fonction du niveau de remplissage NVt) de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture et du niveau de remplissage Dv(t) de la mémoire tampon d'émission exprimé en nombre 5 de paquets contenus dans la mémoire tampon d'émission. Avantageusement, lesdits moyens de réglage dynamique de la complexité du module d'encodage appliquent les règles suivantes : - si Ne(t) k*Me", avec Me" = M, + DM), alors réduction de la complexité du module d'encodage, 10 - sinon, pas de réduction de la complexité du module d'encodage, où k<1 et Mc. est la taille maximale initiale de la mémoire tampon de capture. Selon une variante avantageuse, lesdits moyens de réglage dynamique de la complexité du module d'encodage appliquent les règles suivantes : - si N,(t) > k*Mc", avec Me" = MIN(M, + Dv(t), M, + K), et si Dv(t) < r*Mv, alors 15 réduction de la complexité du module d'encodage, - sinon, pas de réduction de la complexité du module d'encodage, où K est une constante positive, k<1, r<1 et M, est la taille maximale initiale de la mémoire tampon de capture. De façon avantageuse, k est compris entre 0,7 et 0,9, r est compris entre 0,2 et 20 0,4, et K=Mc/2. Dans un autre mode de réalisation, l'invention concerne un procédé de contrôle d'un encodeur temps-réel et contraint en débit, du type comprenant : - une mémoire tampon de capture, stockant des trames en attente d'être traitées ; - un module d'encodage, recevant des trames issues de la mémoire tampon de 25 capture et délivrant des trames compressées ; - une mémoire tampon intermédiaire, stockant les trames compressées issues du module d'encodage ; et - une mémoire tampon d'émission, stockant des paquets de données, résultant du découpage de trames compressées issues de la mémoire tampon intermédiaire, et 30 émettant, avec un débit contrôlé, lesdits paquets de données sur un canal de communication ; 2907990 9 ledit procédé comprenant une étape de réglage dynamique de la taille maximale de la mémoire tampon de capture, permettant d'augmenter temporairement la taille maximale de la mémoire tampon de capture tant que la mémoire tampon d'émission n'est pas vide. Plus généralement, différents modes de réalisation de ce procédé de contrôle 5 peuvent être envisagés, dont les caractéristiques résultent de la transposition sous forme d'étapes des moyens compris dans le module de contrôle précité. Dans un autre mode de réalisation, l'invention concerne un produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, ledit produit 10 programme d'ordinateur comprenant des instructions de code de programme pour l'exécution des étapes du procédé de contrôle précité, lorsque ledit programme est exécuté sur un ordinateur. Dans un autre mode de réalisation, l'invention concerne un moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant 15 un jeu d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé de contrôle précité. 5. LISTE DES FIGURES D'autres caractéristiques et avantages de modes de réalisation de l'invention apparaîtront à la lecture de la description suivante, donnée à titre d'exemple indicatif et 20 non limitatif (tous les modes de réalisation de l'invention ne sont pas limités aux caractéristiques et avantages des modes de réalisation décrits ci-après), et des dessins annexés, dans lesquels : - la figure 1 présente un schéma bloc d'un encodeur temps réel et contraint en débit, selon l'art antérieur ; 25 - la figure 2 présente un schéma bloc d'un encodeur temps réel et contraint en débit, avec contrôle dynamique de la complexité, selon l'art antérieur ; la figure 3 présente un schéma bloc d'un encodeur vidéo temps réel et contraint en débit et en délai, avec contrôle dynamique de la taille de la mémoire tampon de capture, selon un premier mode de réalisation de l'invention ; et 2907990 10 la figure 4 présente un schéma bloc d'un encodeur vidéo temps réel et contraint en débit et en délai, avec contrôle dynamique de la taille la mémoire tampon de capture et de la complexité, selon un second mode de réalisation de l'invention. 6. DESCRIPTION DÉTAILLÉE 5 Sur toutes les figures du présent document, les éléments et étapes identiques sont désignés par une même référence numérique. Dans la suite de la description, on considère à titre d'exemple le cas particulier de la compression d'un signal vidéo, une trame étant une image. On présente maintenant, en relation avec la figure 3, un encodeur vidéo temps- 10 réel et contraint en débit et en délai, avec contrôle dynamique de la taille de la mémoire tampon de capture, selon un premier mode de réalisation de l'invention. Comme l'encodeur temps réel classique de la figure 1 (à la seule différence que le VBE est appelé VBV), il comprend : - un module de capture 1 qui capture les images en entrée et qui les convertit 15 en un format utilisable par le module d'encodage 3 ; - une mémoire tampon de capture 2 où sont stockées les images en attente d'être traitées par le module d'encodage 3. A l'instant t, cette mémoire tampon de capture contient NN.(t) images ; un module d'encodage 3 qui effectue la compression. Il prend en entrée 20 une image capturée et renvoie en sortie une image compressée. Il traite Ve(t) images par période d'horloge à l'instant t ; - une mémoire tampon intermédiaire 4 où sont stockées les images compressées issues du module d'encodage, en attente d'être transférées vers la mémoire tampon d'émission. A l'instant t, cette mémoire tampon 25 intermédiaire contient N0(t) images compressées ; une mémoire tampon d'émission 5' (aussi appelée VBV) qui, avec sa logique de contrôle de débit, permet d'amortir en partie la variation de la taille des images compressées tout en garantissant le respect de la contrainte de débit. La mémoire tampon d'émission 5' stocke les images 30 compressées jusqu'à ce qu'elle soient transmises sur le canal de communication. Plus précisément, elle stocke des paquets de données de 2907990 11 taille fixe, résultant du découpage des images compressées. A l'instant t, elle contient D,(t) paquets de données. Il comprend en outre un module de contrôle 10 (aussi appelé RTCC, pour Real-Time Capture Controler ) qui, dans un mode de réalisation particulier, effectue 5 les actions suivantes : - il suit le niveau de remplissage Nc.(t) de la mémoire tampon de capture 2. Ce suivi est représenté par la flèche référencée 11 ; - il suit le niveau de remplissage D,(t) de la mémoire tampon d'émission 5' (VBV). Ce suivi est représenté par la flèche référencée 12 ; 10 il commande dynamiquement la taille maximale de la mémoire tampon de capture 2 en fonction de NÇ(t) et D,(t). Cette commande est représentée par la flèche référencée 13. Les mémoires tampon de capture 2 et intermédiaire 4 ont chacune une taille initiale fixée à M. Si de la mémoire tampon de capture 2 se remplit, on peut l'autoriser à contenir Mc' images avec Mc. s 15 Mc' + D,(t). Tant que cette contrainte est respectée, le délai introduit par l'encodeur (c'est-à-dire l'ensemble du système) reste D = M~ + De + DVh,, comme précédemment ; il commande le rythme de vidage de la mémoire tampon intermédiaire 4 en fonction de NP). Cette commande est représentée par la flèche référencée 20 14. Quand Np) Mc., le vidage se fait de manière synchronisée, comme décrit précédemment. Lorsque NÇ(t) > Me, la mémoire tampon intermédiaire 4 est vide. Elle fonctionne alors en mode instantané . C'est-à-dire que dès que le module d'encodage 3 émet une image compressée, elle est directement transférée dans la mémoire tampon 25 d'émission 5' (VBV), sans attendre la synchronisation. Cela revient à accélérer le vidage de la mémoire tampon d'émission 5' (VBV), afin de rattraper le retard introduit par l'augmentation de la taille la mémoire tampon de capture 2. Le module de contrôle 10 (RTCC) est par exemple réalisé par un programme 30 exécuté par un processeur.
2907990 12 On présente maintenant, en relation avec la figure 4, un encodeur vidéo temps-réel et contraint en débit et en délai, avec contrôle dynamique de la taille de la mémoire tampon de capture et de la complexité, selon un second mode de réalisation de l'invention.
5 Ce second mode de réalisation se différencie du premier (décrit ci-dessus en relation avec la figure 3) en ce que le module de contrôle 20 (aussi appelé RTCCC, pour Real-Time Capture and Complexity Controler ) effectue les mêmes actions que le module de contrôle 10 de la figure 3, et l'action supplémentaire suivante : il règle dynamiquement la complexité du module d'encodage 3 en fonction 10 de Nc(t) et D,(t). Cette commande est représentée par la flèche référencée 15. Ce second mode de réalisation est par exemple mis en oeuvre sur la base d'un encodeur H.264/MPEG4-10 AVC. Un tel encodeur découpe les images en macro-blocs (ou macro-block en anglais). Chaque macro-bloc est encodé suivant un mode choisi 15 dans une liste prédéfinie. Notamment, les modes 16x16, 16x8, 8x16 et 8x8 sont définis pour les macro-blocs dits P . La sélection du meilleur mode d'encodage pour un macro-bloc est un processus coûteux. Afin de réduire la complexité de l'encodeur, nous réduisons la liste de modes testés pour chaque macro-bloc. Ainsi nous définissons deux niveaux de complexité pour l'encodeur (il est clair cependant que dans d'autres modes 20 de réalisation de l'invention, on peut utiliser plus de deux niveaux de complexité). Un niveau standard où tous les modes sont autorisés pour les blocs P, et un niveau de complexité réduite où seul le mode 16x16 est autorisé. Pour plus d'information sur le fonctionnement du standard H.264/MPEG4-10 AVC, on peut se référer à "H.264 and MPEG-4 Video Compression", Iain E G Richardson, John Wiley & Sons, September 25 2003, ISBN 0-470-84837-5. Différentes configurations sont possibles. Par exemple, les seuils peuvent être réglés soit en fonction de Mc, soit en fonction de Me'. Dans une première configuration, nous passons en niveau de complexité réduite lorsque le niveau de remplissage Nc(t) de la mémoire tampon de capture 2 est supérieur à 30 0.8*MM ", avec M," = MAX (Mc') = Mc. + D,(t). Dans une deuxième configuration, plus intéressante, nous avons : 2907990 13 - Me" = MIN(MAX (Mc.'), N,!. + K), où K est une constante positive, par exemple Mc/ 2 et MAX (Mc') = M~ + D,(t) ; le passage au niveau de complexité réduite a lieu lorsque NN.(t) > 0.8*M, " ET D,(t) < 0,3*M,, avec M,, la taille maximale de la mémoire tampon 5 d'émission 5' (VBV), c'est-à-dire le nombre maximal de paquets que peut contenir le VBV. Cette deuxième configuration permet une meilleure exploitation de la connaissance du niveau de remplissage de la mémoire tampon d'émission (VBV). La valeur de Mc.' est limitée afin de ne pas atteindre des niveaux excessifs de remplissage de 10 la mémoire tampon de capture 2. L'objectif est de s'assurer que l'on réussira bien à faire repasser N,.(t) sous M. Le module de contrôle 20 (RTCCC) est par exemple réalisé par un programme exécuté par un processeur. On notera que l'invention ne se lirnite pas à une implantation purement logicielle 15 (séquence d'instructions d'un programme informatique), mais qu'elle peut aussi être mise en oeuvre sous une forme matérielle ou toute forme mixant une partie matérielle et une partie logicielle. Dans le cas où l'invention est implantée partiellement ou totalement sous forme logicielle, la séquence d'instructions correspondante pourra être stockée dans un moyen de stockage amovible (tel que par exemple une disquette, un 20 CD-ROM ou un DVD-ROM) ou non amovible, ce moyen de stockage étant lisible partiellement ou totalement par un ordinateur ou un microprocesseur.

Claims (10)

REVENDICATIONS
1. Encodeur temps-réel et contraint en débit, du type comprenant : - une mémoire tampon de capture (2), stockant des trames en attente d'être traitées - un module d'encodage (3), recevant des trames issues de la mémoire tampon de capture et délivrant des trames compressées ; - une mémoire tampon intermédiaire (4), stockant les trames compressées issues du module d'encodage ; et une mémoire tampon d'émission (5 ; 5'), stockant des paquets de données, résultant du découpage de trames compressées issues de la mémoire tampon intermédiaire, et émettant, avec un débit contrôlé, lesdits paquets de données sur un canal de communication ; ledit encodeur étant caractérisé en ce qu'il comprend un module de contrôle (RTCC ; RTCCC) comprenant des moyens de réglage dynamique de la taille maximale de la mémoire tampon de capture, permettant d'augmenter temporairement la taille maximale de la mémoire tampon de capture tant que la mémoire tampon d'émission n'est pas vide.
2. Encodeur selon la revendication 1, caractérisé en ce que la taille maximale temporaire Mc' de la mémoire tampon de capture est définie par l'équation suivante : M, Me'<_ Mc + D,(t) avec Me la taille maximale initiale de la mémoire tampon de capture, et D,(t) le niveau de remplissage de la mémoire tampon d'émission exprimé en nombre de paquets contenus dans la mémoire tampon d'émission.
3. Encodeur selon l'une quelconque des revendications 1 et 2, caractérisé en ce que le module de contrôle (RTCC ; RTCCC) comprend des moyens de gestion du rythme de vidage de la mémoire tampon intermédiaire en fonction du niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture.
4. Encodeur selon la revendication 3, caractérisé en ce que lesdits moyens de gestion du rythme de vidage de la mémoire tampon intermédiaire appliquent les règles suivantes : 2907990 15 - si N,(t) Mc, alors le vidage de la mémoire tampon intermédiaire se fait de manière synchronisée avec le remplissage de la mémoire tampon de capture, et - si N,(t) > Mc, alors le vidage de la mémoire tampon intermédiaire se fait de manière instantanée et sans synchronisation avec le remplissage de la mémoire 5 tampon de capture, avec M, est la taille maximale initiale de la mémoire tampon intermédiaire, et Nc(t) le niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture.
5. Encodeur selon l'une quelconque des revendications 1 à 4, caractérisé en ce que 10 le module de contrôle (RTCCC) comprend des moyens de réglage dynamique de la complexité du module d'encodage par sélection dynamique d'un niveau de complexité parmi au moins deux niveaux de complexités distincts, en fonction du niveau de remplissage Nc(t) de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture et du niveau de remplissage DM) de la 15 mémoire tampon d'émission exprimé en nombre de paquets contenus dans la mémoire tampon d'émission.
6. Encodeur selon la revendication 5, caractérisé en ce que lesdits moyens de réglage dynamique de la complexité du module d'encodage appliquent les règles suivantes: 20 - si N,(t) >_ k*Mc", avec Me" = M~ + DM), alors réduction de la complexité du module d'encodage, - sinon, pas de réduction de la complexité du module d'encodage, où k<1 et M, est la taille maximale initiale de la mémoire tampon de capture.
7. Encodeur selon la revendication 5, caractérisé en ce que lesdits moyens de 25 réglage dynamique de la complexité du module d'encodage appliquent les règles suivantes : - si N,(t) > k*Mc", avec Mc" = MIN(Mc + DM), Mc + K), et si D,(t) < r*Mv, alors réduction de la complexité du module d'encodage, - sinon, pas de réduction de la complexité du module d'encodage, 2907990 16 où K est une constante positive, k<1, r<1, M, est la taille maximale initiale de la mémoire tampon de capture et M, est la taille maximale de la mémoire tampon d'émission.
8. Encodeur selon l'une quelconque des revendications 6 et 7, caractérisé en ce que 5 k est compris entre 0,7 et 0,9, en ce que r est compris entre 0,2 et 0,4, et en ce que K=Mc/2.
9. Procédé de contrôle d'un encodeur temps-réel et contraint en débit, du type comprenant : - une mémoire tampon de capture (2), stockant des trames en attente d'être traitées 10 - un module d'encodage (3), recevant des trames issues de la mémoire tampon de capture et délivrant des trames compressées ; - une mémoire tampon intermédiaire (4), stockant les trames compressées issues du module d'encodage ; et 15 une mémoire tampon d'émission (5 ; 5'), stockant des paquets de données, résultant du découpage de trames compressées issues de la mémoire tampon intermédiaire, et émettant, avec un débit contrôlé, lesdits paquets de données sur un canal de communication ; ledit procédé étant caractérisé en ce qu'il comprend une étape de réglage dynamique de 20 la taille maximale de la mémoire tampon de capture, permettant d'augmenter temporairement la taille maximale de la mémoire tampon de capture tant que la mémoire tampon d'émission n'est pas vide. 13. Procédé selon la revendication 9, caractérisé en ce que la taille maximale temporaire Mc' de la mémoire tampon de capture est définie par l'équation suivante : 25 Mes M,'s M, + Dy(t) avec Me la taille maximale initiale de la mémoire tampon de capture, et D,(t) le niveau de remplissage de la mémoire tampon d'émission exprimé en nombre de paquets contenus dans la mémoire tampon d'émission. 14. Procédé selon l'une quelconque des revendications 9 et 10, caractérisé en ce 30 qu'il comprend une étape de gestion du rythme de vidage de la mémoire tampon 2907990 17 intermédiaire en fonction du niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture. 12. Procédé selon la revendication 11, caractérisé en ce que dans ladite étape de gestion du rythme de vidage de la mémoire tampon intermédiaire, les règles 5 suivantes sont appliquées : - si Nc(t) Me, alors le vidage de la mémoire tampon intermédiaire se fait de manière synchronisée avec le remplissage de la mémoire tampon de capture, et - si N,(t) > Mc, alors le vidage de la mémoire tampon intermédiaire se fait de manière instantanée et sans synchronisation avec le remplissage de la mémoire 10 tampon de capture, avec M, est la taille maximale initiale de la mémoire tampon intermédiaire, et Nc(t) le niveau de remplissage de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture. 13. Procédé selon l'une quelconque des revendications 9 à 12, caractérisé en ce qu'il 15 comprend une étape de réglage dynamique de la complexité du module d'encodage par sélection dynamique d'un niveau de complexité parmi au moins deux niveaux de complexités distincts, en fonction du niveau de remplissage N,(t) de la mémoire tampon de capture exprimé en nombre de trames contenues dans la mémoire tampon de capture et du niveau de remplissage Dv(t) de la mémoire tampon d'émission exprimé en nombre 20 de paquets contenus dans la mémoire tampon d'émission. 14. Procédé selon la revendication 13, caractérisé en ce que dans ladite étape de réglage dynamique de la complexité du module d'encodage, les règles suivantes sont appliquées : - si Nc(t) ? k*Me", avec Mc" = Mc + Dv(t), alors réduction de la complexité du 25 module d'encodage, - sinon, pas de réduction de la complexité du module d'encodage, où k<1 et M, est la taille maximale initiale de la mémoire tampon de capture. 15. Procédé selon la revendication 1:3, caractérisé en ce que dans ladite étape de réglage dynamique de la complexité du module d'encodage, les règles suivantes sont 30 appliquées : 2907990 18 - si N,(t) > k*Mc", avec Mc" = MIN(Me + DM), Me + K), et si DM) < r*M,ä alors réduction de la complexité du module d'encodage, - sinon, pas de réduction de la complexité du module d'encodage, où K est une constante positive, k<1, r<1 , M, est la taille maximale initiale de la 5 mémoire tampon de capture et M, est la taille maximale de la mémoire tampon d'émission. 16. Procédé selon l'une quelconque des revendications 14 et 15, caractérisé en ce que k est compris entre 0,7 et 0,9, en ce que r est compris entre 0,2 et 0,4, et en ce que K=Mc/2.
10 17. Produit programme d'ordinateur téléchargeable depuis un réseau de communication et/ou enregistré sur un support lisible par ordinateur et/ou exécutable par un processeur, caractérisé en ce qu'il comprend des instructions de code de programme pour l'exécution des étapes du procédé selon au moins une des revendications 9 à 16, lorsque ledit programme est exécuté sur un ordinateur. 15 18. Moyen de stockage, éventuellement totalement ou partiellement amovible, lisible par un ordinateur, stockant un jeu d'instructions exécutables par ledit ordinateur pour mettre en oeuvre le procédé selon au moins une des revendications 9 à 16.
FR0609473A 2006-10-27 2006-10-27 Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants. Active FR2907990B1 (fr)

Priority Applications (2)

Application Number Priority Date Filing Date Title
FR0609473A FR2907990B1 (fr) 2006-10-27 2006-10-27 Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants.
US11/875,099 US8254442B2 (en) 2006-10-27 2007-10-19 Real time encoder with time and bit rate constraint, method, computer program product and corresponding storage means

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
FR0609473A FR2907990B1 (fr) 2006-10-27 2006-10-27 Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants.

Publications (2)

Publication Number Publication Date
FR2907990A1 true FR2907990A1 (fr) 2008-05-02
FR2907990B1 FR2907990B1 (fr) 2009-04-17

Family

ID=38055385

Family Applications (1)

Application Number Title Priority Date Filing Date
FR0609473A Active FR2907990B1 (fr) 2006-10-27 2006-10-27 Encodeur temps-reel contraint en debit et en delai,procede, produit programme d'ordinateur et moyen de stockage correspondants.

Country Status (2)

Country Link
US (1) US8254442B2 (fr)
FR (1) FR2907990B1 (fr)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9167007B2 (en) * 2008-06-06 2015-10-20 Amazon Technologies, Inc. Stream complexity mapping
US9047236B2 (en) * 2008-06-06 2015-06-02 Amazon Technologies, Inc. Client side stream switching
CN101374233B (zh) * 2008-10-23 2011-09-07 杭州华三通信技术有限公司 视频流帧率适配方法和装置及fpga芯片及视频流处理设备
US8244899B1 (en) * 2009-05-19 2012-08-14 Conviva Inc. Delivering a video stream
US9521178B1 (en) 2009-12-21 2016-12-13 Amazon Technologies, Inc. Dynamic bandwidth thresholds
US8527649B2 (en) 2010-03-09 2013-09-03 Mobixell Networks Ltd. Multi-stream bit rate adaptation
US8832709B2 (en) 2010-07-19 2014-09-09 Flash Networks Ltd. Network optimization
US8688074B2 (en) 2011-02-28 2014-04-01 Moisixell Networks Ltd. Service classification of web traffic
JP2013064996A (ja) * 2011-08-26 2013-04-11 Nikon Corp 三次元画像表示装置
US9979970B2 (en) * 2014-08-08 2018-05-22 Qualcomm Incorporated System and method for determining buffer fullness for display stream compression
US10979747B2 (en) * 2017-12-21 2021-04-13 Arris Enterprises Llc Statistical multiplexing system for variable bit rate encoding with constant bit rate encoder
US10602139B2 (en) * 2017-12-27 2020-03-24 Omnivision Technologies, Inc. Embedded multimedia systems with adaptive rate control for power efficient video streaming

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0562221A1 (fr) * 1992-03-27 1993-09-29 ALCATEL BELL Naamloze Vennootschap Décodeur vidéo
US20030123540A1 (en) * 2001-12-27 2003-07-03 Koninklijke Philips Electronics N.V. Dynamic control in complexity-constrained data compression
EP1349334A1 (fr) * 2002-03-28 2003-10-01 Siemens Schweiz AG Methode pour ajuster la mémoire-gigue dans une passerelle de media
EP1358542A1 (fr) * 2001-02-08 2003-11-05 Nokia Corporation Procede et systeme de tamponnage de media continus
US20040047367A1 (en) * 2002-09-05 2004-03-11 Litchfield Communications, Inc. Method and system for optimizing the size of a variable buffer

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070271358A1 (en) * 2004-01-16 2007-11-22 William Gaddy System and Method for Dynamically Configured, Asymmetric Endpoint Video Exchange

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP0562221A1 (fr) * 1992-03-27 1993-09-29 ALCATEL BELL Naamloze Vennootschap Décodeur vidéo
EP1358542A1 (fr) * 2001-02-08 2003-11-05 Nokia Corporation Procede et systeme de tamponnage de media continus
US20030123540A1 (en) * 2001-12-27 2003-07-03 Koninklijke Philips Electronics N.V. Dynamic control in complexity-constrained data compression
EP1349334A1 (fr) * 2002-03-28 2003-10-01 Siemens Schweiz AG Methode pour ajuster la mémoire-gigue dans une passerelle de media
US20040047367A1 (en) * 2002-09-05 2004-03-11 Litchfield Communications, Inc. Method and system for optimizing the size of a variable buffer

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
TSANG-LING SHEU ET AL: "A buffer allocation mechanism for VBR video playback", COMMUNICATION TECHNOLOGY PROCEEDINGS, 2000. WCC - ICCT 2000. INTERNATIONAL CONFERENCE ON BEIJING, CHINA 21-25 AUG. 2000, PISCATAWAY, NJ, USA,IEEE, US, vol. 2, 21 August 2000 (2000-08-21), pages 1641 - 1644, XP010526678, ISBN: 0-7803-6394-9 *

Also Published As

Publication number Publication date
FR2907990B1 (fr) 2009-04-17
US8254442B2 (en) 2012-08-28
US20080101461A1 (en) 2008-05-01

Similar Documents

Publication Publication Date Title
FR2907990A1 (fr) Encodeur temps-reel contraint en debit et en delai,procede, produit programme d&#39;ordinateur et moyen de stockage correspondants.
EP0753831B1 (fr) Méthode modifiée de leaky-bucket
CN108024126A (zh) 网络直播视频调整方法、装置、电子设备和存储介质
US8660181B2 (en) Method of compressing video data and a media player for implementing the method
CN107846590B (zh) 一种视频编码的方法和视频编码器
CN103327252B (zh) 拍摄装置及其拍摄方法
CN105142002B (zh) 音/视频直播方法、装置及控制方法、装置
JP2022524639A (ja) ピア・トゥ・ピアネットワークにおけるストリーミングコンテンツの配信方法
CN105323527B (zh) 用于时移视频的曝光计量的系统和方法
FR2932938A1 (fr) Procede et dispositif de transmission de donnees
FR2917552A1 (fr) Procede de regulation de la gigue de transmission au sein d&#39;un terminal de reception
FR2975555A1 (fr) Methode d&#39;adaptation dynamique du debit de reception et recepteur associe
CN105898358B (zh) 视频数据的发送方法及装置
CN108881931A (zh) 一种数据缓冲方法及网络设备
KR101726586B1 (ko) 비디오 스트림을 송신하기 위한 방법
CN104168218B (zh) 抖动缓冲方法及装置
WO2015131934A1 (fr) Système et procédé de diffusion en continu et en direct d&#39;une vidéo
FR2946820A1 (fr) Procede de transmission de donnees et dispositif associe.
EP0716395B1 (fr) Procédé pour le décodage d&#39;images comprimées
EP3780632A1 (fr) Systeme de distribution d&#39;un contenu audiovisuel
CN113409801B (zh) 用于实时音频流播放的噪音处理方法、系统、介质和装置
EP3843409A1 (fr) Procede d&#39;allocation pour liaison bas-debit
WO1996019081A1 (fr) Dispositif de multiplexage numerique de programmes video
EP2075960B1 (fr) Système et procédé d&#39;adaptation des flux de contenu vidéo à la variabilité des conditions de transmission d&#39;un réseau radiotéléphonique et à la dynamique du contenu de la source vidéo
FR2917919A1 (fr) Procede et dispositif de transmission d&#39;images.

Legal Events

Date Code Title Description
PLFP Fee payment

Year of fee payment: 10

PLFP Fee payment

Year of fee payment: 11

PLFP Fee payment

Year of fee payment: 12

PLFP Fee payment

Year of fee payment: 13

PLFP Fee payment

Year of fee payment: 14

PLFP Fee payment

Year of fee payment: 15

TP Transmission of property

Owner name: MK SYSTEMS USA INC., US

Effective date: 20201210

TP Transmission of property

Owner name: MK SYSTEMS USA INC., US

Effective date: 20201216

PLFP Fee payment

Year of fee payment: 16

PLFP Fee payment

Year of fee payment: 17

PLFP Fee payment

Year of fee payment: 18