50 |
# define LIST_TYPE_3GNL 0x33676E6C |
# define LIST_TYPE_3GNL 0x33676E6C |
51 |
# define LIST_TYPE_3LS 0x334c5320 // own gig format extension |
# define LIST_TYPE_3LS 0x334c5320 // own gig format extension |
52 |
# define LIST_TYPE_RTIS 0x52544953 // own gig format extension |
# define LIST_TYPE_RTIS 0x52544953 // own gig format extension |
53 |
|
# define LIST_TYPE_3DNM 0x33646e6d |
54 |
# define CHUNK_ID_3GIX 0x33676978 |
# define CHUNK_ID_3GIX 0x33676978 |
55 |
# define CHUNK_ID_3EWA 0x33657761 |
# define CHUNK_ID_3EWA 0x33657761 |
56 |
# define CHUNK_ID_3LNK 0x336C6E6B |
# define CHUNK_ID_3LNK 0x336C6E6B |
63 |
# define CHUNK_ID_LSNM 0x4c534e4d // own gig format extension |
# define CHUNK_ID_LSNM 0x4c534e4d // own gig format extension |
64 |
# define CHUNK_ID_SCSL 0x5343534c // own gig format extension |
# define CHUNK_ID_SCSL 0x5343534c // own gig format extension |
65 |
# define CHUNK_ID_LSDE 0x4c534445 // own gig format extension |
# define CHUNK_ID_LSDE 0x4c534445 // own gig format extension |
66 |
|
# define CHUNK_ID_3DDP 0x33646470 |
67 |
#else // little endian |
#else // little endian |
68 |
# define LIST_TYPE_3PRG 0x67727033 |
# define LIST_TYPE_3PRG 0x67727033 |
69 |
# define LIST_TYPE_3EWL 0x6C776533 |
# define LIST_TYPE_3EWL 0x6C776533 |
71 |
# define LIST_TYPE_3GNL 0x6C6E6733 |
# define LIST_TYPE_3GNL 0x6C6E6733 |
72 |
# define LIST_TYPE_3LS 0x20534c33 // own gig format extension |
# define LIST_TYPE_3LS 0x20534c33 // own gig format extension |
73 |
# define LIST_TYPE_RTIS 0x53495452 // own gig format extension |
# define LIST_TYPE_RTIS 0x53495452 // own gig format extension |
74 |
|
# define LIST_TYPE_3DNM 0x6d6e6433 |
75 |
# define CHUNK_ID_3GIX 0x78696733 |
# define CHUNK_ID_3GIX 0x78696733 |
76 |
# define CHUNK_ID_3EWA 0x61776533 |
# define CHUNK_ID_3EWA 0x61776533 |
77 |
# define CHUNK_ID_3LNK 0x6B6E6C33 |
# define CHUNK_ID_3LNK 0x6B6E6C33 |
84 |
# define CHUNK_ID_LSNM 0x4d4e534c // own gig format extension |
# define CHUNK_ID_LSNM 0x4d4e534c // own gig format extension |
85 |
# define CHUNK_ID_SCSL 0x4c534353 // own gig format extension |
# define CHUNK_ID_SCSL 0x4c534353 // own gig format extension |
86 |
# define CHUNK_ID_LSDE 0x4544534c // own gig format extension |
# define CHUNK_ID_LSDE 0x4544534c // own gig format extension |
87 |
|
# define CHUNK_ID_3DDP 0x70646433 |
88 |
#endif // WORDS_BIGENDIAN |
#endif // WORDS_BIGENDIAN |
89 |
|
|
90 |
#ifndef GIG_DECLARE_ENUM |
#ifndef GIG_DECLARE_ENUM |
359 |
float zone_size; ///< Intended for internal usage: reflects the size of each zone (128/zones) for normal split types only, 0 otherwise. |
float zone_size; ///< Intended for internal usage: reflects the size of each zone (128/zones) for normal split types only, 0 otherwise. |
360 |
}; |
}; |
361 |
|
|
362 |
/** Defines which frequencies are filtered by the VCF. |
/** Audio filter types. |
363 |
|
* |
364 |
|
* The first 5 filter types are the ones which exist in GigaStudio, and |
365 |
|
* which are very accurately modeled on LinuxSampler side such that they |
366 |
|
* would sound with LinuxSampler exactly as with GigaStudio. |
367 |
|
* |
368 |
|
* The other filter types listed here are extensions to the gig format and |
369 |
|
* are LinuxSampler specific filter type implementations. Note that none of |
370 |
|
* these are duplicates of the GigaStudio filter types. For instance |
371 |
|
* @c vcf_type_lowpass (GigaStudio) and @c vcf_type_lowpass_2p |
372 |
|
* (LinuxSampler) are both lowpass filters with 2 poles, however they do |
373 |
|
* sound differently. |
374 |
* |
* |
375 |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
* @see enumCount(), enumKey(), enumKeys(), enumValue() |
376 |
*/ |
*/ |
377 |
GIG_DECLARE_ENUM(vcf_type_t, |
GIG_DECLARE_ENUM(vcf_type_t, |
378 |
vcf_type_lowpass = 0x00, /**< Standard lowpass filter type. */ |
vcf_type_lowpass = 0x00, /**< Standard lowpass filter type (GigaStudio). */ |
379 |
vcf_type_lowpassturbo = 0xff, /**< More poles than normal lowpass. */ |
vcf_type_lowpassturbo = 0xff, /**< More poles than normal lowpass (GigaStudio). */ |
380 |
vcf_type_bandpass = 0x01, /**< Bandpass filter type. */ |
vcf_type_bandpass = 0x01, /**< Bandpass filter type (GigaStudio). */ |
381 |
vcf_type_highpass = 0x02, /**< Highpass filter type. */ |
vcf_type_highpass = 0x02, /**< Highpass filter type (GigaStudio). */ |
382 |
vcf_type_bandreject = 0x03 /**< Band reject filter type. */ |
vcf_type_bandreject = 0x03, /**< Band reject filter type (GigaStudio). */ |
383 |
|
vcf_type_lowpass_1p = 0x11, /**< [gig extension]: 1-pole lowpass filter type (LinuxSampler). */ |
384 |
|
vcf_type_lowpass_2p = 0x12, /**< [gig extension]: 2-pole lowpass filter type (LinuxSampler). */ |
385 |
|
vcf_type_lowpass_4p = 0x14, /**< [gig extension]: 4-pole lowpass filter type (LinuxSampler). */ |
386 |
|
vcf_type_lowpass_6p = 0x16, /**< [gig extension]: 6-pole lowpass filter type (LinuxSampler). */ |
387 |
|
vcf_type_highpass_1p = 0x21, /**< [gig extension]: 1-pole highpass filter type (LinuxSampler). */ |
388 |
|
vcf_type_highpass_2p = 0x22, /**< [gig extension]: 2-pole highpass filter type (LinuxSampler). */ |
389 |
|
vcf_type_highpass_4p = 0x24, /**< [gig extension]: 4-pole highpass filter type (LinuxSampler). */ |
390 |
|
vcf_type_highpass_6p = 0x26, /**< [gig extension]: 6-pole highpass filter type (LinuxSampler). */ |
391 |
|
vcf_type_bandpass_2p = 0x32, /**< [gig extension]: 2-pole bandpass filter type (LinuxSampler). */ |
392 |
|
vcf_type_bandreject_2p = 0x42 /**< [gig extension]: 2-pole bandreject filter type (LinuxSampler). */ |
393 |
); |
); |
394 |
|
|
395 |
/** |
/** |