Skip to content

NYPL/ami-preservation

Repository files navigation

ami-preservation

The Audio and Moving Image (AMI) Preservation team at the New York Public Library (NYPL) is dedicated to ensuring the long-term preservation and access of the Library's audiovisual collections. This repository houses a collection of resources, tools, and internal documentation that underpin our digitization, quality assurance, and quality control efforts.

Explore the repository using the following links:


🚀 Installation

This project includes two types of dependencies that must be installed:

  1. System-level tools (e.g., ffmpeg, sox, etc.)
  2. Python packages (e.g., pandas, boto3, etc.)

Follow these steps to set up your environment:


1. Install System Dependencies

First, install the external command-line tools that the Python scripts rely on.

macOS (using Homebrew)

You have two options for installing system-level tools on macOS.

Option 1: Automated Workstation Setup (Recommended)

This repository includes a setup script, install_amip.sh, which will configure a new Mac with Homebrew, all required command-line tools, language runtimes (Python, Ruby, Java), and useful GUI applications.

This script is located in the ami_scripts directory.

# Make sure you have cloned this repository first
cd ami_scripts
chmod +x install_amip.sh
./install_amip.sh
Option 2: Manual Installation (Minimal)

If you prefer to install only the minimum required tools, ensure you have Homebrew installed, and then run the following command in your terminal:

brew install ffmpeg sox mediaconch mkvtoolnix mediainfo

Note: Add any other required tools such as rawcooked or makemkv if your scripts depend on them.

Linux / Windows

Use your system’s package manager (e.g., apt-get for Ubuntu or winget for Windows) to install equivalent packages.


2. Install Python Package & Scripts

Once the system tools are installed, use pip to install the NYPL AMI Preservation package. This will:

  • Download the project from GitHub
  • Install all required Python packages (e.g., pandas, boto3, etc.)
  • Make all 60+ scripts available as runnable commands in your terminal
python3 -m pip install -v git+https://github.com/NYPL/ami-preservation

3. Update Your Shell

Your shell must be made aware of the new commands.

If you are using pyenv (recommended):

pyenv rehash

If not, simply open a new terminal session to refresh your shell environment.


4. Test It!

You’re all set! You can now run any script as a direct command.
Try running one with the --help flag to verify it’s working:

validate-ami-bags --help

About

Repo for NYPL's Audio and Moving Image Preservation Unit. Documentation Site:

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 10