From cc65e769e74f146a28711345c1367eb43ff02a09 Mon Sep 17 00:00:00 2001 From: Amlal El Mahrouss Date: Tue, 20 Feb 2024 19:32:00 +0100 Subject: Meta: add XIFF. Signed-off-by: Amlal El Mahrouss --- Public/Kits/SystemKit/XIFF.hxx | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 Public/Kits/SystemKit/XIFF.hxx diff --git a/Public/Kits/SystemKit/XIFF.hxx b/Public/Kits/SystemKit/XIFF.hxx new file mode 100644 index 00000000..e9b84d38 --- /dev/null +++ b/Public/Kits/SystemKit/XIFF.hxx @@ -0,0 +1,35 @@ +/** =========================================== + (C) Mahrouss Logic + ===========================================*/ + +#pragma once + +/** --------------------------------------------------- + + * THIS FILE CONTAINS CODE FOR THE eXtended Information File Format. + * XIFF is used to make setup programs/audio/video files. + +------------------------------------------------------- */ + +struct XiffAudioHeader { + unsigned char mag[4]; // XAUD string + unsigned int overall_size; // overall size of file in bytes + unsigned char specific_mag[4]; // WAVE string + unsigned char fmt_chunk_marker[4]; // fmt string with trailing null char + unsigned int length_of_fmt; // length of the format data + unsigned int format_type; // format type. 1-PCM, 3- IEEE float, 6 - 8bit A + // law, 7 - 8bit mu law + unsigned int channels; // no.of channels + unsigned int sample_rate; // sampling rate (blocks per second) + unsigned int byterate; // SampleRate * NumChannels * BitsPerSample/8 + unsigned int block_align; // NumChannels * BitsPerSample/8 + unsigned int bits_per_sample; // bits per sample, 8- 8bits, 16- 16 bits etc + unsigned char data_chunk_header[4]; // DATA string or FLLR string + unsigned int data_size; // NumSamples * NumChannels * BitsPerSample/8 - size + // of the next chunk that will be read +}; + +#define kXIFFVideo "XVFF" +#define kXIFFAudio "XAFF" +#define kXIFFInstaller "XnFF" +#define kXIFFGeneric "XIFF" -- cgit v1.2.3