Codage vidéo - Meilleure tolérance à la perte de paquets

Sep 25, 2018

Codage vidéo - Meilleure tolérance à la perte de paquets


Video Coding - Better Packet Loss Tolerance.png

Le flux vidéo H.264 actuel (non hiérarchique) est très développé en termes de compression de données, et toutes les méthodes apprises à partir de livres sont utilisées lors de la compression de données. L'un des plus importants est d'envoyer des incréments. information. Si une image vidéo est légèrement modifiée en fonction de l'image précédente, il n'est pas nécessaire de transmettre les informations qui n'ont pas été modifiées lors de la transmission de l'image. Le codec ne transmettra que les informations incrémentielles et informera le récepteur: "Ces pixels ont fait de tels changements alors que les autres pixels restent intacts." De cette manière, les informations à transmettre sont bien inférieures aux informations transmises par l'image de la trame entière, de sorte que l'effet de compression est nettement amélioré.

 

Toutefois, lorsque le réseau perd des paquets, l’inconvénient de ce procédé de transmission d’informations incrémentielles sera mis en évidence. Une fois qu'un paquet est perdu, le destinataire ne peut pas obtenir les dernières informations de modification de la trame d'image vidéo, de sorte que l'image vidéo présente une légère erreur. Lorsque le prochain paquet est atteint, l'image elle-même est construite sur la mauvaise information, la qualité de l'image est encore pire. En réponse à ce problème, le codec actuel utilise un procédé pour transmettre de temps en temps des informations de trame d'image complètes. Une fois qu'une perte de paquet survient, le destinataire peut demander de mettre à jour une image complète pour accélérer le processus de découpe. Cependant, cela entraînera un délai de réseau complet, plus le temps de traitement interne du codec, le résultat est évident.

 

Certains fournisseurs utilisent également des algorithmes de correction d'erreur directe (FEC) pour résoudre ce problème. FEC est un type d'algorithme de codage par blocs qui améliore la précision en créant des informations redondantes et en transmettant les informations redondantes avec le flux de paquets d'origine. Ces informations redondantes peuvent aider à reconstituer les paquets perdus dans le réseau, à condition que les informations correctes et les informations redondantes soient suffisantes. Cette méthode sonne bien, mais bien sûr ça coûte un peu. Etant donné que le codec doit également envoyer des informations redondantes, les besoins en bande passante du réseau augmentent en conséquence. Certains codecs garantissent une bande passante de transmission soutenue (vidéo plus FEC) en sacrifiant la bande passante allouée à la vidéo. De toute évidence, cela nuira à la qualité du flux vidéo. De plus, dans l'algorithme FEC, avant que le code FEC soit transmis, un paquet de données doit être créé et le code FEC doit être calculé. Du côté de la réception, un paquet de données et des informations redondantes doivent être collectés pour reconstruire le paquet de données perdu, ce qui augmente inévitablement le délai. L'augmentation du délai réduira l'interactivité de la communication vidéo et augmentera la difficulté de la conversation bidirectionnelle.

 

Alors, que peut résoudre SVC ce problème? Nous savons que SVC crée des images vidéo via une couche de base et une ou plusieurs couches d'amélioration, qui sont transportées dans différents paquets de données sur le réseau, l'impact de la perte des paquets de données de couche de base et le résultat d'un codage non hiérarchique. C'est cohérent, mais l'impact de la perte de paquets de la couche d'amélioration est beaucoup plus faible. Etant donné que la couche d'amélioration est basée sur la couche de base plutôt que sur l'image avant, la perte de paquets de la couche d'amélioration ne provoque qu'une netteté temporaire et une dégradation de la cadence sans affecter l'architecture de base de l'image vidéo.

 

Le code FEC peut protéger les informations de couche de base du flux vidéo SVC de la même manière que le codage non hiérarchique. Dans les communications vidéo SVC avec des exigences de résolution plus faibles, l’utilisation des codes FEC présente également les limitations, les frais généraux et les problèmes de retard du codage non hiérarchique à faible bande passante. Dans les exigences de bande passante plus élevées, la différence entre les techniques de codage vidéo multiniveau et non-couche est très évidente. Cela est dû au fait qu’il n’ya qu’une surcharge dans la couche de base, mais pas dans la couche d’amélioration. Par exemple, si le code FEC ajoute un total de 20% de surcharge et que la couche de base n'occupe que 25% de la bande passante de l'ensemble de la communication vidéo, c'est-à-dire que le code FEC n'occupe que 5% de la toute la communication vidéo. Bande passante, tandis que les codes FEC occupent 20% de la bande passante totale dans le codage vidéo non superposable.

 

Par conséquent, les avantages de la technologie de codage vidéo en couches se reflètent ici dans la combinaison de l’architecture du flux vidéo en couches et de la protection FEC de la couche de base. Pour les appels à faible bande passante, les effets obtenus par le codage vidéo en couches et le codage vidéo sans couche sont similaires. Cependant, dans les appels à large bande passante, le codage vidéo en couches peut fournir une qualité vidéo supérieure dans un réseau facile à déposer des paquets, et nécessite moins de protection que le codage vidéo non-couches.


Vous pourriez aussi aimer