Skip to content

AGAConv - a CDXL video converter for Commodore-Amiga computers

License

Notifications You must be signed in to change notification settings

mschordan/agaconv

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AGAConv

Overview

This is a retro computing just-for-fun project. AGAConv is a CDXL video converter for Commodore-Amiga computers. It can convert modern videos (MP4, etc.) into the CDXL format which can be played with AGABlaster on an AGA Commodore-Amiga computer. The first Commodore-Amiga computer with the AGA chipset was released in 1992. Commodore went bankrupt in April 1994.

The CDXL format was created by Commodore primarily for the Commodore CDTV, released 1991, to permit playback of video from CD-ROM in the early 1990s. The CDXL format is a simple streaming format, consisting of linear concatenated chunks (packets), each with an uncompressed frame and associated audio data. In addition to the original 12-bit colors, AGAConv also supports 24-bit colors, as supported by Commodore Amiga AGA systems released in 1992+.

AGAConv utilizes ffmpeg to extract video frames and audio data from videos and encodes the extracted data into the CDXL format.

Features

Overview of supported features:

  • Configuration file allows to set any options as default.
  • Formats:
    • Standard CDXL with optimized bitplanes and frequency adjustment
    • Standard CDXL with fixed frames and frequency adjustment
    • Custom CDXL with optimized color palette and bitplanes, and exact frequency
  • Each CDXL frame with its own color palette
  • Color modes:
    • AGA8 to AGA2, 24 bit colors
    • OCS5 to OCS2, 12 bit colors
    • HAM8, 24 bit colors (requires ham_convert)
    • HAM6, EHB, 12 bit colors (requires ham_convert)
  • Screen (resolution) modes:
    • Lores, Hires, Superhires
  • Audio
    • 8-bit mono/stereo
  • Encoding of custom CDXL videos (minimal number of bitplanes in each frame)
    • With 24-bit color palette and variable length frames
    • Any audio frequency
  • Encoding of standard CDXL videos (fixed number of bitplanes)
    • Audio Frequency is automatically adjusted such that all CDXL frames have the same size
    • 12-bit colors (default)
    • 24-bit colors are supported in RGB 3-byte format (same as IFF/ANIM CMAP chunk body data)
  • More information about video conversions can be found on the AGAConv website.

How It Works

AGAConv uses ffmpeg to extract video frames and audio data from any video format supported by ffmpeg and encodes them into a CDXL video. For HAM conversions it can integrate the tool ham_convert into the conversion pipeline. The CDXL video can be played with AGABlaster on a Commodore-Amiga computer.

Requirements (Ubuntu)

You need to install the following dependencies before you can build:

  • sudo apt install make g++ libpng-dev man-db ffmpeg

Requirements (MacOS)

On MacOS you will need to install dependencies via Homebrew:

  • brew install libpng ffmpeg doxygen pandoc

Building from source

AGAConv can be built from source and run on Ubuntu as follows:

  • cd agaconv
  • make -j6

Builds the excutable 'bin/agaconv'.

  • 'make view-man' shows the man page (without installing it)
  • 'make clean' removes all generated files.

Binary Distribution - Ubuntu PPA Installer

  • A binary distribution of AGAConv 1.0+ is available as PPA package and can be installed with apt on Ubuntu.
  • Instructions for the binary PPA installation can be found on the AGAConv website.

Where to find more information

Version

Version: 1.1.0

Author

Author: Markus Schordan, Copyright 2019-2024.

Contributors

Contributor: Emiliano Esposito (2024) - MacOS layer support/fixes, last frame audio spike bugfix

License

License: GPL v3+ open-source

Acknowledgments

  • Thanks to Jean Bollaërt for testing the pre-release version of AGAConv 0.9.4 on Windows 10 with Microsoft's Ubuntu app/terminal.
  • Thanks to Sebastian Sieczko for adding command line options to his graphic converter ham_convert such that it could be integrated into the AGAConv conversion pipeline.

About

AGAConv - a CDXL video converter for Commodore-Amiga computers

Resources

License

Stars

Watchers

Forks

Packages

No packages published