00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00016
00017
00018 #ifndef CRI_INCL_CRI_ATOM_EX_H
00019 #define CRI_INCL_CRI_ATOM_EX_H
00020
00021
00022
00023
00024
00025 #include <cri_xpt.h>
00026 #include <cri_atom.h>
00027 #include <cri_file_system.h>
00028
00029
00030
00031
00032
00033
00034
00035 #define CRIATOMEX_VERSION (0x02200200)
00036 #define CRIATOMEX_VER_NUM "2.20.02"
00037 #define CRIATOMEX_VER_NAME "CRI AtomEx"
00038 #define CRIATOMEX_VER_OPTION
00039
00040
00041
00042
00051 #define CRIATOMEX_MAX_VIRTUAL_VOICES (32767)
00052
00053
00054
00055
00063 #define CRIATOMEX_INVALID_AISAC_CONTROL_ID (0xffff)
00064
00072 #define CRIATOMEXACF_MAX_BUSES (64)
00073
00081 #define CRIATOMEXACF_MAX_FXES (8)
00082
00090 #define CRIATOMEXACF_INVALID_CUE_LIMITS (0xffffffff)
00091
00102 #define CRIATOMEXACF_MAX_NAME_STRING_COUNT (64)
00103
00104
00105
00106
00116 #define CRIATOMEX_DEFAULT_VOICES_PER_POOL (8)
00117
00118
00119
00120
00132 #define CRIATOMEXPLAYER_NO_GROUP_LIMITATION (-1)
00133
00139 #define CRIATOMEXPLAYER_NO_LOOP_LIMITATION (CRIATOMPLAYER_NO_LOOP_LIMITATION)
00140 #define CRIATOMEXPLAYER_IGNORE_LOOP (CRIATOMPLAYER_IGNORE_LOOP)
00141 #define CRIATOMEXPLAYER_FORCE_LOOP (CRIATOMPLAYER_FORCE_LOOP)
00150 #define CRIATOMEXPLAYER_MAX_ASR_RACKS (8)
00151
00152
00153
00154
00170 #define CRIATOMEX_INVALID_PLAYBACK_ID (0xFFFFFFFF)
00171
00181 #define CRIATOMEX_INVALID_BLOCK_INDEX (0xFFFFFFFF)
00182
00183
00184
00185
00195 #define CRIATOMEX_IGNORE_FADE_OUT (-1)
00196
00197
00198
00199
00207 #define CRIATOMEXDBAS_ILLEGAL_ID (CRIATOMDBAS_ILLEGAL_ID)
00208
00209
00210
00211
00219 #define CRIATOMEX_STREAMING_CACHE_ILLEGAL_ID (CRIATOM_STREAMING_CACHE_ILLEGAL_ID)
00220
00221
00222
00223
00224
00225
00226
00227
00259 #define criAtomEx_SetUserAllocator(p_malloc_func, p_free_func, p_obj) \
00260 criAtom_SetUserAllocator((p_malloc_func), (p_free_func), (p_obj))
00261
00272 #define criAtomEx_SetDefaultConfig(p_config) \
00273 {\
00274 (p_config)->thread_model = CRIATOMEX_THREAD_MODEL_MULTI;\
00275 (p_config)->server_frequency = 60.0f;\
00276 (p_config)->parameter_update_interval = 1;\
00277 (p_config)->enable_atom_sound_disabled_mode = CRI_FALSE;\
00278 (p_config)->max_virtual_voices = 16;\
00279 (p_config)->max_parameter_blocks = 1024;\
00280 (p_config)->max_voice_limit_groups = 16;\
00281 (p_config)->max_categories = 16;\
00282 (p_config)->max_aisacs = 8;\
00283 (p_config)->categories_per_playback = 4;\
00284 (p_config)->max_sequences = (p_config)->max_virtual_voices;\
00285 (p_config)->max_tracks = (p_config)->max_virtual_voices * 2;\
00286 (p_config)->max_track_items = (p_config)->max_virtual_voices * 2;\
00287 (p_config)->max_aisac_auto_modulations = 0;\
00288 (p_config)->max_pitch = 2400.0f;\
00289 (p_config)->max_faders = 4;\
00290 (p_config)->coordinate_system = CRIATOMEX_COORDINATE_SYSTEM_LEFT_HANDED;\
00291 (p_config)->enable_auto_matching_in_pan_type_auto = CRI_FALSE;\
00292 (p_config)->enable_category_override_by_ex_player = CRI_FALSE;\
00293 (p_config)->sequence_prepare_ratio = 1.5;\
00294 (p_config)->rng_if = NULL;\
00295 (p_config)->fs_config = NULL;\
00296 (p_config)->acf_info = NULL;\
00297 (p_config)->context = NULL;\
00298 (p_config)->version = CRI_ATOM_VERSION;\
00299 (p_config)->version_ex = CRIATOMEX_VERSION;\
00300 }
00301
00342 #define criAtomEx_AttachPerformanceMonitor() criAtom_AttachPerformanceMonitor()
00343
00355 #define criAtomEx_DetachPerformanceMonitor() criAtom_DetachPerformanceMonitor()
00356
00367 #define criAtomEx_ResetPerformanceMonitor() criAtom_ResetPerformanceMonitor()
00368
00378 #define criAtomEx_GetPerformanceInfo(p_info) criAtom_GetPerformanceInfo(p_info)
00379
00394 #define criAtomEx_SetChannelMapping(nch, type) \
00395 criAtom_SetChannelMapping((nch), (type))
00396
00408 #define criAtomEx_CalculateAdxBitrate(num_channels, sampling_rate) \
00409 criAtom_CalculateAdxBitrate(num_channels, sampling_rate)
00410
00425 #define criAtomEx_CalculateHcaBitrate(num_channels, sampling_rate, quality) \
00426 criAtom_CalculateHcaBitrate(num_channels, sampling_rate, quality)
00427
00442 #define criAtomEx_CalculateHcaMxBitrate(num_channels, sampling_rate, quality) \
00443 criAtom_CalculateHcaMxBitrate(num_channels, sampling_rate, quality)
00444
00457 #define criAtomEx_CalculateWaveBitrate(num_channels, sampling_rate, num_bits) \
00458 criAtom_CalculateWaveBitrate(num_channels, sampling_rate, num_bits)
00459
00472 #define criAtomEx_CalculateAiffBitrate(num_channels, sampling_rate, num_bits) \
00473 criAtom_CalculateAiffBitrate(num_channels, sampling_rate, num_bits)
00474
00475
00476
00477
00486 #define criAtomExHcaMx_SetDefaultConfig(p_config) \
00487 {\
00488 (p_config)->server_frequency = 60.0f;\
00489 (p_config)->num_mixers = 1;\
00490 (p_config)->max_voices = 16;\
00491 (p_config)->max_input_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
00492 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_OUTPUT_SAMPLING_RATE;\
00493 (p_config)->output_channels = CRIATOM_DEFAULT_OUTPUT_CHANNELS;\
00494 (p_config)->output_sampling_rate = CRIATOM_DEFAULT_OUTPUT_SAMPLING_RATE;\
00495 (p_config)->sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
00496 }
00497
00498
00499
00500
00510 #define criAtomExVoicePool_SetDefaultConfigForStandardVoicePool(p_config) \
00511 {\
00512 (p_config)->identifier = 0;\
00513 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00514 criAtomPlayer_SetDefaultConfigForStandardPlayer(&(p_config)->player_config);\
00515 }
00516
00526 #define criAtomExVoicePool_SetDefaultConfigForAdxVoicePool(p_config) \
00527 {\
00528 (p_config)->identifier = 0;\
00529 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00530 criAtomPlayer_SetDefaultConfigForAdxPlayer(&(p_config)->player_config);\
00531 }
00532
00542 #define criAtomExVoicePool_SetDefaultConfigForHcaVoicePool(p_config) \
00543 {\
00544 (p_config)->identifier = 0;\
00545 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00546 criAtomPlayer_SetDefaultConfigForHcaPlayer(&(p_config)->player_config);\
00547 }
00548
00558 #define criAtomExVoicePool_SetDefaultConfigForHcaMxVoicePool(p_config) \
00559 {\
00560 (p_config)->identifier = 0;\
00561 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00562 criAtomPlayer_SetDefaultConfigForHcaMxPlayer(&(p_config)->player_config);\
00563 }
00564
00574 #define criAtomExVoicePool_SetDefaultConfigForWaveVoicePool(p_config) \
00575 {\
00576 (p_config)->identifier = 0;\
00577 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00578 criAtomPlayer_SetDefaultConfigForWavePlayer(&(p_config)->player_config);\
00579 }
00580
00590 #define criAtomExVoicePool_SetDefaultConfigForAiffVoicePool(p_config) \
00591 {\
00592 (p_config)->identifier = 0;\
00593 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00594 criAtomPlayer_SetDefaultConfigForAiffPlayer(&(p_config)->player_config);\
00595 }
00596
00606 #define criAtomExVoicePool_SetDefaultConfigForRawPcmVoicePool(p_config) \
00607 {\
00608 (p_config)->identifier = 0;\
00609 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00610 criAtomPlayer_SetDefaultConfigForRawPcmPlayer(&(p_config)->player_config);\
00611 }
00612
00625 #define criAtomExVoicePool_SetDefaultConfigForInstrumentVoicePool(p_config) \
00626 {\
00627 (p_config)->identifier = 0;\
00628 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
00629 criAtomPlayer_SetDefaultConfigForInstrumentPlayer(&(p_config)->player_config);\
00630 }
00631
00632
00633
00643 #define criAtomExPlayer_SetDefaultConfig(p_config) \
00644 {\
00645 (p_config)->voice_allocation_method = CRIATOMEX_ALLOCATE_VOICE_ONCE;\
00646 (p_config)->max_path_strings = 1;\
00647 (p_config)->max_path = 0;\
00648 (p_config)->updates_time = CRI_TRUE;\
00649 (p_config)->enable_audio_synced_timer = CRI_FALSE;\
00650 (p_config)->max_aisacs = 8;\
00651 }
00652
00653
00654
00655
00665 #define criAtomExFader_SetDefaultConfig(p_config) \
00666 {\
00667 (p_config)->reserved = 0;\
00668 }
00669
00670
00671
00672
00682 #define criAtomExDbas_SetDefaultConfig(p_config) \
00683 criAtomDbas_SetDefaultConfig(p_config)
00684
00703 #define criAtomExDbas_CalculateWorkSize(config) \
00704 criAtomDbas_CalculateWorkSize(config)
00705
00724 #define criAtomExDbas_Create(config, work, work_size) \
00725 criAtomDbas_Create((config), (work), (work_size))
00726
00735 #define criAtomExDbas_Destroy(atom_dbas_id) \
00736 criAtomDbas_Destroy(atom_dbas_id);
00737
00764 #define criAtomExDbas_GetStreamingPlayerHandles(dbas_id, players, length) \
00765 criAtomDbas_GetStreamingPlayerHandles((dbas_id), (players), (length))
00766
00767
00768
00769
00780 #define criAtomExStreamingCache_SetDefaultConfig(p_config) \
00781 criAtomStreamingCache_SetDefaultConfig(p_config)
00782
00795 #define criAtomExStreamingCache_CalculateWorkSize(p_config) \
00796 criAtomStreamingCache_CalculateWorkSize(p_config)
00797
00820 #define criAtomExStreamingCache_Create(config, work, work_size) \
00821 criAtomStreamingCache_Create((config), (work), (work_size));
00822
00834 #define criAtomExStreamingCache_Destroy(stm_cache_id) \
00835 criAtomStreamingCache_Destroy(stm_cache_id)
00836
00851 #define criAtomExStreamingCache_Clear(cache_id) \
00852 criAtomStreamingCache_Clear(cache_id)
00853
00869 #define criAtomExStreamingCache_IsCachedWaveId(stm_cache_id, awb, id) \
00870 criAtomStreamingCache_IsCachedWaveId((stm_cache_id), (awb), (id))
00871
00885 #define criAtomExStreamingCache_IsCachedFile(stm_cache_id, src_binder, path) \
00886 criAtomStreamingCache_IsCachedFile((stm_cache_id), (src_binder), (path))
00887
00888
00889
00890
00900 #define criAtomEx3dSource_SetDefaultConfig(p_config) \
00901 {\
00902 (p_config)->enable_voice_priority_decay = CRI_FALSE;\
00903 }
00904
00914 #define criAtomEx3dSourceList_SetDefaultConfig(p_config) \
00915 {\
00916 (p_config)->reserved = 0;\
00917 }
00918
00928 #define criAtomEx3dListener_SetDefaultConfig(p_config) \
00929 {\
00930 (p_config)->reserved = 0;\
00931 }
00932
00942 #define criAtomEx3dRegion_SetDefaultConfig(p_config) \
00943 {\
00944 (p_config)->reserved = 0;\
00945 }
00946
00956 #define criAtomEx3dTransceiver_SetDefaultConfig(p_config) \
00957 {\
00958 (p_config)->reserved = 0;\
00959 }
00960
00980 #define criAtomEx3dSource_SetMinMaxDistance(ex_3d_source, min_attenuation_distance, max_attenuation_distance) \
00981 criAtomEx3dSource_SetMinMaxAttenuationDistance((ex_3d_source), (min_attenuation_distance), (max_attenuation_distance))
00982
01001 #define criAtomEx3dSource_ChangeDefaultMinMaxDistance(min_attenuation_distance, max_attenuation_distance) \
01002 criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance((min_attenuation_distance), (max_attenuation_distance))
01003
01004
01005
01006
01007
01017 #define criAtomExVoicePool_SetDefaultConfigForDspPitchShifter(p_config) \
01018 {\
01019 (p_config)->num_dsp = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
01020 (p_config)->max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
01021 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
01022 (p_config)->specific.mode = 0;\
01023 (p_config)->specific.window_size = 1024;\
01024 (p_config)->specific.overlap_times = 4;\
01025 }
01026
01036 #define criAtomExVoicePool_SetDefaultConfigForDspTimeStretch(p_config) \
01037 {\
01038 (p_config)->num_dsp = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
01039 (p_config)->max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
01040 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
01041 (p_config)->specific.reserved = 0;\
01042 }
01043
01044
01045
01046
01057 #define criAtomExTween_SetDefaultConfig(p_config) \
01058 {\
01059 (p_config)->id.parameter_id = CRIATOMEX_PARAMETER_ID_VOLUME;\
01060 (p_config)->parameter_type = CRIATOMEX_PARAMETER_TYPE_BASIC;\
01061 }
01062
01063
01064
01065
01075 #define criAtomExSoundObject_SetDefaultConfig(p_config) \
01076 {\
01077 (p_config)->enable_voice_limit_scope = CRI_FALSE;\
01078 (p_config)->enable_category_cue_limit_scope = CRI_FALSE;\
01079 }
01080
01081
01082
01083
01084
01085
01086
01087
01095 typedef CriAtomMallocFunc CriAtomExMallocFunc;
01096
01104 typedef CriAtomFreeFunc CriAtomExFreeFunc;
01105
01115 typedef enum CriAtomExThreadModelTag {
01123 CRIATOMEX_THREAD_MODEL_MULTI = 0,
01124
01135 CRIATOMEX_THREAD_MODEL_MULTI_USER_DRIVEN = 3,
01136
01144 CRIATOMEX_THREAD_MODEL_USER_MULTI = 1,
01145
01154 CRIATOMEX_THREAD_MODEL_SINGLE = 2,
01155
01156
01157 CRIATOMEX_THREAD_MODEL_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01158 } CriAtomExThreadModel;
01159
01169 typedef enum CriAtomExCoordinateSystemTag {
01175 CRIATOMEX_COORDINATE_SYSTEM_LEFT_HANDED = 0,
01176
01182 CRIATOMEX_COORDINATE_SYSTEM_RIGHT_HANDED = 1,
01183
01184
01185 CRIATOMEX_COORDINATE_SYSTEM_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01186 } CriAtomExCoordinateSystem;
01187
01197 typedef enum CriAtomExAcfLocationInfoTypeTag {
01198 CRIATOMEX_ACF_LOCATION_INFO_TYPE_NONE = 0,
01199 CRIATOMEX_ACF_LOCATION_INFO_TYPE_NAME,
01200 CRIATOMEX_ACF_LOCATION_INFO_TYPE_ID,
01201 CRIATOMEX_ACF_LOCATION_INFO_TYPE_DATA,
01202 CRIATOMEX_ACF_LOCATION_INFO_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01203 } CriAtomExAcfLocationInfoType;
01204
01209 typedef void *CriAtomExRngHn;
01210
01215 typedef struct CriAtomExRngInterfaceTag {
01222 CriSint32 (*CalculateWorkSize)(void);
01223
01233 CriAtomExRngHn (*Create)(void* work, CriSint32 work_size);
01234
01241 void (*Destroy)(CriAtomExRngHn rng);
01242
01253 CriSint32 (*Generate)(CriAtomExRngHn rng, CriSint32 min, CriSint32 max);
01254
01262 void (*SetSeed)(CriAtomExRngHn rng, CriUint32 seed);
01263
01264 } CriAtomExRngInterface;
01265
01293 typedef struct CriAtomExAcfRegistrationInfoTag {
01295 CriAtomExAcfLocationInfoType type;
01296
01298 union CriAtomExAcfLocationInfoTag {
01300 struct CriAtomExAcfLocationInfoNameTag {
01301 CriFsBinderHn binder;
01302 const CriChar8 *path;
01303 } name;
01305 struct CriAtomExAcfLocationInfoIdTag {
01306 CriFsBinderHn binder;
01307 CriSint32 id;
01308 } id;
01310 struct CriAtomExAcfLocationInfoDataTag {
01311 void *buffer;
01312 CriSint32 size;
01313 } data;
01314 } info;
01315 } CriAtomExAcfRegistrationInfo;
01316
01336 typedef struct CriAtomExConfigTag {
01343 CriAtomExThreadModel thread_model;
01344
01396 CriFloat32 server_frequency;
01397
01425 CriSint32 parameter_update_interval;
01426
01438 CriBool enable_atom_sound_disabled_mode;
01439
01461 CriSint32 max_virtual_voices;
01462
01480 CriSint32 max_parameter_blocks;
01481
01494 CriSint32 max_voice_limit_groups;
01495
01507 CriSint32 max_categories;
01508
01517 CriUint8 max_aisacs;
01518
01531 CriSint32 categories_per_playback;
01532
01545 CriSint32 max_sequences;
01546
01559 CriUint32 max_tracks;
01560
01576 CriUint32 max_track_items;
01577
01584 CriUint32 max_aisac_auto_modulations;
01585
01614 CriFloat32 max_pitch;
01615
01622 CriUint32 max_faders;
01623
01629 CriAtomExCoordinateSystem coordinate_system;
01630
01638 CriBool enable_auto_matching_in_pan_type_auto;
01639
01650 CriBool enable_category_override_by_ex_player;
01651
01661 CriFloat32 sequence_prepare_ratio;
01662
01669 const CriAtomExRngInterface *rng_if;
01670
01678 const CriFsConfig *fs_config;
01679
01700 const CriAtomExAcfRegistrationInfo *acf_info;
01701
01712 void *context;
01713
01722 CriUint32 version;
01723
01732 CriUint32 version_ex;
01733 } CriAtomExConfig;
01734
01743 typedef CriAtomPerformanceInfo CriAtomExPerformanceInfo;
01744
01753 typedef CriSint32 CriAtomExWaveId;
01754
01761 typedef CriSint32 CriAtomExVibrationId;
01762
01771 typedef CriAtomFormat CriAtomExFormat;
01772 #define CRIATOMEX_FORMAT_NONE (CRIATOM_FORMAT_NONE)
01773 #define CRIATOMEX_FORMAT_ADX (CRIATOM_FORMAT_ADX)
01774 #define CRIATOMEX_FORMAT_HCA (CRIATOM_FORMAT_HCA)
01775 #define CRIATOMEX_FORMAT_HCA_MX (CRIATOM_FORMAT_HCA_MX)
01776 #define CRIATOMEX_FORMAT_WAVE (CRIATOM_FORMAT_WAVE)
01777 #define CRIATOMEX_FORMAT_AIFF (CRIATOM_FORMAT_AIFF)
01778 #define CRIATOMEX_FORMAT_RAW_PCM (CRIATOM_FORMAT_RAW_PCM)
01779 #define CRIATOMEX_FORMAT_VIBRATION (CRIATOM_FORMAT_VIBRATION)
01780 #define CRIATOMEX_FORMAT_AUDIO_BUFFER (CRIATOM_FORMAT_AUDIO_BUFFER)
01781 #define CRIATOMEX_FORMAT_HW1 (CRIATOM_FORMAT_HW1)
01782 #define CRIATOMEX_FORMAT_HW2 (CRIATOM_FORMAT_HW2)
01796 typedef struct CriAtomExFormatInfoTag {
01797 CriAtomExFormat format;
01798 CriSint32 sampling_rate;
01799 CriSint64 num_samples;
01800 CriSint64 loop_offset;
01801 CriSint64 loop_length;
01802 CriSint32 num_channels;
01803 CriUint32 reserved[1];
01804 } CriAtomExFormatInfo;
01805
01815 typedef enum CriAtomExResumeModeTag {
01816 CRIATOMEX_RESUME_ALL_PLAYBACK = 0,
01817 CRIATOMEX_RESUME_PAUSED_PLAYBACK = 1,
01818 CRIATOMEX_RESUME_PREPARED_PLAYBACK = 2,
01819 CRIATOMEX_RESUME_MODE_RESERVED = 3,
01820 CRIATOMEX_RESUME_MODE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01821 } CriAtomExResumeMode;
01822
01831 typedef enum CriAtomExBiquadFilterTypeTag {
01832 CRIATOMEX_BIQUAD_FILTER_TYPE_OFF = 0,
01833 CRIATOMEX_BIQUAD_FILTER_TYPE_LOWPASS = 1,
01834 CRIATOMEX_BIQUAD_FILTER_TYPE_HIGHPASS = 2,
01835 CRIATOMEX_BIQUAD_FILTER_TYPE_NOTCH = 3,
01836 CRIATOMEX_BIQUAD_FILTER_TYPE_LOWSHELF = 4,
01837 CRIATOMEX_BIQUAD_FILTER_TYPE_HIGHSHELF = 5,
01838 CRIATOMEX_BIQUAD_FILTER_TYPE_PEAKING = 6,
01840
01841 CRIATOMEX_BIQUAD_FILTER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01842 } CriAtomExBiquadFilterType;
01843
01859 typedef enum CriAtomExSilentModeTag {
01865 CRIATOMEX_SILENT_MODE_NORMAL = 0,
01866
01872 CRIATOMEX_SILENT_MODE_STOP = 1,
01873
01879 CRIATOMEX_SILENT_MODE_VIRTUAL = 2,
01880
01886 CRIATOMEX_SILENT_MODE_VIRTUAL_RETRIGGER = 3,
01887
01888
01889 CRIATOMEX_SILENT_MODE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01890 } CriAtomExSilentMode;
01891
01900 typedef enum CriAtomExPanTypeTag {
01910 CRIATOMEX_PAN_TYPE_UNKNOWN = -1,
01916 CRIATOMEX_PAN_TYPE_PAN3D = 0,
01922 CRIATOMEX_PAN_TYPE_3D_POS,
01929 CRIATOMEX_PAN_TYPE_AUTO,
01930
01931 CRIATOMEX_PAN_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01932 } CriAtomExPanType;
01933
01944 typedef enum CriAtomExPanSpeakerTypeTag {
01951 CRIATOMEX_PAN_SPEAKER_TYPE_4CH = 0,
01952
01958 CRIATOMEX_PAN_SPEAKER_TYPE_5CH = 1,
01959
01965 CRIATOMEX_PAN_SPEAKER_TYPE_6CH = 2,
01966
01972 CRIATOMEX_PAN_SPEAKER_TYPE_7CH = 3,
01973
01974
01975 CRIATOMEX_PAN_SPEAKER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
01976 } CriAtomExPanSpeakerType;
01977
01986 typedef enum CriAtomExPanAngleTypeTag {
01997 CRIATOMEX_PAN_ANGLE_TYPE_OFFSET = 0,
02011 CRIATOMEX_PAN_ANGLE_TYPE_FIX = 1,
02017 CRIATOMEX_PAN_ANGLE_TYPE_AMBIENCE_MIX = 4,
02023 CRIATOMEX_PAN_ANGLE_TYPE_AMBIENCE_STRAIGHT = 5,
02024
02025
02026 CRIATOMEX_PAN_ANGLE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02027 } CriAtomExPanAngleType;
02028
02037 typedef CriUint32 CriAtomExSpeakerSystem;
02038
02053 #define CRIATOMEX_SPEAKER_SYSTEM_SURROUND_5_1 (0)
02054
02071 #define CRIATOMEX_SPEAKER_SYSTEM_SURROUND_7_1 (1)
02072
02083 typedef CriSint32 CriAtomExBlockIndex;
02084
02093 typedef CriUint32 CriAtomExGameVariableId;
02094
02103 typedef struct CriAtomExGameVariableInfoTag {
02104 const CriChar8* name;
02105 CriAtomExGameVariableId id;
02106 CriFloat32 value;
02107 } CriAtomExGameVariableInfo;
02108
02116 typedef CriAtomStreamingInfo CriAtomExStreamingInfo;
02117
02124 typedef enum CriAtomExCharacterEncodingTag {
02125 CRIATOMEX_CHARACTER_ENCODING_UTF8 = 0,
02126 CRIATOMEX_CHARACTER_ENCODING_SJIS = 1,
02128
02129 CRIATOMEX_CHARACTER_ENCODING_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02130 } CriAtomExCharacterEncoding;
02131
02138 typedef struct CriAtomExResourceUsageTag {
02139 CriUint32 use_count;
02140 CriUint32 limit;
02141 } CriAtomExResourceUsage;
02142
02143
02144
02145
02156 typedef struct CriAtomExDebugResourcesInfoTag {
02158 CriAtomExResourceUsage virtual_voice_usage;
02160 CriAtomExResourceUsage sequence_usage;
02162 CriAtomExResourceUsage sequence_track_usage;
02164 CriAtomExResourceUsage sequence_track_item_usage;
02165 } CriAtomExDebugResourcesInfo;
02166
02167
02168
02169
02185 typedef struct CriAtomExHcaMxConfigTag {
02195 CriFloat32 server_frequency;
02196
02212 CriSint32 num_mixers;
02213
02221 CriSint32 max_voices;
02222
02236 CriSint32 max_input_channels;
02237
02248 CriSint32 max_sampling_rate;
02249
02263 CriSint32 output_channels;
02264
02274 CriSint32 output_sampling_rate;
02275
02288 CriAtomSoundRendererType sound_renderer_type;
02289 } CriAtomExHcaMxConfig;
02290
02291
02292
02293
02305 typedef CriAtomDecrypterConfig CriAtomExDecrypterConfig;
02306
02315 typedef CriAtomDecrypterHn CriAtomExDecrypterHn;
02316
02317
02318
02319
02327 typedef struct CriAtomExAcfInfoTag {
02328 const CriChar8* name;
02329 CriUint32 size;
02330 CriUint32 version;
02331 CriAtomExCharacterEncoding character_encoding;
02332 CriSint32 num_dsp_settings;
02333 CriSint32 num_categories;
02334 CriSint32 num_categories_per_playback;
02335 CriSint32 num_reacts;
02336 CriSint32 num_aisac_controls;
02337 CriSint32 num_global_aisacs;
02338 CriSint32 num_game_variables;
02339 CriSint32 max_buses_of_dsp_bus_settings;
02340 CriSint32 num_buses;
02341 CriSint32 num_voice_limit_groups;
02342 } CriAtomExAcfInfo;
02343
02352 typedef CriUint32 CriAtomExAisacControlId;
02353
02362 typedef struct CriAtomExAisacControlInfoTag {
02363 const CriChar8* name;
02364 CriAtomExAisacControlId id;
02365 } CriAtomExAisacControlInfo;
02366
02375 typedef struct CriAtomExAisacInfoTag {
02376 const CriChar8* name;
02377 CriBool default_control_flag;
02378 CriFloat32 default_control_value;
02379 CriAtomExAisacControlId control_id;
02380 const CriChar8* control_name;
02381 } CriAtomExAisacInfo;
02382
02391 typedef struct CriAtomExAcfDspSettingInfoTag {
02392 const CriChar8* name;
02393 CriUint16 bus_indexes[CRIATOMEXACF_MAX_BUSES];
02394 CriUint16 extend_bus_indexes[CRIATOMEXACF_MAX_BUSES];
02395 CriUint16 snapshot_start_index;
02396 CriUint8 num_buses;
02397 CriUint8 num_extend_buses;
02398 CriUint16 num_snapshots;
02399 CriUint16 snapshot_work_size;
02400 } CriAtomExAcfDspSettingInfo;
02401
02408 typedef struct CriAtomExAcfDspSettingSnapshotInfoTag {
02409 const CriChar8* name;
02410 CriUint8 num_buses;
02411 CriUint8 num_extend_buses;
02412 CriUint8 reserved[2];
02413 CriUint16 bus_indexes[CRIATOMEXACF_MAX_BUSES];
02414 CriUint16 extend_bus_indexes[CRIATOMEXACF_MAX_BUSES];
02415 } CriAtomExAcfDspSettingSnapshotInfo;
02416
02425 typedef struct CriAtomExAcfDspBusInfoTag {
02426 const CriChar8* name;
02427 CriFloat32 volume;
02428 CriFloat32 pan3d_volume;
02429 CriFloat32 pan3d_angle;
02430 CriFloat32 pan3d_distance;
02431 CriUint16 fx_indexes[CRIATOMEXACF_MAX_FXES];
02432 CriUint16 bus_link_indexes[CRIATOMEXACF_MAX_BUSES];
02433 CriUint16 bus_no;
02434 CriUint8 num_fxes;
02435 CriUint8 num_bus_links;
02436 } CriAtomExAcfDspBusInfo;
02437
02443 typedef enum CriAtomExAcfDspBusLinkTypeTag {
02444 CRIATOMEXACF_DSP_BUS_LINK_TYPE_PRE_VOLUME,
02445 CRIATOMEXACF_DSP_BUS_LINK_TYPE_POST_VOLUME,
02446 CRIATOMEXACF_DSP_BUS_LINK_TYPE_POST_PAN,
02447
02448 CRIATOMEXACF_DSP_BUS_LINK_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02449 } CriAtomExAcfDspBusLinkType;
02450
02459 typedef struct CriAtomExAcfDspBusLinkInfoTag {
02460 CriAtomExAcfDspBusLinkType type;
02461 CriFloat32 send_level;
02462 CriUint16 bus_no;
02463 CriUint16 bus_id;
02464 } CriAtomExAcfDspBusLinkInfo;
02465
02471 typedef enum CriAtomExAcfAisacTypeTag {
02472 CRIATOMEXACF_AISAC_TYPE_NORMAL,
02473 CRIATOMEXACF_AISAC_TYPE_AUTO_MODULATION,
02474
02475 CRIATOMEXACF_AISAC_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02476 } CriAtomExAcfAisacType;
02477
02478
02490 typedef struct CriAtomExGlobalAisacInfoTag {
02491 const CriChar8* name;
02492 CriUint16 index;
02493 CriUint16 num_graphs;
02494 CriAtomExAcfAisacType type;
02495 CriFloat32 random_range;
02496 CriUint16 control_id;
02497 CriUint16 dummy;
02498 } CriAtomExGlobalAisacInfo;
02499
02500
02508 typedef enum CriAtomExAisacGraphTypeTag {
02509 CRIATOMEX_AISAC_GRAPH_TYPE_NON = 0,
02510 CRIATOMEX_AISAC_GRAPH_TYPE_VOLUME,
02511 CRIATOMEX_AISAC_GRAPH_TYPE_PITCH,
02512 CRIATOMEX_AISAC_GRAPH_TYPE_BANDPASS_HI,
02513 CRIATOMEX_AISAC_GRAPH_TYPE_BANDPASS_LOW,
02514 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_FREQ,
02515 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_Q,
02516 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_0_SEND,
02517 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_1_SEND,
02518 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_2_SEND,
02519 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_3_SEND,
02520 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_4_SEND,
02521 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_5_SEND,
02522 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_6_SEND,
02523 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_7_SEND,
02524 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_ANGLE,
02525 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_VOLUME,
02526 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_INTERIOR_DISTANCE,
02527 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_CENTER,
02528 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_LFE,
02529 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_0,
02530 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_1,
02531 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_2,
02532 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_3,
02533 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_4,
02534 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_5,
02535 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_6,
02536 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_7,
02537 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_8,
02538 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_9,
02539 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_10,
02540 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_11,
02541 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_12,
02542 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_13,
02543 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_14,
02544 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_15,
02545 CRIATOMEX_AISAC_GRAPH_TYPE_PRIORITY,
02546 CRIATOMEX_AISAC_GRAPH_TYPE_PRE_DELAY_TIME,
02547 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_GAIN,
02548 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_MIXDOWN_CENTER,
02549 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_MIXDOWN_LFE,
02550 CRIATOMEX_AISAC_GRAPH_TYPE_EG_ATTACK,
02551 CRIATOMEX_AISAC_GRAPH_TYPE_EG_RELEASE,
02552 CRIATOMEX_AISAC_GRAPH_TYPE_PLAYBACK_RATIO,
02553 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_L,
02554 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_R,
02555 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_CENTER,
02556 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_LFE,
02557 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_SL,
02558 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_SR,
02559 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_EX1,
02560 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_EX2,
02561 CRIATOMEX_AISAC_GRAPH_TYPE_PAN_SPREAD,
02563
02564 CRIATOMEX_AISAC_GRAPH_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02565 } CriAtomExAisacGraphType;
02566
02575 typedef struct CriAtomExAisacGraphInfoTag {
02576 CriAtomExAisacGraphType type;
02577 } CriAtomExAisacGraphInfo;
02578
02588 typedef struct CriAtomExSelectorInfoTag {
02589 const CriChar8* name;
02590 CriUint16 index;
02591 CriUint16 num_labels;
02592 CriUint16 global_label_index;
02593 } CriAtomExSelectorInfo;
02594
02603 typedef struct CriAtomExSelectorLabelInfoTag {
02604 const CriChar8* selector_name;
02605 const CriChar8* label_name;
02606 } CriAtomExSelectorLabelInfo;
02607
02608
02609
02610
02619 typedef CriUint32 CriAtomExCategoryId;
02620
02627 #define CRIATOMEXCATEGORY_MAX_CATEGORIES_PER_PLAYBACK (16)
02628
02637 typedef struct CriAtomExCategoryInfoTag {
02638 CriUint32 group_no;
02639 CriUint32 id;
02640 const CriChar8* name;
02641 CriUint32 num_cue_limits;
02642 CriFloat32 volume;
02643 } CriAtomExCategoryInfo;
02644
02652 typedef enum CriAtomExReactTypeTag {
02653 CRIATOMEX_REACT_TYPE_DUCKER = 0,
02654 CRIATOMEX_REACT_TYPE_AISAC_MODULATION_TRIGGER,
02656
02657 CRIATOMEX_REACT_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02658 } CriAtomExReactType;
02659
02667 typedef enum CriAtomExReactDuckerTargetTypeTag {
02668 CRIATOMEX_REACT_DUCKER_TARGET_TYPE_VOLUME = 0,
02669 CRIATOMEX_REACT_DUCKER_TARGET_TYPE_AISAC_CONTROL_VALUE,
02671
02672 CRIATOMEX_REACT_DUCKER_TARGET_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02673 } CriAtomExReactDuckerTargetType;
02674
02682 typedef enum CriAtomExReactDuckerCurveTypeTag {
02683 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_LINEAR = 0,
02684 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_SQUARE,
02685 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_SQUARE_REVERSE,
02686 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_S,
02687 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_FLAT_AT_HALF,
02689
02690 CRIATOMEX_REACT_DUCKER_CURVE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02691 } CriAtomExReactDuckerCurveType;
02692
02700 typedef struct CriAtomExReactFadeParameterTag {
02701 CriAtomExReactDuckerCurveType curve_type;
02702 CriFloat32 curve_strength;
02703 CriUint16 fade_time_ms;
02704 } CriAtomExReactFadeParameter;
02705
02713 typedef enum CriAtomExReactHoldTypeTag {
02714 CRIATOMEX_REACT_HOLD_TYPE_WHILE_PLAYING,
02715 CRIATOMEX_REACT_HOLD_TYPE_FIXED_TIME,
02717
02718 CRIATOMEX_REACT_HOLD_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02719 } CriAtomExReactHoldType;
02720
02728 typedef struct CriAtomExReactDuckerParameterTag {
02729 union {
02730 struct {
02731 CriFloat32 level;
02732 } volume;
02733 struct {
02734 CriUint16 control_id;
02735 CriFloat32 control_value;
02736 } aisac_control_value;
02737 } target;
02738 CriAtomExReactDuckerTargetType target_type;
02739 CriAtomExReactFadeParameter entry;
02740 CriAtomExReactFadeParameter exit;
02741 CriAtomExReactHoldType hold_type;
02742 CriUint16 hold_time_ms;
02743 } CriAtomExReactDuckerParameter;
02744
02752 typedef struct CriAtomExReactAisacModulationParameterTag {
02753 CriBool enable_decrement_aisac_modulation_key;
02754 CriUint32 decrement_aisac_modulation_key;
02755 CriBool enable_increment_aisac_modulation_key;
02756 CriUint32 increment_aisac_modulation_key;
02757 } CriAtomExReactAisacModulationParameter;
02758
02767 typedef struct CriAtomExReactParameterTag {
02768 union {
02769 CriAtomExReactDuckerParameter ducker;
02770 CriAtomExReactAisacModulationParameter aisac_modulation;
02771 } parameter;
02772 CriAtomExReactType type;
02773 CriBool enable_pausing_cue;
02774 } CriAtomExReactParameter;
02775
02776
02777
02778
02779 struct CriAtomExAcbTag;
02780 typedef struct CriAtomExAcbTag CriAtomExAcbObj;
02790 typedef CriAtomExAcbObj *CriAtomExAcbHn;
02791
02800 typedef CriSint32 CriAtomExCueId;
02801
02812 typedef CriSint32 CriAtomExCueIndex;
02813
02821 typedef struct CriAtomExAcbInfoTag {
02822 const CriChar8* name;
02823 CriUint32 size;
02824 CriUint32 version;
02825 CriAtomExCharacterEncoding character_encoding;
02826 CriFloat32 volume;
02827 CriSint32 num_cues;
02828 } CriAtomExAcbInfo;
02829
02837
02838 typedef struct CriAtomExWaveformInfoTag {
02839 CriAtomExWaveId wave_id;
02840 CriAtomExFormat format;
02841 CriSint32 sampling_rate;
02842 CriSint32 num_channels;
02843 CriSint64 num_samples;
02844 CriBool streaming_flag;
02845 CriUint32 reserved[1];
02846 } CriAtomExWaveformInfo;
02847
02853 typedef enum CriAtomExAcbCueTypeTag {
02854 CRIATOMEXACB_CUE_TYPE_POLYPHONIC = (0),
02855 CRIATOMEXACB_CUE_TYPE_SEQUENTIAL,
02856 CRIATOMEXACB_CUE_TYPE_SHUFFLE,
02857 CRIATOMEXACB_CUE_TYPE_RANDOM,
02858 CRIATOMEXACB_CUE_TYPE_RANDOM_NO_REPEAT,
02859 CRIATOMEXACB_CUE_TYPE_SWITCH_GAME_VARIABLE,
02860 CRIATOMEXACB_CUE_TYPE_COMBO_SEQUENTIAL,
02861 CRIATOMEXACB_CUE_TYPE_SWITCH_SELECTOR,
02862 CRIATOMEXACB_CUE_TYPE_TRACK_TRANSITION_BY_SELECTOR,
02863
02864 CRIATOMEXACB_CUE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
02865 } CriAtomExAcbCueType;
02866
02874 typedef struct CriAtomExCuePos3dInfoTag {
02875 CriFloat32 cone_inside_angle;
02876 CriFloat32 cone_outside_angle;
02877 CriFloat32 min_distance;
02878 CriFloat32 max_distance;
02879 CriFloat32 source_radius;
02880 CriFloat32 interior_distance;
02881 CriFloat32 doppler_factor;
02882 CriUint16 distance_aisac_control;
02883 CriUint16 listener_base_angle_aisac_control;
02884 CriUint16 source_base_angle_aisac_control;
02885 CriUint16 listener_base_elevation_aisac_control;
02886 CriUint16 source_base_elevation_aisac_control;
02887 CriUint16 reserved[1];
02888 } CriAtomExCuePos3dInfo;
02889
02897 typedef struct CriAtomExCueInfoTag {
02898 CriAtomExCueId id;
02899 CriAtomExAcbCueType type;
02900 const CriChar8* name;
02901 const CriChar8* user_data;
02902 CriSint64 length;
02903 CriUint16 categories[CRIATOMEXCATEGORY_MAX_CATEGORIES_PER_PLAYBACK];
02904 CriSint16 num_limits;
02905 CriUint16 num_blocks;
02906 CriUint16 num_tracks;
02907 CriUint16 num_related_waveforms;
02908 CriUint8 priority;
02909 CriUint8 header_visibility;
02910 CriUint8 ignore_player_parameter;
02911 CriUint8 probability;
02912 CriAtomExPanType pan_type;
02913 CriAtomExCuePos3dInfo pos3d_info;
02914 CriAtomExGameVariableInfo game_variable_info;
02915 } CriAtomExCueInfo;
02916
02931 typedef CriBool (CRIAPI *CriAtomExAcbHandleCbFunc)(void *obj, CriAtomExAcbHn acb_hn);
02932
02952 typedef void (CRIAPI *CriAtomExAcbDetectionInGamePreviewDataCbFunc)(
02953 void *obj, const CriChar8* acb_name);
02954
02955
02956
02957
02958 struct CriAtomExVoicePoolTag;
02959 typedef struct CriAtomExVoicePoolTag CriAtomExVoicePoolObj;
02971 typedef struct CriAtomExVoicePoolTag *CriAtomExVoicePoolHn;
02972
02990 typedef CriUint32 CriAtomExVoicePoolIdentifier;
02991
03004 typedef struct CriAtomExStandardVoicePoolConfigTag {
03005 CriAtomExVoicePoolIdentifier identifier;
03006 CriSint32 num_voices;
03007 CriAtomStandardPlayerConfig player_config;
03008 } CriAtomExStandardVoicePoolConfig;
03009
03022 typedef struct CriAtomExAdxVoicePoolConfigTag {
03023 CriAtomExVoicePoolIdentifier identifier;
03024 CriSint32 num_voices;
03025 CriAtomAdxPlayerConfig player_config;
03026 } CriAtomExAdxVoicePoolConfig;
03027
03040 typedef struct CriAtomExHcaVoicePoolConfigTag {
03041 CriAtomExVoicePoolIdentifier identifier;
03042 CriSint32 num_voices;
03043 CriAtomHcaPlayerConfig player_config;
03044 } CriAtomExHcaVoicePoolConfig;
03045
03058 typedef struct CriAtomExHcaMxVoicePoolConfigTag {
03059 CriAtomExVoicePoolIdentifier identifier;
03060 CriSint32 num_voices;
03061 CriAtomHcaMxPlayerConfig player_config;
03062 } CriAtomExHcaMxVoicePoolConfig;
03063
03076 typedef struct CriAtomExWaveVoicePoolConfigTag {
03077 CriAtomExVoicePoolIdentifier identifier;
03078 CriSint32 num_voices;
03079 CriAtomWavePlayerConfig player_config;
03080 } CriAtomExWaveVoicePoolConfig;
03081
03094 typedef struct CriAtomExAiffVoicePoolConfigTag {
03095 CriAtomExVoicePoolIdentifier identifier;
03096 CriSint32 num_voices;
03097 CriAtomAiffPlayerConfig player_config;
03098 } CriAtomExAiffVoicePoolConfig;
03099
03112 typedef struct CriAtomExRawPcmVoicePoolConfigTag {
03113 CriAtomExVoicePoolIdentifier identifier;
03114 CriSint32 num_voices;
03115 CriAtomRawPcmPlayerConfig player_config;
03116 } CriAtomExRawPcmVoicePoolConfig;
03117
03130 typedef struct CriAtomExInstrumentVoicePoolConfigTag {
03131 CriAtomExVoicePoolIdentifier identifier;
03132 CriSint32 num_voices;
03133 CriAtomInstrumentPlayerConfig player_config;
03134 } CriAtomExInstrumentVoicePoolConfig;
03135
03136
03137
03138
03147 typedef enum CriAtomExVoiceAllocationMethodTag {
03148 CRIATOMEX_ALLOCATE_VOICE_ONCE = 0,
03149 CRIATOMEX_RETRY_VOICE_ALLOCATION,
03150 CRIATOMEX_VOICE_ALLOCATION_METHOD_IS_4BYTE = 0x7FFFFFFF
03151 } CriAtomExVoiceAllocationMethod;
03152
03169 typedef struct CriAtomExPlayerConfigTag {
03210 CriAtomExVoiceAllocationMethod voice_allocation_method;
03211
03229 CriSint32 max_path_strings;
03230
03250 CriSint32 max_path;
03251
03260 CriUint8 max_aisacs;
03261
03273 CriBool updates_time;
03274
03290 CriBool enable_audio_synced_timer;
03291 } CriAtomExPlayerConfig;
03292
03293 struct CriAtomExPlayerTag;
03294 typedef struct CriAtomExPlayerTag CriAtomExPlayerObj;
03307 typedef CriAtomExPlayerObj *CriAtomExPlayerHn;
03308
03351 typedef enum CriAtomExPlayerStatusTag {
03352 CRIATOMEXPLAYER_STATUS_STOP = 0,
03353 CRIATOMEXPLAYER_STATUS_PREP,
03354 CRIATOMEXPLAYER_STATUS_PLAYING,
03355 CRIATOMEXPLAYER_STATUS_PLAYEND,
03356 CRIATOMEXPLAYER_STATUS_ERROR,
03357 CRIATOMEXPLAYER_STATUS_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03358 } CriAtomExPlayerStatus;
03359
03368 typedef enum CriAtomExVoiceControlMethodTag {
03369 CRIATOMEX_PREFER_LAST = 0,
03370 CRIATOMEX_PREFER_FIRST = 1,
03371 CRIATOMEX_PREFER_DATA = 2,
03372 CRIATOMEX_CONTROL_METHOD_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03373 } CriAtomExVoiceControlMethod;
03374
03383 typedef enum CriAtomExSpeakerIdTag {
03384 CRIATOMEX_SPEAKER_FRONT_LEFT = 0,
03385 CRIATOMEX_SPEAKER_FRONT_RIGHT = 1,
03386 CRIATOMEX_SPEAKER_FRONT_CENTER = 2,
03387 CRIATOMEX_SPEAKER_LOW_FREQUENCY = 3,
03388 CRIATOMEX_SPEAKER_SURROUND_LEFT = 4,
03389 CRIATOMEX_SPEAKER_SURROUND_RIGHT = 5,
03390 CRIATOMEX_SPEAKER_SURROUND_BACK_LEFT = 6,
03391 CRIATOMEX_SPEAKER_SURROUND_BACK_RIGHT = 7,
03393
03394 CRIATOMEX_SPEAKER_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03395 } CriAtomExSpeakerId;
03396
03407 typedef CriUint32 CriAtomExPlaybackId;
03408
03426 typedef void (CRIAPI *CriAtomExPlayerCbFunc)(void *obj, CriAtomExPlayerHn player);
03427
03500 typedef void (CRIAPI *CriAtomExPlayerDataRequestCbFunc)(
03501 void *obj, CriAtomExPlaybackId id, CriAtomPlayerHn player);
03502
03556 typedef void (CRIAPI *CriAtomExPlayerFilterCbFunc)(
03557 void *obj, CriAtomExPlaybackId id, CriAtomPcmFormat format,
03558 CriSint32 num_channels, CriSint32 num_samples, void *data[]);
03559
03585 typedef void (CRIAPI *CriAtomExPlayerBlockTransitionCbFunc)(
03586 void *obj, CriAtomExPlaybackId id, CriAtomExBlockIndex index);
03587
03592 typedef struct CriAtomExPlaybackTrackInfoTag {
03593 CriAtomExPlaybackId id;
03594 CriAtomExAcbCueType sequence_type;
03595 CriAtomExPlayerHn player;
03596 CriUint16 track_no;
03597 CriUint16 reserved[1];
03598 } CriAtomExPlaybackTrackInfo;
03599
03622 typedef void (CRIAPI *CriAtomExPlayerPlaybackTrackInfoNotificationCbFunc)(
03623 void *obj, const CriAtomExPlaybackTrackInfo* info);
03624
03634 typedef enum CriAtomExParameterIdTag {
03635 CRIATOMEX_PARAMETER_ID_VOLUME = 0,
03636 CRIATOMEX_PARAMETER_ID_PITCH = 1,
03637 CRIATOMEX_PARAMETER_ID_PAN3D_ANGLE = 2,
03638 CRIATOMEX_PARAMETER_ID_PAN3D_DISTANCE = 3,
03639 CRIATOMEX_PARAMETER_ID_PAN3D_VOLUME = 4,
03640 CRIATOMEX_PARAMETER_ID_PAN_TYPE = 5,
03641 CRIATOMEX_PARAMETER_ID_PAN_SPEAKER_TYPE = 6,
03642 CRIATOMEX_PARAMETER_ID_PAN_CH0 = 7,
03643 CRIATOMEX_PARAMETER_ID_PAN_CH1 = 8,
03644 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_0 = 9,
03645 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_1 = 10,
03646 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_2 = 11,
03647 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_3 = 12,
03648 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_4 = 13,
03649 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_5 = 14,
03650 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_6 = 15,
03651 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_7 = 16,
03652 CRIATOMEX_PARAMETER_ID_BANDPASS_FILTER_COF_LOW = 17,
03653 CRIATOMEX_PARAMETER_ID_BANDPASS_FILTER_COF_HIGH = 18,
03654 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_TYPE = 19,
03655 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_FREQ = 20,
03656 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_Q = 21,
03657 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_GAIN = 22,
03658 CRIATOMEX_PARAMETER_ID_ENVELOPE_ATTACK_TIME = 23,
03659 CRIATOMEX_PARAMETER_ID_ENVELOPE_HOLD_TIME = 24,
03660 CRIATOMEX_PARAMETER_ID_ENVELOPE_DECAY_TIME = 25,
03661 CRIATOMEX_PARAMETER_ID_ENVELOPE_RELEASE_TIME = 26,
03662 CRIATOMEX_PARAMETER_ID_ENVELOPE_SUSTAIN_LEVEL = 27,
03663 CRIATOMEX_PARAMETER_ID_START_TIME = 28,
03664 CRIATOMEX_PARAMETER_ID_PRIORITY = 31,
03665 CRIATOMEX_PARAMETER_ID_SILENT_MODE = 32,
03666 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_0 = 33,
03667 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_1 = 34,
03668 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_2 = 35,
03669 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_3 = 36,
03670 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_4 = 37,
03671 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_5 = 38,
03672 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_6 = 39,
03673 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_7 = 40,
03675
03676 CRIATOMEX_PARAMETER_ID_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03677 } CriAtomExParameterId;
03678
03679
03680
03681
03689 typedef enum CriAtomExSequecneEventTypeTag {
03695 CRIATOMEX_SEQUENCE_EVENT_TYPE_CALLBACK = 0,
03696
03697
03698 CRIATOMEX_SEQUENCE_EVENT_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03699 } CriAtomExSequecneEventType;
03700
03705 typedef struct CriAtomExSequenceEventInfoTag {
03706 CriUint64 position;
03707 CriAtomExPlayerHn player;
03708 const CriChar8* string;
03709 CriAtomExPlaybackId id;
03710 CriAtomExSequecneEventType type;
03711 CriUint32 value;
03712 CriUint32 reserved[1];
03713 } CriAtomExSequenceEventInfo;
03714
03732 typedef CriSint32 (CRIAPI *CriAtomExSequencerEventCbFunc)(void* obj, const CriAtomExSequenceEventInfo* info);
03733
03734
03735
03736
03741 typedef struct CriAtomExBeatSyncInfoTag {
03742 CriAtomExPlayerHn player;
03743 CriAtomExPlaybackId playback_id;
03744 CriUint32 bar_count;
03745 CriUint32 beat_count;
03746 CriFloat32 beat_progress;
03747 CriFloat32 bpm;
03748 CriSint32 offset;
03749 CriUint32 num_beats;
03750 } CriAtomExBeatSyncInfo;
03751
03769 typedef CriSint32 (CRIAPI *CriAtomExBeatSyncCbFunc)(void* obj, const CriAtomExBeatSyncInfo* info);
03770
03771
03772
03773
03801 typedef enum CriAtomExPlaybackStatusTag {
03802 CRIATOMEXPLAYBACK_STATUS_PREP = 1,
03803 CRIATOMEXPLAYBACK_STATUS_PLAYING,
03804 CRIATOMEXPLAYBACK_STATUS_REMOVED,
03805 CRIATOMEXPLAYBACK_STATUS_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03806 } CriAtomExPlaybackStatus;
03807
03815 typedef enum CriAtomExSourceTypeTag {
03816 CRIATOMEX_SOURCE_TYPE_NONE = 0,
03817 CRIATOMEX_SOURCE_TYPE_CUE_ID,
03818 CRIATOMEX_SOURCE_TYPE_CUE_NAME,
03819 CRIATOMEX_SOURCE_TYPE_CUE_INDEX,
03820 CRIATOMEX_SOURCE_TYPE_DATA,
03821 CRIATOMEX_SOURCE_TYPE_FILE,
03822 CRIATOMEX_SOURCE_TYPE_CONTENT_ID,
03823 CRIATOMEX_SOURCE_TYPE_WAVE_ID,
03824 CRIATOMEX_SOURCE_TYPE_VIBRATION_ID,
03825 CRIATOMEX_SOURCE_TYPE_SOUND_GENERATOR_ID,
03826 CRIATOMEX_SOURCE_TYPE_RAW_PCM_FLOAT_ID,
03827 CRIATOMEX_SOURCE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
03828 } CriAtomExSourceType;
03829
03858 typedef struct CriAtomExSourceInfoTag {
03860 CriAtomExSourceType type;
03861
03863 union CriAtomExSourceInfoInfoTag {
03865 struct CriAtomExSourceInfoCueIdTag {
03867 CriAtomExAcbHn acb;
03869 CriAtomExCueId id;
03870 } cue_id;
03872 struct CriAtomExSourceInfoCueNameTag {
03874 CriAtomExAcbHn acb;
03876 const CriChar8 *name;
03877 } cue_name;
03879 struct CriAtomExSourceInfoCueIndexTag {
03881 CriAtomExAcbHn acb;
03883 CriAtomExCueIndex index;
03884 } cue_index;
03886 struct CriAtomExSourceInfoDataTag {
03888 void *buffer;
03890 CriSint32 size;
03891 } data;
03893 struct CriAtomExSourceInfoFileTag {
03895 CriFsBinderHn binder;
03897 const CriChar8 *path;
03898 } file;
03900 struct CriAtomExSourceInfoContentIdTag {
03902 CriFsBinderHn binder;
03904 CriSint32 id;
03905 } content_id;
03907 struct CriAtomExSourceInfoWaveIdTag {
03909 CriAtomAwbHn awb;
03911 CriAtomExWaveId id;
03912 } wave_id;
03914 struct CriAtomExSourceInfoVibrationIdTag {
03916 CriAtomExVibrationId id;
03917 } vibration_id;
03918 struct CriAtomExSourceInfoVibrationNameTag {
03920 const CriChar8 *name;
03921 } vibration_name;
03922
03923 struct CriAtomExSourceInfoSoundGeneratorParameterTag {
03925 CriFloat32 frequency;
03927 CriAtomWaveType wave_type;
03928 } sound_generator_parameter;
03929
03930 struct CriAtomExSourceInfoRawPcmFloatParameterTag {
03932 CriFloat32 *data;
03934 CriUint32 total_samples;
03935 } raw_pcm_float_parameter;
03936 } info;
03937 } CriAtomExSourceInfo;
03938
03947 typedef enum CriAtomExPlaybackEventTag {
03955 CRIATOMEX_PLAYBACK_EVENT_ALLOCATE = 0,
03956
03967 CRIATOMEX_PLAYBACK_EVENT_FROM_VIRTUAL_TO_NORMAL,
03968
03987 CRIATOMEX_PLAYBACK_EVENT_FROM_NORMAL_TO_VIRTUAL,
03988
03998 CRIATOMEX_PLAYBACK_EVENT_REMOVE,
03999
04000 CRIATOMEX_PLAYBACK_EVENT_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
04001 } CriAtomExPlaybackEvent;
04002
04011 typedef struct CriAtomExPlaybackInfoDetailTag {
04012 CriAtomExPlayerHn player;
04013 CriAtomExPlaybackId id;
04014 } CriAtomExPlaybackInfoDetail;
04015
04031 typedef void (CRIAPI *CriAtomExPlaybackEventCbFunc)(void *obj,
04032 CriAtomExPlaybackEvent playback_event, const CriAtomExPlaybackInfoDetail *info);
04033
04034
04035
04036
04048 typedef struct CriAtomExFaderConfigTag {
04049 CriSint32 reserved;
04050 } CriAtomExFaderConfig;
04051
04052
04053
04054
04065 typedef CriAtomDbasId CriAtomExDbasId;
04066
04078 typedef CriAtomDbasConfig CriAtomExDbasConfig;
04079
04080
04081
04082
04091 typedef CriAtomStreamingCacheId CriAtomExStreamingCacheId;
04092
04107 typedef CriAtomStreamingCacheConfig CriAtomExStreamingCacheConfig;
04108
04109
04110
04111
04119 typedef struct CriAtomExVectorTag {
04120 CriFloat32 x;
04121 CriFloat32 y;
04122 CriFloat32 z;
04123 } CriAtomExVector;
04124
04135 typedef struct CriAtomEx3dSourceConfigTag {
04153 CriBool enable_voice_priority_decay;
04154 } CriAtomEx3dSourceConfig;
04155
04166 typedef struct CriAtomEx3dSourceListConfigTag {
04167 CriSint32 reserved;
04168 } CriAtomEx3dSourceListConfig;
04169
04180 typedef struct CriAtomEx3dListenerConfigTag {
04181 CriSint32 reserved;
04182 } CriAtomEx3dListenerConfig;
04183
04184 struct CriAtomEx3dSourceObjTag;
04185 typedef struct CriAtomEx3dSourceObjTag CriAtomEx3dSourceObj;
04196 typedef CriAtomEx3dSourceObj *CriAtomEx3dSourceHn;
04197
04198 struct CriAtomEx3dSourceListObjTag;
04199 typedef struct CriAtomEx3dSourceListObjTag CriAtomEx3dSourceListObj;
04208 typedef CriAtomEx3dSourceListObj *CriAtomEx3dSourceListHn;
04209
04210 struct CriAtomEx3dListenerObjTag;
04211 typedef struct CriAtomEx3dListenerObjTag CriAtomEx3dListenerObj;
04222 typedef CriAtomEx3dListenerObj *CriAtomEx3dListenerHn;
04223
04234 typedef struct CriAtomEx3dRegionConfigTag {
04235 CriSint32 reserved;
04236 } CriAtomEx3dRegionConfig;
04237
04238 struct CriAtomEx3dRegionObjTag;
04239 typedef struct CriAtomEx3dRegionObjTag CriAtomEx3dRegionObj;
04248 typedef CriAtomEx3dRegionObj *CriAtomEx3dRegionHn;
04249
04260 typedef struct CriAtomEx3dTransceiverConfigTag {
04261 CriSint32 reserved;
04262 } CriAtomEx3dTransceiverConfig;
04263
04264 struct CriAtomEx3dTransceiverObjTag;
04265 typedef struct CriAtomEx3dTransceiverObjTag CriAtomEx3dTransceiverObj;
04276 typedef CriAtomEx3dTransceiverObj *CriAtomEx3dTransceiverHn;
04277
04278
04279
04280
04281
04293 typedef struct CriAtomExDspPitchShifterConfigTag {
04299 CriSint32 num_dsp;
04300
04307 CriSint32 max_channels;
04308
04315 CriSint32 max_sampling_rate;
04316
04323 CriAtomDspPitchShifterConfig specific;
04324 } CriAtomExDspPitchShifterConfig;
04325
04337 typedef struct CriAtomExDspTimeStretchConfigTag {
04343 CriSint32 num_dsp;
04344
04351 CriSint32 max_channels;
04352
04359 CriSint32 max_sampling_rate;
04360
04367 CriAtomDspTimeStretchConfig specific;
04368 } CriAtomExDspTimeStretchConfig;
04369
04370
04371
04372
04380 typedef enum CriAtomExTweenParameterTypeTag {
04386 CRIATOMEX_PARAMETER_TYPE_BASIC,
04387
04393 CRIATOMEX_PARAMETER_TYPE_AISAC,
04394
04395
04396 CRIATOMEX_PARAMETER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
04397 } CriAtomExTweenParameterType;
04398
04409 typedef struct CriAtomExTweenConfigTag {
04415 union CriAtomExTweenConfigParameterIdTag {
04421 CriAtomExParameterId parameter_id;
04422
04428 CriAtomExAisacControlId aisac_control_id;
04429 } id;
04430
04436 CriAtomExTweenParameterType parameter_type;
04437 } CriAtomExTweenConfig;
04438
04453 typedef struct CriAtomExTweenTag *CriAtomExTweenHn;
04454
04455
04456
04457
04466 typedef enum CriAtomExVoiceEventTag {
04472 CRIATOMEX_VOICE_EVENT_ALLOCATE = 0,
04473
04484 CRIATOMEX_VOICE_EVENT_ALLOCATE_AND_REMOVE,
04485
04495 CRIATOMEX_VOICE_EVENT_ALLOCATE_AND_REMOVE_IN_GROUP,
04496
04513 CRIATOMEX_VOICE_EVENT_ALOOCATE_AND_REMOVE_TWO,
04514
04522 CRIATOMEX_VOICE_EVENT_REJECT,
04523
04531 CRIATOMEX_VOICE_EVENT_REJECT_BY_GROUP_LIMIT,
04532
04539 CRIATOMEX_VOICE_EVENT_REMOVE,
04540
04541 CRIATOMEX_VOICE_EVENT_ENUM_IS_4BYTE = 0x7FFFFFFF
04542 } CriAtomExVoiceEvent;
04543
04552 typedef struct CriAtomExVoiceInfoDetailTag {
04553 CriAtomExPlaybackId playback_id;
04554 CriAtomExSourceInfo cue_info;
04555 CriAtomExSourceInfo wave_info;
04556 CriSint32 group_no;
04557 CriSint32 priority;
04558 CriAtomExVoiceControlMethod control_method;
04559 CriAtomExVoiceAllocationMethod allocation_method;
04560 CriUint32 identifier;
04561 CriAtomExFormat format;
04562 CriSint32 sampling_rate;
04563 CriSint32 num_channels;
04564 CriBool streaming_flag;
04565 CriAtomPlayerHn atom_player;
04566 } CriAtomExVoiceInfoDetail;
04567
04631 typedef void (CRIAPI *CriAtomExVoiceEventCbFunc)(
04632 void *obj, CriAtomExVoiceEvent voice_event,
04633 const CriAtomExVoiceInfoDetail *request,
04634 const CriAtomExVoiceInfoDetail *removed,
04635 const CriAtomExVoiceInfoDetail *removed_in_group);
04636
04651 typedef void (CRIAPI *CriAtomExVoiceInfoCbFunc)(
04652 void *obj, const CriAtomExVoiceInfoDetail *voice_info);
04653
04662 typedef struct CriAtomExMonitoringVoiceStopInfoTag {
04663 CriAtomExPlaybackId playback_id;
04664 CriAtomVoiceStopReason reason;
04665 CriAtomPlayerHn atom_player;
04666 } CriAtomExMonitoringVoiceStopInfo;
04667
04681 typedef void (CRIAPI *CriAtomExMonitoringVoiceStopCbFunc)(void *obj, CriAtomExMonitoringVoiceStopInfo* voice_stop);
04682
04683
04684
04685
04686
04691 typedef enum CriAtomExCueLinkTypeTag {
04692 CRIATOMEX_CUELINK_TYPE_STATIC = 0,
04693 CRIATOMEX_CUELINK_TYPE_DYNAMIC = 1,
04695
04696 CRIATOMEX_CUELINK_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
04697 } CriAtomExCueLinkType;
04698
04703 typedef struct CriAtomExCueLinkInfoTag {
04704 CriAtomExPlayerHn player;
04705 CriAtomExPlaybackId base_id;
04706 CriAtomExSourceInfo base_cue;
04707 CriAtomExPlaybackId target_id;
04708 CriAtomExSourceInfo target_cue;
04709 CriAtomExCueLinkType link_type;
04710 } CriAtomExCueLinkInfo;
04711
04729 typedef CriSint32 (CRIAPI *CriAtomExCueLinkCbFunc)(void* obj, const CriAtomExCueLinkInfo* info);
04730
04731
04732
04733
04741 typedef enum CriAtomExPlaybackCancelTypeTag {
04747 CRIATOMEX_PLAYBACK_CANCEL_TYPE_CUE_LIMIT = 0,
04748
04754 CRIATOMEX_PLAYBACK_CANCEL_TYPE_CATEGORY_CUE_LIMIT,
04755
04761 CRIATOMEX_PLAYBACK_CANCEL_TYPE_PROBABILITY,
04762
04768 CRIATOMEX_PLAYBACK_CANCEL_TYPE_STOP_BY_CUE_LIMIT,
04769
04775 CRIATOMEX_PLAYBACK_CANCEL_TYPE_SWITCH,
04776
04777
04778 CRIATOMEX_PLAYBACK_CANCEL_TYPE_ENUM_IS_4BYTE = 0x7FFFFFFF
04779 } CriAtomExPlaybackCancelType;
04780
04785 typedef struct CriAtomExPlaybackCancelInfoTag {
04786 CriAtomExPlaybackCancelType type;
04787 CriAtomExPlayerHn player;
04788 CriAtomExPlaybackId id;
04789 } CriAtomExPlaybackCancelInfo;
04790
04808 typedef void (CRIAPI *CriAtomExPlaybackCancelCbFunc)(void *obj, const CriAtomExPlaybackCancelInfo* info);
04809
04810
04811
04812
04817 typedef struct CriAtomExTrackTransitionBySelectorInfoTag {
04818 CriAtomExPlayerHn player;
04819 CriAtomExPlaybackId id;
04820 const CriChar8* selector;
04821 const CriChar8* label;
04822 } CriAtomExTrackTransitionBySelectorInfo;
04823
04842 typedef void (CRIAPI *CriAtomExTrackTransitionBySelectorCbFunc)(void *obj, const CriAtomExTrackTransitionBySelectorInfo* info);
04843
04844
04845
04846
04847
04864 typedef struct CriAtomExSoundObjectConfigTag {
04876 CriBool enable_voice_limit_scope;
04888 CriBool enable_category_cue_limit_scope;
04889 } CriAtomExSoundObjectConfig;
04890
04891 struct CriAtomExSoundObjectTag;
04892 typedef struct CriAtomExSoundObjectTag CriAtomExSoundObjectObj;
04916 typedef CriAtomExSoundObjectObj *CriAtomExSoundObjectHn;
04917
04918
04919
04920
04921
04922
04923
04924
04925
04926
04927 #ifdef __cplusplus
04928 extern "C" {
04929 #endif
04930
04931
04932
04933
04963 CriSint32 CRIAPI criAtomEx_CalculateWorkSize(const CriAtomExConfig *config);
04964
05126 CriBool CRIAPI criAtomEx_Initialize(
05127 const CriAtomExConfig *config, void *work, CriSint32 work_size);
05128
05138 void CRIAPI criAtomEx_Finalize(void);
05139
05150 CriBool CRIAPI criAtomEx_IsInitialized(void);
05151
05182 void CRIAPI criAtomEx_ExecuteMain(void);
05183
05204 void CRIAPI criAtomEx_ExecuteAudioProcess(void);
05205
05239 void CRIAPI criAtomEx_Lock(void);
05240
05248 void CRIAPI criAtomEx_Unlock(void);
05249
05258 CriUint64 CRIAPI criAtomEx_GetTimeMicro(void);
05259
05270 void CRIAPI criAtomEx_ResetTimer(void);
05271
05293 void CRIAPI criAtomEx_PauseTimer(CriBool sw);
05294
05360 void CRIAPI criAtomEx_SetConfigForWorkSizeCalculation(const CriAtomExConfig *config);
05361
05384 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfData(
05385 void *acf_data, CriSint32 acf_data_size);
05386
05421 void CRIAPI criAtomEx_RegisterAcfData(
05422 void *acf_data, CriSint32 acf_data_size, void *work, CriSint32 work_size);
05423
05449 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfFile(
05450 CriFsBinderHn binder, const CriChar8 *path);
05451
05468 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfFileById(
05469 CriFsBinderHn binder, CriUint16 id);
05470
05524 CriBool CRIAPI criAtomEx_RegisterAcfFile(
05525 CriFsBinderHn binder, const CriChar8 *path, void *work, CriSint32 work_size);
05526
05546 CriBool CRIAPI criAtomEx_RegisterAcfFileById(
05547 CriFsBinderHn binder, CriUint16 id, void *work, CriSint32 work_size);
05548
05561 void CRIAPI criAtomEx_UnregisterAcf(void);
05562
05574 CriUint32 CRIAPI criAtomEx_GetAcfVersion(
05575 void *acf_data, CriSint32 acf_data_size, CriBool *flag);
05576
05608 CriUint32 CRIAPI criAtomEx_GetAcfVersionFromFile(
05609 CriFsBinderHn binder, const CriChar8 *path, void *work, CriSint32 work_size, CriBool *flag);
05610
05628 CriUint32 CRIAPI criAtomEx_GetAcfVersionFromFileById(
05629 CriFsBinderHn binder, CriUint16 id, void *work, CriSint32 work_size, CriBool *flag);
05630
05641 void CRIAPI criAtomEx_GetSupportedAcfVersion(
05642 CriUint32 *version_low, CriUint32 *version_high);
05643
05669 CriBool CRIAPI criAtomEx_AnalyzeAudioHeader(
05670 const void *buffer, CriSint32 buffer_size, CriAtomExFormatInfo *info);
05671
05683 void CRIAPI criAtomEx_SetRandomSeed(CriUint32 seed);
05684
05714 CriBool CRIAPI criAtomEx_IsDataPlaying(void *buffer, CriSint32 size);
05715
05734 #define criAtomEx_GetStreamingInfo(streaming_info) \
05735 criAtom_GetStreamingInfo(streaming_info)
05736
05760 #define criAtomEx_SetFreeTimeBufferingFlagForDefaultDevice(flag) \
05761 criAtom_SetFreeTimeBufferingFlagForDefaultDevice(flag)
05762
05787 #define criAtomEx_SetAdx1KeyString(key_string) \
05788 criAtom_SetAdx1KeyString(key_string)
05789
05809 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForDspBusSetting(
05810 const CriChar8 *setting);
05811
05844 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForDspBusSettingFromAcfData(
05845 void *acf_data, CriSint32 acf_buffer_size, const CriChar8 *setting_name);
05846
05876 void CRIAPI criAtomEx_AttachDspBusSetting(
05877 const CriChar8 *setting, void *work, CriSint32 work_size);
05878
05895 void CRIAPI criAtomEx_DetachDspBusSetting(void);
05896
05907 void CRIAPI criAtomEx_ApplyDspBusSnapshot(const CriChar8 *snapshot_name, CriSint32 time_ms);
05908
05919 const CriChar8* CRIAPI criAtomEx_GetAppliedDspBusSnapshotName(void);
05920
05943 void CRIAPI criAtomEx_SetCueLinkCallback(CriAtomExCueLinkCbFunc func, void* obj);
05944
05966 void CRIAPI criAtomEx_SetSpeakerAngles(CriFloat32 angle_l, CriFloat32 angle_r, CriFloat32 angle_sl, CriFloat32 angle_sr);
05967
05990 void CRIAPI criAtomEx_SetSpeakerAngleArray(CriAtomExSpeakerSystem speaker_system, const CriFloat32 *angle_array);
05991
06006 void CRIAPI criAtomEx_SetVirtualSpeakerAngleArray(CriAtomExSpeakerSystem speaker_system, const CriFloat32 *angle_array);
06007
06022 void CRIAPI criAtomEx_ControlVirtualSpeakerSetting(CriBool sw);
06023
06035 CriSint32 CRIAPI criAtomEx_GetNumGameVariables(void);
06036
06048 CriBool CRIAPI criAtomEx_GetGameVariableInfo(CriUint16 index, CriAtomExGameVariableInfo* info);
06049
06060 CriFloat32 CRIAPI criAtomEx_GetGameVariableById(CriAtomExGameVariableId id);
06061
06072 CriFloat32 CRIAPI criAtomEx_GetGameVariableByName(const CriChar8* name);
06073
06085 void CRIAPI criAtomEx_SetGameVariableById(CriAtomExGameVariableId id, CriFloat32 value);
06086
06098 void CRIAPI criAtomEx_SetGameVariableByName(const CriChar8* name, CriFloat32 value);
06099
06122 void CRIAPI criAtomEx_SetPlaybackCancelCallback(CriAtomExPlaybackCancelCbFunc func, void* obj);
06123
06136 void CRIAPI criAtomEx_ControlAcfConsistencyCheck(CriBool sw);
06137
06146 void CRIAPI criAtomEx_SetAcfConsistencyCheckErrorLevel(CriErrorLevel level);
06147
06170 void CRIAPI criAtomEx_SetTrackTransitionBySelectorCallback(CriAtomExTrackTransitionBySelectorCbFunc func, void* obj);
06171
06172
06173
06174
06185 void CRIAPI criAtomExDebug_GetResourcesInfo(CriAtomExDebugResourcesInfo *resources_info);
06186
06187
06188
06189
06218 CriSint32 CRIAPI criAtomExHcaMx_CalculateWorkSize(const CriAtomExHcaMxConfig *config);
06219
06267 void CRIAPI criAtomExHcaMx_SetConfigForWorkSizeCalculation(const CriAtomExHcaMxConfig *config);
06268
06300 void CRIAPI criAtomExHcaMx_Initialize(
06301 const CriAtomExHcaMxConfig *config, void *work, CriSint32 work_size);
06302
06320 void CRIAPI criAtomExHcaMx_Finalize(void);
06321
06335 void CRIAPI criAtomExHcaMx_SetBusSendLevelByName(
06336 CriSint32 mixer_id, const CriChar8* bus_name, CriFloat32 level);
06337
06352 void CRIAPI criAtomExHcaMx_SetFrequencyRatio(CriSint32 mixer_id, CriFloat32 ratio);
06353
06369 void CRIAPI criAtomExHcaMx_SetAsrRackId(CriSint32 mixer_id, CriSint32 rack_id);
06370
06371
06372
06373
06395 #define criAtomExDecrypter_CalculateWorkSize(p_config) \
06396 criAtomDecrypter_CalculateWorkSize(p_config)
06397
06454 #define criAtomExDecrypter_Create(p_config, p_work, work_size) \
06455 criAtomDecrypter_Create((p_config), (p_work), (work_size))
06456
06474 #define criAtomExDecrypter_Destroy(decrypter_hn) \
06475 criAtomDecrypter_Destroy(decrypter_hn)
06476
06477
06478
06479
06488 CriSint32 CRIAPI criAtomExAcf_GetNumAisacControls(void);
06489
06500 CriBool CRIAPI criAtomExAcf_GetAisacControlInfo(CriUint16 index, CriAtomExAisacControlInfo* info);
06501
06511 CriAtomExAisacControlId CRIAPI criAtomExAcf_GetAisacControlIdByName(const CriChar8* name);
06512
06522 const CriChar8 * CRIAPI criAtomExAcf_GetAisacControlNameById(CriAtomExAisacControlId id);
06523
06533 CriSint32 CRIAPI criAtomExAcf_GetNumDspSettings(void);
06534
06548 CriSint32 CRIAPI criAtomExAcf_GetNumDspSettingsFromAcfData(
06549 void *acf_data, CriSint32 acf_data_size);
06550
06563 const CriChar8 * CRIAPI criAtomExAcf_GetDspSettingNameByIndex(CriUint16 index);
06564
06580 const CriChar8 * CRIAPI criAtomExAcf_GetDspSettingNameByIndexFromAcfData(
06581 void *acf_data, CriSint32 acf_data_size, CriUint16 index);
06582
06594 CriBool CRIAPI criAtomExAcf_GetDspSettingInformation(const CriChar8* name, CriAtomExAcfDspSettingInfo* info);
06595
06609 CriBool CRIAPI criAtomExAcf_GetDspSettingSnapshotInformation(CriUint16 index, CriAtomExAcfDspSettingSnapshotInfo* info);
06610
06622 CriBool CRIAPI criAtomExAcf_GetDspBusInformation(CriUint16 index, CriAtomExAcfDspBusInfo* info);
06623
06638 CriUint32 CRIAPI criAtomExAcf_GetDspFxType(CriUint16 index);
06639
06652 const CriChar8* CRIAPI criAtomExAcf_GetDspFxName(CriUint16 index);
06653
06669 CriBool CRIAPI criAtomExAcf_GetDspFxParameters(CriUint16 index, void* parameters, CriSint32 size);
06670
06682 CriBool CRIAPI criAtomExAcf_GetDspBusLinkInformation(CriUint16 index, CriAtomExAcfDspBusLinkInfo* info);
06683
06697 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesFromAcfData(
06698 void *acf_data, CriSint32 acf_data_size);
06699
06707 CriSint32 CRIAPI criAtomExAcf_GetNumCategories(void);
06708
06722 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesPerPlaybackFromAcfData(
06723 void *acf_data, CriSint32 acf_data_size);
06724
06732 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesPerPlayback(void);
06733
06744 CriBool CRIAPI criAtomExAcf_GetCategoryInfo(CriUint16 index, CriAtomExCategoryInfo* info);
06745
06756 CriBool CRIAPI criAtomExAcf_GetCategoryInfoByName(const CriChar8* name, CriAtomExCategoryInfo* info);
06757
06768 CriBool CRIAPI criAtomExAcf_GetCategoryInfoById(CriUint32 id, CriAtomExCategoryInfo* info);
06769
06777 CriSint32 CRIAPI criAtomExAcf_GetNumGlobalAisacs(void);
06778
06789 CriBool CRIAPI criAtomExAcf_GetGlobalAisacInfo(CriUint16 index, CriAtomExGlobalAisacInfo* info);
06790
06801 CriBool CRIAPI criAtomExAcf_GetGlobalAisacInfoByName(const CriChar8* name, CriAtomExGlobalAisacInfo* info);
06802
06814 CriBool CRIAPI criAtomExAcf_GetGlobalAisacGraphInfo(
06815 const CriAtomExGlobalAisacInfo* aisac_info,
06816 CriUint16 graph_index,
06817 CriAtomExAisacGraphInfo* graph_info);
06818
06831 CriBool CRIAPI criAtomExAcf_GetGlobalAisacValue(
06832 const CriAtomExGlobalAisacInfo* aisac_info,
06833 CriFloat32 control,
06834 CriAtomExAisacGraphType type,
06835 CriFloat32* value);
06836
06846 CriBool CRIAPI criAtomExAcf_GetAcfInfo(CriAtomExAcfInfo *acf_info);
06847
06866 CriBool CRIAPI criAtomExAcf_GetAcfInfoFromAcfData(
06867 void *acf_data, CriSint32 acf_data_size, CriAtomExAcfInfo *acf_info);
06868
06876 CriSint32 CRIAPI criAtomExAcf_GetNumSelectors(void);
06877
06888 CriBool CRIAPI criAtomExAcf_GetSelectorInfoByIndex(CriUint16 index, CriAtomExSelectorInfo* info);
06889
06900 CriBool CRIAPI criAtomExAcf_GetSelectorInfoByName(const CriChar8* name, CriAtomExSelectorInfo* info);
06901
06913 CriBool CRIAPI criAtomExAcf_GetSelectorLabelInfo(
06914 const CriAtomExSelectorInfo* selector_info,
06915 CriUint16 label_index,
06916 CriAtomExSelectorLabelInfo* label_info);
06917
06929 void CRIAPI criAtomExAcf_SetGlobalLabelToSelectorByName(const CriChar8* selsector_name, const CriChar8* label_name);
06930
06942 void CRIAPI criAtomExAcf_SetGlobalLabelToSelectorByIndex(CriUint16 selsector_index, CriUint16 label_index);
06943
06957 CriSint32 CRIAPI criAtomExAcf_GetNumBusesFromAcfData(
06958 void *acf_data, CriSint32 acf_data_size);
06959
06967 CriSint32 CRIAPI criAtomExAcf_GetNumBuses(void);
06968
06982 CriSint32 CRIAPI criAtomExAcf_GetMaxBusesOfDspBusSettingsFromAcfData(
06983 void *acf_data, CriSint32 acf_data_size);
06984
06992 CriSint32 CRIAPI criAtomExAcf_GetMaxBusesOfDspBusSettings(void);
06993
07003 const CriChar8* CRIAPI criAtomExAcf_FindBusName(const CriChar8* bus_name);
07004
07005
07006
07007
07008
07035 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbData(
07036 void *acb_data, CriSint32 acb_data_size,
07037 CriFsBinderHn awb_binder, const CriChar8 *awb_path);
07038
07057 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbDataById(
07058 void *acb_data, CriSint32 acb_data_size, CriFsBinderHn awb_binder, CriUint16 awb_id);
07059
07116 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbData(
07117 void *acb_data, CriSint32 acb_data_size,
07118 CriFsBinderHn awb_binder, const CriChar8 *awb_path,
07119 void *work, CriSint32 work_size);
07120
07139 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbDataById(
07140 void *acb_data, CriSint32 acb_data_size, CriFsBinderHn awb_binder, CriUint16 awb_id,
07141 void *work, CriSint32 work_size);
07142
07179 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbFile(
07180 CriFsBinderHn acb_binder, const CriChar8 *acb_path,
07181 CriFsBinderHn awb_binder, const CriChar8 *awb_path);
07182
07201 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbFileById(
07202 CriFsBinderHn acb_binder, CriUint16 acb_id, CriFsBinderHn awb_binder, CriUint16 awb_id);
07203
07259 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbFile(
07260 CriFsBinderHn acb_binder, const CriChar8 *acb_path,
07261 CriFsBinderHn awb_binder, const CriChar8 *awb_path,
07262 void *work, CriSint32 work_size);
07263
07282 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbFileById(
07283 CriFsBinderHn acb_binder, CriUint16 acb_id, CriFsBinderHn awb_binder, CriUint16 awb_id,
07284 void *work, CriSint32 work_size);
07285
07310 void CRIAPI criAtomExAcb_Release(CriAtomExAcbHn acb_hn);
07311
07340 CriBool CRIAPI criAtomExAcb_IsReadyToRelease(CriAtomExAcbHn acb_hn);
07341
07364 void CRIAPI criAtomExAcb_ReleaseAll(void);
07365
07393 CriSint32 CRIAPI criAtomExAcb_EnumerateHandles(CriAtomExAcbHandleCbFunc func, void *obj);
07394
07406 CriUint32 CRIAPI criAtomExAcb_GetVersion(
07407 void *acb_data, CriSint32 acb_data_size, void *flag);
07408
07441 CriUint32 CRIAPI criAtomExAcb_GetVersionFromFile(
07442 CriFsBinderHn acb_binder, const CriChar8 *acb_path, void *work, CriSint32 work_size, CriBool *flag);
07443
07454 void CRIAPI criAtomExAcb_GetSupportedVersion(
07455 CriUint32 *version_low, CriUint32 *version_high);
07456
07467 CriSint32 CRIAPI criAtomExAcb_GetNumCues(CriAtomExAcbHn acb_hn);
07468
07482 CriBool CRIAPI criAtomExAcb_ExistsId(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07483
07497 CriBool CRIAPI criAtomExAcb_ExistsName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
07498
07512 CriBool CRIAPI criAtomExAcb_ExistsIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
07513
07531 CriAtomExCueId CRIAPI criAtomExAcb_GetCueIdByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
07532
07550 CriAtomExCueId CRIAPI criAtomExAcb_GetCueIdByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
07551
07569 const CriChar8 * CRIAPI criAtomExAcb_GetCueNameByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
07570
07588 const CriChar8 * CRIAPI criAtomExAcb_GetCueNameById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07589
07607 CriAtomExCueIndex CRIAPI criAtomExAcb_GetCueIndexById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07608
07626 CriAtomExCueIndex CRIAPI criAtomExAcb_GetCueIndexByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
07627
07645 const CriChar8 * CRIAPI criAtomExAcb_GetUserDataById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07646
07664 const CriChar8 * CRIAPI criAtomExAcb_GetUserDataByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
07665
07683 CriSint64 CRIAPI criAtomExAcb_GetLengthById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07684
07702 CriSint64 CRIAPI criAtomExAcb_GetLengthByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
07703
07722 CriSint32 CRIAPI criAtomExAcb_GetNumUsableAisacControlsById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07723
07742 CriSint32 CRIAPI criAtomExAcb_GetNumUsableAisacControlsByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
07743
07764 CriBool CRIAPI criAtomExAcb_GetUsableAisacControlById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriUint16 index, CriAtomExAisacControlInfo* info);
07765
07786 CriBool CRIAPI criAtomExAcb_GetUsableAisacControlByName(CriAtomExAcbHn acb_hn, const CriChar8 *name, CriUint16 index, CriAtomExAisacControlInfo* info);
07787
07807 CriBool CRIAPI criAtomExAcb_IsUsingAisacControlById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExAisacControlId aisac_control_id);
07808
07828 CriBool CRIAPI criAtomExAcb_IsUsingAisacControlByName(CriAtomExAcbHn acb_hn, const CriChar8 *name, const CriChar8 *aisac_control_name);
07829
07848 CriSint32 CRIAPI criAtomExAcb_GetCuePriorityById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
07849
07868 CriSint32 CRIAPI criAtomExAcb_GetCuePriorityByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
07869
07889 CriBool CRIAPI criAtomExAcb_GetWaveformInfoById(
07890 CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExWaveformInfo *waveform_info);
07891
07911 CriBool CRIAPI criAtomExAcb_GetWaveformInfoByName(
07912 CriAtomExAcbHn acb_hn, const CriChar8 *name, CriAtomExWaveformInfo *waveform_info);
07913
07941 CriAtomAwbHn CRIAPI criAtomExAcb_GetOnMemoryAwbHandle(CriAtomExAcbHn acb_hn);
07942
07970 CriAtomAwbHn CRIAPI criAtomExAcb_GetStreamingAwbHandle(CriAtomExAcbHn acb_hn);
07971
07991 CriBool CRIAPI criAtomExAcb_GetCueInfoByName(CriAtomExAcbHn acb_hn, const CriChar8* name, CriAtomExCueInfo* info);
07992
08012 CriBool CRIAPI criAtomExAcb_GetCueInfoById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExCueInfo* info);
08013
08033 CriBool CRIAPI criAtomExAcb_GetCueInfoByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index, CriAtomExCueInfo* info);
08034
08053 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
08054
08073 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
08074
08093 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
08094
08114 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index, const CriChar8* block_name);
08115
08135 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, const CriChar8* block_name);
08136
08156 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexByName(CriAtomExAcbHn acb_hn, const CriChar8* name, const CriChar8* block_name);
08157
08178 void CRIAPI criAtomExAcb_SetDetectionInGamePreviewDataCallback(CriAtomExAcbDetectionInGamePreviewDataCbFunc func, void* obj);
08179
08192 CriBool CRIAPI criAtomExAcb_GetAcbInfo(CriAtomExAcbHn acb_hn, CriAtomExAcbInfo *acb_info);
08193
08210 void CRIAPI criAtomExAcb_ResetCueTypeStateByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
08211
08228 void CRIAPI criAtomExAcb_ResetCueTypeStateById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
08229
08246 void CRIAPI criAtomExAcb_ResetCueTypeStateByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
08247
08294 void CRIAPI criAtomExAcb_AttachAwbFile(
08295 CriAtomExAcbHn acb_hn,
08296 CriFsBinderHn awb_binder,
08297 const CriChar8* awb_path,
08298 const CriChar8* awb_name,
08299 void* work,
08300 CriSint32 work_size);
08301
08314 void CRIAPI criAtomExAcb_DetachAwbFile(
08315 CriAtomExAcbHn acb_hn,
08316 const CriChar8* awb_name);
08317
08332 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForAttachAwbFile(
08333 CriFsBinderHn awb_binder,
08334 const CriChar8* awb_path);
08335
08344 CriSint32 CRIAPI criAtomExAcb_GetNumAwbFileSlots(
08345 CriAtomExAcbHn acb_hn);
08346
08358 const CriChar8* CRIAPI criAtomExAcb_GetAwbFileSlotName(
08359 CriAtomExAcbHn acb_hn, CriUint16 index);
08360
08370 CriBool CRIAPI criAtomExAcb_IsAttachedAwbFile(
08371 CriAtomExAcbHn acb_hn,
08372 const CriChar8* awb_name);
08373
08393 void CRIAPI criAtomExAcb_Decrypt(
08394 CriAtomExAcbHn acb_hn, CriUint64 key, CriUint64 nonce);
08395
08396
08397
08398
08432 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForStandardVoicePool(
08433 const CriAtomExStandardVoicePoolConfig *config);
08434
08522 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateStandardVoicePool(
08523 const CriAtomExStandardVoicePoolConfig *config, void *work, CriSint32 work_size);
08524
08558 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForAdxVoicePool(
08559 const CriAtomExAdxVoicePoolConfig *config);
08560
08646 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateAdxVoicePool(
08647 const CriAtomExAdxVoicePoolConfig *config, void *work, CriSint32 work_size);
08648
08682 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForHcaVoicePool(
08683 const CriAtomExHcaVoicePoolConfig *config);
08684
08770 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateHcaVoicePool(
08771 const CriAtomExHcaVoicePoolConfig *config, void *work, CriSint32 work_size);
08772
08806 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForHcaMxVoicePool(
08807 const CriAtomExHcaMxVoicePoolConfig *config);
08808
08899 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateHcaMxVoicePool(
08900 const CriAtomExHcaMxVoicePoolConfig *config, void *work, CriSint32 work_size);
08901
08935 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForWaveVoicePool(
08936 const CriAtomExWaveVoicePoolConfig *config);
08937
09029 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateWaveVoicePool(
09030 const CriAtomExWaveVoicePoolConfig *config, void *work, CriSint32 work_size);
09031
09065 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForAiffVoicePool(
09066 const CriAtomExAiffVoicePoolConfig *config);
09067
09159 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateAiffVoicePool(
09160 const CriAtomExAiffVoicePoolConfig *config, void *work, CriSint32 work_size);
09161
09195 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForRawPcmVoicePool(
09196 const CriAtomExRawPcmVoicePoolConfig *config);
09197
09270 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateRawPcmVoicePool(
09271 const CriAtomExRawPcmVoicePoolConfig *config, void *work, CriSint32 work_size);
09272
09300 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateInstrumentVoicePool(
09301 const CriAtomExInstrumentVoicePoolConfig *config, void *work, CriSint32 work_size);
09302
09323 void CRIAPI criAtomExVoicePool_Free(CriAtomExVoicePoolHn pool);
09324
09344 void CRIAPI criAtomExVoicePool_FreeAll(void);
09345
09356 void CRIAPI criAtomExVoicePool_GetNumUsedVoices(
09357 CriAtomExVoicePoolHn pool, CriSint32 *cur_num, CriSint32 *limit);
09358
09370 CriAtomPlayerHn CRIAPI criAtomExVoicePool_GetPlayerHandle(
09371 CriAtomExVoicePoolHn pool, CriSint32 index);
09372
09391 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForInstrumentVoicePool(
09392 const CriAtomExInstrumentVoicePoolConfig *config);
09393
09394
09395
09396
09408 void CRIAPI criAtomExCategory_SetVolumeById(CriAtomExCategoryId id, CriFloat32 volume);
09409
09418 CriFloat32 CRIAPI criAtomExCategory_GetVolumeById(CriAtomExCategoryId id);
09419
09431 CriFloat32 CRIAPI criAtomExCategory_GetTotalVolumeById(CriAtomExCategoryId id);
09432
09444 void CRIAPI criAtomExCategory_SetVolumeByName(const CriChar8* name, CriFloat32 volume);
09445
09454 CriFloat32 CRIAPI criAtomExCategory_GetVolumeByName(const CriChar8* name);
09455
09467 CriFloat32 CRIAPI criAtomExCategory_GetTotalVolumeByName(const CriChar8* name);
09468
09477 void CRIAPI criAtomExCategory_MuteById(CriAtomExCategoryId id, CriBool mute);
09478
09487 CriBool CRIAPI criAtomExCategory_IsMutedById(CriAtomExCategoryId id);
09488
09497 void CRIAPI criAtomExCategory_MuteByName(const CriChar8* name, CriBool mute);
09498
09507 CriBool CRIAPI criAtomExCategory_IsMutedByName(const CriChar8* name);
09508
09520 void CRIAPI criAtomExCategory_SoloById(CriAtomExCategoryId id, CriBool solo, CriFloat32 mute_volume);
09521
09530 CriBool CRIAPI criAtomExCategory_IsSoloedById(CriAtomExCategoryId id);
09531
09543 void CRIAPI criAtomExCategory_SoloByName(const CriChar8* name, CriBool solo, CriFloat32 mute_volume);
09544
09553 CriBool CRIAPI criAtomExCategory_IsSoloedByName(const CriChar8* name);
09554
09572 void CRIAPI criAtomExCategory_PauseById(CriAtomExCategoryId id, CriBool sw);
09573
09582 CriBool CRIAPI criAtomExCategory_IsPausedById(CriAtomExCategoryId id);
09583
09594 void CRIAPI criAtomExCategory_PauseByName(const CriChar8* name, CriBool sw);
09595
09604 CriBool CRIAPI criAtomExCategory_IsPausedByName(const CriChar8* name);
09605
09615 void CRIAPI criAtomExCategory_SetFadeInTimeById(CriAtomExCategoryId id, CriUint16 ms);
09616
09626 void CRIAPI criAtomExCategory_SetFadeInTimeByName(const CriChar8* name, CriUint16 ms);
09627
09637 void CRIAPI criAtomExCategory_SetFadeOutTimeById(CriAtomExCategoryId id, CriUint16 ms);
09638
09648 void CRIAPI criAtomExCategory_SetFadeOutTimeByName(const CriChar8* name, CriUint16 ms);
09649
09665 void CRIAPI criAtomExCategory_SetAisacControlById(
09666 CriAtomExCategoryId id,
09667 CriAtomExAisacControlId control_id,
09668 CriFloat32 control_value
09669 );
09670
09684 void CRIAPI criAtomExCategory_SetAisacControlByName(
09685 const CriChar8* name,
09686 const CriChar8* control_name,
09687 CriFloat32 control_value
09688 );
09689
09701 CriBool CRIAPI criAtomExCategory_ResetAllAisacControlById(CriAtomExCategoryId category_id);
09702
09714 CriBool CRIAPI criAtomExCategory_ResetAllAisacControlByName(const CriChar8* category_name);
09715
09738 void CRIAPI criAtomExCategory_AttachAisacById(CriAtomExCategoryId id, const CriChar8* global_aisac_name);
09739
09750 void CRIAPI criAtomExCategory_AttachAisacByName(const CriChar8* name, const CriChar8* global_aisac_name);
09751
09764 void CRIAPI criAtomExCategory_DetachAisacById(CriAtomExCategoryId id, const CriChar8* global_aisac_name);
09765
09776 void CRIAPI criAtomExCategory_DetachAisacByName(const CriChar8* name, const CriChar8* global_aisac_name);
09777
09785 void CRIAPI criAtomExCategory_DetachAisacAllById(CriAtomExCategoryId id);
09786
09794 void CRIAPI criAtomExCategory_DetachAisacAllByName(const CriChar8* name);
09795
09805 CriSint32 CRIAPI criAtomExCategory_GetNumAttachedAisacsById(CriAtomExCategoryId id);
09806
09816 CriSint32 CRIAPI criAtomExCategory_GetNumAttachedAisacsByName(const CriChar8* name);
09817
09831 CriBool CRIAPI criAtomExCategory_GetAttachedAisacInfoById(
09832 CriAtomExCategoryId id,
09833 CriSint32 aisac_attached_index,
09834 CriAtomExAisacInfo *aisac_info
09835 );
09836
09850 CriBool CRIAPI criAtomExCategory_GetAttachedAisacInfoByName(
09851 const CriChar8* name,
09852 CriSint32 aisac_attached_index,
09853 CriAtomExAisacInfo *aisac_info
09854 );
09855
09869 CriBool CRIAPI criAtomExCategory_GetCurrentAisacControlValueById(
09870 CriAtomExCategoryId category_id,
09871 CriAtomExAisacControlId aisac_control_id,
09872 CriFloat32 * control_value
09873 );
09874
09888 CriBool CRIAPI criAtomExCategory_GetCurrentAisacControlValueByName(
09889 const CriChar8* category_name,
09890 const CriChar8* aisac_control_name,
09891 CriFloat32 * control_value
09892 );
09893
09905 void CRIAPI criAtomExCategory_SetReactParameter(
09906 const CriChar8* react_name,
09907 const CriAtomExReactParameter* react_parameter);
09908
09921 CriBool CRIAPI criAtomExCategory_GetReactParameter(
09922 const CriChar8* react_name,
09923 CriAtomExReactParameter* react_parameter);
09924
09934 CriSint32 CRIAPI criAtomExCategory_GetNumCuePlayingCountById(CriAtomExCategoryId id);
09935
09945 CriSint32 CRIAPI criAtomExCategory_GetNumCuePlayingCountByName(const CriChar8* name);
09946
09954 void CRIAPI criAtomExCategory_StopById(CriAtomExCategoryId id);
09955
09963 void CRIAPI criAtomExCategory_StopByName(const CriChar8* name);
09964
09972 void CRIAPI criAtomExCategory_StopWithoutReleaseTimeById(CriAtomExCategoryId id);
09973
09981 void CRIAPI criAtomExCategory_StopWithoutReleaseTimeByName(const CriChar8* name);
09982
09983
09984
09985
10017 CriSint32 CRIAPI criAtomExPlayer_CalculateWorkSize(
10018 const CriAtomExPlayerConfig *config);
10019
10183 CriAtomExPlayerHn CRIAPI criAtomExPlayer_Create(
10184 const CriAtomExPlayerConfig *config, void *work, CriSint32 work_size);
10185
10204 void CRIAPI criAtomExPlayer_Destroy(CriAtomExPlayerHn player);
10205
10251 void CRIAPI criAtomExPlayer_SetCueId(
10252 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, CriAtomExCueId id);
10253
10298 void CRIAPI criAtomExPlayer_SetCueName(
10299 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, const CriChar8 *cue_name);
10300
10350 void CRIAPI criAtomExPlayer_SetCueIndex(
10351 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
10352
10404 void CRIAPI criAtomExPlayer_SetData(
10405 CriAtomExPlayerHn player, void *buffer, CriSint32 size);
10406
10467 void CRIAPI criAtomExPlayer_SetFile(
10468 CriAtomExPlayerHn player, CriFsBinderHn binder, const CriChar8 *path);
10469
10536 void CRIAPI criAtomExPlayer_SetContentId(
10537 CriAtomExPlayerHn player, CriFsBinderHn binder, CriSint32 id);
10538
10589 void CRIAPI criAtomExPlayer_SetWaveId(
10590 CriAtomExPlayerHn player, CriAtomAwbHn awb, CriAtomExWaveId id);
10591
10694 CriAtomExPlaybackId CRIAPI criAtomExPlayer_Start(CriAtomExPlayerHn player);
10695
10784 CriAtomExPlaybackId CRIAPI criAtomExPlayer_Prepare(CriAtomExPlayerHn player);
10785
10809 void CRIAPI criAtomExPlayer_Stop(CriAtomExPlayerHn player);
10810
10836 void CRIAPI criAtomExPlayer_StopWithoutReleaseTime(CriAtomExPlayerHn player);
10837
10859 void CRIAPI criAtomExPlayer_StopAllPlayers(void);
10860
10884 void CRIAPI criAtomExPlayer_StopAllPlayersWithoutReleaseTime(void);
10885
10905 void CRIAPI criAtomExPlayer_EnumeratePlayers(CriAtomExPlayerCbFunc func, void *obj);
10906
10935 void CRIAPI criAtomExPlayer_Pause(CriAtomExPlayerHn player, CriBool sw);
10936
10971 void CRIAPI criAtomExPlayer_Resume(CriAtomExPlayerHn player, CriAtomExResumeMode mode);
10972
10991 CriBool CRIAPI criAtomExPlayer_IsPaused(CriAtomExPlayerHn player);
10992
11059 CriAtomExPlayerStatus CRIAPI criAtomExPlayer_GetStatus(CriAtomExPlayerHn player);
11060
11075 CriSint32 CRIAPI criAtomExPlayer_GetNumPlaybacks(CriAtomExPlayerHn player);
11076
11087 CriAtomExPlaybackId CRIAPI criAtomExPlayer_GetLastPlaybackId(CriAtomExPlayerHn player);
11088
11143 CriSint64 CRIAPI criAtomExPlayer_GetTime(CriAtomExPlayerHn player);
11144
11160 void CRIAPI criAtomExPlayer_SetFormat(
11161 CriAtomExPlayerHn player, CriAtomExFormat format);
11162
11178 void CRIAPI criAtomExPlayer_SetNumChannels(
11179 CriAtomExPlayerHn player, CriSint32 num_channels);
11180
11196 void CRIAPI criAtomExPlayer_SetSamplingRate(
11197 CriAtomExPlayerHn player, CriSint32 sampling_rate);
11198
11214 void CRIAPI criAtomExPlayer_SetSoundRendererType(
11215 CriAtomExPlayerHn player, CriAtomSoundRendererType type);
11216
11239 void CRIAPI criAtomExPlayer_SetGroupNumber(
11240 CriAtomExPlayerHn player, CriSint32 group_no);
11241
11285 void CRIAPI criAtomExPlayer_SetVoiceControlMethod(
11286 CriAtomExPlayerHn player, CriAtomExVoiceControlMethod method);
11287
11303 void CRIAPI criAtomExPlayer_SetVoicePoolIdentifier(
11304 CriAtomExPlayerHn player, CriAtomExVoicePoolIdentifier identifier);
11305
11323 void CRIAPI criAtomExPlayer_SetHcaMxMixerId(CriAtomExPlayerHn player, CriSint32 mixer_id);
11324
11352 void CRIAPI criAtomExPlayer_SetAsrRackId(CriAtomExPlayerHn player, CriSint32 rack_id);
11353
11389 void CRIAPI criAtomExPlayer_SetAsrRackIdArray(
11390 CriAtomExPlayerHn player, const CriSint32 *rack_id_array, CriSint32 num_racks);
11391
11425 void CRIAPI criAtomExPlayer_SetStartTime(
11426 CriAtomExPlayerHn player, CriSint64 start_time_ms);
11427
11480 void CRIAPI criAtomExPlayer_SetSyncPlaybackId(
11481 CriAtomExPlayerHn player, CriAtomExPlaybackId playback_id);
11482
11499 void CRIAPI criAtomExPlayer_SetPlaybackRatio(
11500 CriAtomExPlayerHn player, CriFloat32 playback_ratio);
11501
11546 void CRIAPI criAtomExPlayer_LimitLoopCount(CriAtomExPlayerHn player, CriSint32 count);
11547
11570 void CRIAPI criAtomExPlayer_UpdateAll(CriAtomExPlayerHn player);
11571
11595 void CRIAPI criAtomExPlayer_Update(
11596 CriAtomExPlayerHn player, CriAtomExPlaybackId id);
11597
11630 void CRIAPI criAtomExPlayer_ResetParameters(CriAtomExPlayerHn player);
11631
11643 CriFloat32 CRIAPI criAtomExPlayer_GetParameterFloat32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11644
11656 CriUint32 CRIAPI criAtomExPlayer_GetParameterUint32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11657
11669 CriSint32 CRIAPI criAtomExPlayer_GetParameterSint32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11670
11748 void CRIAPI criAtomExPlayer_SetVolume(
11749 CriAtomExPlayerHn player, CriFloat32 volume);
11750
11812 void CRIAPI criAtomExPlayer_SetPitch(CriAtomExPlayerHn player, CriFloat32 pitch);
11813
11841 void CRIAPI criAtomExPlayer_SetMaxPitch(CriAtomExPlayerHn player, CriFloat32 pitch);
11842
11888 void CRIAPI criAtomExPlayer_SetPan3dAngle(
11889 CriAtomExPlayerHn player, CriFloat32 pan3d_angle);
11890
11935 void CRIAPI criAtomExPlayer_SetPan3dInteriorDistance(
11936 CriAtomExPlayerHn player, CriFloat32 pan3d_interior_distance);
11937
11978 void CRIAPI criAtomExPlayer_SetPan3dVolume(
11979 CriAtomExPlayerHn player, CriFloat32 pan3d_volume);
11980
12001 void CRIAPI criAtomExPlayer_SetPanType(
12002 CriAtomExPlayerHn player, CriAtomExPanType pan_type);
12003
12025 void CRIAPI criAtomExPlayer_SetPanSpeakerType(
12026 CriAtomExPlayerHn player, CriAtomExPanSpeakerType pan_speaker_type);
12027
12043 void CRIAPI criAtomExPlayer_AddMixDownCenterVolumeOffset(
12044 CriAtomExPlayerHn player, CriFloat32 mixdown_center_volume_offset);
12045
12061 void CRIAPI criAtomExPlayer_AddMixDownLfeVolumeOffset(
12062 CriAtomExPlayerHn player, CriFloat32 mixdown_lfe_volume_offset);
12063
12083 void CRIAPI criAtomExPlayer_ChangeDefaultPanSpeakerType(
12084 CriAtomExPanSpeakerType pan_speaker_type);
12085
12108 void CRIAPI criAtomExPlayer_SetPanAngleType(
12109 CriAtomExPlayerHn player, CriAtomExPanAngleType pan_angle_type);
12110
12132 void CRIAPI criAtomExPlayer_SetPanSpread(CriAtomExPlayerHn player, CriFloat32 spread);
12133
12233 void CRIAPI criAtomExPlayer_SetSendLevel(
12234 CriAtomExPlayerHn player, CriSint32 ch, CriAtomExSpeakerId spk, CriFloat32 level);
12235
12283 void CRIAPI criAtomExPlayer_SetBusSendLevelByName(
12284 CriAtomExPlayerHn player, const CriChar8* bus_name, CriFloat32 level);
12285
12304 void CRIAPI criAtomExPlayer_SetBusSendLevelOffsetByName(
12305 CriAtomExPlayerHn player, const CriChar8* bus_name, CriFloat32 level_offset);
12306
12348 void CRIAPI criAtomExPlayer_SetPanAdx1Compatible(
12349 CriAtomExPlayerHn player, CriSint32 ch, CriFloat32 pan);
12350
12406 void CRIAPI criAtomExPlayer_SetBandpassFilterParameters(
12407 CriAtomExPlayerHn player, CriFloat32 cof_low, CriFloat32 cof_high);
12408
12477 void CRIAPI criAtomExPlayer_SetBiquadFilterParameters(
12478 CriAtomExPlayerHn player, CriAtomExBiquadFilterType type, CriFloat32 frequency,
12479 CriFloat32 gain, CriFloat32 q_value);
12480
12535 void CRIAPI criAtomExPlayer_SetVoicePriority(
12536 CriAtomExPlayerHn player, CriSint32 priority);
12537
12589 void CRIAPI criAtomExPlayer_SetAisacControlById(
12590 CriAtomExPlayerHn player, CriAtomExAisacControlId control_id, CriFloat32 control_value);
12591
12631 void CRIAPI criAtomExPlayer_SetAisacControlByName(
12632 CriAtomExPlayerHn player, const CriChar8 *control_name, CriFloat32 control_value);
12633
12644 void CRIAPI criAtomExPlayer_ClearAisacControls(CriAtomExPlayerHn player);
12645
12646
12701 void CRIAPI criAtomExPlayer_Set3dSourceHn(
12702 CriAtomExPlayerHn player, CriAtomEx3dSourceHn source);
12703
12767 void CRIAPI criAtomExPlayer_Set3dSourceListHn(
12768 CriAtomExPlayerHn player, CriAtomEx3dSourceListHn source_list);
12769
12823 void CRIAPI criAtomExPlayer_Set3dListenerHn(
12824 CriAtomExPlayerHn player, CriAtomEx3dListenerHn listener);
12825
12852 CriFloat32 CRIAPI criAtomExPlayer_GetAisacControlById(
12853 CriAtomExPlayerHn player, CriAtomExAisacControlId control_id);
12854
12881 CriFloat32 CRIAPI criAtomExPlayer_GetAisacControlByName(
12882 CriAtomExPlayerHn player, const CriChar8 *control_name);
12883
12913 void CRIAPI criAtomExPlayer_SetCategoryById(
12914 CriAtomExPlayerHn player, CriUint32 category_id);
12915
12936 void CRIAPI criAtomExPlayer_SetCategoryByName(
12937 CriAtomExPlayerHn player, const CriChar8 *category_name);
12938
12952 void CRIAPI criAtomExPlayer_UnsetCategory(CriAtomExPlayerHn player);
12953
12962 CriSint32 CRIAPI criAtomExPlayer_GetNumCategories(CriAtomExPlayerHn player);
12963
12975 CriBool CRIAPI criAtomExPlayer_GetCategoryInfo(CriAtomExPlayerHn player, CriUint16 index, CriAtomExCategoryInfo* info);
12976
13011 void CRIAPI criAtomExPlayer_SetTrackInfo(CriAtomExPlayerHn player,
13012 CriSint32 num_tracks, const CriSint32 *channels_per_track);
13013
13037 void CRIAPI criAtomExPlayer_SetTrackVolume(
13038 CriAtomExPlayerHn player, CriSint32 track_no, CriFloat32 volume);
13039
13069 void CRIAPI criAtomExPlayer_SetSilentMode(
13070 CriAtomExPlayerHn player, CriAtomExSilentMode silent_mode);
13071
13097 void CRIAPI criAtomExPlayer_SetCuePriority(
13098 CriAtomExPlayerHn player, CriSint32 cue_priority);
13099
13119 void CRIAPI criAtomExPlayer_SetPreDelayTime(
13120 CriAtomExPlayerHn player, CriFloat32 predelay_time_ms);
13121
13150 void CRIAPI criAtomExPlayer_SetEnvelopeAttackTime(
13151 CriAtomExPlayerHn player, CriFloat32 attack_time_ms);
13152
13181 void CRIAPI criAtomExPlayer_SetEnvelopeHoldTime(
13182 CriAtomExPlayerHn player, CriFloat32 hold_time_ms);
13183
13212 void CRIAPI criAtomExPlayer_SetEnvelopeDecayTime(
13213 CriAtomExPlayerHn player, CriFloat32 decay_time_ms);
13214
13243 void CRIAPI criAtomExPlayer_SetEnvelopeReleaseTime(
13244 CriAtomExPlayerHn player, CriFloat32 release_time_ms);
13245
13274 void CRIAPI criAtomExPlayer_SetEnvelopeSustainLevel(
13275 CriAtomExPlayerHn player, CriFloat32 susutain_level);
13276
13418 void CRIAPI criAtomExPlayer_SetDataRequestCallback(
13419 CriAtomExPlayerHn player, CriAtomExPlayerDataRequestCbFunc func, void *obj);
13420
13458 void CRIAPI criAtomExPlayer_SetFilterCallback(
13459 CriAtomExPlayerHn player, CriAtomExPlayerFilterCbFunc func, void *obj);
13460
13472 void CRIAPI criAtomExPlayer_SetRandomSeed(CriAtomExPlayerHn player, CriUint32 seed);
13473
13487 void CRIAPI criAtomExPlayer_SetDspParameter(
13488 CriAtomExPlayerHn player, CriSint32 param_id, CriFloat32 param_val);
13489
13522 void CRIAPI criAtomExPlayer_AttachAisac(CriAtomExPlayerHn player, const CriChar8* global_aisac_name);
13523 void CRIAPI criAtomExPlayer_AttachAisacByIndex(CriAtomExPlayerHn player, CriUint16 global_aisac_index);
13524
13540 void CRIAPI criAtomExPlayer_DetachAisac(CriAtomExPlayerHn player, const CriChar8* global_aisac_name);
13541 void CRIAPI criAtomExPlayer_DetachAisacByIndex(CriAtomExPlayerHn player, CriUint16 global_aisac_index);
13542
13554 void CRIAPI criAtomExPlayer_DetachAisacAll(CriAtomExPlayerHn player);
13555
13564 CriSint32 CRIAPI criAtomExPlayer_GetNumAttachedAisacs(CriAtomExPlayerHn player);
13565
13579 CriBool CRIAPI criAtomExPlayer_GetAttachedAisacInfo(
13580 CriAtomExPlayerHn player,
13581 CriSint32 aisac_attached_index,
13582 CriAtomExAisacInfo *aisac_info
13583 );
13584
13598 void CRIAPI criAtomExPlayer_SetStreamingCacheId(
13599 CriAtomExPlayerHn player, CriAtomExStreamingCacheId cache_id);
13600
13643 void CRIAPI criAtomExPlayer_AttachTween(CriAtomExPlayerHn player, CriAtomExTweenHn tween);
13644
13657 void CRIAPI criAtomExPlayer_DetachTween(CriAtomExPlayerHn player, CriAtomExTweenHn tween);
13658
13670 void CRIAPI criAtomExPlayer_DetachTweenAll(CriAtomExPlayerHn player);
13671
13711 void CRIAPI criAtomExPlayer_SetFirstBlockIndex(
13712 CriAtomExPlayerHn player, CriAtomExBlockIndex index);
13713
13743 void CRIAPI criAtomExPlayer_SetBlockTransitionCallback(
13744 CriAtomExPlayerHn player, CriAtomExPlayerBlockTransitionCbFunc func, void *obj);
13745
13756 CriAtomExSoundObjectHn CRIAPI criAtomExPlayer_GetSoundObject(CriAtomExPlayerHn player);
13757
13820 void CRIAPI criAtomExPlayer_SetDrySendLevel(
13821 CriAtomExPlayerHn player, CriAtomExSpeakerId spk, CriFloat32 offset, CriFloat32 gain);
13822
13838 void CRIAPI criAtomExPlayer_SetSelectorLabel(
13839 CriAtomExPlayerHn player, const CriChar8 *selector, const CriChar8 *label);
13840
13841
13852 void CRIAPI criAtomExPlayer_ClearSelectorLabels(CriAtomExPlayerHn player);
13853
13883 void CRIAPI criAtomExPlayer_SetPlaybackTrackInfoNotificationCallback(
13884 CriAtomExPlayerHn player, CriAtomExPlayerPlaybackTrackInfoNotificationCbFunc func, void *obj);
13885
13908 void CRIAPI criAtomExPlayer_SetPlaybackEventCallback(
13909 CriAtomExPlayerHn player, CriAtomExPlaybackEventCbFunc func, void *obj);
13910
13911
13912
13913
13933 void CRIAPI criAtomExPlayback_Stop(CriAtomExPlaybackId id);
13934
13954 void CRIAPI criAtomExPlayback_StopWithoutReleaseTime(CriAtomExPlaybackId id);
13955
13996 void CRIAPI criAtomExPlayback_Pause(CriAtomExPlaybackId id, CriBool sw);
13997
14036 void CRIAPI criAtomExPlayback_Resume(CriAtomExPlaybackId id, CriAtomExResumeMode mode);
14037
14047 CriBool CRIAPI criAtomExPlayback_IsPaused(CriAtomExPlaybackId id);
14048
14074 CriAtomExPlaybackStatus CRIAPI criAtomExPlayback_GetStatus(CriAtomExPlaybackId id);
14075
14097 CriBool CRIAPI criAtomExPlayback_GetFormatInfo(
14098 CriAtomExPlaybackId id, CriAtomExFormatInfo *info);
14099
14138 CriBool CRIAPI criAtomExPlayback_GetSource(
14139 CriAtomExPlaybackId id, CriAtomExSourceInfo *source);
14140
14153 CriAtomPlayerHn CRIAPI criAtomExPlayback_GetAtomPlayer(CriAtomExPlaybackId id);
14154
14201 CriSint64 CRIAPI criAtomExPlayback_GetTime(CriAtomExPlaybackId id);
14202
14255 CriSint64 CRIAPI criAtomExPlayback_GetTimeSyncedWithAudio(CriAtomExPlaybackId id);
14256
14305 CriSint64 CRIAPI criAtomExPlayback_GetTimeSyncedWithAudioMicro(CriAtomExPlaybackId id);
14306
14340 CriSint64 CRIAPI criAtomExPlayback_GetSequencePosition(CriAtomExPlaybackId id);
14341
14373 CriBool CRIAPI criAtomExPlayback_GetNumPlayedSamples(
14374 CriAtomExPlaybackId id, CriSint64 *num_samples, CriSint32 *sampling_rate);
14375
14409 CriBool CRIAPI criAtomExPlayback_GetNumRenderedSamples(
14410 CriAtomExPlaybackId id, CriSint64 *num_samples, CriSint32 *sampling_rate);
14411
14430 CriBool CRIAPI criAtomExPlayback_GetParameterFloat32(
14431 CriAtomExPlaybackId playback_id,
14432 CriAtomExParameterId parameter_id,
14433 CriFloat32 *value_float32
14434 );
14435
14454 CriBool CRIAPI criAtomExPlayback_GetParameterUint32(
14455 CriAtomExPlaybackId playback_id,
14456 CriAtomExParameterId parameter_id,
14457 CriUint32* value_uint32
14458 );
14459
14478 CriBool CRIAPI criAtomExPlayback_GetParameterSint32(
14479 CriAtomExPlaybackId playback_id,
14480 CriAtomExParameterId parameter_id,
14481 CriSint32* value_sint32
14482 );
14483
14501 CriBool CRIAPI criAtomExPlayback_GetAisacControlById(
14502 CriAtomExPlaybackId playback_id, CriAtomExAisacControlId control_id, CriFloat32 *control_value);
14503
14521 CriBool CRIAPI criAtomExPlayback_GetAisacControlByName(
14522 CriAtomExPlaybackId playback_id, const CriChar8 *control_name, CriFloat32 *control_value);
14523
14539 void CRIAPI criAtomExPlayback_SetNextBlockIndex(CriAtomExPlaybackId id, CriAtomExBlockIndex index);
14540
14554 CriAtomExBlockIndex CRIAPI criAtomExPlayback_GetCurrentBlockIndex(CriAtomExPlaybackId id);
14555
14571 CriBool CRIAPI criAtomExPlayback_GetPlaybackTrackInfo(CriAtomExPlaybackId id, CriAtomExPlaybackTrackInfo* info);
14572
14590 CriBool CRIAPI criAtomExPlayback_GetBeatSyncInfo(CriAtomExPlaybackId id, CriAtomExBeatSyncInfo* info);
14591
14608 CriBool CRIAPI criAtomExPlayback_SetBeatSyncOffset(CriAtomExPlaybackId id, CriSint16 time_ms);
14609
14610
14611
14612
14641 CriSint32 CRIAPI criAtomExPlayer_CalculateWorkSizeForFader(
14642 const CriAtomExFaderConfig *config);
14643
14760 void CRIAPI criAtomExPlayer_AttachFader(CriAtomExPlayerHn player,
14761 const CriAtomExFaderConfig *config, void *work, CriSint32 work_size);
14762
14778 void CRIAPI criAtomExPlayer_DetachFader(CriAtomExPlayerHn player);
14779
14828 void CRIAPI criAtomExPlayer_SetFadeOutTime(CriAtomExPlayerHn player, CriSint32 ms);
14829
14841 CriSint32 CRIAPI criAtomExPlayer_GetFadeOutTime(CriAtomExPlayerHn player);
14842
14867 void CRIAPI criAtomExPlayer_SetFadeInTime(CriAtomExPlayerHn player, CriSint32 ms);
14868
14880 CriSint32 CRIAPI criAtomExPlayer_GetFadeInTime(CriAtomExPlayerHn player);
14881
14915 void CRIAPI criAtomExPlayer_SetFadeInStartOffset(CriAtomExPlayerHn player, CriSint32 ms);
14916
14928 CriSint32 CRIAPI criAtomExPlayer_GetFadeInStartOffset(CriAtomExPlayerHn player);
14929
14959 void CRIAPI criAtomExPlayer_SetFadeOutEndDelay(CriAtomExPlayerHn player, CriSint32 ms);
14960
14972 CriSint32 CRIAPI criAtomExPlayer_GetFadeOutEndDelay(CriAtomExPlayerHn player);
14973
14988 CriBool CRIAPI criAtomExPlayer_IsFading(CriAtomExPlayerHn player);
14989
15007 void CRIAPI criAtomExPlayer_ResetFaderParameters(CriAtomExPlayerHn player);
15008
15009
15010
15011
15012
15035 void CRIAPI criAtomExSequencer_SetEventCallback(CriAtomExSequencerEventCbFunc func, void* obj);
15036
15037
15038
15039
15062 void CRIAPI criAtomExBeatSync_SetCallback(CriAtomExBeatSyncCbFunc func, void* obj);
15063
15064
15065
15066
15097 CriSint32 CRIAPI criAtomEx3dSource_CalculateWorkSize(const CriAtomEx3dSourceConfig *config);
15098
15119 CriAtomEx3dSourceHn CRIAPI criAtomEx3dSource_Create(
15120 const CriAtomEx3dSourceConfig *config, void *work, CriSint32 work_size);
15121
15134 void CRIAPI criAtomEx3dSource_Destroy(CriAtomEx3dSourceHn ex_3d_source);
15135
15168 void CRIAPI criAtomEx3dSource_Update(CriAtomEx3dSourceHn ex_3d_source);
15169
15180 void CRIAPI criAtomEx3dSource_ResetParameters(CriAtomEx3dSourceHn ex_3d_source);
15181
15197 void CRIAPI criAtomEx3dSource_SetPosition(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *position);
15198
15207 CriAtomExVector CRIAPI criAtomEx3dSource_GetPosition(CriAtomEx3dSourceHn ex_3d_source);
15208
15224 void CRIAPI criAtomEx3dSource_SetVelocity(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *velocity);
15225
15250 void CRIAPI criAtomEx3dSource_SetOrientation(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *front, const CriAtomExVector *top);
15251
15283 void CRIAPI criAtomEx3dSource_SetConeParameter(CriAtomEx3dSourceHn ex_3d_source,
15284 CriFloat32 inside_angle,
15285 CriFloat32 outside_angle,
15286 CriFloat32 outside_volume
15287 );
15288
15306 void CRIAPI criAtomEx3dSource_ChangeDefaultConeParameter(
15307 CriFloat32 inside_angle,
15308 CriFloat32 outside_angle,
15309 CriFloat32 outside_volume
15310 );
15311
15331 void CRIAPI criAtomEx3dSource_SetMinMaxAttenuationDistance(CriAtomEx3dSourceHn ex_3d_source,
15332 CriFloat32 min_attenuation_distance,
15333 CriFloat32 max_attenuation_distance
15334 );
15335
15355 void CRIAPI criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance(
15356 CriFloat32 min_attenuation_distance,
15357 CriFloat32 max_attenuation_distance
15358 );
15359
15385 void CRIAPI criAtomEx3dSource_SetInteriorPanField(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 source_radius, CriFloat32 interior_distance);
15386
15399 void CRIAPI criAtomEx3dSource_ChangeDefaultInteriorPanField(CriFloat32 source_radius, CriFloat32 interior_distance);
15400
15418 void CRIAPI criAtomEx3dSource_SetDopplerFactor(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 doppler_factor);
15419
15435 void CRIAPI criAtomEx3dSource_ChangeDefaultDopplerFactor(CriFloat32 doppler_factor);
15436
15458 void CRIAPI criAtomEx3dSource_SetVolume(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 volume);
15459
15475 void CRIAPI criAtomEx3dSource_ChangeDefaultVolume(CriFloat32 volume);
15476
15495 void CRIAPI criAtomEx3dSource_SetMaxAngleAisacDelta(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 max_delta);
15496
15513 void CRIAPI criAtomEx3dSource_SetDistanceAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
15514
15530 void CRIAPI criAtomEx3dSource_SetListenerBasedAzimuthAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
15531
15547 void CRIAPI criAtomEx3dSource_SetListenerBasedElevationAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
15548
15564 void CRIAPI criAtomEx3dSource_SetSourceBasedAzimuthAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
15565
15581 void CRIAPI criAtomEx3dSource_SetSourceBasedElevationAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
15582
15596 void CRIAPI criAtomEx3dSource_Set3dRegionHn(CriAtomEx3dSourceHn ex_3d_source, CriAtomEx3dRegionHn ex_3d_region);
15597
15627 CriSint32 CRIAPI criAtomEx3dSourceList_CalculateWorkSize(const CriAtomEx3dSourceListConfig *config);
15628
15649 CriAtomEx3dSourceListHn CRIAPI criAtomEx3dSourceList_Create(
15650 const CriAtomEx3dSourceListConfig *config, void *work, CriSint32 work_size);
15651
15667 void CRIAPI criAtomEx3dSourceList_Destroy(CriAtomEx3dSourceListHn ex_3d_source_list);
15668
15693 void CRIAPI criAtomEx3dSourceList_Add(
15694 CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source);
15695
15715 void CRIAPI criAtomEx3dSourceList_Remove(
15716 CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source);
15717
15736 void CRIAPI criAtomEx3dSourceList_RemoveAll(CriAtomEx3dSourceListHn ex_3d_source_list);
15737
15767 CriSint32 CRIAPI criAtomEx3dListener_CalculateWorkSize(const CriAtomEx3dListenerConfig *config);
15768
15769
15790 CriAtomEx3dListenerHn CRIAPI criAtomEx3dListener_Create(
15791 const CriAtomEx3dListenerConfig *config, void *work, CriSint32 work_size);
15792
15805 void CRIAPI criAtomEx3dListener_Destroy(CriAtomEx3dListenerHn ex_3d_listener);
15806
15839 void CRIAPI criAtomEx3dListener_Update(CriAtomEx3dListenerHn ex_3d_listener);
15840
15851 void CRIAPI criAtomEx3dListener_ResetParameters(CriAtomEx3dListenerHn ex_3d_listener);
15852
15868 void CRIAPI criAtomEx3dListener_SetPosition(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *position);
15869
15879 CriAtomExVector CRIAPI criAtomEx3dListener_GetPosition(CriAtomEx3dListenerHn ex_3d_listener);
15880
15896 void CRIAPI criAtomEx3dListener_SetVelocity(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *velocity);
15897
15916 void CRIAPI criAtomEx3dListener_SetOrientation(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *front, const CriAtomExVector *top);
15917
15933 void CRIAPI criAtomEx3dListener_SetDopplerMultiplier(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 doppler_multiplier);
15934
15952 void CRIAPI criAtomEx3dListener_SetFocusPoint(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *focus_point);
15953
15969 void CRIAPI criAtomEx3dListener_SetDistanceFocusLevel(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 distance_focus_level);
15970
15987 void CRIAPI criAtomEx3dListener_SetDirectionFocusLevel(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 direction_focus_level);
15988
16002 void CRIAPI criAtomEx_EnableCalculationAisacControlFrom3dPosition(CriBool flag);
16003
16018 CriBool CRIAPI criAtomEx_IsEnableCalculationAisacControlFrom3dPosition(void);
16019
16033 void CRIAPI criAtomEx3dListener_Set3dRegionHn(CriAtomEx3dListenerHn ex_3d_listener, CriAtomEx3dRegionHn ex_3d_region);
16034
16064 CriSint32 CRIAPI criAtomEx3dRegion_CalculateWorkSize(const CriAtomEx3dRegionConfig *config);
16065
16086 CriAtomEx3dRegionHn CRIAPI criAtomEx3dRegion_Create(
16087 const CriAtomEx3dRegionConfig *config, void *work, CriSint32 work_size);
16088
16099 void CRIAPI criAtomEx3dRegion_Destroy(CriAtomEx3dRegionHn ex_3d_region);
16100
16130 CriSint32 CRIAPI criAtomEx3dTransceiver_CalculateWorkSize(const CriAtomEx3dTransceiverConfig *config);
16131
16152 CriAtomEx3dTransceiverHn CRIAPI criAtomEx3dTransceiver_Create(const CriAtomEx3dTransceiverConfig *config, void *work, CriSint32 work_size);
16153
16164 void CRIAPI criAtomEx3dTransceiver_Destroy(CriAtomEx3dTransceiverHn ex_3d_transceiver);
16165
16198 void CRIAPI criAtomEx3dTransceiver_Update(CriAtomEx3dTransceiverHn ex_3d_transceiver);
16199
16214 void CRIAPI criAtomEx3dTransceiver_SetInputPosition(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *position);
16215
16230 void CRIAPI criAtomEx3dTransceiver_SetOutputPosition(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *position);
16231
16249 void CRIAPI criAtomEx3dTransceiver_SetInputOrientation(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *front, const CriAtomExVector *top);
16250
16270 void CRIAPI criAtomEx3dTransceiver_SetOutputOrientation(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriAtomExVector *front, const CriAtomExVector *top);
16271
16299 void CRIAPI criAtomEx3dTransceiver_SetOutputConeParameter(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 inside_angle, CriFloat32 outside_angle, CriFloat32 outside_volume);
16300
16318 void CRIAPI criAtomEx3dTransceiver_SetOutputMinMaxAttenuationDistance(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 min_attenuation_distance, CriFloat32 max_attenuation_distance);
16319
16343 void CRIAPI criAtomEx3dTransceiver_SetOutputInteriorPanField(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 transceiver_radius, CriFloat32 interior_distance);
16344
16367 void CRIAPI criAtomEx3dTransceiver_SetInputCrossFadeField(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 direct_audio_radius, CriFloat32 crossfade_distance);
16368
16388 void CRIAPI criAtomEx3dTransceiver_SetOutputVolume(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 volume);
16389
16411 void CRIAPI criAtomEx3dTransceiver_AttachAisac(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriChar8* global_aisac_name);
16412
16425 void CRIAPI criAtomEx3dTransceiver_DetachAisac(CriAtomEx3dTransceiverHn ex_3d_transceiver, const CriChar8* global_aisac_name);
16426
16445 void CRIAPI criAtomEx3dTransceiver_SetMaxAngleAisacDelta(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriFloat32 max_delta);
16446
16459 void CRIAPI criAtomEx3dTransceiver_SetDistanceAisacControlId(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id);
16460
16472 void CRIAPI criAtomEx3dTransceiver_SetListenerBasedAzimuthAngleAisacControlId(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id);
16473
16485 void CRIAPI criAtomEx3dTransceiver_SetListenerBasedElevationAngleAisacControlId(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id);
16486
16498 void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedAzimuthAngleAisacControlId(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id);
16499
16511 void CRIAPI criAtomEx3dTransceiver_SetTransceiverOutputBasedElevationAngleAisacControlId(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriUint16 aisac_control_id);
16512
16526 void CRIAPI criAtomEx3dTransceiver_Set3dRegionHn(CriAtomEx3dTransceiverHn ex_3d_transceiver, CriAtomEx3dRegionHn ex_3d_region);
16527
16528
16529
16530
16531
16546 void CRIAPI criAtomExVoicePool_DetachDsp(CriAtomExVoicePoolHn pool);
16547
16559 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForDspPitchShifter(
16560 const CriAtomExDspPitchShifterConfig *config);
16561
16579 void CRIAPI criAtomExVoicePool_AttachDspPitchShifter(CriAtomExVoicePoolHn pool,
16580 const CriAtomExDspPitchShifterConfig *config, void *work, CriSint32 work_size);
16581
16593 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForDspTimeStretch(
16594 const CriAtomExDspTimeStretchConfig *config);
16595
16613 void CRIAPI criAtomExVoicePool_AttachDspTimeStretch(CriAtomExVoicePoolHn pool,
16614 const CriAtomExDspTimeStretchConfig *config, void *work, CriSint32 work_size);
16615
16616
16617
16618
16637 CriBool CRIAPI criAtomExStreamingCache_IsCachedWaveformById(
16638 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, CriAtomExCueId id);
16639
16658 CriBool CRIAPI criAtomExStreamingCache_IsCachedWaveformByName(
16659 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, const CriChar8 *name);
16660
16685 CriFsLoaderHn CRIAPI criAtomExStreamingCache_LoadWaveformByIdAsync(
16686 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, CriAtomExCueId cue_id);
16687
16712 CriFsLoaderHn CRIAPI criAtomExStreamingCache_LoadWaveformByNameAsync(
16713 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, const CriChar8 *name);
16714
16734 CriBool CRIAPI criAtomExStreamingCache_LoadWaveformById(
16735 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, CriAtomExCueId cue_id);
16736
16756 CriBool CRIAPI criAtomExStreamingCache_LoadWaveformByName(
16757 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, const CriChar8 *name);
16758
16759
16760
16761
16762
16791
16792 CriSint32 CRIAPI criAtomExTween_CalculateWorkSize(const CriAtomExTweenConfig *config);
16793
16817 CriAtomExTweenHn CRIAPI criAtomExTween_Create(
16818 const CriAtomExTweenConfig *config, void *work, CriSint32 work_size);
16819
16832 void CRIAPI criAtomExTween_Destroy(CriAtomExTweenHn tween);
16833
16841 CriFloat32 CRIAPI criAtomExTween_GetValue(CriAtomExTweenHn tween);
16842
16853 void CRIAPI criAtomExTween_MoveTo(CriAtomExTweenHn tween, CriUint16 time_ms, CriFloat32 value);
16854
16865 void CRIAPI criAtomExTween_MoveFrom(CriAtomExTweenHn tween, CriUint16 time_ms, CriFloat32 value);
16866
16874 void CRIAPI criAtomExTween_Stop(CriAtomExTweenHn tween);
16875
16886 void CRIAPI criAtomExTween_Reset(CriAtomExTweenHn tween);
16887
16888
16889
16890
16918 void CRIAPI criAtomEx_SetVoiceEventCallback(CriAtomExVoiceEventCbFunc func, void *obj);
16919
16944 void CRIAPI criAtomEx_EnumerateVoiceInfos(CriAtomExVoiceInfoCbFunc func, void *obj);
16945
16964 void CRIAPI criAtomEx_SetMonitoringVoiceStopCallback(CriAtomExMonitoringVoiceStopCbFunc func, void *obj);
16965
16978 void CRIAPI criAtomEx_SetMonitoringVoiceStopPlaybackId(CriAtomExPlaybackId playback_id);
16979
16980
16981
16982
16983
17015 CriSint32 CRIAPI criAtomExSoundObject_CalculateWorkSize(
17016 const CriAtomExSoundObjectConfig *config);
17017
17030 CriAtomExSoundObjectHn CRIAPI criAtomExSoundObject_Create(
17031 const CriAtomExSoundObjectConfig *config, void *work, CriSint32 work_size);
17032
17043 void CRIAPI criAtomExSoundObject_Destroy(CriAtomExSoundObjectHn sound_object);
17044
17067 void CRIAPI criAtomExSoundObject_AddPlayer(CriAtomExSoundObjectHn sound_object, CriAtomExPlayerHn player);
17068
17084 void CRIAPI criAtomExSoundObject_DeletePlayer(CriAtomExSoundObjectHn sound_object, CriAtomExPlayerHn player);
17085
17100 void CRIAPI criAtomExSoundObject_DeleteAllPlayers(CriAtomExSoundObjectHn sound_object);
17101
17102
17103
17104
17105
17106
17107
17108
17109
17110 typedef void (CRIAPI *CriAtomExAcbReleasedCbFunc)(void *obj);
17111 void CRIAPI criAtomExAcb_ReleaseAsync(
17112 CriAtomExAcbHn acb_hn, CriAtomExAcbReleasedCbFunc func, void *obj);
17113 CriBool CRIAPI criAtomExPlayer_IsReadyToStartAsync(CriAtomExPlayerHn player);
17114 CriBool CRIAPI criAtomExPlayer_StartAsync(CriAtomExPlayerHn player);
17115 void CRIAPI criAtomExPlayer_UpdateAllAsync(CriAtomExPlayerHn player);
17116 CriSint64 CRIAPI criAtomExPlayer_GetTimeReal(CriAtomExPlayerHn player);
17117 CriSint64 CRIAPI criAtomExPlayback_GetTimeReal(CriAtomExPlaybackId id);
17118 void CRIAPI criAtomExPlayback_EnumerateAtomPlayers(
17119 CriAtomExPlaybackId id, CriAtomPlayerCbFunc func, void* obj);
17120 void CRIAPI criAtomEx3dListener_GetFocusPoint(CriAtomEx3dListenerHn ex_3d_listener, CriAtomExVector *focus_point);
17121 CriFloat32 CRIAPI criAtomEx3dListener_GetDistanceFocusLevel(CriAtomEx3dListenerHn ex_3d_listener);
17122 CriFloat32 CRIAPI criAtomEx3dListener_GetDirectionFocusLevel(CriAtomEx3dListenerHn ex_3d_listener);
17123 CriAtomExAcbHn CRIAPI criAtomExAcb_GetCurrentAcb(void);
17124 CriBool CRIAPI criAtomExAcb_IsParameterPalletAssignedByName(CriAtomExAcbHn acb_hn, const CriChar8 *cue_name);
17125 void CRIAPI criAtomEx3dSource_SetAttenuationDistanceSetting(CriAtomEx3dSourceHn ex_3d_source, CriBool sw);
17126 CriBool CRIAPI criAtomEx3dSource_GetAttenuationDistanceSetting(const CriAtomEx3dSourceHn ex_3d_source);
17127
17128 #ifdef __cplusplus
17129 }
17130 #endif
17131
17132
17133
17134
17135
17140 typedef CriAtomExConfig CriAtomExLibraryConfig;
17141 typedef CriAtomExFormatInfo CriAtomExPlaybackFormatInfo;
17142 typedef CriAtomExSourceType CriAtomExPlaybackSourceType;
17143 typedef CriAtomExSourceInfo CriAtomExPlaybackSource;
17144 typedef CriAtomExVoiceControlMethod CriAtomExControlMethod;
17145 typedef CriAtomExVoiceAllocationMethod CriAtomExPlayerVoiceAllocationMethod;
17146 typedef CriAtomExSequencerEventCbFunc CriAtomExSequencer_EventCbFunc;
17147 #define criAtomExPlayer_SetDefaultPlayerConfig(p_config) \
17148 criAtomExPlayer_SetDefaultConfig(p_config)
17149 #define criAtomExPlayer_SetPriority(player, priority) \
17150 criAtomExPlayer_SetVoicePriority((player), (priority))
17151 #define criAtomExPlayer_SetControlMethod(player, method) \
17152 criAtomExPlayer_SetVoiceControlMethod((player), (method))
17153 #define criAtomExPlayer_GetPlaybackStatus(player, id) \
17154 criAtomExPlayback_GetStatus(id)
17155 #define criAtomExVoicePool_SetDefaultHcaMxVoicePoolConfig(p_config) \
17156 criAtomExVoicePool_SetDefaultConfigForHcaMxVoicePool(p_config)
17157 #define criAtomEx_RegisterAcfFromConfig(config, work, work_size) \
17158 criAtomEx_RegisterAcfConfig(config, work, work_size)
17159 #define criAtomEx_CalculateWorkSizeForHcaMxVoicePool(p_config) \
17160 criAtomExVoicePool_CalculateWorkSizeForHcaMxVoicePool(p_config)
17161 #define criAtomEx_AllocateHcaMxVoicePool(p_config, work, work_size) \
17162 criAtomExVoicePool_AllocateHcaMxVoicePool(p_config, work, work_size)
17163 #define criAtomEx_FreeVoicePool(pool) \
17164 criAtomExVoicePool_Free(pool)
17165
17166 #define criAtomExPlayer_SetAisacById(player, control_id, control_value) \
17167 criAtomExPlayer_SetAisacControlById(player, control_id, control_value)
17168 #define criAtomExPlayer_SetAisacByName(player, control_name, control_value) \
17169 criAtomExPlayer_SetAisacControlByName(player, control_name, control_value)
17170 #define criAtomExPlayer_GetAisacById(player, control_id) \
17171 criAtomExPlayer_GetAisacControlById(player, control_id)
17172 #define criAtomExPlayer_GetAisacByName(player, control_name) \
17173 criAtomExPlayer_GetAisacControlByName(player,control_name)
17174 #define criAtomExPlayback_GetAisacById(playback_id, control_id, control_value) \
17175 criAtomExPlayback_GetAisacControlById(playback_id, control_id, control_value)
17176 #define criAtomExPlayback_GetAisacByName(playback_id, control_name, control_value) \
17177 criAtomExPlayback_GetAisacControlByName(playback_id, control_name, control_value)
17178 #define criAtomExCategory_SetAisacById(id, control_id, control_value) \
17179 criAtomExCategory_SetAisacControlById(id, control_id, control_value)
17180 #define criAtomExCategory_SetAisacByName(name, control_name, control_value) \
17181 criAtomExCategory_SetAisacControlByName(name, control_name, control_value)
17182 #define criAtomExPlayer_SetPan(player, ch, pan) \
17183 criAtomExPlayer_SetPanAdx1Compatible((player), (ch), (pan))
17184 #define criAtomEx3dSource_SetListenerBasedAngleAisacControlId(ex_3d_source, aisac_control_id) \
17185 criAtomEx3dSource_SetListenerBasedAzimuthAngleAisacControlId((ex_3d_source), (aisac_control_id))
17186 #define criAtomEx3dSource_SetSourceBasedAngleAisacControlId(ex_3d_source, aisac_control_id) \
17187 criAtomEx3dSource_SetSourceBasedAzimuthAngleAisacControlId((ex_3d_source), (aisac_control_id))
17188
17189 #define criAtomEx_SetDownmixMode(downmix_mode)
17190
17191 #define CRIATOMEXPLAYBACK_STATUS_STOP ((CriAtomExPlaybackStatus)0)
17192 #define CRIATOMEXPLAYBACK_STATUS_PLAYEND (CRIATOMEXPLAYBACK_STATUS_REMOVED)
17193 #define CRIATOMEXPLAYBACK_STATUS_ERROR ((CriAtomExPlaybackStatus)4)
17194 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_NONE (CRIATOMEX_SOURCE_TYPE_NONE)
17195 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_CUE_ID (CRIATOMEX_SOURCE_TYPE_CUE_ID)
17196 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_CUE_NAME (CRIATOMEX_SOURCE_TYPE_CUE_NAME)
17197 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_CUE_INDEX (CRIATOMEX_SOURCE_TYPE_CUE_INDEX)
17198 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_DATA (CRIATOMEX_SOURCE_TYPE_DATA)
17199 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_FILE (CRIATOMEX_SOURCE_TYPE_FILE)
17200 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_CONTENT_ID (CRIATOMEX_SOURCE_TYPE_CONTENT_ID)
17201 #define CRIATOMEXPLAYBACK_SOURCE_TYPE_WAVE_ID (CRIATOMEX_SOURCE_TYPE_WAVE_ID)
17202 #define CRIATOMEXPLAYER_ALLOCATE_VOICE_ONCE (CRIATOMEX_ALLOCATE_VOICE_ONCE)
17203 #define CRIATOMEXPLAYER_RETRY_VOICE_ALLOCATION (CRIATOMEX_RETRY_VOICE_ALLOCATION)
17204
17205 #ifdef __cplusplus
17206 extern "C" {
17207 #endif
17208
17212 #define criAtomEx_SetDefaultConfigForAcf(p_config) \
17213 {\
17214 (p_config)->num_groups = 0;\
17215 (p_config)->voices_per_group = NULL;\
17216 (p_config)->num_category_groups = 8;\
17217 (p_config)->num_categories = 64;\
17218 }
17219
17224 typedef struct CriAtomExAcfConfigTag {
17225 CriSint32 num_groups;
17226 const CriSint32 *voices_per_group;
17227 CriSint32 num_category_groups;
17228 CriSint32 num_categories;
17229 } CriAtomExAcfConfig;
17230
17236 void CRIAPI criAtomExHcaMx_SetBusSendLevel(
17237 CriSint32 mixer_id, CriSint32 bus_index, CriFloat32 level);
17238
17244 void CRIAPI criAtomExPlayer_SetBusSendLevel(
17245 CriAtomExPlayerHn player, CriSint32 bus_index, CriFloat32 level);
17246
17252 void CRIAPI criAtomExPlayer_SetBusSendLevelOffset(
17253 CriAtomExPlayerHn player, CriSint32 bus_index, CriFloat32 level_offset);
17254
17260 void CRIAPI criAtomEx_GetNumUsedVirtualVoices(CriSint32 *cur_num, CriSint32 *limit);
17261
17267 void CRIAPI criAtomEx_GetNumUsedSequences(CriSint32 *cur_num, CriSint32 *limit);
17268
17274 void CRIAPI criAtomEx_GetNumUsedSequenceTracks(CriSint32 *cur_num, CriSint32 *limit);
17275
17281 void CRIAPI criAtomEx_GetNumUsedSequenceTrackItems(CriSint32 *cur_num, CriSint32 *limit);
17282
17289 void CRIAPI criAtomEx3dListener_SetDistanceFactor(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 distance_factor);
17290
17296 void CRIAPI criAtomEx_GetNumUsedAisacAutoModulations(CriSint32 *cur_num, CriSint32 *limit);
17297
17303 void CRIAPI criAtomEx3dSource_SetConeOrientation(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *cone_orient);
17304
17310 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfConfig(
17311 const CriAtomExAcfConfig *config);
17312
17318 void CRIAPI criAtomEx_RegisterAcfConfig(
17319 const CriAtomExAcfConfig *config, void *work, CriSint32 work_size);
17320
17326 void CRIAPI criAtomExPlayer_SetSequencePrepareTime(
17327 CriAtomExPlayerHn player, CriUint32 seq_prep_time_ms);
17328
17329 #ifdef __cplusplus
17330 }
17331 #endif
17332
17337 #endif
17338
17339 E:/j/workspace/ADX2/0S_405_BuildManual_Public/p4ws/CriMovieDepot/crimw/dev/dev_libs/CriAtom2/src/CriAtomEx/cri_atom_ex.h