Existe-t-il un type de vidéo pour l'animation vectorielle?


10

Existe-t-il un type de vidéo vectorielle, de préférence open-source, afin qu'un clip animé puisse être produit en utilisant des "règles" au lieu de la compression de pixels?

Cela signifierait une vidéo indépendante de la résolution sans perte. S'il existe, un lien vers les spécifications serait utile.

Réponses:


13

Il y en avait un, mais il est tombé en désuétude et n'est plus utilisé très souvent, principalement en raison du manque de support mobile, mais aussi en raison de problèmes de sécurité qu'il a créés. Cela s'appelait Flash.


:) Alors que ce pourquoi il est désactivé sur mon ordinateur! Quoi qu'il en soit, merci. Je ne savais pas que c'était basé sur des vecteurs. Je suppose que le codec vidéo (si c'est le bon terme dans ce cas) est flv. Correct?
ispiro

D'ACCORD. Je vois maintenant que c'est SWF. Sachant que Flash est basé sur des vecteurs, j'ai maintenant trouvé qu'il y en avait plus, comme EVA et XARA. Merci.
ispiro

Il convient également de souligner que j'étais semi-sarcastique et semi-sérieux dans ma réponse. Ce n'est vraiment pas un format vidéo. La vidéo, par définition, est raster, mais il existe des formats d'animation lisibles, dont Shockwave Flash (maintenant connu sous le nom de Flash) est le plus couramment utilisé. Comme vous l'avez déterminé, Flash Video est une chose différente et est une forme de vidéo raster conçue pour être intégrée dans une animation Flash (qui a en fait grandi pour qu'un système de script complet soit autorisé à l'intérieur de son exécution.)
AJ Henderson

8

L'Université de Bath a publié il y a quelques années un document démontrant un codec vidéo à base de vecteur , avec un communiqué de presse demandant " le pixel est-il sur le point de mourir? ". Étrangement depuis lors, le pixel n'est pas mort, en fait, il y en a encore plus autour qu'avant.

Vous pourriez faire valoir que la plupart des codecs vidéo utilisent réellement des vecteurs: DCT (ou similaire), - qui est utilisé dans à peu près tous les codecs vidéo autour - est basé sur l'idée que vous pouvez représenter n'importe quel signal parfaitement comme la somme de plusieurs ondes cosinus, ou en d'autres termes comme un tas de vecteurs ajoutés ensemble.

Mais cela ne signifie pas que vous pouvez mettre à l'échelle un film DV de définition standard jusqu'à 4K sans aucune perte de netteté. La raison en est que même si une image encodée DCT est essentiellement un ensemble de fonctions mathématiques, et est donc indépendante de la résolution, le signal qu'elles encodent est limité en bande passante aux données originales qui ont été capturées; la caméra est un filtre passe-bas, filtrant tout détail plus fin que la résolution du capteur (il est probablement plus précis de dire n'importe quel détail plus fin que la limite de Nyquist du capteur ~ = 1/2 de la résolution). En d'autres termes, aucun codec ne peut coder des informations qui n'étaient pas là en premier lieu.

Ainsi, même le codec de l'Université de Bath ne peut pas faire ce qu'il fait dans les films où vous pouvez améliorer à l'infini une caméra de sécurité floue et à faible résolution jusqu'à ce qu'elle semble sortir d'un Hasselblad.

L'animation Flash, comme le mentionne AJ Henderson, est un format basé uniquement sur des vecteurs, mais elle est uniquement destinée au contenu créé en tant que vecteurs, et ne doit pas être confondue avec la vidéo Flash (conteneur flv) qui est un format raster dans lequel les pixels sont encodés avec Sorenson Spark ou VP6 ou bon ol 'h.264 (qui utilise DCT).


Merci. Étant donné que je fais référence à la création d' animations à l'aide de vecteurs, ce serait un ajustement parfait, bien que, comme vous l'avez dit, il ne puisse pas remplacer d'autres codecs pour la vidéo capturée par une caméra. Maintenant, je me demande s'il est pratique d'écrire mon propre code pour transformer un ensemble de coordonnées (etc.) en vidéo. Par opposition à l'utilisation d'un logiciel tiers.
ispiro

Il semble que vous devriez apprendre à utiliser l'élément de canevas HTML5.
stib

C'est un très bon point sur le fait que la plupart des estimations de mouvement sont en fait basées sur des vecteurs, mais pas vraiment dans le contexte auquel l'OP fait référence car elles ne peuvent pas évoluer indéfiniment. Ce truc de Bath est assez impressionnant. Très belle détection des bords et cheminement d'après ce que j'ai pu voir dans l'échantillon.
AJ Henderson

Pas seulement une estimation de mouvement. Le DCT est intra-trame, il est utilisé dans de nombreux codecs, même le codec d'image JPEG.
stib

6

SVG prend en charge l'animation à l'aide de JavaScript et de l'élément d'animation. Cela signifie cependant utiliser un navigateur ou un rendu intégrable comme WebKit pour le rendre.

Les jeux plus anciens utilisaient souvent leurs propres formats d'animation vectorielle. Vous pourriez examiner les formats d'actifs pris en charge par les implémentations open source d'anciens moteurs de jeu comme ScummVM et Sarien. Il existe des extracteurs et des éditeurs d'actifs, mais je ne suis pas sûr qu'il y ait des visualiseurs autonomes, vous devrez donc peut-être extraire le code d'animation vous-même si vous empruntiez cette voie.

Puis-je vous demander quel est votre objectif final? Je suis dans les graphiques vectoriels pour la même raison que j'aime les MOD et la musique à puce; les formats les plus récents sont énormes et gourmands en CPU, et franchement, cela ressemble à de la triche par rapport à ce qui pourrait être accompli sur un PC avec 640k de RAM ou même un Commodore 64.


2

Voici quelques recherches sur ce sujet:

Résolution Conversion vidéo 2D indépendante de bande dessinée https://www.researchgate.net/publication/305390110_Resolution_Independent_2D_Cartoon_Video_Conversion

Vectorisation vidéo via remaillage tétraédrique http://wangchuan.github.io/archive/research/videovec/paper.pdf

Codec vidéo pour les animations de dessins animés classiques avec lecture accélérée matérielle http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca

Je me souviens avoir lu ce dernier lorsque je regardais de nombreux dessins animés et anime en ligne il y a quelques années. La résolution vidéo que vous obtenez avec de nombreux portails de streaming, 480p (ou même 720p), ne rend tout simplement pas justice à ces jolis dessins de contour lorsqu'ils sont affichés sur des écrans Full HD / 4k.

L'IIRC, les auteurs dudit article ont même fourni des téléchargements d'exemples de fichiers vidéo et de leur lecteur à l'époque (comme preuve de concept), mais je ne les trouve pas maintenant.

Un problème avec les animations basées sur des règles / calculs (graphiques vectoriels; jeux rendus en temps réel, flash ...) est qu'il est difficile de prédire si la machine qui lit la vidéo sera capable de restituer les choses assez rapidement. Mais vous pouvez également rencontrer ce problème de performances avec les codecs vidéo habituels. Certains ordinateurs portables bon marché que je possédais ne pouvaient pas décoder les vidéos full hd / 4k à la vitesse nécessaire pour la lecture ...

Pourtant, avec les graphiques vectoriels / calcul, le problème est pire: il n'y a potentiellement aucune limite à la puissance de calcul dont vous pourriez avoir besoin pour rendre une image. Pensez-y: les films CGI peuvent être distribués comme le code et les ressources utilisés pour les produire et votre machine peut les rendre à n'importe quelle fréquence d'images et résolution. Le problème est que ces films n'étaient pas conçus pour cela. Le calcul d'un cadre peut prendre des heures sur votre machine, sans compter que vous n'avez probablement même pas assez d'espace sur le disque dur pour stocker tous les actifs en pleine résolution que leur renderfarm utilise.

Les ordinateurs d'aujourd'hui pourraient cependant faire Toy Story en temps réel. De plus, si vous avez une plate-forme de jeu haut de gamme, les cinématiques graphiques en temps réel sont bien sûr également un type de vidéo indépendante de la résolution.


Merci, moi du passé, d'avoir écrit ceci, je pensais que je ne trouverais plus jamais de codec vidéo pour des animations de dessins animés classiques avec lecture accélérée matérielle dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca ...
masterxilo

Bon point sur le rendu en temps réel. Je me demande si quelqu'un crée des films avec des outils comme Unity et les livre sous forme d'exécutables.
stib

0

Il y a un codec vectoriel que j'utilise - mais il ne peut pas vivre en dehors de l'édition.

Flash exporte un format de fichier swf qui conserve les informations du vecteur de mouvement lorsqu'elles sont appliquées dans After Effects (je ne sais pas si cela fonctionne dans Premier. NE FONCTIONNE PAS dans Final Cut). Lorsque ces fichiers sont importés dans AE, ils conservent leur résolution indépendamment de l'échelle ou du zoom. Toutes les autres fonctionnalités applicables aux calques de forme s'appliquent aux swfs.

Presque toutes les autres applications visuelles ne reconnaissent pas le format swf, ses utilisations sont donc très limitées. Mais le codec existe.


0

GameMaker studio prend en charge l'art et l'animation SWF / Vector. mais bien sûr, c'est pour les jeux vidéo. Mais je suis sûr qu'avec le fonctionnement du jeu, vous pouvez créer vos propres vidéos de démarrage avec.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.