where to find fev file header?


(difei) #1

I can find fsb file struct like:
typedef struct {
char id[4]; /* ‘FSB5’ /
int32_t version; // ???
int32_t numsamples; /
number of samples in the file /
int32_t shdrsize; /
size in bytes of all of the sample headers including extended information /
int32_t namesize; // size of the name table
int32_t datasize; /
size in bytes of compressed sample data /
uint32_t mode; /
flags that apply to all samples in the fsb /
char zero[8]; /
??? /
uint8_t hash[16]; /
hash??? /
char dummy[8]; /
??? */
} FSOUND_FSB_HEADER_FSB5;
but I cannot get the format for fev file. Can it be public to get?


(Brett Paterson) #2

just to clean up your assumption there

#ifdef FMOD_SUPPORT_PRAGMAPACK
#pragma pack(1)
#endif
struct FSB5_HEADER
{
char id[4]; // ‘FSB5’
unsigned int subVersion; // Extended FSB version
int numSubSounds; // Number of subsounds in the file
unsigned int headerChunkSizeBytes; // Size in bytes of all of the sub-sound headers including metadata
unsigned int namesChunkSizeBytes; // Size in bytes of all the original source file names
unsigned int dataChunkSizeBytes; // Size in bytes of compressed sample data
FMOD_FSB_FORMAT dataFormat; // Compression format
unsigned int dataFormatVersion; // Version number of compression format
unsigned int mode; // Flags that apply to all subsounds in the FSB
FMOD_UINT64 compatibilityHash; // Deprecated
FMOD_GUID guid; // MD5 hash based unique identifier using all header information
} FMOD_PACKED;
#ifdef FMOD_SUPPORT_PRAGMAPACK
#pragma pack()
#endif


(difei) #3

My final purpose is to read the audio file path in fev file.


(Brett Paterson) #4

I did a quick google and this might help you out

I might look at an online doc for FSB5 if people are interested in it