Convert Video to Amiga CDXL with FFmpeg

This guide explains how to convert modern digital video files into the classic Amiga CDXL format using the FFmpeg command-line tool. You will learn the specific video and audio parameters required to ensure the output file plays smoothly on vintage Amiga hardware, such as the Amiga CD32 or CDTV, along with a breakdown of the exact FFmpeg command needed to perform the conversion.

Understanding Amiga CDXL Constraints

The CDXL format was designed in the early 1990s for low-bandwidth CD-ROM drives (specifically single-speed 150 KB/s drives). Because of these hardware limitations, you must downscale your source video and audio significantly. If your file exceeds the bandwidth limits of the Amiga’s CD-ROM drive, playback will stutter.

To ensure compatibility, your target specifications should generally adhere to the following: * Resolution: 320x200 pixels (standard NTSC) or 320x256 pixels (PAL). You can also use lower resolutions like 160x100 to save bandwidth. * Frame Rate: 12 frames per second (fps) is standard. You can go up to 15 fps, but 24 or 30 fps will overwhelm classic hardware. * Color Depth: CDXL uses an indexed color palette (usually 8-bit/256 colors or HAM6). * Audio: 8-bit mono, sampled at 11025 Hz or 22050 Hz.

The FFmpeg Conversion Command

FFmpeg includes a native CDXL muxer and encoder. To convert your video, open your terminal or command prompt and run the following command:

ffmpeg -i input.mp4 -c:v cdxl -pix_fmt bgr8 -s 320x200 -r 12 -c:a pcm_s8 -ar 11025 -ac 1 output.cdxl

Command Parameter Breakdown

Here is what each part of the FFmpeg command does:

Testing and Playback

Once the conversion is complete, the resulting .cdxl file can be transferred to an Amiga-formatted media, such as a CF card, floppy disk, or CD-ROM image.

You can play the video on a real Amiga using classic players like CDXLPlay or Multiview (with the appropriate datatypes installed). You can also test the file on modern computers using retro emulators like WinUAE or FS-UAE to verify that the frame rate and audio sync are correct before writing the file to physical media.