Skip to content
Switch branches/tags
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

#ASLe16 Created By Jesse Jurman and Ethan Jurman

ASLe16 is an encoding system that represents the American Sign Language using a 16 bit encoding.

What's Inside the Box!

To generate a full listing of encodings, run (hint, you may want to append | less to the call to make it easier to read):


Python script; asl_encoding is a script that generates all the binary encodings. The script uses the PartBlock and ModifierBlock classes from, and is loaded into the construction of PyDecipher


Binary Blender file; This is the blender armature that has been rigged with various drivers to work with the If you have Blender installed, you may open the file with that, and can change some render settings (although some are forced in the

This file can be run by itself, and takes binary strings from standard-in. The images rendered will be placed in the ./tmp/ located in this folder.


Python Script; This script works with the ASL_Model.blend file and the bpy library which allows python to interact with blender in a scriptable way. This file also makes use of the PyDecipher class, which allows registering functions to a given decipherment.

Every function in this file describes how the armature in blender should be modified to make the correct pose. Each function also appends to an undoStack which is a list of functions which get called after each render is made. The undoStack is required to put the model in the default pose, ready for the next one.

Python Script; This file contains the PartBlock and ModifierBlock classes, which are created by the script, and are loaded by the PyDecipher script.

Any PartBlock contains the name for a part, it's binary encoding (in 7-bits) and a list of ModifierBlocks.

Any ModifierBlock contains the name of the modifier, the size the modifier takes in binary, and a list of values (in the order that they should be mapped to).

Python Script; Tells python that files located here may be used for other python scripts.


Batch Script; Batch file that can be double-clicked in Windows to open the program (literally just opens with python).


Bash Script; Bash script that can be double-clicked in Mac OS X to open the program (literally just opens with python).

Python Script; Python script that loads a hash of PartBlocks (it only reads in the values) and can make function calls or print strings based on binary-strings that map to those PartBlocks.

It contains a decipher(self, string) method, which takes in a string and returns a list of hashes that have Name -> and Modifiers -> a list of tuples that are: (ModifierName, ModifierValue).

Also included is a list of register functions, including setAfterRegister(self, func), setBeforeRegister(self, func), register(self, func, PartName=None, PartModifier=None, ModifierValue=None), and finally callFunctions(self, string). callFunctions(self, string) calls a function set in setBeforeRegister(self, func), all the functions defined in register(self, func, ...) in order of least generic to most generic, and a function set in setAfterRegister(self, func). callFunctions(self, string) takes in a binary-string, similar to the decipher(self, string) function, but instead of returning a hash of PartBlocks, it simply calls the registered functions.

At the very end of the file are several validation methods (all regexes), which check if the encoding is in a valid format: isValid(self, string), isMissingBits(self, string), isMissingBytes(self,sting) and ``tooManyBytes(self, string)```.

MarkDown File; This file, a description of each file and folder required for running the application.


Graphical User Interface for This file loads a client window written in Tkinter to allow users to select PartBlocks from the and pipe binary strings to the (which runs in a subprocess.Popen call). Renders which are placed in the ./tmp/ folder are converted into .gif files, either with sips (on mac) or with ImageMagick (on Windows) and loaded in the right pane.


ASLe16 is an encoding system that represents the American Sign Language using a 16 bit encoding.



No releases published


No packages published