Gibt es einen vektorbasierten Videotyp, vorzugsweise Open Source, so dass ein animierter Clip mithilfe von "Regeln" anstelle der Pixelkomprimierung erstellt werden kann?
Dies würde verlustfreies, auflösungsunabhängiges Video bedeuten. Wenn es existiert, wäre ein Link zu den Spezifikationen hilfreich.
video
file-formats
codec
ispiro
quelle
quelle
Die University of Bath veröffentlichte vor einigen Jahren ein Papier, in dem ein vektorbasierter Video-Codec demonstriert wurde. In einer Pressemitteilung wurde gefragt, ob das Pixel bald sterben wird . Seltsamerweise ist das Pixel seitdem nicht mehr gestorben, es gibt sogar noch mehr davon als früher.
Man könnte argumentieren, dass die meisten Videocodecs tatsächlich Vektoren verwenden: DCT (oder ähnliches) - das in so ziemlich jedem Videocodec verwendet wird - basiert auf der Idee, dass Sie jedes Signal perfekt als Summe mehrerer Kosinuswellen darstellen können. oder mit anderen Worten als eine Reihe von Vektoren, die zusammenaddiert werden.
Dies bedeutet jedoch nicht, dass Sie einen DV-Film mit Standardauflösung ohne Schärfeverlust auf 4K skalieren können. Der Grund dafür ist, dass obwohl ein DCT-codiertes Bild im Wesentlichen eine Reihe von mathematischen Funktionen ist und daher unabhängig von der Auflösung ist, das Signal, das sie codieren, in der Bandbreite auf die ursprünglichen Daten beschränkt ist, die erfasst wurden; Die Kamera ist ein Tiefpassfilter, der jedes Detail herausfiltert, das feiner als die Auflösung des Sensors ist (es ist wahrscheinlich genauer, jedes Detail feiner als die Nyquist-Grenze des Sensors zu sagen ~ = 1/2 der Auflösung). Mit anderen Worten, kein Codec kann Informationen codieren, die überhaupt nicht vorhanden waren.
Selbst der Codec der University of Bath kann das nicht , was sie in Filmen tun, in denen Sie eine unscharfe Überwachungskamera mit niedriger Auflösung unendlich verbessern können, bis sie aussieht, als stamme sie aus einem Hasselblad.
Die von AJ Henderson erwähnte Flash-Animation ist ein reines vektorbasiertes Format, jedoch nur für Inhalte, die als Vektoren erstellt wurden, und nicht zu verwechseln mit Flash-Video (FLV-Container), einem Rasterformat, in dem die Pixel mit Sorenson Spark codiert werden oder VP6 oder gutes altes h.264 (das DCT verwendet).
quelle
SVG unterstützt Animationen mit JavaScript und dem Animationselement. Dies bedeutet jedoch, dass Sie zum Rendern einen Browser oder einen einbettbaren Renderer wie WebKit verwenden.
Ältere Spiele verwendeten oft ihre eigenen Vektoranimationsformate. Sie können sich die Asset-Formate ansehen, die von Open Source-Implementierungen alter Spiele-Engines wie ScummVM und Sarien unterstützt werden. Es gibt einige Asset-Extraktoren und -Editoren, aber ich bin mir nicht sicher, ob es eigenständige Viewer gibt. Daher müssen Sie den Animationscode möglicherweise selbst extrahieren, wenn Sie diesen Weg gehen möchten.
Darf ich fragen, was Ihr Endziel ist? Ich mag Vektorgrafiken aus dem gleichen Grund, aus dem ich MODs und Chipmusik mag. Die neueren Formate sind riesig und CPU-hungrig, und ehrlich gesagt fühlt es sich wie Betrug an, verglichen mit dem, was auf einem PC mit 640 KB RAM oder sogar einem Commodore 64 erreicht werden könnte.
quelle
Hier einige Recherchen zu diesem Thema:
Auflösungsunabhängige 2D-Cartoon-Videokonvertierung https://www.researchgate.net/publication/305390110_Resolution_Independent_2D_Cartoon_Video_Conversion
Video-Vektorisierung über Tetrahedral Remeshing http://wangchuan.github.io/archive/research/videovec/paper.pdf
Video-Codec für klassische Cartoon-Animationen mit hardwarebeschleunigter Wiedergabe http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca
Ich erinnere mich, dass ich diesen letzten gelesen habe, als ich vor einigen Jahren viele Cartoons und Anime online gesehen habe. Die Videoauflösung, die Sie mit vielen Streaming-Portalen (480p (oder sogar 720p)) erhalten, wird diesen schönen Umrisszeichnungen auf Full-HD / 4k-Displays einfach nicht gerecht.
IIRC, die Autoren dieses Papiers, haben damals sogar Downloads von Beispielvideodateien und deren Player bereitgestellt (als Proof of Concept), aber ich kann sie jetzt nicht finden.
Ein Problem bei regel- / rechnerbasierten Animationen (Vektorgrafiken; in Echtzeit gerenderte Spiele, Flash ...) besteht darin, dass es schwer vorherzusagen ist, ob die Maschine, auf der das Video abgespielt wird, die Dinge schnell genug rendern kann. Sie können dieses Leistungsproblem aber auch mit den üblichen Video-Codecs haben. Einige billige Laptops, die ich besaß, konnten keine vollständigen HD / 4K-Videos mit der für die Wiedergabe erforderlichen Geschwindigkeit dekodieren ...
Bei vektor- / rechnerbasierten Grafiken ist das Problem jedoch noch schlimmer: Die Rechenleistung, die Sie möglicherweise zum Rendern eines Frames benötigen, ist möglicherweise unbegrenzt. Denken Sie darüber nach: CGI-Filme können nur als Code und Assets verteilt werden, mit denen sie erstellt wurden, und Ihr Computer kann sie mit jeder Framerate und Auflösung rendern. Das Problem ist, dass diese Filme nicht dafür entwickelt wurden. Das Berechnen eines Frames kann auf Ihrem Computer Stunden dauern, ganz zu schweigen davon, dass Sie wahrscheinlich nicht einmal über genügend Festplattenspeicher verfügen, um alle Assets in voller Auflösung zu speichern, die von der Renderfarm verwendet werden.
Computer von heute können Toy Story jedoch möglicherweise in Echtzeit ausführen. Wenn Sie ein High-End-Gaming-Rig haben, sind die Echtzeit-Ingame-Grafik-Zwischensequenzen natürlich auch eine Art auflösungsunabhängiges Video.
quelle
Es gibt einen vektorbasierten Codec, den ich verwendet habe - aber er kann nicht außerhalb der Bearbeitung leben.
Flash exportiert ein SWF-Dateiformat, das die Bewegungsvektorinformationen beibehält, wenn es in After Effects angewendet wird (weiß nicht, ob es in Premier funktioniert. Funktioniert NICHT in Final Cut). Wenn diese Dateien in AE importiert werden, behalten sie ihre Auflösung unabhängig von Skalierung oder Zoom bei. Alle anderen Funktionen, die für Formebenen gelten, gelten für SWFS.
Fast jede andere visuelle Anwendung erkennt das SWF-Format nicht, daher sind seine Verwendungsmöglichkeiten sehr begrenzt. Aber der Codec existiert.
quelle
GameMaker Studio unterstützt SWF / Vector Art und Animation. aber das ist natürlich für Videospiele. Aber ich bin mir sicher, dass Sie mit der Funktionsweise von Gamemaker Ihre eigenen bootfähigen Videos erstellen können.
quelle