Metapixel cluster to display video

For general discussion about Conway's Game of Life.
Post Reply
Pascal
Posts: 3
Joined: April 3rd, 2021, 12:51 am

Metapixel cluster to display video

Post by Pascal » April 3rd, 2021, 12:55 am

Hi,

I'm pretty new to GoL, but it's really interesting.

I was wondering if it would be feasible to feed metapixels sets of gliders/spaceships that would correspond to pixels on a video of 32/32 or maybe 64/64.

Thank you!

Dylan Chen
Posts: 111
Joined: March 27th, 2020, 8:07 am
Contact:

Re: Metapixel cluster to display video

Post by Dylan Chen » April 3rd, 2021, 3:44 am

Yes, it is definitely possible.

If you have installed Golly, check hashlife/metapixel-galaxy.
Tools should not be the limit.
Whether your obstacle is a script, an stdin, or Linux environment computing resouces.
check New rules thread for help.

User avatar
GUYTU6J
Posts: 1407
Joined: August 5th, 2016, 10:27 am
Location: 拆哪!I repeat, CHINA! (a.k.a. 种花家)
Contact:

Re: Metapixel cluster to display video

Post by GUYTU6J » April 3rd, 2021, 6:03 am

Metapixels do not feed on gliders. After drawing a pattern in Golly, select it and run Scripts/Lua/metafier.lua, and you'll get the metapixel presentation of the pattern.

Or... If you want to display arbitraty black/white video, you may need to check HashLife/hexadecimal.mc.gz instead. This similar design codes each frame pixel-by-pixel directly and so any changes of displayed pattern are not constrained by cellular automata rules. Is that what you mean by "correspond to pixels on a video" ?

It is suggested to ask questions like this in the Thread for basic questions rather than in a newly created thread.
Lifequote:
In the drama The Peony Pavilion, Tang Xianzu wrote: 原来姹紫嫣红开遍,似这般都付与断井颓垣。
(Here multiflorate splendour blooms forlorn
Midst broken fountains, mouldering walls.)
I'm afraid there's arrival but no departure.
Stop Japan from dumping nuclear waste!

Pascal
Posts: 3
Joined: April 3rd, 2021, 12:51 am

Re: Metapixel cluster to display video

Post by Pascal » April 9th, 2021, 12:22 am

Thank you for the responses!

Also, sorry for replying so slowly.

I want to recreate a 2 color (b&w) video that could be condensed down to 64x60 pixels while still being recognizable. https://www.youtube.com/watch?v=FtutLA63Cp8


I will look into hexadecimal.mc.gz, thanks for the help!

User avatar
dvgrn
Moderator
Posts: 8001
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Metapixel cluster to display video

Post by dvgrn » April 9th, 2021, 9:29 am

Pascal wrote:
April 9th, 2021, 12:22 am
I want to recreate a 2 color (b&w) video that could be condensed down to 64x60 pixels while still being recognizable. https://www.youtube.com/watch?v=FtutLA63Cp8

I will look into hexadecimal.mc.gz, thanks for the help!
I still have in my old Gmail archives the conversation with Brice Due, when we were working out exactly what movie would end up in hexadecimal.mc.gz. There's some Python code available in attachments that might help with building new movies, if you want it -- but it's very old and Golly has changed a lot since then, so probably it would need a complete rewrite.

The main things I remembered from reading that old thread are that

1) Brice's metapixel movie theater only has room to store something under 200 frames of a movie. We could improve on that either by making the metapixels bigger, or by rebuilding with improved technology. The current hexadecimal.mc.gz has 128-bit depth, but there's room to expand that somewhat without changing the metapixel size -- I forget what the maximum is.

2) Movie patterns like this would definitely run much better in Golly if we rebuilt the metapixel to contain only power-of-two technology, getting rid of the extra factor of 69. This really wouldn't be terribly difficult. Here's a proof-of-concept I built back in January 2007, and we have a lot more good circuit options available now:

Code: Select all

#C trial pure p2^N movie pixel (or half of one) -- full cycle p4096.
x = 600, y = 592, rule = B3/S23
598b2o$598bo$596bobo$596b2o23$598b2o$598bo$596bobo$596b2o31$598b2o$
598bo$596bobo$596b2o18$598b2o$598bo$596bobo$596b2o26$598b2o$598bo$596b
obo$596b2o18$598b2o$598bo$596bobo$596b2o26$598b2o$598bo$596bobo$596b2o
18$598b2o$598bo$596bobo$42bo553b2o$40b3o$39bo$39b2o8b2o$49bo$47bobo$
47b2o10b2o94bo$59bo93b3o11bo$60bo11bo60b2o17bo14b3o$59b2o9b3o60b2o17b
2o16bo14bo$69bo99b2o12b3o$69b2o10b2o99bo$37b2o42bo17b2o81b2o$37b2o40bo
bo17bo$79b2o19bo$56b2o41b2o80b2o$26b2o28b2o104b2o17b2o$27bo9b2o123b2o$
24b3o10b2o$24bo$124b2o$96b2o26b2o$96b2o$18b2o125b2o18b2o$18bo46b2o77bo
2bo2b2o14bo$16bobo47bo77bobo4bo2bo8b3o$16b2o45b3o67b2o10bo5bobobo7bo
434b2o$63bo69b2o13b2obo2bo13b2o428bo$148bo2bo17bo426bobo$86b2o38b2o17b
o4bo15b3o427b2o$86bo39bo18b5o16bo$87b3o11b2o24b3o$89bo11b2o26bo17bo$
146bobo40b2o5b2o$147bo41b2o5bo$115b2o77bobo$9b2o104bo78b2o$9b2o105b3o
71b2o$2b2o114bo59b2o10bobo$bobo101b2o71b2o11bo$bo104bo$2o101b3o88b3o$
103bo90b3o$194b3o$197b3o$167b2o28b3o$5b2o161bo19b2o7b3o$6bo145b2o14bob
o17bo409b2o$3b3o146b2o5b2o8b2o6b3o6bobo409bo$3bo155b2o14b2o3bo5b2o408b
obo$175bo2bobo415b2o$175bo6bo$128b2o8b2o6bobo8b2o10b2o5bo$128b2o9bo5bo
2bo8b2o9bobo$139bobo3b2o6bo9b2o3bo10b3o$15b2o123b2o9bo3bo7b2o2b2o$15b
2o105b2o26bo4bo26b2o$122b2o25b2o5bo25bo$6b2obo116b2o21b2o2b3o27b3o$6bo
b2o116b2o26b2o29bo$153bo2$26b2o112bobo$26bo94b2o17b2o$24bobo94b2o18bo$
24b2o3$10b2o$9bobo$9bo$8b2o4$128b2o$129bo468b2o$126b3o469bo$13b2o111bo
41b2o426bobo$14bo153b2o426b2o$11b3o$11bo2$163b2o$163b2o$29b2o136b2o$
29bobo135b2o$31bo94b2o21b2o$31b2o93b2o21bobo$132b2o17bo9b2o$132b2o17b
2o8b2o3$130b2o$130b2o5b2o$21b2o114b2o$21b2o$598b2o$12b2obo582bo$12bob
2o580bobo$31b2o563b2o$31b2o$41b2o$41bo$39bobo$39b2o3$285bo$284bobo$
283bo3bo$273bo8bo3bo$273b3o5bo3bo$276bo3bo3bo$35b2o238b2o4bobo$35bobo
244bo$37bo240bo$37b2o238bobo$273b2o2b2o$273b2o$63b2o$56b2o5b2o$56b2o$
20b2o$20b2o$29b2o27b2o17b2o8b2o$29bobo26b2o17bo9b2o509b2o$31bo20b2o21b
obo520bo$31b2o19b2o21b2o519bobo$93b2o501b2o$73bo19b2o$89b2o$8b2o16b2o
61b2o155b3o$8b2o16b2o218b3o$246b3o$249b3o$94b2o153b3o$52bo41b2o153b3o$
52b3o$55bo198bo$54b2o197bobo$254b2o$250b2o$24b2o223bobo208bo$23bo2bo2b
2o218bo5b2o37b2o14bo99bo48b2o49bo$23bobo4bo2bo214b2o5b2o37b2o2b2o9b3o
47b3o96bob2o47b3o47b3o$24bo5bobobo263bobo7b3obo46b3o46bob3o44b3o2bo45b
3obo46b3o$27b2obo2bo265bo3bo5bo3bo45b3o48b2obo45bobobo45bo3bo45b3o36b
2o$27bo2bo56b2o213b2o6bo3bo47b3o45bob2o46bobobo45bo3bo47b3o33bo$24bo4b
o57bo208b2o3bob2o6bob3o46b3o46b3obo45bo2b3o44bob3o46b3o31bobo$24b5o59b
3o206bo2b3o2bo6b3o47b3o97b2obo46b3o47b3o31b2o$8b2o37b2o41bo203b3o5bobo
bo6bo99bo49b2o48bo$7bobo16bo20b2o20b2o2b2o219bo8bobobo9bo49bo49bo45bo
3bo49bo49bo$7bo17bobo40b3o228bo4bo2b3o6bobo30bo16bobo30bo16bobo30bo16b
obo30bo16bobo30bo16bobo$6b2o18bo48bo221b3o5b2obo8b2o28b3o17b2o28b3o17b
2o28b3o17b2o28b3o17b2o28b3o17b2o$66bobo183bo43bo9b2o5b2o31bo16b2o31bo
16b2o31bo16b2o31bo16b2o31bo16b2o$52b2o13b4obo2bo168bo6bobo42b2o8bo5bob
o31b2o14bobo31b2o14bobo31b2o14bobo31b2o14bobo31b2o14bobo$52b2o14b3ob3o
169b3o5bo59bo5b2o42bo5b2o42bo5b2o42bo5b2o42bo5b2o42bo5b2o$48b2o190b2o
5bo63b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o$48b2o191bo4b
2o$89b2o150bobo62bo49bo49bo49bo49bo49bo$16b2o71b2o151b2o62b3o47b3o47b
3o47b3o47b3o47b3o$16b2o7b2o27b2o27b2o224bo49bo49bo49bo49bo49bo$25bo28b
2o27b2o223b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o$
23bobo295b2o48b2o48b2o48b2o48b2o48b2o$23b2o4b2o207b2o25b2o$7b2o20bo15b
o9bo29b2o152bo25b2o$8bo18bobo15b3o5b3o22b2o5b2o152bobo351bo$8bobo16b2o
19bo3bo25b2o160b2o350bobo$9b2o36b2o3b2o94bo443bobo$146bobo444bo$50bo
96b2o104b2o$49bobo201bobo6b2o32b2o48b2o48b2o48b2o48b2o48b2o$49bobo203b
o6bo20b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o35b2o11b2o$50bo
204b2o6bo20bo49bo49bo49bo49bo49bo$31bo3b2o225b2o17b3o47b3o47b3o47b3o
47b3o47b3o$30b2o4b3o242bo49bo49bo49bo49bo49bo$29b2o8bo$30b5o2bobo$32b
3o3bo11b2o$15b2o32bo2bo198b2o68b2o48b2o48b2o48b2o48b2o48b2o$11b2o2b2o
33b2o4b2o193bobo67bo49bo49bo49bo49bo49bo$10bobo43bobo194bo68b3o47b3o
47b3o47b3o47b3o47b3o$10bo47bo194b2o69bo49bo49bo49bo49bo49bo$9b2o47b2o$
48b2o$49bo228b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o41b2o5b2o$46b
3o230bo5b2o42bo5b2o42bo5b2o42bo5b2o42bo5b2o42bo5b2o$33b2o11bo232bobo
47bobo47bobo47bobo47bobo47bobo$33b2o2b2o241b2o48b2o48b2o48b2o48b2o48b
2o$37bobo220b2o22b2o48b2o48b2o48b2o48b2o48b2o$38bo221bo22bobo47bobo47b
obo47bobo47bobo47bobo$42bo198b2o15bobo23bo45b2o2bo49bo49bo49bo45b2o2bo
$35b2o4b3o197b2o15b2o119b3o48bo$36bo3b3obo235b2o47bo3bo48bo46bobo48b2o
47bo3bo$33b3o5bo3bo232bob2o46bo4bo44bo3bo45bo3bo45bob2o46bo4bo$33bo8bo
3bo230bo49bobobo45bobo2bo44bo3bo45bo49bobobo$43bob3o232bo45bobobo44bo
2bobo45bo3bo49bo45bobobo$44b3o229b2obo44bo4bo45bo3bo45bo3bo46b2obo44bo
4bo$45bo230b2o46bo3bo46bo50bobo47b2o46bo3bo$376b3o48bo$292b2o32b2o14b
2o48b2o48b2o48b2o32b2o14b2o$292b2o2b2o44b2o2b2o44b2o2b2o44b2o2b2o44b2o
2b2o44b2o2b2o$207b2o5b2o80bobo47bobo47bobo47bobo47bobo47bobo$208bo5b2o
41b2obo36bo3bo45bo49bo49bo49bo3bo45bo$208bobo29b2o15bob2o39b2o49bo99bo
48b2o49bo$209b2o28bobo52b2o3bob2o41b2o4b3o41b2o4b3o41b2o48b2o3bob2o41b
2o4b3o$213b2o24bo55bo2b3o2bo41bo3b3obo41bo4b3o42bo3bob3o41bo2b3o2bo41b
o3b3obo$212bobo23b2o52b3o5bobobo37b3o5bo3bo37b3o5b3o39b3o6b2obo37b3o5b
obobo37b3o5bo3bo$213bo78bo8bobobo36bo8bo3bo36bo10b3o36bo8bob2o37bo8bob
obo36bo8bo3bo$209bo92bo2b3o44bob3o46b3o46b3obo45bo2b3o44bob3o$303b2obo
46b3o47b3o97b2obo46b3o$207b3obo92b2o48bo99bo49b2o48bo$206bob2o94bo199b
o$206b2obo$204bob3o22b2o25b2o$232bo25bobo$206bo25bobo15b2o8bo$233b2o5b
2o8b2o8b2o$241b2o$240bo10$251b2o$131bo22b2o7b2o86bobo$131b3o20b2o7bobo
87bo$112bo21bo26bobob3o85b2o$111bobo7bo11b2o26b2o5bo23b2o48bo$112bo6b
3o35b2o8b2o23bo48b3o$101bo16bo38b2o31bobo47b2o2bo$101b3o14b2o66b2o2b2o
48b2ob2o$104bo81b2o47b2o6b3o21bo$103b2o56bo72bobo4bob2o21bobo$162bo71b
o5bo2bo16b2o3bo3bo$122b3o37b2o69b2o8bo16bo5bo3bo8bo$121b2ob2o30b2o3b2o
77bobo15bobo6bo3bo5b3o$98b2o21b2o2bo30b2ob3o79bo11bo4b2o8bo3bo3bo$99bo
23b2o32bobo92bo16bobo4b2o$99bobo55b2o94b2o15bo$100b2o152bo19bo$273bobo
$274b2o2b2o$113b2o77b2o84b2o14bo$113bobo6b2o50b2o16bobo13b2o84b2o$115b
o6bo50bobo18bo14b2o63b3o16b2obo$115b2o6bo49bo20b2o12bo65bo17bo2b3o$
122b2o17b4o27b2o4b2o9bo85bo15bobobo$137b2obo4bo30bo2bo9bo100bobobo$
136bo3bo4bo6b2o22b2o7bo3bo50b2o46b3o2bo$136bo4b2o10bo30bobo52bobo47bob
2o$136bo2bo4b2o4b3o31bo3bo50bo50b2o$111b2o23bo2bo3bo2bo3bo36bobo48b2o
47bo3bo$111bobo23b2o4bo2bo37b2obob2o95bobo$113bo26b2o4bo37b2o100b2o$
113b2o22bo4bo3bo143b2o$137bo4bob2o144bobo$102bo35b4o46bo96b2o5bo$101b
3o82b2ob2o94b2o5b2o$100bo2b2o$100bo3bo80bobo72bo$102bobo80bo3bo60b2o6b
obo$185b2o2bo60b2o7b2o$99b2ob2o82b3o$94b2o5bo46b4o35bo$94bo49b2obo4bo$
95bo47bo3bo4bo22b2o$94b2o8b2o37bo4b2o26bo$99b2obob2o37bo2bo4b2o23bobo
60b2o$100bobo36bo3bo2bo3bo2bo23b2o61bo19b2o$101bo3bo31b3o4b2o4bo2bo86b
obo17bo$103bobo30bo10b2o4bo87b2o15bobo2b2o$100bo3bo7b2o22b2o6bo4bo3bo
104b2o3b2o2b2o$100bo9bo2bo30bo4bob2o99b3o12bobo$100bo9b2o4b2o27b4o17b
2o81b4ob2o12bo$94b2o20bo49bo6b2o66b2o5bo3bobo16b3o$95bo18bobo50bo6bo
65bobo6b2o14b2o3bo$95bobo16b2o50b2o6bobo63bo25bo3bo3bo$96b2o77b2o62b2o
22b3o4bo2bobo$254b2o7bo8bobo2bo$254bo18bo3bo$188b2o65b3o19bo$131b2o55b
obo66bo16b3o$130bobo32b2o23bo$128b3ob2o30bo2b2o21b2o$127b2o3b2o30b2ob
2o$126b2o37b3o$127bo$128bo56b2o$102b2o81bo$98b2o2b2o66b2o14b3o$97bobo
31b2o38bo16bo$97bo23b2o8b2o35b3o6bo$96b2o23bo5b2o26b2o11bo7bobo$122b3o
bobo26bo21bo$124bobo7b2o20b3o$125b2o7b2o22bo8$218b2o$217bobo$219bo24$
125b2o7b2o22bo$124bobo7b2o20b3o$122b3obobo26bo21bo$96b2o23bo5b2o26b2o
11bo7bobo$97bo23b2o45b3o6bo$97bobo52b2o17bo$98b2o2b2o49b2o15b2o14b2o$
102b2o31bo16bo32bobo$134b3o50bo$133bo2b2o40b3o$133bo3bo39bo3bo$134b2ob
o39bo$136b2o25b2o12b2ob2o8b2o$163b2o14bo10bo$132bobo53bobo$131bo2bo53b
2o$131bo3bo$130b2obo$96b2o33bo3b2o38b2o$95bobo5bo10b2o20bo29b2o6bobo$
95bo7b2o9bobo15bo2bo31bo6bo$94b2o6b3o11bo16b3o9bo2bo17bo6b2o$103b2o5b
2o4b2o31bo16b2o$102b2o6bo2bo36b2o$112b2o22b2o6bob2o6bo$136bo7bo2bo3bo$
137b3o3bo3bob3o$139bo2bo11bo22b2o$145b3obo3bo22bobo$94b2o49bo3bo2bo23b
o$95bo46bo6b2obo22b2o$94bo50b2o$94b2o51bo$148bo2bo$94b2o$94bobo$95bo2$
138bo2bo$142bo51b2o$143b2o50bo$113b2o22bob2o6bo46bo$113bo23bo2bo3bo49b
2o$111bobo22bo3bob3o$111b2o22bo11bo2bo$138b3obo3bo3b3o$138bo3bo2bo7bo$
135bo6b2obo6b2o22b2o$138b2o36bo2bo6b2o$122b2o16bo31b2o4b2o5b2o$115b2o
6bo17bo2bo9b3o16bo11b3o6b2o$115bo6bo31bo2bo15bobo9b2o7bo$113bobo6b2o
29bo20b2o10bo5bobo$113b2o38b2o3bo33b2o$156bob2o$154bo3bo$100b2o53bo2bo
$99bobo53bobo$99bo10bo14b2o$98b2o8b2ob2o12b2o25b2o$112bo39bob2o$108bo
3bo39bo3bo$109b3o40b2o2bo$103b2o48b3o$104bo32bo16bo31b2o$101b3o14b2o
15b2o49b2o2b2o$101bo16bo17b2o52bobo$112bo6b3o45b2o23bo$111bobo7bo11b2o
26b2o5bo23b2o$112bo21bo26bobob3o$131b3o20b2o7bobo$131bo22b2o7b2o!

Pascal
Posts: 3
Joined: April 3rd, 2021, 12:51 am

Re: Metapixel cluster to display video

Post by Pascal » April 9th, 2021, 11:33 pm

Is the script you are mentioning called metafier.py? I've been trying to run that one, but I can't seem to get an output.

I've been editing the hexadecimal.mc pattern manually to see if I could get a cell to change, but so far I've only messed up the metadata or pattern entirely. The syntax is confusing for me still as an absolute beginner.

I've found the video in a binary format by frame though with a 37x28 pixel resolution. I've attached the input file, which I could change to fit whatever metapixel resolution is easiest to adhere to.

As for the 200 frame limit, I could stitch the clips in post to match the video. https://raw.githubusercontent.com/kevin ... /input.txt

User avatar
dvgrn
Moderator
Posts: 8001
Joined: May 17th, 2009, 11:00 pm
Location: Madison, WI
Contact:

Re: Metapixel cluster to display video

Post by dvgrn » April 10th, 2021, 9:12 am

Pascal wrote:
April 9th, 2021, 11:33 pm
Is the script you are mentioning called metafier.py? I've been trying to run that one, but I can't seem to get an output.

I've been editing the hexadecimal.mc pattern manually to see if I could get a cell to change, but so far I've only messed up the metadata or pattern entirely. The syntax is confusing for me still as an absolute beginner.

I've found the video in a binary format by frame though with a 37x28 pixel resolution. I've attached the input file, which I could change to fit whatever metapixel resolution is easiest to adhere to.

As for the 200 frame limit, I could stitch the clips in post to match the video. https://raw.githubusercontent.com/kevin ... /input.txt
No, metafier.py will build you a custom set of actual metacells -- very different from the movie-theater pixels in hexadecimal.mc.gz. I don't think the movie-builder script is posted anywhere; certainly it's not anywhere very obvious.

Unfortunately, the script in my old email that I thought was the movie-builder script appears instead to be an early broken draft of metafier.py. Might take some serious digging to find the old script. But it's really easier to just rebuild the movie-theater pixels at a pure power of two to use a different memory storage system -- just keep a loop of MWSSes cycling around the square, instead of all that complicated tractor-beam stuff. It should be possible to store a much longer movie that way, anyway, and run it more quickly in Golly.

Post Reply