Skip to content

AEP Parser Documentation

Welcome to the AEP Parser documentation! This library provides a Python interface for parsing Adobe After Effects project files (.aep).

About

AEP Parser is a Python library that parses Adobe After Effects project files (.aep), which are binary files encoded in RIFX format. The library uses Kaitai Struct to parse the binary format and provides a clean, typed Python API to access project data.

Installation

pip install aep-parser

Quick Start

from aep_parser import parse_project

# Parse an After Effects project file
project = parse_project("path/to/your/project.aep")

# Access project information
print(f"AE Version: {project.ae_version}")
print(f"Frame Rate: {project.frame_rate}")
print(f"Bits per Channel: {project.bits_per_channel}")

# Access project items
for item in project:
    print(f"Item: {item.name} ({type(item).__name__})")

Features

  • Full Project Parsing: Parse complete After Effects projects including compositions, footage, layers, and effects
  • Type Safety: Fully typed Python dataclasses for all AE objects
  • Comprehensive: Support for layers, properties, effects, keyframes, markers, and more
  • Python 3.7+: Compatible with Python 3.7 and above

Key Concepts

Project Structure

An After Effects project has a hierarchical structure:

  • Project: The root container with project-level settings
  • Items: CompItems (compositions), FootageItems, and Folders
  • Layers: Different layer types (AV, Text, Shape, Camera, Light)
  • Properties: Layer properties with keyframes and expressions
  • Sources: Footage sources (files, solids, placeholders)

Data Model

The library provides dataclasses that mirror After Effects' object model:

  • Project: Root project object
  • CompItem, FootageItem, Folder: Project items
  • AVLayer, TextLayer, ShapeLayer, etc.: Layer types
  • Property, PropertyGroup: Layer properties
  • Keyframe, Marker: Animation data
  • FileSource, SolidSource, PlaceholderSource: Footage sources

API Reference

Browse the API Reference for detailed documentation of all classes and methods.

Guides

  • Contributing Guide: Learn how to contribute to the project, understand the codebase, debug issues, and add new features
  • Flags Tutorial: Step-by-step guide for parsing boolean flags (1-bit attributes) from AEP files

Contributing

Contributions are welcome! See the Contributing Guide to get started, or visit the GitHub repository for more information.

License

This project is licensed under the MIT License.