<p>The University of Bath released a paper demonstrating a <a href="http://www.bath.ac.uk/news/2012/12/11/pixel-die/" rel="nofollow noreferrer">vector-based video codec</a> a couple of years ago, with a press release asking &quot;<em>is the pixel about to die?</em>&quot;. Strangely since then the pixel hasn't died, in fact there are even more of them around than there used to be.</p>
<p>You could argue that most video codecs do actually use vectors: <a href="https://en.wikipedia.org/wiki/Discrete_cosine_transform" rel="nofollow noreferrer">DCT</a> (or similar), - which is used in pretty much every video codec around - is based on the idea that you can represent any signal perfectly as the sum of several cosine waves, or in other words as a bunch of vectors added together.</p>
<p>But that doesn't mean you can scale a standard definition DV movie up to 4K without any loss of sharpness. The reason for this is that even though a DCT encoded image is essentially a bunch of mathematical functions, and is therefore resolution independant, the signal that they encode is limited in bandwidth to the original data that was captured; the camera is a low-pass filter, filtering out any detail finer than the resolution of the sensor (it's probably more precise to say any detail finer than the Nyquist limit of the sensor ~= 1/2 the resolution). In other words, no codec can encode information that wasn't there in the first place.</p>
<p>So even the University of Bath's codec can't do <a href="https://www.youtube.com/watch?v=Vxq9yj2pVWk" rel="nofollow noreferrer">that thing they do</a> in movies where you can infinitely enhance a low res, out-of-focus security camera shot until it looks like it came out of a Hasselblad.</p>
<p>Flash animation as AJ Henderson mentions is a pure vector based format, but it is only for content that was created as vectors, and not to be confused with Flash video (flv container) which is a raster format where the pixels are encoded with Sorenson Spark or VP6 or good ol' h.264 (which uses DCT).</p>
<p><strong>EDIT</strong> Worth updating this answer with info about <a href="https://lottiefiles.com/" rel="nofollow noreferrer">Lottie</a>, which is software that makes it easy to use HTML5 vector animation. It's basically a modern replacement for flash. You can use After Effects for example to create animations directly for the web, without rendering. This is not a codec as such, it doesnt encode a raster (pixel based) image like you'd get out of a camera, that's still the job for codecs like h.264 etc.</p>

CC BY-SA 3.0
2014-12-19T11:28:51.080Z
Thanks. Since I'm referring to _creating_ animation using vectors, it would be a perfect fit, though, as you've stated, it might not be a replacement for other codecs for video captured by a camera. Now I'm wondering if it's practical to write my own code to transform a set of coordinates (etc.) into a video. As opposed to using 3rd party software.
ispiro
CC BY-SA 3.0
2014-12-19T11:43:26.520Z
Sounds like you should learn how to use the HTML5 canvas element.
stib
CC BY-SA 3.0
2014-12-19T15:10:27.373Z
That's a pretty good point about the fact that most motion estimation really is kind of vector based, though not really in the context the OP is referring to since it can't scale indefinitely.  That stuff from Bath is pretty impressive though.  Very nice edge detection and pathing from what I could tell from the sample.
AJ Henderson
CC BY-SA 3.0
2015-10-16T06:31:27.630Z
Not just motion estimation. DCT is intra frame, it's used in lots of codecs, even the JPEG image codec.
stib
CC BY-SA 4.0
2014-12-19T06:41:07.570Z
2024-02-13T05:43:50.663Z
2024-02-13T05:43:50.663Z
stib
<p>SVG supports animation using JavaScript and the animate element. That means using a browser or embeddable renderer like WebKit to render it, though.</p>

<p>Older games often used their own vector animation formats. You might look into the asset formats supported by open source implementations of old game engines like ScummVM and Sarien. There are some asset extractors and editors, but I'm not sure if there are any standalone viewers, so you might have to extract the animation code yourself if you were to go this route.</p>

<p>May I ask what your end goal is? I'm into vector graphics for the same reason I like MODs and chip music; the more recent formats are huge and CPU hungry, and frankly it feels like cheating compared to what could be accomplished on a PC with 640k of RAM or even a Commodore 64.</p>

CC BY-SA 4.0
2021-01-10T19:47:12.613Z
A link from [this answer](https://stackoverflow.com/a/22795632/1224775) to "Is there a way to convert SWF into SVG format?" at Stack Overflow may be useful in the future [Macromedia Flash (SWF) to SVG Converter](http://swf2svg.sourceforge.net/). "Animations are planned to be implemented in the next versions."
User5910
CC BY-SA 3.0
2016-06-22T01:11:18.220Z
2016-06-22T01:11:18.220Z
Sean Lynch
<p>Here is some research about this topic:</p>

<p>Resolution Independent 2D Cartoon Video Conversion
<a href="https://www.researchgate.net/publication/305390110_Resolution_Independent_2D_Cartoon_Video_Conversion" rel="nofollow noreferrer">https://www.researchgate.net/publication/305390110_Resolution_Independent_2D_Cartoon_Video_Conversion</a></p>

<p>Video Vectorization via Tetrahedral Remeshing
<a href="http://wangchuan.github.io/archive/research/videovec/paper.pdf" rel="nofollow noreferrer">http://wangchuan.github.io/archive/research/videovec/paper.pdf</a></p>

<p>Video Codec for Classical Cartoon Animations with Hardware Accelerated Playback
<a href="http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca" rel="nofollow noreferrer">http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca</a></p>

<p>I remember reading this last one when I was watching many cartoons and anime online a few years ago. The video resolution you get with many streaming portals, 480p (or even 720p), just doesn't do justice to these nice outline drawings when viewed on full HD/4k displays.</p>

<p>IIRC, the authors of said paper even provided downloads of example video files and their player back then (as a proof of concept), but I cannot find them now.</p>

<p>One problem with rule/computation-based animations (vector graphics;real-time rendered games, flash...) is that it's hard to predict whether the machine playing the video will be able to render the things quickly enough. But you can also have this performance problem with the usual video codecs. Some cheap laptops I owned could not decode full hd/4k videos at the speed necessary for playback...</p>

<p>Still, with vector/computation-based graphics, the problem is worse: There is potentially no limit to the computation power you might need to render a frame. Think about it: CGI movies could be distributed as just the code and assets used to produce them and your machine could render them at any framerate and resolution. The problem is that these movies where not designed for this. Computing a frame might take hours on your machine, not to mention that you probably don't even have enough harddisk space to store all the assets at full resolution which their renderfarm uses.</p>

<p>Computers of today might be able to do <em>Toy Story</em> in real-time though. Also, if you have a high-end gaming rig, the real-time ingame graphics cutscenes are of course also a type of resolution independent video.</p>

CC BY-SA 4.0
2019-03-25T14:03:22.217Z
Thanks, me from the past, for writing this down, I thought I would never find Video Codec for Classical Cartoon Animations with Hardware Accelerated Playback http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca again...
masterxilo
CC BY-SA 4.0
2019-08-06T01:29:46.297Z
Good point about real-time rendering. I wonder if anyone is creating films with tools like Unity and delivering them as executables.
stib
CC BY-SA 3.0
2017-09-10T21:48:50.060Z
2017-09-10T21:48:50.060Z
masterxilo
<p>There is a vector based codec that I've been using - but it can't live outside of editing.</p>

<p>Flash exports an swf file format that maintains the motion vector information when applied in After Effects (don't know if it works in Premier.  DOES NOT work in Final Cut).  When these files are imported into AE, they maintain their resolution regardless of scale or zoom.  All other features applicable to shape layers are applicable to swfs.</p>

<p>Almost every other visual application does not recognize the swf format, so it's uses are very limited.  But the codec DOES exist.</p>

CC BY-SA 3.0
2015-10-13T19:20:58.647Z
2015-10-13T19:20:58.647Z
user11846
<p>GameMaker studio supports SWF/Vector art and animation.  but of course that is for video games.  But I'm sure with how gamemaker works you could  make your own bootable videos with it. </p>

CC BY-SA 3.0
2017-03-05T00:14:54.263Z
2017-03-05T00:14:54.263Z
LordFenixNC
<p>There was one, but it fell in to disuse and isn't used very often anymore, largely because of the lack of mobile support, but also due to security issues it created.  It was called Flash.</p>

CC BY-SA 3.0
2014-12-18T16:30:07.573Z
:) So _that's_ why it's disabled on my computer! Anyway, thanks. I didn't know that it's vector-based. I assume the video codec (if that's the right term in this case) is flv. Correct?
ispiro
CC BY-SA 3.0
2014-12-18T16:38:31.777Z
OK. I now see it's SWF. Knowing about Flash being vector-based, I now found there are more, such as EVA and XARA. Thanks.
ispiro
CC BY-SA 3.0
2014-12-18T17:32:44.890Z
It is also worth pointing out I was being semi-sarcastic and semi-serious in my response.  It really isn't a video format.  Video, pretty much by definition, is raster, however there are playable animation formats, of which Shockwave Flash (now known as Flash) is the most commonly used.  As you determined, Flash Video is a different thing and is a form of raster video designed to be embedded within a Flash animation (which has actually grown to have a full scripting system allowed inside it's execution.)
AJ Henderson
CC BY-SA 4.0
2021-03-30T06:50:42.033Z
You can still embed Flash animations in HTML5 using [Ruffle](https://ruffle.rs/).
niutech
CC BY-SA 3.0
2014-12-18T16:27:10.857Z
2014-12-18T16:27:10.857Z
AJ Henderson
<p>Is there a vector-based video type, preferably open-source, so that an animated clip could be produced using "rules" instead of pixel-compression?</p>

<p>This would mean lossless resolution-independent video. If it does exist - a link to the specifications would be helpful.</p>

CC BY-SA 4.0
2021-03-30T06:55:07.550Z
Have a look at [Vectorly Video Vectorization](https://medium.com/vectorly/video-vectorization-dc6d54653f73).
niutech
<video><file-formats><codec>
Is there a video type for vector animation?
ispiro
# Is there a video type for vector animation?

(Asked by: username_0 on 2014-12-18)

Is there a vector-based video type, preferably open-source, so that an animated clip could be produced using "rules" instead of pixel-compression?

This would mean lossless resolution-independent video. If it does exist - a link to the specifications would be helpful.

**Tags:** video, file-formats, codec

> **Comments:**
> **username_1**: Have a look at [Vectorly Video Vectorization](https://medium.com/vectorly/video-vectorization-dc6d54653f73).  

---

## 6 answers

### Answer by username_3 on 2014-12-18. Score: 22 | Accepted answer

There was one, but it fell in to disuse and isn't used very often anymore, largely because of the lack of mobile support, but also due to security issues it created. It was called Flash.

> **Comments:**
> **username_0**: :) So _that's_ why it's disabled on my computer! Anyway, thanks. I didn't know that it's vector-based. I assume the video codec (if that's the right term in this case) is flv. Correct?  
> **username_0**: OK. I now see it's SWF. Knowing about Flash being vector-based, I now found there are more, such as EVA and XARA. Thanks.  
> **username_3**: It is also worth pointing out I was being semi-sarcastic and semi-serious in my response.  It really isn't a video format.  Video, pretty much by definition, is raster, however there are playable animation formats, of which Shockwave Flash (now known as Flash) is the most commonly used.  As you determined, Flash Video is a different thing and is a form of raster video designed to be embedded within a Flash animation (which has actually grown to have a full scripting system allowed inside it's execution.)  
> **username_1**: You can still embed Flash animations in HTML5 using [Ruffle](https://ruffle.rs/).  

---

### Answer by username_2 on 2014-12-19. Score: 12

The University of Bath released a paper demonstrating a [vector-based video codec](http://www.bath.ac.uk/news/2012/12/11/pixel-die/) a couple of years ago, with a press release asking "*is the pixel about to die?*". Strangely since then the pixel hasn't died, in fact there are even more of them around than there used to be.

You could argue that most video codecs do actually use vectors: [DCT](https://en.wikipedia.org/wiki/Discrete_cosine_transform) (or similar), - which is used in pretty much every video codec around - is based on the idea that you can represent any signal perfectly as the sum of several cosine waves, or in other words as a bunch of vectors added together.

But that doesn't mean you can scale a standard definition DV movie up to 4K without any loss of sharpness. The reason for this is that even though a DCT encoded image is essentially a bunch of mathematical functions, and is therefore resolution independant, the signal that they encode is limited in bandwidth to the original data that was captured; the camera is a low-pass filter, filtering out any detail finer than the resolution of the sensor (it's probably more precise to say any detail finer than the Nyquist limit of the sensor ~= 1/2 the resolution). In other words, no codec can encode information that wasn't there in the first place.

So even the University of Bath's codec can't do [that thing they do](https://www.youtube.com/watch?v=Vxq9yj2pVWk) in movies where you can infinitely enhance a low res, out-of-focus security camera shot until it looks like it came out of a Hasselblad.

Flash animation as username_3 mentions is a pure vector based format, but it is only for content that was created as vectors, and not to be confused with Flash video (flv container) which is a raster format where the pixels are encoded with Sorenson Spark or VP6 or good ol' h.264 (which uses DCT).

**EDIT** Worth updating this answer with info about [Lottie](https://lottiefiles.com/), which is software that makes it easy to use HTML5 vector animation. It's basically a modern replacement for flash. You can use After Effects for example to create animations directly for the web, without rendering. This is not a codec as such, it doesnt encode a raster (pixel based) image like you'd get out of a camera, that's still the job for codecs like h.264 etc.

> **Comments:**
> **username_0**: Thanks. Since I'm referring to _creating_ animation using vectors, it would be a perfect fit, though, as you've stated, it might not be a replacement for other codecs for video captured by a camera. Now I'm wondering if it's practical to write my own code to transform a set of coordinates (etc.) into a video. As opposed to using 3rd party software.  
> **username_2**: Sounds like you should learn how to use the HTML5 canvas element.  
> **username_3**: That's a pretty good point about the fact that most motion estimation really is kind of vector based, though not really in the context the OP is referring to since it can't scale indefinitely.  That stuff from Bath is pretty impressive though.  Very nice edge detection and pathing from what I could tell from the sample.  
> **username_2**: Not just motion estimation. DCT is intra frame, it's used in lots of codecs, even the JPEG image codec.  

---

### Answer by username_4 on 2016-06-22. Score: 8

SVG supports animation using JavaScript and the animate element. That means using a browser or embeddable renderer like WebKit to render it, though.

Older games often used their own vector animation formats. You might look into the asset formats supported by open source implementations of old game engines like ScummVM and Sarien. There are some asset extractors and editors, but I'm not sure if there are any standalone viewers, so you might have to extract the animation code yourself if you were to go this route.

May I ask what your end goal is? I'm into vector graphics for the same reason I like MODs and chip music; the more recent formats are huge and CPU hungry, and frankly it feels like cheating compared to what could be accomplished on a PC with 640k of RAM or even a Commodore 64.

> **Comments:**
> **username_5**: A link from [this answer](https://stackoverflow.com/a/22795632/1224775) to "Is there a way to convert SWF into SVG format?" at Stack Overflow may be useful in the future [Macromedia Flash (SWF) to SVG Converter](http://swf2svg.sourceforge.net/). "Animations are planned to be implemented in the next versions."  

---

### Answer by username_6 on 2017-09-10. Score: 3

Here is some research about this topic:

Resolution Independent 2D Cartoon Video Conversion
<https://www.researchgate.net/publication/305390110_Resolution_Independent_2D_Cartoon_Video_Conversion>

Video Vectorization via Tetrahedral Remeshing
<http://wangchuan.github.io/archive/research/videovec/paper.pdf>

Video Codec for Classical Cartoon Animations with Hardware Accelerated Playback
<http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca>

I remember reading this last one when I was watching many cartoons and anime online a few years ago. The video resolution you get with many streaming portals, 480p (or even 720p), just doesn't do justice to these nice outline drawings when viewed on full HD/4k displays.

IIRC, the authors of said paper even provided downloads of example video files and their player back then (as a proof of concept), but I cannot find them now.

One problem with rule/computation-based animations (vector graphics;real-time rendered games, flash...) is that it's hard to predict whether the machine playing the video will be able to render the things quickly enough. But you can also have this performance problem with the usual video codecs. Some cheap laptops I owned could not decode full hd/4k videos at the speed necessary for playback...

Still, with vector/computation-based graphics, the problem is worse: There is potentially no limit to the computation power you might need to render a frame. Think about it: CGI movies could be distributed as just the code and assets used to produce them and your machine could render them at any framerate and resolution. The problem is that these movies where not designed for this. Computing a frame might take hours on your machine, not to mention that you probably don't even have enough harddisk space to store all the assets at full resolution which their renderfarm uses.

Computers of today might be able to do *Toy Story* in real-time though. Also, if you have a high-end gaming rig, the real-time ingame graphics cutscenes are of course also a type of resolution independent video.

> **Comments:**
> **username_6**: Thanks, me from the past, for writing this down, I thought I would never find Video Codec for Classical Cartoon Animations with Hardware Accelerated Playback http://dcgi.felk.cvut.cz/publications/2005/sykora-isvc-vccca again...  
> **username_2**: Good point about real-time rendering. I wonder if anyone is creating films with tools like Unity and delivering them as executables.  

---

### Answer by username_7 on 2015-10-13. Score: 0

There is a vector based codec that I've been using - but it can't live outside of editing.

Flash exports an swf file format that maintains the motion vector information when applied in After Effects (don't know if it works in Premier. DOES NOT work in Final Cut). When these files are imported into AE, they maintain their resolution regardless of scale or zoom. All other features applicable to shape layers are applicable to swfs.

Almost every other visual application does not recognize the swf format, so it's uses are very limited. But the codec DOES exist.


---

### Answer by username_8 on 2017-03-05. Score: 0

GameMaker studio supports SWF/Vector art and animation. but of course that is for video games. But I'm sure with how gamemaker works you could make your own bootable videos with it.


---

