Jump to content

A new way to record?


daniel l.

Recommended Posts

I recently found this:

It's one of many 3D rendering demos. And here's the kicker: IT'S ONLY 4 KILOBYTES. 24 SECONDS OF HD 3D VIDEO IN ONLY 4 KILOBYTES.

How?

Because, in its base form, this is not a video (every frame recorded fully), but a formula. Based on very simple algorithms and random seeds, it's possible to assemble a scene as complex as this in an extremely tiny package.

So this gave me an idea. What if we were to record content in this manner? A video, photo, or audio recording can be made, then analyzed by an algorithm that deconstructs the file and creates a series of random seeds and formulas that can be accumulated in a tiny plain-text file. Then the entire recorded file could be unpacked whenever one wants.

The benefits of this? It may be possible that you could compress an HD Feature-Length movie to fit on a single 1.44mb floppy disk (an example). The requirements for data storage could go down exponentially.

What do you guys think?

Link to comment
Share on other sites

35 minutes ago, daniel l. said:

creates a series of random seeds

It is very hard to take data and make random seeds out of it.  Thats how some cryptography works.

 

If you can figure it out, lots of people will want to talk to you very quickly.  

Edited by DAL59
Link to comment
Share on other sites

5 hours ago, DAL59 said:

It is very hard to take data and make random seeds out of it.  Thats how some cryptography works.

That's exactly what I thought, but the video contains structures that are clearly not just perlin noise.

Very interesting.

Link to comment
Share on other sites

Not sure about recording, but as a way to compress movies, yeah, i geuss.

Im looking forward to the future of this. 

The video you showed us is a decade old, so im not sure about its future.

Link to comment
Share on other sites

9 hours ago, daniel l. said:

So this gave me an idea. What if we were to record content in this manner? A video, photo, or audio recording can be made, then analyzed by an algorithm that deconstructs the file and creates a series of random seeds and formulas that can be accumulated in a tiny plain-text file. Then the entire recorded file could be unpacked whenever one wants.

The benefits of this? It may be possible that you could compress an HD Feature-Length movie to fit on a single 1.44mb floppy disk (an example). The requirements for data storage could go down exponentially.

What do you guys think?

Ok, I give you a 24 second video, where each frame contains 20 completely random digits. That is the whole video contains 24*30*20=14,400 random digits. Since one can encode a single digit with a little more than 3 bits of information, this video displays slightly over 5 kilobytes of information. How do you encode that into 4 kilobytes of data?

At the same, modern compression algorithms already try to find patterns or how to skip non-essential bits in order to bring the size down. Otherwise a single frame of a full hd movie would already be 2 MB, bringing the size of a movie to over 300 GB.

Link to comment
Share on other sites

3 hours ago, Shpaget said:

That's exactly what I thought, but the video contains structures that are clearly not just perlin noise.

Very interesting.

You can add lots of the structure and texture as noise on top of the fixed stuff. afterward. If you use an fixed seed you will get the same texture each time, kind of how fine details are added to the Mun in KSP. This should work on movies to. Yes its an obvious problem then you move the camera around and change angle the ground has to stay the same. Not sure how this is solved. 

 

Link to comment
Share on other sites

14 hours ago, daniel l. said:

Because, in its base form, this is not a video (every frame recorded fully), but a formula.

So what difference does it have to the current-standard interframe compression ?

 

EDIT :

Also, that video, when seen through some of the youtube-downloading services, sprungs up as 480p, 3MB.

The website is... "down", so to speak.

But I can see what you're talking. They're .EXEs.

https://github.com/reality3d/rgba-prods?files=1

 

13 hours ago, DAL59 said:

It is very hard to take data and make random seeds out of it.

You can make seeds though. Does take a lot of time...

 

Edited by YNM
Link to comment
Share on other sites

12 hours ago, YNM said:

So what difference does it have to the current-standard interframe compression ?

 

EDIT :

Also, that video, when seen through some of the youtube-downloading services, sprungs up as 480p, 3MB.

The website is... "down", so to speak.

But I can see what you're talking. They're .EXEs.

https://github.com/reality3d/rgba-prods?files=1

 

You can make seeds though. Does take a lot of time...

 

A bit user friendly software with lower system demands than used for making golum and the navi in avatar. 

And no you can obviously not trust an video from some with lots of resources and an obvious agenda. 
No you could not trust them before WW1 either as scene was an setup but that is another story. 

You could use makeup to make a lot of people look exactly like the guy you wanted to frame anyway if you had an pretty similar actor.  
 

Link to comment
Share on other sites

22 hours ago, daniel l. said:

What if we were to record content in this manner? A video, photo, or audio recording can be made, then analyzed by an algorithm that deconstructs the file and creates a series of random seeds and formulas that can be accumulated in a tiny plain-text file. Then the entire recorded file could be unpacked whenever one wants.

This is more or less the process used for MPEG (aka MP3 and MP4) and similar compression methods that have been applied to still images, audio, and video for (in some cases) decades.  You start with the original, sampled from analog at a suitably high sample rate and bit depth.  You use software to create a data stream or file that will "unpack" into something very much like the original (JPEG is lossy, so the displayed image is never perfect, but GIF, TIFF compression, and PNG are or can be lossless) and, in the case of MP4 for video, that can be unpacked in real time, i.e. at least as fast as the decompressed stream needs to play to produces a seamless playback (this is actually a small fraction of the computing power of even a single core of a modern computing device).

Typically, you need more computing power to compress than to decompress -- but audio stream handling with compression and decompression isn't considered a particularly demanding task in today's computing world (for instance, the phone I had three years ago could play back CD-quality MP3 music from internal storage while also running turn-by-turn navigation software in real time and mixing the navigation audio with the music stream, and the one before that, now a seven year old design that wasn't technically "smart," could do both tasks without the mixing).

Link to comment
Share on other sites

4 hours ago, Zeiss Ikon said:

This is more or less the process used for MPEG (aka MP3 and MP4) and similar compression methods that have been applied to still images, audio, and video for (in some cases) decades. 

Except it's not quite that small. The .EXEs in github I linked is only ~4.5 KB, the thing on Youtube is about 3 MB.

Edited by YNM
Link to comment
Share on other sites

6 hours ago, YNM said:

Except it's not quite that small. The .EXEs in github I linked is only ~4.5 KB, the thing on Youtube is about 3 MB.

I have seen similar, but newer videos. Usually, they require a high-end gaming pc to be played, i.e. your smartphone won't be able to run them.

Also these videos are created using specifically hand-crafted program code (there are even competitions about creating the most impressive video with less than a certain amount of space), it is unrealistic that we will ever have computers capable of compressing a normal video that far.

Also, take a look at my post above: It is relatively easy to create a video that cannot be compressed to less than 5 KB (at least not without ridiculous compression artifacts).

Link to comment
Share on other sites

1 hour ago, Tullius said:

It is relatively easy to create a video that cannot be compressed to less than 5 KB (at least not without ridiculous compression artifacts).

The hypothesis (or dream) @daniel l. offered was for a "procedurally generated/approximated" video. It could employ techniques laid out on the video I linked about face-swapping (so get a generic eye look, then approximate. now expand to every feature).

I have to admit however, reducing storage means trading that loss towards the increase of computing power. Just like animated GIFs vs proper videos.

 

Edited by YNM
Link to comment
Share on other sites

2 hours ago, YNM said:

The hypothesis (or dream) @daniel l. offered was for a "procedurally generated/approximated" video. It could employ techniques laid out on the video I linked about face-swapping (so get a generic eye look, then approximate. now expand to every feature).

I have to admit however, reducing storage means trading that loss towards the increase of computing power. Just like animated GIFs vs proper videos.

 

But my video contains too much entropy to be compressed into less than 5KB, since it contains 14,400 random digits, which even with the best possible encoding need more than 40,000 bits, i.e. 5KB. And we are not yet talking about encoding how these are displayed, i.e. even if you use a generic digit to display these random digits, you can't compress it to less than 5KB.

So either you don't compress the video down to 4.5KB, or you lose the information about which digits I chose. This makes compressing any normal video to such a small file unrealistic, as any video content probably contains more information than my above example.

Hence, while we are still very far from the best possible compression for video, there is a hard limit somewhere below which it is impossible to compress it without losing too much information. Think of compressing an jpeg image or mp3 music file with zip: No matter which zip-algorithm you use (the old DEFLATE or the much newer LZMA), you won't be able to reduce their size by more than 1 percent, because there are just not enough patterns left in their bit sequence to use for compression.

Edited by Tullius
Link to comment
Share on other sites

28 minutes ago, Tullius said:

But my video contains too much entropy to be compressed into less than 5KB, since it contains 14,400 random digits...

Depends on the "random".

If you're just having white noise, you can probably just generate it on the fly.

Link to comment
Share on other sites

This thread is quite old. Please consider starting a new thread rather than reviving this one.

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • Create New...