Language selection

Search

Patent 3000557 Summary

Third-party information liability

Some of the information on this Web page has been provided by external sources. The Government of Canada is not responsible for the accuracy, reliability or currency of the information supplied by external sources. Users wishing to rely upon this information should consult directly with the source of the information. Content provided by external sources is not subject to official languages, privacy and accessibility requirements.

Claims and Abstract availability

Any discrepancies in the text and image of the Claims and Abstract are due to differing posting times. Text of the Claims and Abstract are posted:

  • At the time the application is open to public inspection;
  • At the time of issue of the patent (grant).
(12) Patent Application: (11) CA 3000557
(54) English Title: METHOD FOR ENCODING STREAMS OF VIDEO DATA BASED ON GROUPS OF PICTURES (GOP)
(54) French Title: PROCEDE D'ENCODAGE DE FLUX DE DONNEES VIDEO BASEES SUR DES GROUPEMENTS D'IMAGES (GOP)
Status: Report sent
Bibliographic Data
(51) International Patent Classification (IPC):
  • H04N 19/46 (2014.01)
  • H04N 21/236 (2011.01)
  • H04N 21/2381 (2011.01)
  • H04N 21/2383 (2011.01)
  • H04N 21/4363 (2011.01)
  • H04N 19/177 (2014.01)
  • H04N 19/65 (2014.01)
  • H04L 65/60 (2022.01)
  • H03M 13/03 (2006.01)
  • H04L 1/00 (2006.01)
  • H04L 29/06 (2006.01)
(72) Inventors :
  • KEIFLIN, PIERRE (France)
  • CARNIEL, CHRISTOPHE (France)
  • DEDISSE, DANIEL (France)
(73) Owners :
  • VOGO (France)
(71) Applicants :
  • VOGO (France)
(74) Agent: SMART & BIGGAR LP
(74) Associate agent:
(45) Issued:
(86) PCT Filing Date: 2016-09-30
(87) Open to Public Inspection: 2017-04-06
Examination requested: 2021-07-27
Availability of licence: N/A
(25) Language of filing: French

Patent Cooperation Treaty (PCT): Yes
(86) PCT Filing Number: PCT/FR2016/052508
(87) International Publication Number: WO2017/055771
(85) National Entry: 2018-03-29

(30) Application Priority Data:
Application No. Country/Territory Date
1559299 France 2015-09-30

Abstracts

English Abstract

A method for encoding streams of video data based on groups of pictures (GOP) used in video coding to define the arrangement order of the images with internal coding and with predictive coding for generating a visible image, including redundancy transmission error correction means for transmissions over a wireless network controlled by a local data communication protocol. The video stream consists of consecutive data packets G, each packet G comprising a first set M containing the video data to be transmitted, and a second set comprising redundancy data obtained by a redundancy algorithm. According to the method, the first data set M is composed of all the data of at least one group of pictures (GOP).


French Abstract

Procédé d'encodage de flux de données vidéos basées sur des groupements d'images (GOP) utilisés en codage vidéo pour définir l'ordre dans lequel sont disposées les images à codage interne et à codage prédictif permettant la génération d'une image visible, incluant des moyens de correction d'erreurs de transmission par redondance, pour des transmission sur un réseau sans fil régi par un protocole de communication de données en local. Le flux vidéo est constitué de paquets G de données successifs, chaque paquet G comprenant un premier ensemble M contenant les données vidéos à transmettre, et un second ensemble contenant des données de redondance obtenues par un algorithme de redondance» Selon le procédés le premier ensemble de données M est constitué à partir de toutes les données d'au moins un groupement d"images (GOP).

Claims

Note: Claims are shown in the official language in which they were submitted.


8
REVENDICATIONS
1. Procédé d'encodage de flux de données vidéos basées sur
des groupements d'images (GOP) utilisés en codage vidéo
peur définir l'ordre dans lequel sont disposées les images
a codage interne et à codage prédictif permettant la
génération d'une image, visible, incluant des moyens de
correction d'erreurs de transmission par redondance, pour
des transmission sur un réseau sans fil régi par un
protocole de communication de données en local, ledit flux
vidéo étant constitué de paquets G de données successifs,
chaque paquet G comprenant un. premier ensemble M contenant
les données vidéos à transmettre, et un second ensemble
contenant des données de redondance obtenues par un
algorithme de redondance, caractérisé en ce que le premier
ensemble de données M est constitué à partir de toutes les
données d'au moins un. groupement d'images (GOP).
2. Procédé d'encodage de flux de données vidéos selon la
revendication précédente, caractérise en ce que la taille
de toutes les images du groupement d'images est ajoutée
dans les données M, dans une: zone jouxtant chaque image.
3. Procédé d'encodage de flux de données vidéos selon l'une
des revendications précédentes, caractérisé en ce qu'une
table d'index contenant la position absolue de chaque
image du groupement d'images est ajoutée dans les données
4. Procède d'encodage de flux de données vidéos selon l'une
des revendications précédentes, caractérisé en ce que
chaque paquet G est organisé en K premiers blocs de données
de taille prédéterminée L et N blocs de redondance de
taille L, K étant égal à MIL, l'a valeur entière par excès
du résultat de la division M/L étant attribuée à K si M/L
n'est pas un nombre entier.
5. Procédé d'encodage de flux de données vidéos selon la
revendication précédente, caractérisé en ce que la portion
de bloc correspondant à la différence (KxL - M), qui existe

9
si M/L n'est pas un nombre entier, est remplie par des
données identifiées comme étant des données de bourrage,
par exemple des zéros.
6. Procédé d'encodage de flux de données vidéos. selon l'une
des revendications 4 et 5, caractérisé en ce que, pour
chacun des blocs K et N, des informations sont ajoutées,
comportant:
- le numéro du groupement d'images (GOP), incrémenté pour
chaque nouveau groupement d'images ;
- La. valeur de K, incrémentée de 1 à K pour chaque bloc
K ;
- La valeur de N, commençant à K+1 et se terminant à N+K;
- La valeur de L ; et
- Le numero du bloc (de 1 à K+N).
7. Flux vidéos organisés selon le procédé des revendications
précédentes et comportant une succession de paquets de
données G constitués chacun d'un premier ensemble de
données vidéos natives à transmettre et d'un second
ensemble de données redondantes de correction d'erreurs,
caractérisé en ce que le premier ensemble contient toutes
les données d'au moins un groupement d'images (GOP).

Description

Note: Descriptions are shown in the official language in which they were submitted.


CA 03000557 2018-03-29
WO 2017/055771 PCT/FR2016/052508
1
Procédé d'encodege de flux de données vidéo basées sur des
groupements d'images (GOP)
La présente invention a trait à un procédé d'encodage de flux
de données vidéos en vue de l'amélioration de la fiabilité et de
la qualité de réception de ces flux dans un réseau numérique sans
fil, régi par un protocole de communication par exemple de type
WIFI. Les flux concernés sont envoyés en multidiffueion et
proviennent d'au moins un émetteur les diffusant vers des
dispositifs récepteurs en l'occurrence situés dans un périmètre
relativement restreint, de sorte qu'ils peuvent fonctionner avec
un protocole de communication tel que mentionné, prévu pour
fonctionner dans un environnement plutôt local. Les dispositifs
récepteurs sont alors dotés d'au moins une application logicielle
permettant de traiter et de visualiser l'information reçue.
Plus particulièrement, les données vidéos concernées par
l'invention sont basées sur des groupements d'images (OP)
classiquement utilisés en codage vidéo (notamment dans les normes
MPEG pour la compression, la décompression, le traitement et le
codage vidéo et audio) pour définir l'ordre dans lequel sont
disposées des images à codage interne et à codage prédictif
permettant la génération d'une image visible dans un flux vidéo.
Les flux traités dans le cadre de l'invention comportent par
ailleurs des moyens également classiques de correction des erreurs
de transmission, la correction se faisant en l'occurrence par
redondance et étant réalisée via des algorithmes connus sous le
nom d'algorithmes AL-FEC (pour Application Level Forward Error
Correction) mettant en uvre une fonction matricielle.
sien que le procédé de l'invention puisse trouver de multiples
applications pratiques, puisqu'il optimise de manière très
générale la transmission de flux d'images en temps réel et/ou
quasi-réel, l'une des applications envisagée est la diffusion
pratiquement instantanée d'événements de type rencontres
sportives ou spectacles, dans le périmètre d'une enceinte où a
lieu ledit événement. La qualité des flux vidéos transmis aux
dispositifs cliente permet à titre principal la visualisation

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
2
fluide et de bonne qualité des images vidéos, mais également
d'enrichir la visualisation par des traitements susceptibles de
conférer une valeur ajoutée aux flux reçus, par exemple une
répétition et donc une revisualisation de certaines séquences, le
cas échéant au ralenti ou encore avec une effet de zoom. De tels
traitements n'auraient guère de sens si la qualité des flux vidéos
n'était pas assurée.
Les flux vidéos sont usuellement transmis sous forme de paquets
d'informations successifs qui obéissent à un découpage
prédéterminé en vue de leur envoi, ces paquets comportant très
généralement les images à transmettre, encodées pour la
transmission, et des informations additionnelles qui, en cas de
problème de réception, sont utilisées par les algorithmes de
reconstruction pour tenter de restituer les images initiales,
IS De
fait, le procédé de l'invention s'applique à des flux vidéos
constitués en pratique de paquets G de données successifs, chaque
paquet G comprenant de façon connue un premier ensemble M
contenant les données vidéos natives à transmettre (les images du
flux vidéo encodées) et un second ensemble contenant des données
de redondance obtenues par un algorithme adéquat. Selon
l'invention, le premier ensemble de données est constitué à partir
de toutes les données M d'au moins un groupement d'images (GOP).
Le découpage des paquets d'informations à transmettre dans des
flux vidéos repose donc, de manière innovante selon l'invention,
sur des groupements particuliers d'images développés et définis
dans le cadre de normes organisant l'architecture des paquets de
données vidéos à transmettre. Le système informatique charge
d'envoyer les flux vidéos, et par conséquent les logiciels qui le
pilotent, effectuent dès lors un découpage de l'information qui
est basé sur ces groupements d'images ou GOP formatés de manière
standard dans le monde du codage vidéo, identifiant une
architecture propre basée sur des images codées particulières.
Les données M peuvent relever d'un unique groupement d'images GOP,
dont elles contiennent alors toutes les données, ou de deux ou
plus groupements d'images GOP, avec cette même condition d'inclure
toutes leurs données dans un même paquet,

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
3
Toujours selon l'invention, la taille de toutes les images du
groupement d'images est ajoutée dans les données M du flux vidéo
natif, dans une zone jouxtant chaque image, qui occupé par exemple
deux octets de données par image.
De plus, selon une possibilité, une table d'index contenant la
position absolue de chaque image du groupement d'images peut être
ajoutée dans les données M, ladite table pouvant se trouver dans
une zone par exemple située au début du train d'images codées à
transmettre.
En pratique, selon l'invention, chaque paquet G est ensuite
organisé en K premiers blocs de données de taille prédéterminée L
et N blocs de redondance de taille L, E étant égal à M/L, la
valeur entière par excès du résultat de la division MIL étant
attribuée à K si M/L n'est pas un nombre entier. La portion de
bloc correspondant à la différence (KxL M), qui n'existe que si
M/L n'est pas un nombre entier, est alors remplie par des données
identifiées comme étant des données de bourrage, par exemple des
zéros.
De préférence, selon l'invention, pour chacun des blocs K et
il, des informations sont ajoutées, comportant
- le numéro du groupement d'images (GOP), incrémenté pour
chaque nouveau groupement d'images e
- La valeur de K, incrémentée de I à K pour chaque bloc
- La valeur de N, commençant à K+1 et se terminant à N+K
- La valeur de L ; et
- Le numéro du bloc. (de 1 à K4-N)
La longueur de chacun des blocs K et N devient alors 1.4- n octets
que nécessite le codage des informations ci-dessus. L'existence
de toutes ces données supplémentaires, combinée au découpage en
blocs K 4- N de l'information vidéo native, elle-même basée sur un
standard du codage vidéo (un ou plusieurs GOP), permet d'améliorer
Considérablement la maîtrise de la transmission des flux vidéos.
Les opérations de reconstruction à mettre en uvre dans

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
4
l'hypothèse d'une transmission viciée des flux vidéos sont
clairement facilitées par la nouvelle architecture proposée.
L'invention concerne par ailleurs également un flux vidéo
organisé selon le procédé expliqué ci-dessus et comportant une
succession de paquets de données codées G constitués chacun d'un
premier ensemble de données vidéos natives à transmettre et d'un
second ensemble de données redondantes de correction d'erreurs,
caractérisé en ce que le premier ensemble contient toutes les
données d'au moins un groupement d'images (GOP).
Ce type de flux vidéo, structuré selon le procédé de
l'invention, permet de garantir une réception en une qualité
suffisante d'abord pour que la visualisation des flux transmis
soit simplement confortable, puis également pour que les éventuels
traitements ultérieurs appliqués aux signaux transmis puissent se
baser sur un socle d'information suffisant à leur réalisation.
L'invention aboutit en réalité à organiser l'information,
c'est-à-dire les flux vidéos natifs à envoyer, de façon à
permettre une optimisation de la réponse du système à des défauts
de transmission du signal vidéo, sur la base d'une architecture
suffisamment structurée et riche en informations.
elle va à présent étre décrite plus en détail, en référence aux
figures annexées, représentant un exemple de mise en uvre du
procédé de l'invention montrant différentes étapes possibles pour
l'élaboration de flux vidéos optimisés, pour lesquelles r
- la figure 1 représente un diagramme schématisant
l'organisation d'un groupement d'images tel qu'utilisé dans
le cadre de l'invention ;
- la figure 2 illustre, pour un même paquet de données,
l'adjonction au flux vidéo natif de la taille de chaque image
codée du groupement d'images ;
- la figure 3 montre la taille M du paquet d'image lorsqu'une
table d'index est ajoutée aux données ;
- la figure 4 représente le découpage en K blocs de longueur
L du paquet M de données, avec adjonction éventuelle de
bourrage lorsque K x L > M

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
- la figure 5 illustre l'ajout de N blocs dus à l'encodage par
redondance (FEC) e et
- la figure 6 montre enfin l'adjonction de paramètres
supplémentaires enrichissant l'information à transmettre et
facilitant la mise en uvre ultérieure de la récupération
de données, s'il y a lieu.
En référence à la figure 1, le premier ensemble de données,
constitutif du flux vidéo natif à transmettre avant encodage de
la fonction de correction d>erreurs de transmission, est constitué
à partir de toutes les données d'un groupement d'images. Cette
structure d'organisation de données est bien connue dans le
domaine du codage vidéo, puisqu'elle est notamrent définie par
les normes MPEG. Ces groupements d'images, ou GOP (Group Of
Pictures) dans leur désignation anglo-saxonne, définissent la
nature et l'ordre dans lesquels des images résultants de plusieurs
types de codages particuliers sont agencées. Le groupement de ces
images forme de fait une suite particulière, cette suite étant
répétée périodiquement pour constituer l'encodage d'un flux vidéo.
Il existe ainsi des images à codage interne I et des images à
codage prédictif, ces dernières pouvant être de deux types : les
images P à codage prédictif basé sur une image passée, et les
images B à codage prédictif bidirectionnel. Les images P
contiennent des informations de différence, par prédiction de
mouvement, avec une image I ou une image P passée. Les images B
contiennent des informations de différence avec des images I ou P
passées et futures à l'intérieur d'un groupement d'images.
Pour mémoire, les images I ou P peuvent être utilisées comme
images de référence, alors que ce n'est en général pas le cas avec
les images B. Les images visibles sont in fine générées à partir
des images codées contenues dans un groupement d'images, qui est
d'ailleurs exprimé en nombre d'images codées, lesquelles sont
construites au moment de l'encodage de manière à garantir le taux
de transfert du flux vidéo.
Comme cela apparaît notamment en figure 1, le groupement
d'images N (GOP N) commence par une image de référence Ie, suivie
par des images P et B dans un ordre particulier qui définit ledit

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
6
groupement d'images. Le flux vidéo à transmettre comporte ce
groupement d'images N, suivi par un groupement d'images N.4-1 dont
l'image initiale IN.1 est la nouvelle image de référence, précédé
par un groupement d'images N-1 et ainsi de suite. L'ensemble de
ces groupements d'images GOPN constitue le flux vidéo encodé. Pour
la présente invention, la base du découpage des paquets de données
vidéo à envoyer est constituée de ces groupements d'images. La
figure I n'en représente qu'un, mais il peut y en avoir deux ou
plus dans les paquets de données vidéos M.
La figure 2 illustre une autre caractéristique du procédé de
l'invention, qui maéliore le codage du flux vidéo en ajoutant la
taille de toutes les images 1, P, a du groupement d'images dans
une zone jouxtant chacune de ces images. L'ajout supplémentaire
d'une table d'index, apparaissant en début du paquet de données
vidéos en figure 3, étoffe encore l'information vidéo encodée,
l'ensemble constituant un premier ensemble encodé de taille M.
Cette longueur ou taille M est le point de départ d'un calcul
visant à un découpage en K blocs de longueur L (voire en figure
4), L étant une constante et K un nombre entier. Lorsque le
résultat de la division de M par L n'est pas un entier, la valeur
entière par excès est alors attribuée à K. Dans la plupart des
cas, K x L M. Dans cette hypothèse, ainsi que représenté sur la
figure 4, on procède à un bourrage ou stuffing pour obtenir K
blocs complets de longueur L. 11 s'agit simplement de compléter
le bloc K par des zéros, identifiés par le programme comme valeur
de bourrage.
Jusqu'ici, il a été question de codage vidéo, c'est-à-dire du
codage d'images visant à la transmission du flux vidéo et
permettant in fine la génération d'une image visible après
décodage. Les figures 5 et 6 rajoutent la notion de correction
d'erreurs éventuelles de transmission. Comme mentionnée
auparavant, la correction d'erreur s'effectue en l'espèce par
redondance, en utilisant un algorithme connu en soi de type AL-
PEC (Application Layer Porward Error Correction). L'encodage de
correction d'erreur met en uvre une fonction matricielle qui
aboutît à ajouter N blocs de données supplémentaires, également

CA 03000557 2018-03-29
W02017/055771 PCT/FR2016/052508
7
de longueur L. Ce sont les blocs K-F1 à Kffl apparaissant dans ces
figures 5 et 6.
Selon une dernière opération propre à l'invention, visant à
optimiser encore les possibilités de traitement, des informations
sont ajoutées pour chacun des blocs E et N, comportant notamment
mais non exclusivement :
- le numéro du groupement, incrémenté pour chaque nouveau
groupement d'images (GOP)
- La valeur de X, incrémentée de 1 à K pour chaque bloc
K
- La valeur de N, commençant à K+1 et se terminant à N+K
- La valeur de L ; et
- Le numéro du bloc. (de 1 à Kffl)
Ces informations complémentaires organisent en pratique mieux
l'information, c'est-à-dire l'ensemble des flux vidéos à envoyer,
y compris les blocs de redondance, de façon à permettre une
optimisation de la réponse du système à des défauts de
transmission du signal vidéo. Elles fournissent en fait des
données sur les blocs pris individuellement, afin de mieux tracer
les erreurs et de les localiser dans les paquets de données.
L'invention ne se limite bien entendu pas aux exemples décrits
et expliqués en référence aux figures, mais elle englobe les
variantes et versions qui entrent dans la portée des
revendications.

Representative Drawing
A single figure which represents the drawing illustrating the invention.
Administrative Status

For a clearer understanding of the status of the application/patent presented on this page, the site Disclaimer , as well as the definitions for Patent , Administrative Status , Maintenance Fee  and Payment History  should be consulted.

Administrative Status

Title Date
Forecasted Issue Date Unavailable
(86) PCT Filing Date 2016-09-30
(87) PCT Publication Date 2017-04-06
(85) National Entry 2018-03-29
Examination Requested 2021-07-27

Abandonment History

There is no abandonment history.

Maintenance Fee

Last Payment of $210.51 was received on 2023-06-09


 Upcoming maintenance fee amounts

Description Date Amount
Next Payment if small entity fee 2024-09-30 $100.00
Next Payment if standard fee 2024-09-30 $277.00

Note : If the full payment has not been received on or before the date indicated, a further fee may be required which may be one of the following

  • the reinstatement fee;
  • the late payment fee; or
  • additional fee to reverse deemed expiry.

Patent fees are adjusted on the 1st of January every year. The amounts above are the current amounts if received by December 31 of the current year.
Please refer to the CIPO Patent Fees web page to see all current fee amounts.

Payment History

Fee Type Anniversary Year Due Date Amount Paid Paid Date
Application Fee $400.00 2018-03-29
Maintenance Fee - Application - New Act 2 2018-10-01 $100.00 2018-09-05
Maintenance Fee - Application - New Act 3 2019-09-30 $100.00 2019-09-05
Maintenance Fee - Application - New Act 4 2020-09-30 $100.00 2020-07-31
Maintenance Fee - Application - New Act 5 2021-09-30 $204.00 2021-07-09
Request for Examination 2021-10-01 $816.00 2021-07-27
Maintenance Fee - Application - New Act 6 2022-09-30 $203.59 2022-07-22
Maintenance Fee - Application - New Act 7 2023-10-02 $210.51 2023-06-09
Owners on Record

Note: Records showing the ownership history in alphabetical order.

Current Owners on Record
VOGO
Past Owners on Record
None
Past Owners that do not appear in the "Owners on Record" listing will appear in other documentation within the application.
Documents

To view selected files, please enter reCAPTCHA code :



To view images, click a link in the Document Description column. To download the documents, select one or more checkboxes in the first column and then click the "Download Selected in PDF format (Zip Archive)" or the "Download Selected as Single PDF" button.

List of published and non-published patent-specific documents on the CPD .

If you have any difficulty accessing content, you can call the Client Service Centre at 1-866-997-1936 or send them an e-mail at CIPO Client Service Centre.


Document
Description 
Date
(yyyy-mm-dd) 
Number of pages   Size of Image (KB) 
Request for Examination 2021-07-27 5 136
Examiner Requisition 2022-10-04 5 241
Amendment 2023-02-03 17 748
Claims 2023-02-03 2 110
Abstract 2018-03-29 2 94
Claims 2018-03-29 2 121
Drawings 2018-03-29 3 86
Description 2018-03-29 7 678
Representative Drawing 2018-03-29 1 18
International Search Report 2018-03-29 14 466
National Entry Request 2018-03-29 3 95
Cover Page 2018-05-02 1 50
Examiner Requisition 2024-04-03 3 152
Examiner Requisition 2023-08-21 3 151
Amendment 2023-10-16 10 297
Claims 2023-10-16 2 80