February 2018 Summary


  • Planning volume storage tests.
  • Review of Non-Debian Packages we need.
  • TACTIC goals (planned to test TACTIC right away!)
  • Designed Moontruck. Modeled and rigged by Chris Kuhn.
  • Learning how to use Bazaar for version control.
  • Wrote DAMS article for OpenSource.com.
  • 5.1 Surround Sound preparations: read VBAP paper,
    built stereo speaker shelves and installed 5.1 speakers
    at my workstation for audition.
  • New “walk-on” characters for Ep. 2 (News Montage).
  • Contractor tax reporting (Form 1099).
  • SUPPLEMENT: Moontruck Rigging Explainer by Chris Kuhn.

Feb 3, 2018 at 6:48 PM

Volume Storage

I’m currently working on a script to support the storage backend on our on-site server. It’s Linux-specific Python scripting, and fairly tedious, but basically it’s going to work something like this:

First, you’ll have to set up some basic configurations in a “volstor.conf” file, like so:

archive_dir = /ark
volume_dir  = /vol
volume_type = DVD5
volume_size = 4.5
volume_size_unit = G

This sets up the location for the back-end “volume” storage where the data is really stored, the front-end “archive” mountpoint, where the data appears to the user, and the size of the volumes to be maintained (in this case, sized to fit on single-layer DVD backups).

On the command line, you’ll be able to start a “volume-storage series” like this:

# volstor create <series-name>

This will set up a storage series, with a single live volume.

After that, one will periodically run:

# volstor check

(probably from a cron job), and this will detect when the storage exceeds the volume-size quota.

When that happens, then either you will manually run the following, or the configuration will allow it to run automatically:

# volstor new-volume <series>

This will then freeze the current live volume, giving it a date-range name, and then create a new live volume to sit on top of it.  It may also flag the administrator to let them know they should run a back-up to copy the newly-frozen volume to offline storage:

# volstor backup-volume <series>

This will then interact with the user to create a label description, print a label for the offline volume storage (in this case, probably a DVD case sleeve), update on-disk indexing and metadata info, and burn the result to an appropriate-sized optical disk (in this case, a single-layer DVD, but the system will support Millenniata Blu-Ray media which is available in 25 GB, 50 GB, and 100 GB volume sizes).

This way, we’ll be able to keep our studio data preserved on the shelf indefinitely, while never losing access to it on our LAN.  Although, we’ll use this for other kinds of data as well, the most important use is for the TACTIC digital asset management system, so this is where our video, blender models, audio music library, and other assets will be stored. We presently have about 40 GB of data on a hard drive that is not backed-up in any regular way, so I’m anxious to get this into a more secure form of storage.

The technology is pretty simple. I’m using a Python script to control a number of Linux command line tools, like mount (with the overlay filesystem type), du, and the rsnapshot tool (used for providing wayback-machine-type backups for the current live volume). But it’s still a script that has to be written and tested, so I’m getting back into the swing of writing in Python.

Feb 5, 2018 at 4:00 PM

Non-Debian Software Packages

Custom Packages
Custom packages we need to add to the Ubuntu Studio distribution.

Additional software, not included in the Debian or Ubuntu repositories. The packages marked in blue are maintained by Morevna Project, and are available as AppImage packages (a portable format). There are unofficial Debian packages for the others, although some of them have problems — the Trelby packages available from the developer doesn’t install on current Debian or Ubuntu. So we’ll have to tinker with it a bit.

DVD Styler is a really nice package for DVD mastering. Natron is a dedicated 2D compositing tool. I’m not entirely sure whether we really need it, as it overlaps functionality in both Blender and Kdenlive.

We’re hoping to add these installations to our standard client system this month.

Feb 6, 2018 at 4:00 PM


I made this slide in 2015, explaining what the problems were with studio backend software to support animation.

This month, we’re going to try to get TACTIC to do these things for us.

  • Workflow is how you move things through your pipeline, from ideas to finished animation.
  • Digital Asset Management (DAM), is how you keep track of all the files you create, which is a lot.
  • A Version Control System (VCS) keeps track of changes you make to the individal assets in the DAM. Not all DAMS handle this, and it’s very hard to work with software-focused VCS in a multimedia project.
  • Scheduling is figuring out how to set and keep deadlines for releases, very important if we are to ramp up to a higher production rate.
  • Project Management threads through all of this, and is mostly about communications between the people involved.

This is a pretty good summary of what we’re expecting TACTIC to handle, and based on the manuals, at least, it seems to have the fa

Feb 7, 2018 at 4:01 PM

The Art of Potlatch in the Space Age

Photo of Tesla Roadster in space with the Earth in the background.
Yes, this is a real photo. It was taken from a camera on the stage holding the car (which was acting as a test weight for the launch).

All my social media has been aflame with images of SpaceX’s successful launch of Elon Musk’s Tesla roadster into space yesterday. It was apparently his conclusion as to “the silliest thing we can think of” to launch into space on top of the maiden flight of the new Falcon 9 Heavy launch vehicle.

From an engineering perspective, this is purely a test flight for the launch vehicle, and this was just a dummy payload, because it was all too likely that it would just blow up on the pad, and you don’t want that to happen with some customer’s multi-million dollar satellite. The vehcile performed pretty nearly just as expected: the payload was delivered to the right initial orbit. Two of th three booster stages returned and landed on their tails in a spectacle right out of golden-age science-fiction that SpaceX is starting to make look routine, although the third “core” stage did not quite make it (a retro failure had it hit the water far too hard, near the drone ship it was supposed to land on). Another small error resulted in the upper stage sending the roadster into the wrong solar orbit — not towards Mars, but out towards the asteroid belt.

That’s also apparently a real spacesuit in there, with a mannequin inside. It’s part of SpaceX’s design program related to their Dragon series of vehicles targeted at transferring crews into space. I’m hoping they’re getting some testing value out of that. It’s going to be exposed to space for quite a long time, after all — much longer than a suit normally is in an EVA.

As a work of art, a number of people were reminded of the “Radar Rider” opening animation sequence from “Heavy Metal” (1981), which is pretty obvious if you’re a long-time animation fan (in fact, I’d be surprised if the folks at SpaceX weren’t thinking of it themselves, along with some other references, including the prominently displayed “Don’t Panic” reference to Douglas Adams’ “Hitchhiker’s Guide to the Galaxy”, and David Bowie’s “Life on Mars”. It is, we might say, in the terms of criticism: “highly intertextualized”.

From an anthropological perspective, it’s more like a ritual sacrifice, or perhaps most accurately, like “potlatch“: the ceremonial destruction of items of relative wealth for the culture that produced them. People have argued a lot over exactly what the social purpose of potlatch is (probably has more than one) — but it seems to me that it is a kind of demonstration of wealth: it proves you have more than you need. And I think that, aside from the art and the publicity-stunt aspect of this flight, it can be understood very well this way:

The message is that we can waste this flight as flagrantly and ostentatiously as we like, because this is only the first flight of the Falcon Heavy, and there will be many more to come.  My initial instinct was to cry out in dismay at the waste of it — but the point here is to change that way of thinking in which every flight is a priceless opportunity, and to expand your mind to imagine a time and an economy in which a space launch isn’t so priceless.

And I’m saying “we”, because this kind of thing encourages it. It isn’t just an act of Elon Musk or of SpaceX, but can also be interpreted in broader circles, perhaps even to just “human beings”. You want to be on the team that can do such things, even if they do seem awfully silly. So you say “we”, even when, like me, you have very little connection to it.

There is a kind of reassurance in knowing you don’t have to count every penny. For that purpose, the silliness of this flight is exactly the point of it.

Feb 9, 2018 at 4:00 PM

Moontruck Concept Art

Actually, my very first sketch of the “Moontruck” large pressurized rover was made years ago now. Here it is:

Needless to say, this was in need of a bit of refinement. I kept changing it in my head in small ways, and it wasn’t completely consistent with all the requirements I put on it — also how it would interact with the lander and other mech in our story universe.

It’s still not quite there — I’m still figuring out the mechanism that captures and holds the “Transfer Module” that the rover is carrying.

Finally, this week, I was able to pin down the design to hand off to Chris Kuhn for modeling, in preparation for our third episode.

This is what I have so far…








Feb 10, 2018 at 4:00 PM

Test Render of the Moontruck Model

This is a first draft test render of the Moontruck model that was created by Chris Kuhn this week, based on the design drawings in my last post. He works pretty amazingly fast as well as amazingly, well, amazing.

Feb 12, 2018 at 4:01 PM

Learning Bazaar

Today’s infrastructure task: learning how to use Bazaar to manage my Ansible scripts.

Finally getting around to learning this today. It seems actually to be incredibly easy for this kind of simple task.I just needed to “init” the directory and then “add” the file trees. Since this is already a pretty clean directory tree and it’s only for us to use here on site, I just went ahead and added the whole thing:

$ bzr init
$ bzr add

Then I can open it with the “Bazaar Explorer” app, which is pretty similar to the  “kdesvn” application I’ve been using with Subversion. So far, so good.

Feb 13, 2018 at 4:00 PM

Writing for OpenSource.com

LINK: Homepage | Opensource.com
Opensource.com aspires to publish all content under a Creative Commons license but may not be able to do so in all cases. You are responsible for ensuring that you have the necessary permission to reuse any work on this site. Red Hat and the Shadowman logo are trademarks of Red Hat, Inc., registered in the United States and other countries.

Terry Hancock just made arrangements to start publishing some articles on OpenSource.com (the news magazine website run by Red Hat Linux, not to be confused with OpenSource.org which is the Open Source Initiative’s website).The articles will be focused on documenting our “virtual studio” project and the open source packages we’re using to create it.

This is a high-circulation publication which I’m hoping will raise our profile now that our project is more visibly active. In addition, it will help to provide documentation to the community for these packages.

Naturally, we’ll post links here when the articles are published.

We got a definite up-tick in traffic when Terry published an article about the “Pepper & Carrotanimated motion comic release, even though the only connection was in the author bio.

These new articles will actually be about our project, so we’re hoping that will generate even more interest. It’s also true that we’re still at an early enough phase of production that our software is of wider interest than the show itself.

Feb 14, 2018 at 4:00 PM


I don’t really know what to tell you about the name, but Aegisub is a very nice little free-software program for creating subtitles for videos. We used this for subtitling on our original animatic, and we’ll likely continue to use it during production.

I know it’s in the Debian archive, although it’s not showing up in my Ubuntu Studio distribution, so I may have to do a little searching to find it again.

Feb 15, 2018 at 4:01 PM

Surround Sound Speaker Shelves

Since I’m planning to mix a 5.1 surround sound version of our soundtrack, I need to be able to hear it at my desk, which means installing surround speakers on the wall behind my desk. I bought an Logitech 5.1 sound system.

Inexpensive, but the surround speakers didn’t have any hooks. So I’m building little tiny shelves for them!

Test fitting the dadoes:

Feb 17, 2018 at 4:01 PM

Moon Truck Rigging

In this video, Chris Kuhn explains his constraints-based rigging system for the “Moon Truck” large pressurized rover that makes its first appearance in the third part of our pilot story.

This is planned to be a regularly-reoccurring model in the series, as it’s the main way for the colonists to get around outside of the colony, especially for carrying people and cargo to and from Iridium Base.

There’s still more work to do on this model: we have not yet created the cradle to hold the Transfer Module on the back and the colors are not final (these are basically the color codes used on the drawing to identify separate parts).  Most likely it’ll be mostly a reflective white for thermal reasons.

Feb 19, 2018 at 4:01 PM

Papagayo / Papagayo-NG

The program we’ve used for for setting up Lipsync is the Python fork of Papagayo, now called Papagayo-NG and maintained by Morevna Project.

It’s a nifty project that solves a very specific problem, which is keyframing the animation for lipsync with audio. This is a tedious thing to do manually, but with Papagayo, it’s a lot faster.

Basically, you line up lines of dialog (which you’ve typed in), and the program automatically figures out the phonemes for them using one of the common animation lip-position systems (which you choose).

You can then align the start-stop points for each position with the audio waveform. You can also play back segments of it, and the model mouth is animated according to what you’ve set up.

It’s also quite easy to provide your own mouth position guide, so you can have your own character in the program, just as I’ve done with Hiromi, here.

Of course, the results are a bit mechanical at this point — the program doesn’t provide the variability that you can do by hand, but the idea is that you can tweak the output in the animation program after you’ve used Papagayo to set your basic positions.

Feb 20, 2018 at 4:00 PM

Zoom H1 Microphone

Although a lot of our sound effects are from free online sound libraries, we have recorded some of our own original sound. A lot of it was acquired with this inexpensive and very portable field microphone.

It records stereo to a micro SD card and is about the size of a hand-held microphone, even though it’s completely self-contained. Very useful!

Feb 21, 2018 at 5:00 PM

Lander Exterior

Lunar Transportation System (“Moon Shuttle”) Lander exterior.

Actually, the LTS Lander is also the control module for the whole stack when it’s in flight. The cockpit has controls at right-angles to each other, one set oriented to face “up” in this picture, which is connected via an umbilical to the unmanned service module and another set facing “left” in this picture, which is for the landing itself.Designed and Textured by Terry Hancock. Modeled by Chris Kuhn.

Feb 22, 2018 at 4:00 PM

Lander Cargo Deck Test

View of a circular disk on top of the lander, with markings, including the US flag

Test render with a close-up of the lander cargo deck. This lander, used in the pilot is named to honor the Apollo 12 Lunar Module Pilot (Alan Bean). The five American LTS landers are named this way. The two Russian landers are the Valentina Tereshkova and the Svetlana Savitskaya.

The LTS program was developed as a joint program in the 2020s, with established interface standards, and manufactured by contractors in the USA and Russia. Although completely compatible, the landers were built in different factories, and carry national markings like this one.

However, the transportation program is maintained by a joint managements system. If this sounds kind of familiar, yeah, it’s modeled on the way the ISS is managed. And of course, “LTS” is kind of a play on the “STS”, which was the official name for the US Space Shuttle.

Later in season one, we’ll encounter other LTS vehicles, including the Aldrin and the Tereshkova as part of the usual shuttle rotation.Designed and Textured by Terry Hancock. Modeled by Chris Kuhn.

Feb 23, 2018 at 4:01 PM

Transfer Module Exterior

Cylindrical module with windows and a logo on the side.
Lunar Transportation System ‘Transfer Module’

Rendered exterior of the “Transfer Module”, which is part of the Lunar Transportation System. This is the main habitat module for the trip to the Moon in Parts 2 & 3 of the pilot story.

This particular module is owned by the US Air Force in the story, which is why there are Iridium Base logos on it.

Designed and textured by Terry Hancock. Modeled by Chris Kuhn.

Feb 24, 2018 at 4:00 PM

5.1 Surround Sound

5.1 Surround Sound creates spatialization without headphones

I finally set up my 5.1 surround sound speakers on my workstation. I’m still working on finding a good way to mix audio for it. Audacity will allow you to generate 5.1 sound, but doesn’t give you a good way to preview it, so it’s kind of like shooting in the dark. I’m probably going to see if I can learn how to do it in Ardour.

There are proprietary tools for “vector based amplitude panning“, which is a more intuitive way of mixing multichannel surround sound, but the open source options seem to be pretty limited. I’m still looking. There is supposed to be a partial implementation as an extension for Ardour, but I haven’t tried it yet.

I also found a VBAP library on GitHub, implemented for Matlab, that might be a starting point for writing a VBAP mixer tool.

This illustration is from a 2011 article, “Understanding Surround and Binaural Sound“, which I wrote for Free Software Magazine explaining why 5.1 sound is a good idea for home-theater presentation. Very briefly: “binaural sound” works great on earphones, but not for people sitting in a room watching a video.

Feb 28, 2018 at 4:00 PM

LTS Lander Interior Set

LTS Lander Interior
Interior view of the LTS lander. In this shot we can see the engine cap (center foreground), the galley (right), the cargo door and cargo operations console (left), and the pilot’s cabin (center, background).

This is the interior set for the Moon Shuttle / Lander. Used in Parts 2 & 3 of “No Children in Space” on the flight to the Moon.

Designed by Terry Hancock. Modeled by Chris Kuhn.


Links I posted to Patreon in February, 2018.

Feb 4, 2018 at 4:00 PM

Extra-Galactic Planets

LINK: For the First Time, Planets Have Been Discovered in ANOTHER Galaxy! (ARCHIVE)
The first confirmed discovery of a planet beyond our Solar System (aka. an Extrasolar Planet) was a groundbreaking event. And while the initial discoveries were made using only ground-based observatories, and were therefore few and far between, the study of exoplanets has grown considerably with the deployment of space-based telescopes like the Kepler space telescope.

It’s pretty remarkable to me that this can even work, but apparently it does. The micro-lensing technique for detecting extra-solar planets is apparently not very sensitive at all to distance, and has been used to detect planet transit events even in other galaxies.

Feb 11, 2018 at 4:00 PM

Lidar Detection

LINK: Sprawling Maya cities uncovered by lasers (ARCHIVE)
Researchers have found more than 60,000 hidden Maya ruins in Guatemala in a major archaeological breakthrough. Laser technology was used to survey digitally beneath the forest canopy, revealing houses, palaces, elevated highways, and defensive fortifications. The landscape, near already-known Maya cities, is thought to have been home to millions more people than other research had previously suggested.

This is a pretty neat application of remote sensing. What they’re doing is using lidar (which is like radar, but with laser beams, and so picks up finer detail at different wavelengths) to scan the topography of the floor of the forest, rather than the treetops. This is much more likely to show things like the outlines of ancient structures — and wow, did they find a lot of them!

Feb 18, 2018 at 4:01 PM

Digital Space Ark

LINK: The mysterious storage device Elon Musk shot into space (ARCHIVE)
When SpaceX successfully launched its Falcon Heavy rocket and shot its payload into deep space last week, it turned science-fiction into reality. Now, Elon Musk’s cherry red Tesla Roadster is on a billion-year journey around the sun, captained by Starman, a spacesuit-wearing mannequin. But there was one component of the historic flight that many people overlooked.

Another part of SpaceX’s unusual payload (along with the Tesla Roadster), is a special data archive with highly-durable media, preserving a collection of Asimov’s “Foundation” trilogy.

Feb 25, 2018 at 4:00 PM

3D Printing for Space Development

LINK: Made In Space nabs Guinness world record for longest-ever 3D-printed object (ARCHIVE)If you haven’t heard of Made in Space, you should. The Silicon Valley company’s raison d’etre is to make it possible for astronauts aboard the International Space Station to 3D print parts and other objects they need rather than having to bring everything with them, or have things sent up on rockets.

Part of the challenge of space development and space colonization is the difficulty of bootstrapping technology and civilization. It’s clear that compact and flexible manufacturing, like 3D printing is going to be a part of that.


Avatar photo
Terry Hancock is the director and producer of "Lunatics!" and the founder for "Lunatics Project" and the associated "Film Freedom" Project. Misskey (Professional/Director Account) Mastodon (Personal Account)