# CSound

# What is a CSound?

CSound is a format used to store information and data for a sound.

# Structure

Size Type Name Description
4 UInt32 Handle The handle of the font, used to reference the font by other structures
4 UInt32 Unknown Allegedly a checksum of the Font Attributes, unsure if accurate or the usage
4 UInt32 References The number of references made to this font in the project, used to determine if the font should be removed from the project
4 UInt32 Data Size The size of the Data, includes the Name aswell
4 UInt32 Flags Definitions
4 Unknown Allegedly frequency, unsure of use, seems to always be zero
4 Int32 Name Length The length of the sound name
Name Length * 2 Unicode Name The name of the sound
... Byte[] Sound Data The raw data of the sound file, length is Data Size - Name Length * 2 if Play from disk is true, otherwise Data Size

# Flag Definitions

# Flags

Value Name Description
0x1 Unknown Causes the compiler to fail if set to false
0x10 Load on Call Prevents sound preloading, only loads the sound when it is used
0x20 Play from disk Does the same as Load on Call but stores the data uncompressed when compiled