/* ** Command & Conquer Red Alert(tm) ** Copyright 2025 Electronic Arts Inc. ** ** This program is free software: you can redistribute it and/or modify ** it under the terms of the GNU General Public License as published by ** the Free Software Foundation, either version 3 of the License, or ** (at your option) any later version. ** ** This program is distributed in the hope that it will be useful, ** but WITHOUT ANY WARRANTY; without even the implied warranty of ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the ** GNU General Public License for more details. ** ** You should have received a copy of the GNU General Public License ** along with this program. If not, see . */ #ifndef VQAFILE_H #define VQAFILE_H /**************************************************************************** * * C O N F I D E N T I A L -- W E S T W O O D S T U D I O S * *---------------------------------------------------------------------------- * * PROJECT * VQA player library. (32-Bit protected mode) * * FILE * vqafile.h * * DESCRIPTION * VQA file format definitions. * * PROGRAMMER * Denzil E. Long, Jr. * * DATE * April 10, 1995 * ****************************************************************************/ #include #ifdef __WATCOMC__ #pragma pack(1); #endif /*--------------------------------------------------------------------------- * STRUCTURE DEFINITIONS AND RELATED DEFINES. *-------------------------------------------------------------------------*/ /* VQAHeader: VQA movie description header. (VQHD) * * Version - VQA version. * Flags - Various flags. (See below) * ImageWidth - Image width in pixels. * ImageHeight - Image height in pixels. * BlockWidth - Block width in pixels. * BlockHeight - Block height in pixels. * Frames - Total number of frames in the movie. * FPS - Playback rate (Frame Per Second). * Groupsize - Frame grouping size (frames per codebook). * Num1Colors - Number of 1 color colors. * CBentries - Number of codebook entries. * Xpos - X position to draw frames. (-1 = Center) * Ypos - Y position to draw frames. (-1 = Center) * MaxFramesize - Size of largest frame. * SampleRate - Sample rate of primary audio stream. * Channels - Number of channels in primary audio stream. * BitsPerSample - Sample bit size in primary audio stream. * FutureUse - Reserved for future expansion. */ typedef struct _VQAHeader { unsigned short Version; unsigned short Flags; unsigned short Frames; unsigned short ImageWidth; unsigned short ImageHeight; unsigned char BlockWidth; unsigned char BlockHeight; unsigned char FPS; unsigned char Groupsize; unsigned short Num1Colors; unsigned short CBentries; unsigned short Xpos; unsigned short Ypos; unsigned short MaxFramesize; unsigned short SampleRate; unsigned char Channels; unsigned char BitsPerSample; unsigned short AltSampleRate; unsigned char AltChannels; unsigned char AltBitsPerSample; unsigned short FutureUse[5]; } VQAHeader; /* Version type. */ #define VQAHD_VER1 1 #define VQAHD_VER2 2 /* VQA header flag definitions */ #define VQAHDB_AUDIO 0 /* Audio track present. */ #define VQAHDB_ALTAUDIO 1 /* Alternate audio track present. */ #define VQAHDF_AUDIO (1<