説明を見る。 1
2
3
4
5
6
7
8
9
10
11
16
17
18 #ifndef CRI_INCL_CRI_ATOM_EX_H
19 #define CRI_INCL_CRI_ATOM_EX_H
20
21
22
23
24
25 #include <cri_le_xpt.h>
26 #include <cri_le_atom.h>
27 #include <cri_le_file_system.h>
28
29
30
31
32
33
34
35 #define CRIATOMEX_VERSION (0x02142600)
36 #define CRIATOMEX_VER_NUM "2.14.26"
37 #define CRIATOMEX_VER_NAME "CRI AtomEx(LE)"
38 #define CRIATOMEX_VER_OPTION
39
40
41
42
51 #define CRIATOMEX_MAX_VIRTUAL_VOICES (32767)
52
53
54
55
63 #define CRIATOMEX_INVALID_AISAC_CONTROL_ID (0xffff)
64
72 #define CRIATOMEXACF_MAX_BUSES (64)
73
81 #define CRIATOMEXACF_MAX_FXES (8)
82
90 #define CRIATOMEXACF_INVALID_CUE_LIMITS (0xffffffff)
91
102 #define CRIATOMEXACF_MAX_NAME_STRING_COUNT (64)
103
104
105
106
116 #define CRIATOMEX_DEFAULT_VOICES_PER_POOL (8)
117
118
119
120
132 #define CRIATOMEXPLAYER_NO_GROUP_LIMITATION (-1)
133
139 #define CRIATOMEXPLAYER_NO_LOOP_LIMITATION (CRIATOMPLAYER_NO_LOOP_LIMITATION)
140 #define CRIATOMEXPLAYER_IGNORE_LOOP (CRIATOMPLAYER_IGNORE_LOOP)
141 #define CRIATOMEXPLAYER_FORCE_LOOP (CRIATOMPLAYER_FORCE_LOOP)
150 #define CRIATOMEXPLAYER_MAX_ASR_RACKS (8)
151
152
153
154
170 #define CRIATOMEX_INVALID_PLAYBACK_ID (0xFFFFFFFF)
171
181 #define CRIATOMEX_INVALID_BLOCK_INDEX (0xFFFFFFFF)
182
183
184
185
195 #define CRIATOMEX_IGNORE_FADE_OUT (-1)
196
197
198
199
207 #define CRIATOMEXDBAS_ILLEGAL_ID (CRIATOMDBAS_ILLEGAL_ID)
208
209
210
211
219 #define CRIATOMEX_STREAMING_CACHE_ILLEGAL_ID (CRIATOM_STREAMING_CACHE_ILLEGAL_ID)
220
221
222
223
224
225
226
227
259 #define criAtomEx_SetUserAllocator(p_malloc_func, p_free_func, p_obj) \
260 criAtom_SetUserAllocator((p_malloc_func), (p_free_func), (p_obj))
261
272 #define criAtomEx_SetDefaultConfig(p_config) \
273 {\
274 (p_config)->thread_model = CRIATOMEX_THREAD_MODEL_MULTI;\
275 (p_config)->server_frequency = 60.0f;\
276 (p_config)->parameter_update_interval = 1;\
277 (p_config)->enable_atom_sound_disabled_mode = CRI_FALSE;\
278 (p_config)->max_virtual_voices = 16;\
279 (p_config)->max_parameter_blocks = 1024;\
280 (p_config)->max_voice_limit_groups = 16;\
281 (p_config)->max_categories = 16;\
282 (p_config)->max_aisacs = 8;\
283 (p_config)->categories_per_playback = 4;\
284 (p_config)->max_sequences = (p_config)->max_virtual_voices;\
285 (p_config)->max_tracks = (p_config)->max_virtual_voices * 2;\
286 (p_config)->max_track_items = (p_config)->max_virtual_voices * 2;\
287 (p_config)->max_aisac_auto_modulations = 0;\
288 (p_config)->max_pitch = 2400.0f;\
289 (p_config)->max_faders = 4;\
290 (p_config)->coordinate_system = CRIATOMEX_COORDINATE_SYSTEM_LEFT_HANDED;\
291 (p_config)->rng_if = NULL;\
292 (p_config)->fs_config = NULL;\
293 (p_config)->acf_info = NULL;\
294 (p_config)->context = NULL;\
295 (p_config)->version = CRI_ATOM_VERSION;\
296 (p_config)->version_ex = CRIATOMEX_VERSION;\
297 }
298
339 #define criAtomEx_AttachPerformanceMonitor() criAtom_AttachPerformanceMonitor()
340
352 #define criAtomEx_DetachPerformanceMonitor() criAtom_DetachPerformanceMonitor()
353
364 #define criAtomEx_ResetPerformanceMonitor() criAtom_ResetPerformanceMonitor()
365
375 #define criAtomEx_GetPerformanceInfo(p_info) criAtom_GetPerformanceInfo(p_info)
376
391 #define criAtomEx_SetChannelMapping(nch, type) \
392 criAtom_SetChannelMapping((nch), (type))
393
405 #define criAtomEx_CalculateAdxBitrate(num_channels, sampling_rate) \
406 criAtom_CalculateAdxBitrate(num_channels, sampling_rate)
407
422 #define criAtomEx_CalculateHcaBitrate(num_channels, sampling_rate, quality) \
423 criAtom_CalculateHcaBitrate(num_channels, sampling_rate, quality)
424
439 #define criAtomEx_CalculateHcaMxBitrate(num_channels, sampling_rate, quality) \
440 criAtom_CalculateHcaMxBitrate(num_channels, sampling_rate, quality)
441
454 #define criAtomEx_CalculateWaveBitrate(num_channels, sampling_rate, num_bits) \
455 criAtom_CalculateWaveBitrate(num_channels, sampling_rate, num_bits)
456
469 #define criAtomEx_CalculateAiffBitrate(num_channels, sampling_rate, num_bits) \
470 criAtom_CalculateAiffBitrate(num_channels, sampling_rate, num_bits)
471
472
473
474
483 #define criAtomExHcaMx_SetDefaultConfig(p_config) \
484 {\
485 (p_config)->server_frequency = 60.0f;\
486 (p_config)->num_mixers = 1;\
487 (p_config)->max_voices = 16;\
488 (p_config)->max_input_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
489 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_OUTPUT_SAMPLING_RATE;\
490 (p_config)->output_channels = CRIATOM_DEFAULT_OUTPUT_CHANNELS;\
491 (p_config)->output_sampling_rate = CRIATOM_DEFAULT_OUTPUT_SAMPLING_RATE;\
492 (p_config)->sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
493 }
494
495
496
497
507 #define criAtomExVoicePool_SetDefaultConfigForStandardVoicePool(p_config) \
508 {\
509 (p_config)->identifier = 0;\
510 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
511 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
512 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
513 (p_config)->player_config.streaming_flag = CRI_FALSE;\
514 (p_config)->player_config.sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
515 (p_config)->player_config.decode_latency = CRIATOM_DEFAULT_DECODE_LATENCY;\
516 }
517
527 #define criAtomExVoicePool_SetDefaultConfigForAdxVoicePool(p_config) \
528 {\
529 (p_config)->identifier = 0;\
530 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
531 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
532 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
533 (p_config)->player_config.streaming_flag = CRI_FALSE;\
534 (p_config)->player_config.sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
535 (p_config)->player_config.decode_latency = CRIATOM_DEFAULT_DECODE_LATENCY;\
536 }
537
547 #define criAtomExVoicePool_SetDefaultConfigForHcaVoicePool(p_config) \
548 {\
549 (p_config)->identifier = 0;\
550 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
551 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
552 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
553 (p_config)->player_config.streaming_flag = CRI_FALSE;\
554 (p_config)->player_config.sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
555 (p_config)->player_config.decode_latency = CRIATOM_DEFAULT_DECODE_LATENCY;\
556 }
557
567 #define criAtomExVoicePool_SetDefaultConfigForHcaMxVoicePool(p_config) \
568 {\
569 (p_config)->identifier = 0;\
570 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
571 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
572 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
573 (p_config)->player_config.streaming_flag = CRI_FALSE;\
574 }
575
585 #define criAtomExVoicePool_SetDefaultConfigForWaveVoicePool(p_config) \
586 {\
587 (p_config)->identifier = 0;\
588 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
589 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
590 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
591 (p_config)->player_config.streaming_flag = CRI_FALSE;\
592 (p_config)->player_config.sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
593 (p_config)->player_config.decode_latency = CRIATOM_DEFAULT_DECODE_LATENCY;\
594 }
595
605 #define criAtomExVoicePool_SetDefaultConfigForAiffVoicePool(p_config) \
606 {\
607 (p_config)->identifier = 0;\
608 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
609 (p_config)->player_config.max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
610 (p_config)->player_config.max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
611 (p_config)->player_config.streaming_flag = CRI_FALSE;\
612 (p_config)->player_config.sound_renderer_type = CRIATOM_SOUND_RENDERER_DEFAULT;\
613 (p_config)->player_config.decode_latency = CRIATOM_DEFAULT_DECODE_LATENCY;\
614 }
615
625 #define criAtomExVoicePool_SetDefaultConfigForRawPcmVoicePool(p_config) \
626 {\
627 (p_config)->identifier = 0;\
628 (p_config)->num_voices = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
629 criAtomPlayer_SetDefaultConfigForRawPcmPlayer(&(p_config)->player_config);\
630 }
631
632
633
634
644 #define criAtomExPlayer_SetDefaultConfig(p_config) \
645 {\
646 (p_config)->voice_allocation_method = CRIATOMEX_ALLOCATE_VOICE_ONCE;\
647 (p_config)->max_path_strings = 1;\
648 (p_config)->max_path = 0;\
649 (p_config)->updates_time = CRI_TRUE;\
650 (p_config)->enable_audio_synced_timer = CRI_FALSE;\
651 (p_config)->max_aisacs = 8;\
652 }
653
654
655
656
666 #define criAtomExFader_SetDefaultConfig(p_config) \
667 {\
668 (p_config)->reserved = 0;\
669 }
670
671
672
673
683 #define criAtomExDbas_SetDefaultConfig(p_config) \
684 criAtomDbas_SetDefaultConfig(p_config)
685
704 #define criAtomExDbas_CalculateWorkSize(config) \
705 criAtomDbas_CalculateWorkSize(config)
706
725 #define criAtomExDbas_Create(config, work, work_size) \
726 criAtomDbas_Create((config), (work), (work_size))
727
736 #define criAtomExDbas_Destroy(atom_dbas_id) \
737 criAtomDbas_Destroy(atom_dbas_id);
738
765 #define criAtomExDbas_GetStreamingPlayerHandles(dbas_id, players, length) \
766 criAtomDbas_GetStreamingPlayerHandles((dbas_id), (players), (length))
767
768
769
770
781 #define criAtomExStreamingCache_SetDefaultConfig(p_config) \
782 criAtomStreamingCache_SetDefaultConfig(p_config)
783
796 #define criAtomExStreamingCache_CalculateWorkSize(p_config) \
797 criAtomStreamingCache_CalculateWorkSize(p_config)
798
821 #define criAtomExStreamingCache_Create(config, work, work_size) \
822 criAtomStreamingCache_Create((config), (work), (work_size));
823
835 #define criAtomExStreamingCache_Destroy(stm_cache_id) \
836 criAtomStreamingCache_Destroy(stm_cache_id)
837
852 #define criAtomExStreamingCache_Clear(cache_id) \
853 criAtomStreamingCache_Clear(cache_id)
854
870 #define criAtomExStreamingCache_IsCachedWaveId(stm_cache_id, awb, id) \
871 criAtomStreamingCache_IsCachedWaveId((stm_cache_id), (awb), (id))
872
886 #define criAtomExStreamingCache_IsCachedFile(stm_cache_id, src_binder, path) \
887 criAtomStreamingCache_IsCachedFile((stm_cache_id), (src_binder), (path))
888
889
890
891
901 #define criAtomEx3dSource_SetDefaultConfig(p_config) \
902 {\
903 (p_config)->enable_voice_priority_decay = CRI_FALSE;\
904 }
905
915 #define criAtomEx3dSourceList_SetDefaultConfig(p_config) \
916 {\
917 (p_config)->reserved = 0;\
918 }
919
929 #define criAtomEx3dListener_SetDefaultConfig(p_config) \
930 {\
931 (p_config)->reserved = 0;\
932 }
933
955 #define criAtomEx3dSource_SetMinMaxDistance(ex_3d_source, min_attenuation_distance, max_attenuation_distance) \
956 criAtomEx3dSource_SetMinMaxAttenuationDistance((ex_3d_source), (min_attenuation_distance), (max_attenuation_distance))
957
976 #define criAtomEx3dSource_ChangeDefaultMinMaxDistance(min_attenuation_distance, max_attenuation_distance) \
977 criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance((min_attenuation_distance), (max_attenuation_distance))
978
979
980
981
982
992 #define criAtomExVoicePool_SetDefaultConfigForDspPitchShifter(p_config) \
993 {\
994 (p_config)->num_dsp = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
995 (p_config)->max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
996 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
997 (p_config)->specific.mode = 0;\
998 (p_config)->specific.window_size = 1024;\
999 (p_config)->specific.overlap_times = 4;\
1000 }
1001
1011 #define criAtomExVoicePool_SetDefaultConfigForDspTimeStretch(p_config) \
1012 {\
1013 (p_config)->num_dsp = CRIATOMEX_DEFAULT_VOICES_PER_POOL;\
1014 (p_config)->max_channels = CRIATOM_DEFAULT_INPUT_MAX_CHANNELS;\
1015 (p_config)->max_sampling_rate = CRIATOM_DEFAULT_INPUT_MAX_SAMPLING_RATE;\
1016 (p_config)->specific.reserved = 0;\
1017 }
1018
1019
1020
1021
1032 #define criAtomExTween_SetDefaultConfig(p_config) \
1033 {\
1034 (p_config)->id.parameter_id = CRIATOMEX_PARAMETER_ID_VOLUME;\
1035 (p_config)->parameter_type = CRIATOMEX_PARAMETER_TYPE_BASIC;\
1036 }
1037
1038
1039
1040
1050 #define criAtomExSoundObject_SetDefaultConfig(p_config) \
1051 {\
1052 (p_config)->enable_voice_limit_scope = CRI_FALSE;\
1053 (p_config)->enable_category_cue_limit_scope = CRI_FALSE;\
1054 }
1055
1056
1057
1058
1059
1060
1061
1062
1070 typedef CriAtomMallocFunc CriAtomExMallocFunc;
1071
1079 typedef CriAtomFreeFunc CriAtomExFreeFunc;
1080
1090 typedef enum CriAtomExThreadModelTag {
1098 CRIATOMEX_THREAD_MODEL_MULTI = 0,
1099
1110 CRIATOMEX_THREAD_MODEL_MULTI_USER_DRIVEN = 3,
1111
1119 CRIATOMEX_THREAD_MODEL_USER_MULTI = 1,
1120
1129 CRIATOMEX_THREAD_MODEL_SINGLE = 2,
1130
1131
1132 CRIATOMEX_THREAD_MODEL_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1133 } CriAtomExThreadModel;
1134
1144 typedef enum CriAtomExCoordinateSystemTag {
1150 CRIATOMEX_COORDINATE_SYSTEM_LEFT_HANDED = 0,
1151
1157 CRIATOMEX_COORDINATE_SYSTEM_RIGHT_HANDED = 1,
1158
1159
1160 CRIATOMEX_COORDINATE_SYSTEM_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1161 } CriAtomExCoordinateSystem;
1162
1172 typedef enum CriAtomExAcfLocationInfoTypeTag {
1173 CRIATOMEX_ACF_LOCATION_INFO_TYPE_NONE = 0,
1174 CRIATOMEX_ACF_LOCATION_INFO_TYPE_NAME,
1175 CRIATOMEX_ACF_LOCATION_INFO_TYPE_ID,
1176 CRIATOMEX_ACF_LOCATION_INFO_TYPE_DATA,
1177 CRIATOMEX_ACF_LOCATION_INFO_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1178 } CriAtomExAcfLocationInfoType;
1179
1184 typedef void *CriAtomExRngHn;
1185
1190 typedef struct CriAtomExRngInterfaceTag {
1197 CriSint32 (*CalculateWorkSize)(void);
1198
1208 CriAtomExRngHn (*Create)(void* work, CriSint32 work_size);
1209
1216 void (*Destroy)(CriAtomExRngHn rng);
1217
1228 CriSint32 (*Generate)(CriAtomExRngHn rng, CriSint32 min, CriSint32 max);
1229
1237 void (*SetSeed)(CriAtomExRngHn rng, CriUint32 seed);
1238
1239 } CriAtomExRngInterface;
1240
1268 typedef struct CriAtomExAcfRegistrationInfoTag {
1270 CriAtomExAcfLocationInfoType type;
1271
1273 union CriAtomExAcfLocationInfoTag {
1275 struct CriAtomExAcfLocationInfoNameTag {
1276 CriFsBinderHn binder;
1277 const CriChar8 *path;
1278 } name;
1280 struct CriAtomExAcfLocationInfoIdTag {
1281 CriFsBinderHn binder;
1282 CriSint32 id;
1283 } id;
1285 struct CriAtomExAcfLocationInfoDataTag {
1286 void *buffer;
1287 CriSint32 size;
1288 } data;
1289 } info;
1290 } CriAtomExAcfRegistrationInfo;
1291
1311 typedef struct CriAtomExConfigTag {
1318 CriAtomExThreadModel thread_model;
1319
1371 CriFloat32 server_frequency;
1372
1400 CriSint32 parameter_update_interval;
1401
1413 CriBool enable_atom_sound_disabled_mode;
1414
1436 CriSint32 max_virtual_voices;
1437
1455 CriSint32 max_parameter_blocks;
1456
1469 CriSint32 max_voice_limit_groups;
1470
1482 CriSint32 max_categories;
1483
1492 CriUint8 max_aisacs;
1493
1506 CriSint32 categories_per_playback;
1507
1520 CriSint32 max_sequences;
1521
1534 CriUint32 max_tracks;
1535
1551 CriUint32 max_track_items;
1552
1559 CriUint32 max_aisac_auto_modulations;
1560
1589 CriFloat32 max_pitch;
1590
1597 CriUint32 max_faders;
1598
1604 CriAtomExCoordinateSystem coordinate_system;
1605
1612 const CriAtomExRngInterface *rng_if;
1613
1621 const CriFsConfig *fs_config;
1622
1643 const CriAtomExAcfRegistrationInfo *acf_info;
1644
1655 void *context;
1656
1665 CriUint32 version;
1666
1675 CriUint32 version_ex;
1676 } CriAtomExConfig;
1677
1686 typedef CriAtomPerformanceInfo CriAtomExPerformanceInfo;
1687
1696 typedef CriSint32 CriAtomExWaveId;
1697
1704 typedef CriSint32 CriAtomExVibrationId;
1705
1714 typedef CriAtomFormat CriAtomExFormat;
1715 #define CRIATOMEX_FORMAT_NONE (CRIATOM_FORMAT_NONE)
1716 #define CRIATOMEX_FORMAT_ADX (CRIATOM_FORMAT_ADX)
1717 #define CRIATOMEX_FORMAT_HCA (CRIATOM_FORMAT_HCA)
1718 #define CRIATOMEX_FORMAT_HCA_MX (CRIATOM_FORMAT_HCA_MX)
1719 #define CRIATOMEX_FORMAT_WAVE (CRIATOM_FORMAT_WAVE)
1720 #define CRIATOMEX_FORMAT_AIFF (CRIATOM_FORMAT_AIFF)
1721 #define CRIATOMEX_FORMAT_RAW_PCM (CRIATOM_FORMAT_RAW_PCM)
1722 #define CRIATOMEX_FORMAT_VIBRATION (CRIATOM_FORMAT_VIBRATION)
1723 #define CRIATOMEX_FORMAT_AUDIO_BUFFER (CRIATOM_FORMAT_AUDIO_BUFFER)
1724 #define CRIATOMEX_FORMAT_HW1 (CRIATOM_FORMAT_HW1)
1725 #define CRIATOMEX_FORMAT_HW2 (CRIATOM_FORMAT_HW2)
1739 typedef struct CriAtomExFormatInfoTag {
1740 CriAtomExFormat format;
1741 CriSint32 sampling_rate;
1742 CriSint64 num_samples;
1743 CriSint64 loop_offset;
1744 CriSint64 loop_length;
1745 CriSint32 num_channels;
1746 CriUint32 reserved[1];
1747 } CriAtomExFormatInfo;
1748
1758 typedef enum CriAtomExResumeModeTag {
1759 CRIATOMEX_RESUME_ALL_PLAYBACK = 0,
1760 CRIATOMEX_RESUME_PAUSED_PLAYBACK = 1,
1761 CRIATOMEX_RESUME_PREPARED_PLAYBACK = 2,
1762 CRIATOMEX_RESUME_MODE_RESERVED = 3,
1763 CRIATOMEX_RESUME_MODE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1764 } CriAtomExResumeMode;
1765
1774 typedef enum CriAtomExBiquadFilterTypeTag {
1775 CRIATOMEX_BIQUAD_FILTER_TYPE_OFF = 0,
1776 CRIATOMEX_BIQUAD_FILTER_TYPE_LOWPASS = 1,
1777 CRIATOMEX_BIQUAD_FILTER_TYPE_HIGHPASS = 2,
1778 CRIATOMEX_BIQUAD_FILTER_TYPE_NOTCH = 3,
1779 CRIATOMEX_BIQUAD_FILTER_TYPE_LOWSHELF = 4,
1780 CRIATOMEX_BIQUAD_FILTER_TYPE_HIGHSHELF = 5,
1781 CRIATOMEX_BIQUAD_FILTER_TYPE_PEAKING = 6,
1783
1784 CRIATOMEX_BIQUAD_FILTER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1785 } CriAtomExBiquadFilterType;
1786
1802 typedef enum CriAtomExSilentModeTag {
1808 CRIATOMEX_SILENT_MODE_NORMAL = 0,
1809
1815 CRIATOMEX_SILENT_MODE_STOP = 1,
1816
1822 CRIATOMEX_SILENT_MODE_VIRTUAL = 2,
1823
1829 CRIATOMEX_SILENT_MODE_VIRTUAL_RETRIGGER = 3,
1830
1831
1832 CRIATOMEX_SILENT_MODE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1833 } CriAtomExSilentMode;
1834
1843 typedef enum CriAtomExPanTypeTag {
1849 CRIATOMEX_PAN_TYPE_PAN3D = 0,
1855 CRIATOMEX_PAN_TYPE_3D_POS,
1862 CRIATOMEX_PAN_TYPE_AUTO,
1863
1864 CRIATOMEX_PAN_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1865 } CriAtomExPanType;
1866
1877 typedef enum CriAtomExPanSpeakerTypeTag {
1884 CRIATOMEX_PAN_SPEAKER_TYPE_4CH = 0,
1885
1891 CRIATOMEX_PAN_SPEAKER_TYPE_5CH = 1,
1892
1898 CRIATOMEX_PAN_SPEAKER_TYPE_6CH = 2,
1899
1905 CRIATOMEX_PAN_SPEAKER_TYPE_7CH = 3,
1906
1907
1908 CRIATOMEX_PAN_SPEAKER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1909 } CriAtomExPanSpeakerType;
1910
1919 typedef enum CriAtomExPanAngleTypeTag {
1930 CRIATOMEX_PAN_ANGLE_TYPE_OFFSET = 0,
1944 CRIATOMEX_PAN_ANGLE_TYPE_FIX = 1,
1950 CRIATOMEX_PAN_ANGLE_TYPE_AMBIENCE_MIX = 4,
1956 CRIATOMEX_PAN_ANGLE_TYPE_AMBIENCE_STRAIGHT = 5,
1957
1958
1959 CRIATOMEX_PAN_ANGLE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
1960 } CriAtomExPanAngleType;
1961
1970 typedef CriUint32 CriAtomExSpeakerSystem;
1971
1986 #define CRIATOMEX_SPEAKER_SYSTEM_SURROUND_5_1 (0)
1987
2004 #define CRIATOMEX_SPEAKER_SYSTEM_SURROUND_7_1 (1)
2005
2016 typedef CriSint32 CriAtomExBlockIndex;
2017
2026 typedef CriUint32 CriAtomExGameVariableId;
2027
2036 typedef struct CriAtomExGameVariableInfoTag {
2037 const CriChar8* name;
2038 CriAtomExGameVariableId id;
2039 CriFloat32 value;
2040 } CriAtomExGameVariableInfo;
2041
2049 typedef CriAtomStreamingInfo CriAtomExStreamingInfo;
2050
2057 typedef enum CriAtomExCharacterEncodingTag {
2058 CRIATOMEX_CHARACTER_ENCODING_UTF8 = 0,
2059 CRIATOMEX_CHARACTER_ENCODING_SJIS = 1,
2061
2062 CRIATOMEX_CHARACTER_ENCODING_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
2063 } CriAtomExCharacterEncoding;
2064
2071 typedef struct CriAtomExResourceUsageTag {
2072 CriUint32 use_count;
2073 CriUint32 limit;
2074 } CriAtomExResourceUsage;
2075
2076
2077
2078
2089 typedef struct CriAtomExDebugResourcesInfoTag {
2091 CriAtomExResourceUsage virtual_voice_usage;
2093 CriAtomExResourceUsage sequence_usage;
2095 CriAtomExResourceUsage sequence_track_usage;
2097 CriAtomExResourceUsage sequence_track_item_usage;
2098 } CriAtomExDebugResourcesInfo;
2099
2100
2101
2102
2118 typedef struct CriAtomExHcaMxConfigTag {
2128 CriFloat32 server_frequency;
2129
2145 CriSint32 num_mixers;
2146
2154 CriSint32 max_voices;
2155
2169 CriSint32 max_input_channels;
2170
2181 CriSint32 max_sampling_rate;
2182
2196 CriSint32 output_channels;
2197
2207 CriSint32 output_sampling_rate;
2208
2221 CriAtomSoundRendererType sound_renderer_type;
2222 } CriAtomExHcaMxConfig;
2223
2224
2225
2226
2234 typedef struct CriAtomExAcfInfoTag {
2235 const CriChar8* name;
2236 CriUint32 size;
2237 CriUint32 version;
2238 CriAtomExCharacterEncoding character_encoding;
2239 CriSint32 num_dsp_settings;
2240 CriSint32 num_categories;
2241 CriSint32 num_categories_per_playback;
2242 CriSint32 num_reacts;
2243 CriSint32 num_aisac_controls;
2244 CriSint32 num_global_aisacs;
2245 CriSint32 num_game_variables;
2246 CriSint32 max_buses_of_dsp_bus_settings;
2247 CriSint32 num_buses;
2248 CriSint32 num_voice_limit_groups;
2249 } CriAtomExAcfInfo;
2250
2259 typedef CriUint32 CriAtomExAisacControlId;
2260
2269 typedef struct CriAtomExAisacControlInfoTag {
2270 const CriChar8* name;
2271 CriAtomExAisacControlId id;
2272 } CriAtomExAisacControlInfo;
2273
2282 typedef struct CriAtomExAisacInfoTag {
2283 const CriChar8* name;
2284 CriBool default_control_flag;
2285 CriFloat32 default_control_value;
2286 CriAtomExAisacControlId control_id;
2287 const CriChar8* control_name;
2288 } CriAtomExAisacInfo;
2289
2298 typedef struct CriAtomExAcfDspSettingInfoTag {
2299 const CriChar8* name;
2300 CriUint16 bus_indexes[CRIATOMEXACF_MAX_BUSES];
2301 CriUint16 extend_bus_indexes[CRIATOMEXACF_MAX_BUSES];
2302 CriUint16 snapshot_start_index;
2303 CriUint8 num_buses;
2304 CriUint8 num_extend_buses;
2305 CriUint16 num_snapshots;
2306 CriUint16 snapshot_work_size;
2307 } CriAtomExAcfDspSettingInfo;
2308
2315 typedef struct CriAtomExAcfDspSettingSnapshotInfoTag {
2316 const CriChar8* name;
2317 CriUint8 num_buses;
2318 CriUint8 num_extend_buses;
2319 CriUint8 reserved[2];
2320 CriUint16 bus_indexes[CRIATOMEXACF_MAX_BUSES];
2321 CriUint16 extend_bus_indexes[CRIATOMEXACF_MAX_BUSES];
2322 } CriAtomExAcfDspSettingSnapshotInfo;
2323
2332 typedef struct CriAtomExAcfDspBusInfoTag {
2333 const CriChar8* name;
2334 CriFloat32 volume;
2335 CriFloat32 pan3d_volume;
2336 CriFloat32 pan3d_angle;
2337 CriFloat32 pan3d_distance;
2338 CriUint16 fx_indexes[CRIATOMEXACF_MAX_FXES];
2339 CriUint16 bus_link_indexes[CRIATOMEXACF_MAX_BUSES];
2340 CriUint16 bus_no;
2341 CriUint8 num_fxes;
2342 CriUint8 num_bus_links;
2343 } CriAtomExAcfDspBusInfo;
2344
2350 typedef enum CriAtomExAcfDspBusLinkTypeTag {
2351 CRIATOMEXACF_DSP_BUS_LINK_TYPE_PRE_VOLUME,
2352 CRIATOMEXACF_DSP_BUS_LINK_TYPE_POST_VOLUME,
2353 CRIATOMEXACF_DSP_BUS_LINK_TYPE_POST_PAN,
2354
2355 CRIATOMEXACF_DSP_BUS_LINK_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
2356 } CriAtomExAcfDspBusLinkType;
2357
2366 typedef struct CriAtomExAcfDspBusLinkInfoTag {
2367 CriAtomExAcfDspBusLinkType type;
2368 CriFloat32 send_level;
2369 CriUint16 bus_no;
2370 CriUint16 bus_id;
2371 } CriAtomExAcfDspBusLinkInfo;
2372
2378 typedef enum CriAtomExAcfAisacTypeTag {
2379 CRIATOMEXACF_AISAC_TYPE_NORMAL,
2380 CRIATOMEXACF_AISAC_TYPE_AUTO_MODULATION,
2381
2382 CRIATOMEXACF_AISAC_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
2383 } CriAtomExAcfAisacType;
2384
2385
2397 typedef struct CriAtomExGlobalAisacInfoTag {
2398 const CriChar8* name;
2399 CriUint16 index;
2400 CriUint16 num_graphs;
2401 CriAtomExAcfAisacType type;
2402 CriFloat32 random_range;
2403 CriUint16 control_id;
2404 CriUint16 dummy;
2405 } CriAtomExGlobalAisacInfo;
2406
2407
2415 typedef enum CriAtomExAisacGraphTypeTag {
2416 CRIATOMEX_AISAC_GRAPH_TYPE_NON = 0,
2417 CRIATOMEX_AISAC_GRAPH_TYPE_VOLUME,
2418 CRIATOMEX_AISAC_GRAPH_TYPE_PITCH,
2419 CRIATOMEX_AISAC_GRAPH_TYPE_BANDPASS_HI,
2420 CRIATOMEX_AISAC_GRAPH_TYPE_BANDPASS_LOW,
2421 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_FREQ,
2422 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_Q,
2423 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_0_SEND,
2424 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_1_SEND,
2425 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_2_SEND,
2426 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_3_SEND,
2427 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_4_SEND,
2428 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_5_SEND,
2429 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_6_SEND,
2430 CRIATOMEX_AISAC_GRAPH_TYPE_BUS_7_SEND,
2431 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_ANGLE,
2432 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_VOLUME,
2433 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_INTERIOR_DISTANCE,
2434 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_CENTER,
2435 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_LFE,
2436 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_0,
2437 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_1,
2438 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_2,
2439 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_3,
2440 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_4,
2441 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_5,
2442 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_6,
2443 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_7,
2444 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_8,
2445 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_9,
2446 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_10,
2447 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_11,
2448 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_12,
2449 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_13,
2450 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_14,
2451 CRIATOMEX_AISAC_GRAPH_TYPE_AISAC_15,
2452 CRIATOMEX_AISAC_GRAPH_TYPE_PRIORITY,
2453 CRIATOMEX_AISAC_GRAPH_TYPE_PRE_DELAY_TIME,
2454 CRIATOMEX_AISAC_GRAPH_TYPE_BIQUAD_GAIN,
2455 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_MIXDOWN_CENTER,
2456 CRIATOMEX_AISAC_GRAPH_TYPE_PAN3D_MIXDOWN_LFE,
2457 CRIATOMEX_AISAC_GRAPH_TYPE_EG_ATTACK,
2458 CRIATOMEX_AISAC_GRAPH_TYPE_EG_RELEASE,
2459 CRIATOMEX_AISAC_GRAPH_TYPE_PLAYBACK_RATIO,
2460 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_L,
2461 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_R,
2462 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_CENTER,
2463 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_LFE,
2464 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_SL,
2465 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_SR,
2466 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_EX1,
2467 CRIATOMEX_AISAC_GRAPH_TYPE_DRY_SEND_EX2,
2468 CRIATOMEX_AISAC_GRAPH_TYPE_PAN_SPREAD,
2470
2471 CRIATOMEX_AISAC_GRAPH_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
2472 } CriAtomExAisacGraphType;
2473
2482 typedef struct CriAtomExAisacGraphInfoTag {
2483 CriAtomExAisacGraphType type;
2484 } CriAtomExAisacGraphInfo;
2485
2495 typedef struct CriAtomExSelectorInfoTag {
2496 const CriChar8* name;
2497 CriUint16 index;
2498 CriUint16 num_labels;
2499 CriUint16 global_label_index;
2500 } CriAtomExSelectorInfo;
2501
2510 typedef struct CriAtomExSelectorLabelInfoTag {
2511 const CriChar8* selector_name;
2512 const CriChar8* label_name;
2513 } CriAtomExSelectorLabelInfo;
2514
2515
2516
2517
2526 typedef CriUint32 CriAtomExCategoryId;
2527
2534 #define CRIATOMEXCATEGORY_MAX_CATEGORIES_PER_PLAYBACK (16)
2535
2544 typedef struct CriAtomExCategoryInfoTag {
2545 CriUint32 group_no;
2546 CriUint32 id;
2547 const CriChar8* name;
2548 CriUint32 num_cue_limits;
2549 CriFloat32 volume;
2550 } CriAtomExCategoryInfo;
2551
2552
2553
2554
2555 struct CriAtomExAcbTag;
2556 typedef struct CriAtomExAcbTag CriAtomExAcbObj;
2566 typedef CriAtomExAcbObj *CriAtomExAcbHn;
2567
2576 typedef CriSint32 CriAtomExCueId;
2577
2588 typedef CriSint32 CriAtomExCueIndex;
2589
2597 typedef struct CriAtomExAcbInfoTag {
2598 const CriChar8* name;
2599 CriUint32 size;
2600 CriUint32 version;
2601 CriAtomExCharacterEncoding character_encoding;
2602 CriFloat32 volume;
2603 CriSint32 num_cues;
2604 } CriAtomExAcbInfo;
2605
2613
2614 typedef struct CriAtomExWaveformInfoTag {
2615 CriAtomExWaveId wave_id;
2616 CriAtomExFormat format;
2617 CriSint32 sampling_rate;
2618 CriSint32 num_channels;
2619 CriSint64 num_samples;
2620 CriBool streaming_flag;
2621 CriUint32 reserved[1];
2622 } CriAtomExWaveformInfo;
2623
2629 typedef enum CriAtomExAcbCueTypeTag {
2630 CRIATOMEXACB_CUE_TYPE_POLYPHONIC = (0),
2631 CRIATOMEXACB_CUE_TYPE_SEQUENTIAL,
2632 CRIATOMEXACB_CUE_TYPE_SHUFFLE,
2633 CRIATOMEXACB_CUE_TYPE_RANDOM,
2634 CRIATOMEXACB_CUE_TYPE_RANDOM_NO_REPEAT,
2635 CRIATOMEXACB_CUE_TYPE_SWITCH_GAME_VARIABLE,
2636 CRIATOMEXACB_CUE_TYPE_COMBO_SEQUENTIAL,
2637 CRIATOMEXACB_CUE_TYPE_SWITCH_SELECTOR,
2638 CRIATOMEXACB_CUE_TYPE_TRACK_TRANSITION_BY_SELECTOR,
2639
2640 CRIATOMEXACB_CUE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
2641 } CriAtomExAcbCueType;
2642
2650 typedef struct CriAtomExCuePos3dInfoTag {
2651 CriFloat32 cone_inside_angle;
2652 CriFloat32 cone_outside_angle;
2653 CriFloat32 min_distance;
2654 CriFloat32 max_distance;
2655 CriFloat32 source_radius;
2656 CriFloat32 interior_distance;
2657 CriFloat32 doppler_factor;
2658 CriUint16 distance_aisac_control;
2659 CriUint16 listener_base_angle_aisac_control;
2660 CriUint16 source_base_angle_aisac_control;
2661 CriUint16 reserved[1];
2662 } CriAtomExCuePos3dInfo;
2663
2671 typedef struct CriAtomExCueInfoTag {
2672 CriAtomExCueId id;
2673 CriAtomExAcbCueType type;
2674 const CriChar8* name;
2675 const CriChar8* user_data;
2676 CriSint64 length;
2677 CriUint16 categories[CRIATOMEXCATEGORY_MAX_CATEGORIES_PER_PLAYBACK];
2678 CriSint16 num_limits;
2679 CriUint16 num_blocks;
2680 CriUint16 num_tracks;
2681 CriUint16 reserved[1];
2682 CriUint8 priority;
2683 CriUint8 header_visibility;
2684 CriUint8 ignore_player_parameter;
2685 CriUint8 probability;
2686 CriAtomExCuePos3dInfo pos3d_info;
2687 CriAtomExGameVariableInfo game_variable_info;
2688 } CriAtomExCueInfo;
2689
2704 typedef CriBool (CRIAPI *CriAtomExAcbHandleCbFunc)(void *obj, CriAtomExAcbHn acb_hn);
2705
2725 typedef void (CRIAPI *CriAtomExAcbDetectionInGamePreviewDataCbFunc)(
2726 void *obj, const CriChar8* acb_name);
2727
2728
2729
2730
2731 struct CriAtomExVoicePoolTag;
2732 typedef struct CriAtomExVoicePoolTag CriAtomExVoicePoolObj;
2744 typedef struct CriAtomExVoicePoolTag *CriAtomExVoicePoolHn;
2745
2763 typedef CriUint32 CriAtomExVoicePoolIdentifier;
2764
2777 typedef struct CriAtomExStandardVoicePoolConfigTag {
2778 CriAtomExVoicePoolIdentifier identifier;
2779 CriSint32 num_voices;
2780 CriAtomStandardPlayerConfig player_config;
2781 } CriAtomExStandardVoicePoolConfig;
2782
2795 typedef struct CriAtomExAdxVoicePoolConfigTag {
2796 CriAtomExVoicePoolIdentifier identifier;
2797 CriSint32 num_voices;
2798 CriAtomAdxPlayerConfig player_config;
2799 } CriAtomExAdxVoicePoolConfig;
2800
2813 typedef struct CriAtomExHcaVoicePoolConfigTag {
2814 CriAtomExVoicePoolIdentifier identifier;
2815 CriSint32 num_voices;
2816 CriAtomHcaPlayerConfig player_config;
2817 } CriAtomExHcaVoicePoolConfig;
2818
2831 typedef struct CriAtomExHcaMxVoicePoolConfigTag {
2832 CriAtomExVoicePoolIdentifier identifier;
2833 CriSint32 num_voices;
2834 CriAtomHcaMxPlayerConfig player_config;
2835 } CriAtomExHcaMxVoicePoolConfig;
2836
2849 typedef struct CriAtomExWaveVoicePoolConfigTag {
2850 CriAtomExVoicePoolIdentifier identifier;
2851 CriSint32 num_voices;
2852 CriAtomWavePlayerConfig player_config;
2853 } CriAtomExWaveVoicePoolConfig;
2854
2867 typedef struct CriAtomExAiffVoicePoolConfigTag {
2868 CriAtomExVoicePoolIdentifier identifier;
2869 CriSint32 num_voices;
2870 CriAtomAiffPlayerConfig player_config;
2871 } CriAtomExAiffVoicePoolConfig;
2872
2885 typedef struct CriAtomExRawPcmVoicePoolConfigTag {
2886 CriAtomExVoicePoolIdentifier identifier;
2887 CriSint32 num_voices;
2888 CriAtomRawPcmPlayerConfig player_config;
2889 } CriAtomExRawPcmVoicePoolConfig;
2890
2891
2892
2893
2902 typedef enum CriAtomExVoiceAllocationMethodTag {
2903 CRIATOMEX_ALLOCATE_VOICE_ONCE = 0,
2904 CRIATOMEX_RETRY_VOICE_ALLOCATION,
2905 CRIATOMEX_VOICE_ALLOCATION_METHOD_IS_4BYTE = 0x7FFFFFFF
2906 } CriAtomExVoiceAllocationMethod;
2907
2924 typedef struct CriAtomExPlayerConfigTag {
2965 CriAtomExVoiceAllocationMethod voice_allocation_method;
2966
2984 CriSint32 max_path_strings;
2985
3005 CriSint32 max_path;
3006
3015 CriUint8 max_aisacs;
3016
3028 CriBool updates_time;
3029
3045 CriBool enable_audio_synced_timer;
3046 } CriAtomExPlayerConfig;
3047
3048 struct CriAtomExPlayerTag;
3049 typedef struct CriAtomExPlayerTag CriAtomExPlayerObj;
3062 typedef CriAtomExPlayerObj *CriAtomExPlayerHn;
3063
3106 typedef enum CriAtomExPlayerStatusTag {
3107 CRIATOMEXPLAYER_STATUS_STOP = 0,
3108 CRIATOMEXPLAYER_STATUS_PREP,
3109 CRIATOMEXPLAYER_STATUS_PLAYING,
3110 CRIATOMEXPLAYER_STATUS_PLAYEND,
3111 CRIATOMEXPLAYER_STATUS_ERROR,
3112 CRIATOMEXPLAYER_STATUS_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3113 } CriAtomExPlayerStatus;
3114
3123 typedef enum CriAtomExVoiceControlMethodTag {
3124 CRIATOMEX_PREFER_LAST = 0,
3125 CRIATOMEX_PREFER_FIRST = 1,
3126 CRIATOMEX_PREFER_DATA = 2,
3127 CRIATOMEX_CONTROL_METHOD_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3128 } CriAtomExVoiceControlMethod;
3129
3138 typedef enum CriAtomExSpeakerIdTag {
3139 CRIATOMEX_SPEAKER_FRONT_LEFT = 0,
3140 CRIATOMEX_SPEAKER_FRONT_RIGHT = 1,
3141 CRIATOMEX_SPEAKER_FRONT_CENTER = 2,
3142 CRIATOMEX_SPEAKER_LOW_FREQUENCY = 3,
3143 CRIATOMEX_SPEAKER_SURROUND_LEFT = 4,
3144 CRIATOMEX_SPEAKER_SURROUND_RIGHT = 5,
3145 CRIATOMEX_SPEAKER_SURROUND_BACK_LEFT = 6,
3146 CRIATOMEX_SPEAKER_SURROUND_BACK_RIGHT = 7,
3148
3149 CRIATOMEX_SPEAKER_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3150 } CriAtomExSpeakerId;
3151
3162 typedef CriUint32 CriAtomExPlaybackId;
3163
3181 typedef void (CRIAPI *CriAtomExPlayerCbFunc)(void *obj, CriAtomExPlayerHn player);
3182
3255 typedef void (CRIAPI *CriAtomExPlayerDataRequestCbFunc)(
3256 void *obj, CriAtomExPlaybackId id, CriAtomPlayerHn player);
3257
3311 typedef void (CRIAPI *CriAtomExPlayerFilterCbFunc)(
3312 void *obj, CriAtomExPlaybackId id, CriAtomPcmFormat format,
3313 CriSint32 num_channels, CriSint32 num_samples, void *data[]);
3314
3340 typedef void (CRIAPI *CriAtomExPlayerBlockTransitionCbFunc)(
3341 void *obj, CriAtomExPlaybackId id, CriAtomExBlockIndex index);
3342
3347 typedef struct CriAtomExPlaybackTrackInfoTag {
3348 CriAtomExPlaybackId id;
3349 CriAtomExAcbCueType sequence_type;
3350 CriAtomExPlayerHn player;
3351 CriUint16 track_no;
3352 CriUint16 reserved[1];
3353 } CriAtomExPlaybackTrackInfo;
3354
3377 typedef void (CRIAPI *CriAtomExPlayerPlaybackTrackInfoNotificationCbFunc)(
3378 void *obj, const CriAtomExPlaybackTrackInfo* info);
3379
3389 typedef enum CriAtomExParameterIdTag {
3390 CRIATOMEX_PARAMETER_ID_VOLUME = 0,
3391 CRIATOMEX_PARAMETER_ID_PITCH = 1,
3392 CRIATOMEX_PARAMETER_ID_PAN3D_ANGLE = 2,
3393 CRIATOMEX_PARAMETER_ID_PAN3D_DISTANCE = 3,
3394 CRIATOMEX_PARAMETER_ID_PAN3D_VOLUME = 4,
3395 CRIATOMEX_PARAMETER_ID_PAN_TYPE = 5,
3396 CRIATOMEX_PARAMETER_ID_PAN_SPEAKER_TYPE = 6,
3397 CRIATOMEX_PARAMETER_ID_PAN_CH0 = 7,
3398 CRIATOMEX_PARAMETER_ID_PAN_CH1 = 8,
3399 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_0 = 9,
3400 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_1 = 10,
3401 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_2 = 11,
3402 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_3 = 12,
3403 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_4 = 13,
3404 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_5 = 14,
3405 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_6 = 15,
3406 CRIATOMEX_PARAMETER_ID_BUS_SEND_LEVEL_7 = 16,
3407 CRIATOMEX_PARAMETER_ID_BANDPASS_FILTER_COF_LOW = 17,
3408 CRIATOMEX_PARAMETER_ID_BANDPASS_FILTER_COF_HIGH = 18,
3409 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_TYPE = 19,
3410 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_FREQ = 20,
3411 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_Q = 21,
3412 CRIATOMEX_PARAMETER_ID_BIQUAD_FILTER_GAIN = 22,
3413 CRIATOMEX_PARAMETER_ID_ENVELOPE_ATTACK_TIME = 23,
3414 CRIATOMEX_PARAMETER_ID_ENVELOPE_HOLD_TIME = 24,
3415 CRIATOMEX_PARAMETER_ID_ENVELOPE_DECAY_TIME = 25,
3416 CRIATOMEX_PARAMETER_ID_ENVELOPE_RELEASE_TIME = 26,
3417 CRIATOMEX_PARAMETER_ID_ENVELOPE_SUSTAIN_LEVEL = 27,
3418 CRIATOMEX_PARAMETER_ID_START_TIME = 28,
3419 CRIATOMEX_PARAMETER_ID_PRIORITY = 31,
3420 CRIATOMEX_PARAMETER_ID_SILENT_MODE = 32,
3421 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_0 = 33,
3422 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_1 = 34,
3423 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_2 = 35,
3424 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_3 = 36,
3425 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_4 = 37,
3426 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_5 = 38,
3427 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_6 = 39,
3428 CRIATOMEX_PARAMETER_ID_DSP_PARAMETER_7 = 40,
3430
3431 CRIATOMEX_PARAMETER_ID_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3432 } CriAtomExParameterId;
3433
3434
3435
3436
3444 typedef enum CriAtomExSequecneEventTypeTag {
3450 CRIATOMEX_SEQUENCE_EVENT_TYPE_CALLBACK = 0,
3451
3452
3453 CRIATOMEX_SEQUENCE_EVENT_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3454 } CriAtomExSequecneEventType;
3455
3460 typedef struct CriAtomExSequenceEventInfoTag {
3461 CriUint64 position;
3462 CriAtomExPlayerHn player;
3463 const CriChar8* string;
3464 CriAtomExPlaybackId id;
3465 CriAtomExSequecneEventType type;
3466 CriUint32 value;
3467 CriUint32 reserved[1];
3468 } CriAtomExSequenceEventInfo;
3469
3487 typedef CriSint32 (CRIAPI *CriAtomExSequencerEventCbFunc)(void* obj, const CriAtomExSequenceEventInfo* info);
3488
3489
3490
3491
3496 typedef struct CriAtomExBeatSyncInfoTag {
3497 CriAtomExPlayerHn player;
3498 CriAtomExPlaybackId playback_id;
3499 CriUint32 bar_count;
3500 CriUint32 beat_count;
3501 CriFloat32 beat_progress;
3502 CriFloat32 bpm;
3503 } CriAtomExBeatSyncInfo;
3504
3522 typedef CriSint32 (CRIAPI *CriAtomExBeatSyncCbFunc)(void* obj, const CriAtomExBeatSyncInfo* info);
3523
3524
3525
3526
3554 typedef enum CriAtomExPlaybackStatusTag {
3555 CRIATOMEXPLAYBACK_STATUS_PREP = 1,
3556 CRIATOMEXPLAYBACK_STATUS_PLAYING,
3557 CRIATOMEXPLAYBACK_STATUS_REMOVED,
3558 CRIATOMEXPLAYBACK_STATUS_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3559 } CriAtomExPlaybackStatus;
3560
3568 typedef enum CriAtomExSourceTypeTag {
3569 CRIATOMEX_SOURCE_TYPE_NONE = 0,
3570 CRIATOMEX_SOURCE_TYPE_CUE_ID,
3571 CRIATOMEX_SOURCE_TYPE_CUE_NAME,
3572 CRIATOMEX_SOURCE_TYPE_CUE_INDEX,
3573 CRIATOMEX_SOURCE_TYPE_DATA,
3574 CRIATOMEX_SOURCE_TYPE_FILE,
3575 CRIATOMEX_SOURCE_TYPE_CONTENT_ID,
3576 CRIATOMEX_SOURCE_TYPE_WAVE_ID,
3577 CRIATOMEX_SOURCE_TYPE_VIBRATION_ID,
3578 CRIATOMEX_SOURCE_TYPE_SOUND_GENERATOR_ID,
3579 CRIATOMEX_SOURCE_TYPE_RAW_PCM_FLOAT_ID,
3580 CRIATOMEX_SOURCE_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
3581 } CriAtomExSourceType;
3582
3611 typedef struct CriAtomExSourceInfoTag {
3613 CriAtomExSourceType type;
3614
3616 union CriAtomExSourceInfoInfoTag {
3618 struct CriAtomExSourceInfoCueIdTag {
3620 CriAtomExAcbHn acb;
3622 CriAtomExCueId id;
3623 } cue_id;
3625 struct CriAtomExSourceInfoCueNameTag {
3627 CriAtomExAcbHn acb;
3629 const CriChar8 *name;
3630 } cue_name;
3632 struct CriAtomExSourceInfoCueIndexTag {
3634 CriAtomExAcbHn acb;
3636 CriAtomExCueIndex index;
3637 } cue_index;
3639 struct CriAtomExSourceInfoDataTag {
3641 void *buffer;
3643 CriSint32 size;
3644 } data;
3646 struct CriAtomExSourceInfoFileTag {
3648 CriFsBinderHn binder;
3650 const CriChar8 *path;
3651 } file;
3653 struct CriAtomExSourceInfoContentIdTag {
3655 CriFsBinderHn binder;
3657 CriSint32 id;
3658 } content_id;
3660 struct CriAtomExSourceInfoWaveIdTag {
3662 CriAtomAwbHn awb;
3664 CriAtomExWaveId id;
3665 } wave_id;
3667 struct CriAtomExSourceInfoVibrationIdTag {
3669 CriAtomExVibrationId id;
3670 } vibration_id;
3671 struct CriAtomExSourceInfoVibrationNameTag {
3673 const CriChar8 *name;
3674 } vibration_name;
3675
3676 struct CriAtomExSourceInfoSoundGeneratorParameterTag {
3678 CriFloat32 frequency;
3680 CriAtomWaveType wave_type;
3681 } sound_generator_parameter;
3682
3683 struct CriAtomExSourceInfoRawPcmFloatParameterTag {
3685 CriFloat32 *data;
3687 CriUint32 total_samples;
3688 } raw_pcm_float_parameter;
3689 } info;
3690 } CriAtomExSourceInfo;
3691
3692
3693
3694
3706 typedef struct CriAtomExFaderConfigTag {
3707 CriSint32 reserved;
3708 } CriAtomExFaderConfig;
3709
3710
3711
3712
3723 typedef CriAtomDbasId CriAtomExDbasId;
3724
3736 typedef CriAtomDbasConfig CriAtomExDbasConfig;
3737
3738
3739
3740
3749 typedef CriAtomStreamingCacheId CriAtomExStreamingCacheId;
3750
3765 typedef CriAtomStreamingCacheConfig CriAtomExStreamingCacheConfig;
3766
3767
3768
3769
3777 typedef struct CriAtomExVectorTag {
3778 CriFloat32 x;
3779 CriFloat32 y;
3780 CriFloat32 z;
3781 } CriAtomExVector;
3782
3793 typedef struct CriAtomEx3dSourceConfigTag {
3811 CriBool enable_voice_priority_decay;
3812 } CriAtomEx3dSourceConfig;
3813
3824 typedef struct CriAtomEx3dSourceListConfigTag {
3825 CriSint32 reserved;
3826 } CriAtomEx3dSourceListConfig;
3827
3838 typedef struct CriAtomEx3dListenerConfigTag {
3839 CriSint32 reserved;
3840 } CriAtomEx3dListenerConfig;
3841
3842 struct CriAtomEx3dSourceObjTag;
3843 typedef struct CriAtomEx3dSourceObjTag CriAtomEx3dSourceObj;
3854 typedef CriAtomEx3dSourceObj *CriAtomEx3dSourceHn;
3855
3856 struct CriAtomEx3dSourceListObjTag;
3857 typedef struct CriAtomEx3dSourceListObjTag CriAtomEx3dSourceListObj;
3866 typedef CriAtomEx3dSourceListObj *CriAtomEx3dSourceListHn;
3867
3868 struct CriAtomEx3dListenerObjTag;
3869 typedef struct CriAtomEx3dListenerObjTag CriAtomEx3dListenerObj;
3880 typedef CriAtomEx3dListenerObj *CriAtomEx3dListenerHn;
3881
3882
3883
3884
3885
3897 typedef struct CriAtomExDspPitchShifterConfigTag {
3903 CriSint32 num_dsp;
3904
3911 CriSint32 max_channels;
3912
3919 CriSint32 max_sampling_rate;
3920
3927 CriAtomDspPitchShifterConfig specific;
3928 } CriAtomExDspPitchShifterConfig;
3929
3941 typedef struct CriAtomExDspTimeStretchConfigTag {
3947 CriSint32 num_dsp;
3948
3955 CriSint32 max_channels;
3956
3963 CriSint32 max_sampling_rate;
3964
3971 CriAtomDspTimeStretchConfig specific;
3972 } CriAtomExDspTimeStretchConfig;
3973
3974
3975
3976
3984 typedef enum CriAtomExTweenParameterTypeTag {
3990 CRIATOMEX_PARAMETER_TYPE_BASIC,
3991
3997 CRIATOMEX_PARAMETER_TYPE_AISAC,
3998
3999
4000 CRIATOMEX_PARAMETER_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
4001 } CriAtomExTweenParameterType;
4002
4013 typedef struct CriAtomExTweenConfigTag {
4019 union CriAtomExTweenConfigParameterIdTag {
4025 CriAtomExParameterId parameter_id;
4026
4032 CriAtomExAisacControlId aisac_control_id;
4033 } id;
4034
4040 CriAtomExTweenParameterType parameter_type;
4041 } CriAtomExTweenConfig;
4042
4057 typedef struct CriAtomExTweenTag *CriAtomExTweenHn;
4058
4059
4060
4061
4070 typedef enum CriAtomExVoiceEventTag {
4076 CRIATOMEX_VOICE_EVENT_ALLOCATE = 0,
4077
4088 CRIATOMEX_VOICE_EVENT_ALLOCATE_AND_REMOVE,
4089
4099 CRIATOMEX_VOICE_EVENT_ALLOCATE_AND_REMOVE_IN_GROUP,
4100
4117 CRIATOMEX_VOICE_EVENT_ALOOCATE_AND_REMOVE_TWO,
4118
4126 CRIATOMEX_VOICE_EVENT_REJECT,
4127
4135 CRIATOMEX_VOICE_EVENT_REJECT_BY_GROUP_LIMIT,
4136
4143 CRIATOMEX_VOICE_EVENT_REMOVE,
4144
4145 CRIATOMEX_VOICE_EVENT_ENUM_IS_4BYTE = 0x7FFFFFFF
4146 } CriAtomExVoiceEvent;
4147
4156 typedef struct CriAtomExVoiceInfoDetailTag {
4157 CriAtomExPlaybackId playback_id;
4158 CriAtomExSourceInfo cue_info;
4159 CriAtomExSourceInfo wave_info;
4160 CriSint32 group_no;
4161 CriSint32 priority;
4162 CriAtomExVoiceControlMethod control_method;
4163 CriAtomExVoiceAllocationMethod allocation_method;
4164 CriUint32 identifier;
4165 CriAtomExFormat format;
4166 CriSint32 sampling_rate;
4167 CriSint32 num_channels;
4168 CriBool streaming_flag;
4169 CriAtomPlayerHn atom_player;
4170 } CriAtomExVoiceInfoDetail;
4171
4235 typedef void (CRIAPI *CriAtomExVoiceEventCbFunc)(
4236 void *obj, CriAtomExVoiceEvent voice_event,
4237 const CriAtomExVoiceInfoDetail *request,
4238 const CriAtomExVoiceInfoDetail *removed,
4239 const CriAtomExVoiceInfoDetail *removed_in_group);
4240
4255 typedef void (CRIAPI *CriAtomExVoiceInfoCbFunc)(
4256 void *obj, const CriAtomExVoiceInfoDetail *voice_info);
4257
4266 typedef struct CriAtomExMonitoringVoiceStopInfoTag {
4267 CriAtomExPlaybackId playback_id;
4268 CriAtomVoiceStopReason reason;
4269 CriAtomPlayerHn atom_player;
4270 } CriAtomExMonitoringVoiceStopInfo;
4271
4285 typedef void (CRIAPI *CriAtomExMonitoringVoiceStopCbFunc)(void *obj, CriAtomExMonitoringVoiceStopInfo* voice_stop);
4286
4287
4288
4289
4290
4295 typedef enum CriAtomExCueLinkTypeTag {
4296 CRIATOMEX_CUELINK_TYPE_STATIC = 0,
4297 CRIATOMEX_CUELINK_TYPE_DYNAMIC = 1,
4299
4300 CRIATOMEX_CUELINK_TYPE_ENUM_SIZE_IS_4BYTES = 0x7FFFFFFF
4301 } CriAtomExCueLinkType;
4302
4307 typedef struct CriAtomExCueLinkInfoTag {
4308 CriAtomExPlayerHn player;
4309 CriAtomExPlaybackId base_id;
4310 CriAtomExSourceInfo base_cue;
4311 CriAtomExPlaybackId target_id;
4312 CriAtomExSourceInfo target_cue;
4313 CriAtomExCueLinkType link_type;
4314 } CriAtomExCueLinkInfo;
4315
4333 typedef CriSint32 (CRIAPI *CriAtomExCueLinkCbFunc)(void* obj, const CriAtomExCueLinkInfo* info);
4334
4335
4336
4337
4345 typedef enum CriAtomExPlaybackCancelTypeTag {
4351 CRIATOMEX_PLAYBACK_CANCEL_TYPE_CUE_LIMIT = 0,
4352
4358 CRIATOMEX_PLAYBACK_CANCEL_TYPE_CATEGORY_CUE_LIMIT,
4359
4365 CRIATOMEX_PLAYBACK_CANCEL_TYPE_PROBABILITY,
4366
4372 CRIATOMEX_PLAYBACK_CANCEL_TYPE_STOP_BY_CUE_LIMIT,
4373
4379 CRIATOMEX_PLAYBACK_CANCEL_TYPE_SWITCH,
4380
4381
4382 CRIATOMEX_PLAYBACK_CANCEL_TYPE_ENUM_IS_4BYTE = 0x7FFFFFFF
4383 } CriAtomExPlaybackCancelType;
4384
4389 typedef struct CriAtomExPlaybackCancelInfoTag {
4390 CriAtomExPlaybackCancelType type;
4391 CriAtomExPlayerHn player;
4392 CriAtomExPlaybackId id;
4393 } CriAtomExPlaybackCancelInfo;
4394
4412 typedef void (CRIAPI *CriAtomExPlaybackCancelCbFunc)(void *obj, const CriAtomExPlaybackCancelInfo* info);
4413
4414
4415
4416
4421 typedef struct CriAtomExTrackTransitionBySelectorInfoTag {
4422 CriAtomExPlayerHn player;
4423 CriAtomExPlaybackId id;
4424 const CriChar8* selector;
4425 const CriChar8* label;
4426 } CriAtomExTrackTransitionBySelectorInfo;
4427
4446 typedef void (CRIAPI *CriAtomExTrackTransitionBySelectorCbFunc)(void *obj, const CriAtomExTrackTransitionBySelectorInfo* info);
4447
4448
4449
4450
4451
4468 typedef struct CriAtomExSoundObjectConfigTag {
4480 CriBool enable_voice_limit_scope;
4492 CriBool enable_category_cue_limit_scope;
4493 } CriAtomExSoundObjectConfig;
4494
4495 struct CriAtomExSoundObjectTag;
4496 typedef struct CriAtomExSoundObjectTag CriAtomExSoundObjectObj;
4520 typedef CriAtomExSoundObjectObj *CriAtomExSoundObjectHn;
4521
4522
4523
4524
4525
4526
4527
4528
4529
4530
4531 #ifdef __cplusplus
4532 extern "C" {
4533 #endif
4534
4535
4536
4537
4567 CriSint32 CRIAPI criAtomEx_CalculateWorkSize(const CriAtomExConfig *config);
4568
4730 CriBool CRIAPI criAtomEx_Initialize(
4731 const CriAtomExConfig *config, void *work, CriSint32 work_size);
4732
4742 void CRIAPI criAtomEx_Finalize(void);
4743
4754 CriBool CRIAPI criAtomEx_IsInitialized(void);
4755
4786 void CRIAPI criAtomEx_ExecuteMain(void);
4787
4808 void CRIAPI criAtomEx_ExecuteAudioProcess(void);
4809
4843 void CRIAPI criAtomEx_Lock(void);
4844
4852 void CRIAPI criAtomEx_Unlock(void);
4853
4862 CriUint64 CRIAPI criAtomEx_GetTimeMicro(void);
4863
4874 void CRIAPI criAtomEx_ResetTimer(void);
4875
4897 void CRIAPI criAtomEx_PauseTimer(CriBool sw);
4898
4964 void CRIAPI criAtomEx_SetConfigForWorkSizeCalculation(const CriAtomExConfig *config);
4965
4988 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfData(
4989 void *acf_data, CriSint32 acf_data_size);
4990
5025 void CRIAPI criAtomEx_RegisterAcfData(
5026 void *acf_data, CriSint32 acf_data_size, void *work, CriSint32 work_size);
5027
5053 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfFile(
5054 CriFsBinderHn binder, const CriChar8 *path);
5055
5072 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForRegisterAcfFileById(
5073 CriFsBinderHn binder, CriUint16 id);
5074
5128 CriBool CRIAPI criAtomEx_RegisterAcfFile(
5129 CriFsBinderHn binder, const CriChar8 *path, void *work, CriSint32 work_size);
5130
5150 CriBool CRIAPI criAtomEx_RegisterAcfFileById(
5151 CriFsBinderHn binder, CriUint16 id, void *work, CriSint32 work_size);
5152
5165 void CRIAPI criAtomEx_UnregisterAcf(void);
5166
5178 CriUint32 CRIAPI criAtomEx_GetAcfVersion(
5179 void *acf_data, CriSint32 acf_data_size, CriBool *flag);
5180
5212 CriUint32 CRIAPI criAtomEx_GetAcfVersionFromFile(
5213 CriFsBinderHn binder, const CriChar8 *path, void *work, CriSint32 work_size, CriBool *flag);
5214
5232 CriUint32 CRIAPI criAtomEx_GetAcfVersionFromFileById(
5233 CriFsBinderHn binder, CriUint16 id, void *work, CriSint32 work_size, CriBool *flag);
5234
5245 void CRIAPI criAtomEx_GetSupportedAcfVersion(
5246 CriUint32 *version_low, CriUint32 *version_high);
5247
5273 CriBool CRIAPI criAtomEx_AnalyzeAudioHeader(
5274 const void *buffer, CriSint32 buffer_size, CriAtomExFormatInfo *info);
5275
5287 void CRIAPI criAtomEx_SetRandomSeed(CriUint32 seed);
5288
5318 CriBool CRIAPI criAtomEx_IsDataPlaying(void *buffer, CriSint32 size);
5319
5338 #define criAtomEx_GetStreamingInfo(streaming_info) \
5339 criAtom_GetStreamingInfo(streaming_info)
5340
5364 #define criAtomEx_SetFreeTimeBufferingFlagForDefaultDevice(flag) \
5365 criAtom_SetFreeTimeBufferingFlagForDefaultDevice(flag)
5366
5386 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForDspBusSetting(
5387 const CriChar8 *setting);
5388
5421 CriSint32 CRIAPI criAtomEx_CalculateWorkSizeForDspBusSettingFromAcfData(
5422 void *acf_data, CriSint32 acf_buffer_size, const CriChar8 *setting_name);
5423
5453 void CRIAPI criAtomEx_AttachDspBusSetting(
5454 const CriChar8 *setting, void *work, CriSint32 work_size);
5455
5472 void CRIAPI criAtomEx_DetachDspBusSetting(void);
5473
5484 void CRIAPI criAtomEx_ApplyDspBusSnapshot(const CriChar8 *snapshot_name, CriSint32 time_ms);
5485
5496 const CriChar8* CRIAPI criAtomEx_GetAppliedDspBusSnapshotName(void);
5497
5520 void CRIAPI criAtomEx_SetCueLinkCallback(CriAtomExCueLinkCbFunc func, void* obj);
5521
5543 void CRIAPI criAtomEx_SetSpeakerAngles(CriFloat32 angle_l, CriFloat32 angle_r, CriFloat32 angle_sl, CriFloat32 angle_sr);
5544
5567 void CRIAPI criAtomEx_SetSpeakerAngleArray(CriAtomExSpeakerSystem speaker_system, const CriFloat32 *angle_array);
5568
5583 void CRIAPI criAtomEx_SetVirtualSpeakerAngleArray(CriAtomExSpeakerSystem speaker_system, const CriFloat32 *angle_array);
5584
5599 void CRIAPI criAtomEx_ControlVirtualSpeakerSetting(CriBool sw);
5600
5612 CriSint32 CRIAPI criAtomEx_GetNumGameVariables(void);
5613
5625 CriBool CRIAPI criAtomEx_GetGameVariableInfo(CriUint16 index, CriAtomExGameVariableInfo* info);
5626
5637 CriFloat32 CRIAPI criAtomEx_GetGameVariableById(CriAtomExGameVariableId id);
5638
5649 CriFloat32 CRIAPI criAtomEx_GetGameVariableByName(const CriChar8* name);
5650
5662 void CRIAPI criAtomEx_SetGameVariableById(CriAtomExGameVariableId id, CriFloat32 value);
5663
5675 void CRIAPI criAtomEx_SetGameVariableByName(const CriChar8* name, CriFloat32 value);
5676
5699 void CRIAPI criAtomEx_SetPlaybackCancelCallback(CriAtomExPlaybackCancelCbFunc func, void* obj);
5700
5713 void CRIAPI criAtomEx_ControlAcfConsistencyCheck(CriBool sw);
5714
5723 void CRIAPI criAtomEx_SetAcfConsistencyCheckErrorLevel(CriErrorLevel level);
5724
5747 void CRIAPI criAtomEx_SetTrackTransitionBySelectorCallback(CriAtomExTrackTransitionBySelectorCbFunc func, void* obj);
5748
5749
5750
5751
5762 void CRIAPI criAtomExDebug_GetResourcesInfo(CriAtomExDebugResourcesInfo *resources_info);
5763
5764
5765
5766
5795 CriSint32 CRIAPI criAtomExHcaMx_CalculateWorkSize(const CriAtomExHcaMxConfig *config);
5796
5844 void CRIAPI criAtomExHcaMx_SetConfigForWorkSizeCalculation(const CriAtomExHcaMxConfig *config);
5845
5877 void CRIAPI criAtomExHcaMx_Initialize(
5878 const CriAtomExHcaMxConfig *config, void *work, CriSint32 work_size);
5879
5897 void CRIAPI criAtomExHcaMx_Finalize(void);
5898
5912 void CRIAPI criAtomExHcaMx_SetBusSendLevelByName(
5913 CriSint32 mixer_id, const CriChar8* bus_name, CriFloat32 level);
5914
5929 void CRIAPI criAtomExHcaMx_SetFrequencyRatio(CriSint32 mixer_id, CriFloat32 ratio);
5930
5946 void CRIAPI criAtomExHcaMx_SetAsrRackId(CriSint32 mixer_id, CriSint32 rack_id);
5947
5948
5949
5950
5959 CriSint32 CRIAPI criAtomExAcf_GetNumAisacControls(void);
5960
5971 CriBool CRIAPI criAtomExAcf_GetAisacControlInfo(CriUint16 index, CriAtomExAisacControlInfo* info);
5972
5982 CriAtomExAisacControlId CRIAPI criAtomExAcf_GetAisacControlIdByName(const CriChar8* name);
5983
5993 const CriChar8 * CRIAPI criAtomExAcf_GetAisacControlNameById(CriAtomExAisacControlId id);
5994
6004 CriSint32 CRIAPI criAtomExAcf_GetNumDspSettings(void);
6005
6018 CriSint32 CRIAPI criAtomExAcf_GetNumDspSettingsFromAcfData(
6019 void *acf_data, CriSint32 acf_data_size);
6020
6033 const CriChar8 * CRIAPI criAtomExAcf_GetDspSettingNameByIndex(CriUint16 index);
6034
6049 const CriChar8 * CRIAPI criAtomExAcf_GetDspSettingNameByIndexFromAcfData(
6050 void *acf_data, CriSint32 acf_data_size, CriUint16 index);
6051
6063 CriBool CRIAPI criAtomExAcf_GetDspSettingInformation(const CriChar8* name, CriAtomExAcfDspSettingInfo* info);
6064
6078 CriBool CRIAPI criAtomExAcf_GetDspSettingSnapshotInformation(CriUint16 index, CriAtomExAcfDspSettingSnapshotInfo* info);
6079
6091 CriBool CRIAPI criAtomExAcf_GetDspBusInformation(CriUint16 index, CriAtomExAcfDspBusInfo* info);
6092
6107 CriUint32 CRIAPI criAtomExAcf_GetDspFxType(CriUint16 index);
6108
6121 const CriChar8* CRIAPI criAtomExAcf_GetDspFxName(CriUint16 index);
6122
6138 CriBool CRIAPI criAtomExAcf_GetDspFxParameters(CriUint16 index, void* parameters, CriSint32 size);
6139
6151 CriBool CRIAPI criAtomExAcf_GetDspBusLinkInformation(CriUint16 index, CriAtomExAcfDspBusLinkInfo* info);
6152
6165 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesFromAcfData(
6166 void *acf_data, CriSint32 acf_data_size);
6167
6175 CriSint32 CRIAPI criAtomExAcf_GetNumCategories(void);
6176
6189 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesPerPlaybackFromAcfData(
6190 void *acf_data, CriSint32 acf_data_size);
6191
6199 CriSint32 CRIAPI criAtomExAcf_GetNumCategoriesPerPlayback(void);
6200
6211 CriBool CRIAPI criAtomExAcf_GetCategoryInfo(CriUint16 index, CriAtomExCategoryInfo* info);
6212
6223 CriBool CRIAPI criAtomExAcf_GetCategoryInfoByName(const CriChar8* name, CriAtomExCategoryInfo* info);
6224
6235 CriBool CRIAPI criAtomExAcf_GetCategoryInfoById(CriUint32 id, CriAtomExCategoryInfo* info);
6236
6244 CriSint32 CRIAPI criAtomExAcf_GetNumGlobalAisacs(void);
6245
6256 CriBool CRIAPI criAtomExAcf_GetGlobalAisacInfo(CriUint16 index, CriAtomExGlobalAisacInfo* info);
6257
6268 CriBool CRIAPI criAtomExAcf_GetGlobalAisacInfoByName(const CriChar8* name, CriAtomExGlobalAisacInfo* info);
6269
6281 CriBool CRIAPI criAtomExAcf_GetGlobalAisacGraphInfo(
6282 const CriAtomExGlobalAisacInfo* aisac_info,
6283 CriUint16 graph_index,
6284 CriAtomExAisacGraphInfo* graph_info);
6285
6298 CriBool CRIAPI criAtomExAcf_GetGlobalAisacValue(
6299 const CriAtomExGlobalAisacInfo* aisac_info,
6300 CriFloat32 control,
6301 CriAtomExAisacGraphType type,
6302 CriFloat32* value);
6303
6313 CriBool CRIAPI criAtomExAcf_GetAcfInfo(CriAtomExAcfInfo *acf_info);
6314
6332 CriBool CRIAPI criAtomExAcf_GetAcfInfoFromAcfData(
6333 void *acf_data, CriSint32 acf_data_size, CriAtomExAcfInfo *acf_info);
6334
6342 CriSint32 CRIAPI criAtomExAcf_GetNumSelectors(void);
6343
6354 CriBool CRIAPI criAtomExAcf_GetSelectorInfoByIndex(CriUint16 index, CriAtomExSelectorInfo* info);
6355
6366 CriBool CRIAPI criAtomExAcf_GetSelectorInfoByName(const CriChar8* name, CriAtomExSelectorInfo* info);
6367
6379 CriBool CRIAPI criAtomExAcf_GetSelectorLabelInfo(
6380 const CriAtomExSelectorInfo* selector_info,
6381 CriUint16 label_index,
6382 CriAtomExSelectorLabelInfo* label_info);
6383
6395 void CRIAPI criAtomExAcf_SetGlobalLabelToSelectorByName(const CriChar8* selsector_name, const CriChar8* label_name);
6396
6408 void CRIAPI criAtomExAcf_SetGlobalLabelToSelectorByIndex(CriUint16 selsector_index, CriUint16 label_index);
6409
6422 CriSint32 CRIAPI criAtomExAcf_GetNumBusesFromAcfData(
6423 void *acf_data, CriSint32 acf_data_size);
6424
6432 CriSint32 CRIAPI criAtomExAcf_GetNumBuses(void);
6433
6446 CriSint32 CRIAPI criAtomExAcf_GetMaxBusesOfDspBusSettingsFromAcfData(
6447 void *acf_data, CriSint32 acf_data_size);
6448
6456 CriSint32 CRIAPI criAtomExAcf_GetMaxBusesOfDspBusSettings(void);
6457
6467 const CriChar8* CRIAPI criAtomExAcf_FindBusName(const CriChar8* bus_name);
6468
6469
6470
6471
6472
6499 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbData(
6500 void *acb_data, CriSint32 acb_data_size,
6501 CriFsBinderHn awb_binder, const CriChar8 *awb_path);
6502
6521 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbDataById(
6522 void *acb_data, CriSint32 acb_data_size, CriFsBinderHn awb_binder, CriUint16 awb_id);
6523
6580 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbData(
6581 void *acb_data, CriSint32 acb_data_size,
6582 CriFsBinderHn awb_binder, const CriChar8 *awb_path,
6583 void *work, CriSint32 work_size);
6584
6603 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbDataById(
6604 void *acb_data, CriSint32 acb_data_size, CriFsBinderHn awb_binder, CriUint16 awb_id,
6605 void *work, CriSint32 work_size);
6606
6643 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbFile(
6644 CriFsBinderHn acb_binder, const CriChar8 *acb_path,
6645 CriFsBinderHn awb_binder, const CriChar8 *awb_path);
6646
6665 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForLoadAcbFileById(
6666 CriFsBinderHn acb_binder, CriUint16 acb_id, CriFsBinderHn awb_binder, CriUint16 awb_id);
6667
6723 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbFile(
6724 CriFsBinderHn acb_binder, const CriChar8 *acb_path,
6725 CriFsBinderHn awb_binder, const CriChar8 *awb_path,
6726 void *work, CriSint32 work_size);
6727
6746 CriAtomExAcbHn CRIAPI criAtomExAcb_LoadAcbFileById(
6747 CriFsBinderHn acb_binder, CriUint16 acb_id, CriFsBinderHn awb_binder, CriUint16 awb_id,
6748 void *work, CriSint32 work_size);
6749
6774 void CRIAPI criAtomExAcb_Release(CriAtomExAcbHn acb_hn);
6775
6804 CriBool CRIAPI criAtomExAcb_IsReadyToRelease(CriAtomExAcbHn acb_hn);
6805
6828 void CRIAPI criAtomExAcb_ReleaseAll(void);
6829
6857 CriSint32 CRIAPI criAtomExAcb_EnumerateHandles(CriAtomExAcbHandleCbFunc func, void *obj);
6858
6870 CriUint32 CRIAPI criAtomExAcb_GetVersion(
6871 void *acb_data, CriSint32 acb_data_size, void *flag);
6872
6905 CriUint32 CRIAPI criAtomExAcb_GetVersionFromFile(
6906 CriFsBinderHn acb_binder, const CriChar8 *acb_path, void *work, CriSint32 work_size, CriBool *flag);
6907
6918 void CRIAPI criAtomExAcb_GetSupportedVersion(
6919 CriUint32 *version_low, CriUint32 *version_high);
6920
6931 CriSint32 CRIAPI criAtomExAcb_GetNumCues(CriAtomExAcbHn acb_hn);
6932
6946 CriBool CRIAPI criAtomExAcb_ExistsId(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
6947
6961 CriBool CRIAPI criAtomExAcb_ExistsName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
6962
6976 CriBool CRIAPI criAtomExAcb_ExistsIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
6977
6995 CriAtomExCueId CRIAPI criAtomExAcb_GetCueIdByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
6996
7014 CriAtomExCueId CRIAPI criAtomExAcb_GetCueIdByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
7015
7033 const CriChar8 * CRIAPI criAtomExAcb_GetCueNameByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
7034
7052 const CriChar8 * CRIAPI criAtomExAcb_GetCueNameById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7053
7071 CriAtomExCueIndex CRIAPI criAtomExAcb_GetCueIndexById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7072
7090 CriAtomExCueIndex CRIAPI criAtomExAcb_GetCueIndexByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
7091
7109 const CriChar8 * CRIAPI criAtomExAcb_GetUserDataById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7110
7128 const CriChar8 * CRIAPI criAtomExAcb_GetUserDataByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
7129
7147 CriSint64 CRIAPI criAtomExAcb_GetLengthById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7148
7166 CriSint64 CRIAPI criAtomExAcb_GetLengthByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
7167
7186 CriSint32 CRIAPI criAtomExAcb_GetNumUsableAisacControlsById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7187
7206 CriSint32 CRIAPI criAtomExAcb_GetNumUsableAisacControlsByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
7207
7228 CriBool CRIAPI criAtomExAcb_GetUsableAisacControlById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriUint16 index, CriAtomExAisacControlInfo* info);
7229
7250 CriBool CRIAPI criAtomExAcb_GetUsableAisacControlByName(CriAtomExAcbHn acb_hn, const CriChar8 *name, CriUint16 index, CriAtomExAisacControlInfo* info);
7251
7271 CriBool CRIAPI criAtomExAcb_IsUsingAisacControlById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExAisacControlId aisac_control_id);
7272
7292 CriBool CRIAPI criAtomExAcb_IsUsingAisacControlByName(CriAtomExAcbHn acb_hn, const CriChar8 *name, const CriChar8 *aisac_control_name);
7293
7312 CriSint32 CRIAPI criAtomExAcb_GetCuePriorityById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7313
7332 CriSint32 CRIAPI criAtomExAcb_GetCuePriorityByName(CriAtomExAcbHn acb_hn, const CriChar8 *name);
7333
7353 CriBool CRIAPI criAtomExAcb_GetWaveformInfoById(
7354 CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExWaveformInfo *waveform_info);
7355
7375 CriBool CRIAPI criAtomExAcb_GetWaveformInfoByName(
7376 CriAtomExAcbHn acb_hn, const CriChar8 *name, CriAtomExWaveformInfo *waveform_info);
7377
7405 CriAtomAwbHn CRIAPI criAtomExAcb_GetOnMemoryAwbHandle(CriAtomExAcbHn acb_hn);
7406
7434 CriAtomAwbHn CRIAPI criAtomExAcb_GetStreamingAwbHandle(CriAtomExAcbHn acb_hn);
7435
7455 CriBool CRIAPI criAtomExAcb_GetCueInfoByName(CriAtomExAcbHn acb_hn, const CriChar8* name, CriAtomExCueInfo* info);
7456
7476 CriBool CRIAPI criAtomExAcb_GetCueInfoById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, CriAtomExCueInfo* info);
7477
7497 CriBool CRIAPI criAtomExAcb_GetCueInfoByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index, CriAtomExCueInfo* info);
7498
7517 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
7518
7537 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7538
7557 CriSint32 CRIAPI criAtomExAcb_GetNumCuePlayingCountByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
7558
7578 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index, const CriChar8* block_name);
7579
7599 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexById(CriAtomExAcbHn acb_hn, CriAtomExCueId id, const CriChar8* block_name);
7600
7620 CriAtomExBlockIndex CRIAPI criAtomExAcb_GetBlockIndexByName(CriAtomExAcbHn acb_hn, const CriChar8* name, const CriChar8* block_name);
7621
7642 void CRIAPI criAtomExAcb_SetDetectionInGamePreviewDataCallback(CriAtomExAcbDetectionInGamePreviewDataCbFunc func, void* obj);
7643
7656 CriBool CRIAPI criAtomExAcb_GetAcbInfo(CriAtomExAcbHn acb_hn, CriAtomExAcbInfo *acb_info);
7657
7674 void CRIAPI criAtomExAcb_ResetCueTypeStateByName(CriAtomExAcbHn acb_hn, const CriChar8* name);
7675
7692 void CRIAPI criAtomExAcb_ResetCueTypeStateById(CriAtomExAcbHn acb_hn, CriAtomExCueId id);
7693
7710 void CRIAPI criAtomExAcb_ResetCueTypeStateByIndex(CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
7711
7758 void CRIAPI criAtomExAcb_AttachAwbFile(
7759 CriAtomExAcbHn acb_hn,
7760 CriFsBinderHn awb_binder,
7761 const CriChar8* awb_path,
7762 const CriChar8* awb_name,
7763 void* work,
7764 CriSint32 work_size);
7765
7778 void CRIAPI criAtomExAcb_DetachAwbFile(
7779 CriAtomExAcbHn acb_hn,
7780 const CriChar8* awb_name);
7781
7796 CriSint32 CRIAPI criAtomExAcb_CalculateWorkSizeForAttachAwbFile(
7797 CriFsBinderHn awb_binder,
7798 const CriChar8* awb_path);
7799
7808 CriSint32 CRIAPI criAtomExAcb_GetNumAwbFileSlots(
7809 CriAtomExAcbHn acb_hn);
7810
7822 const CriChar8* CRIAPI criAtomExAcb_GetAwbFileSlotName(
7823 CriAtomExAcbHn acb_hn, CriUint16 index);
7824
7834 CriBool CRIAPI criAtomExAcb_IsAttachedAwbFile(
7835 CriAtomExAcbHn acb_hn,
7836 const CriChar8* awb_name);
7837
7838
7839
7840
7841
7875 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForStandardVoicePool(
7876 const CriAtomExStandardVoicePoolConfig *config);
7877
7965 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateStandardVoicePool(
7966 const CriAtomExStandardVoicePoolConfig *config, void *work, CriSint32 work_size);
7967
8001 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForAdxVoicePool(
8002 const CriAtomExAdxVoicePoolConfig *config);
8003
8089 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateAdxVoicePool(
8090 const CriAtomExAdxVoicePoolConfig *config, void *work, CriSint32 work_size);
8091
8125 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForHcaVoicePool(
8126 const CriAtomExHcaVoicePoolConfig *config);
8127
8213 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateHcaVoicePool(
8214 const CriAtomExHcaVoicePoolConfig *config, void *work, CriSint32 work_size);
8215
8249 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForHcaMxVoicePool(
8250 const CriAtomExHcaMxVoicePoolConfig *config);
8251
8342 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateHcaMxVoicePool(
8343 const CriAtomExHcaMxVoicePoolConfig *config, void *work, CriSint32 work_size);
8344
8378 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForWaveVoicePool(
8379 const CriAtomExWaveVoicePoolConfig *config);
8380
8472 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateWaveVoicePool(
8473 const CriAtomExWaveVoicePoolConfig *config, void *work, CriSint32 work_size);
8474
8508 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForAiffVoicePool(
8509 const CriAtomExAiffVoicePoolConfig *config);
8510
8602 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateAiffVoicePool(
8603 const CriAtomExAiffVoicePoolConfig *config, void *work, CriSint32 work_size);
8604
8638 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForRawPcmVoicePool(
8639 const CriAtomExRawPcmVoicePoolConfig *config);
8640
8713 CriAtomExVoicePoolHn CRIAPI criAtomExVoicePool_AllocateRawPcmVoicePool(
8714 const CriAtomExRawPcmVoicePoolConfig *config, void *work, CriSint32 work_size);
8715
8736 void CRIAPI criAtomExVoicePool_Free(CriAtomExVoicePoolHn pool);
8737
8757 void CRIAPI criAtomExVoicePool_FreeAll(void);
8758
8769 void CRIAPI criAtomExVoicePool_GetNumUsedVoices(
8770 CriAtomExVoicePoolHn pool, CriSint32 *cur_num, CriSint32 *limit);
8771
8783 CriAtomPlayerHn CRIAPI criAtomExVoicePool_GetPlayerHandle(
8784 CriAtomExVoicePoolHn pool, CriSint32 index);
8785
8786
8787
8788
8800 void CRIAPI criAtomExCategory_SetVolumeById(CriAtomExCategoryId id, CriFloat32 volume);
8801
8810 CriFloat32 CRIAPI criAtomExCategory_GetVolumeById(CriAtomExCategoryId id);
8811
8823 CriFloat32 CRIAPI criAtomExCategory_GetTotalVolumeById(CriAtomExCategoryId id);
8824
8836 void CRIAPI criAtomExCategory_SetVolumeByName(const CriChar8* name, CriFloat32 volume);
8837
8846 CriFloat32 CRIAPI criAtomExCategory_GetVolumeByName(const CriChar8* name);
8847
8859 CriFloat32 CRIAPI criAtomExCategory_GetTotalVolumeByName(const CriChar8* name);
8860
8869 void CRIAPI criAtomExCategory_MuteById(CriAtomExCategoryId id, CriBool mute);
8870
8879 CriBool CRIAPI criAtomExCategory_IsMutedById(CriAtomExCategoryId id);
8880
8889 void CRIAPI criAtomExCategory_MuteByName(const CriChar8* name, CriBool mute);
8890
8899 CriBool CRIAPI criAtomExCategory_IsMutedByName(const CriChar8* name);
8900
8912 void CRIAPI criAtomExCategory_SoloById(CriAtomExCategoryId id, CriBool solo, CriFloat32 mute_volume);
8913
8922 CriBool CRIAPI criAtomExCategory_IsSoloedById(CriAtomExCategoryId id);
8923
8935 void CRIAPI criAtomExCategory_SoloByName(const CriChar8* name, CriBool solo, CriFloat32 mute_volume);
8936
8945 CriBool CRIAPI criAtomExCategory_IsSoloedByName(const CriChar8* name);
8946
8964 void CRIAPI criAtomExCategory_PauseById(CriAtomExCategoryId id, CriBool sw);
8965
8974 CriBool CRIAPI criAtomExCategory_IsPausedById(CriAtomExCategoryId id);
8975
8986 void CRIAPI criAtomExCategory_PauseByName(const CriChar8* name, CriBool sw);
8987
8996 CriBool CRIAPI criAtomExCategory_IsPausedByName(const CriChar8* name);
8997
9007 void CRIAPI criAtomExCategory_SetFadeInTimeById(CriAtomExCategoryId id, CriUint16 ms);
9008
9018 void CRIAPI criAtomExCategory_SetFadeInTimeByName(const CriChar8* name, CriUint16 ms);
9019
9029 void CRIAPI criAtomExCategory_SetFadeOutTimeById(CriAtomExCategoryId id, CriUint16 ms);
9030
9040 void CRIAPI criAtomExCategory_SetFadeOutTimeByName(const CriChar8* name, CriUint16 ms);
9041
9057 void CRIAPI criAtomExCategory_SetAisacControlById(
9058 CriAtomExCategoryId id,
9059 CriAtomExAisacControlId control_id,
9060 CriFloat32 control_value
9061 );
9062
9076 void CRIAPI criAtomExCategory_SetAisacControlByName(
9077 const CriChar8* name,
9078 const CriChar8* control_name,
9079 CriFloat32 control_value
9080 );
9081
9093 CriBool CRIAPI criAtomExCategory_ResetAllAisacControlById(CriAtomExCategoryId category_id);
9094
9106 CriBool CRIAPI criAtomExCategory_ResetAllAisacControlByName(const CriChar8* category_name);
9107
9130 void CRIAPI criAtomExCategory_AttachAisacById(CriAtomExCategoryId id, const CriChar8* global_aisac_name);
9131
9142 void CRIAPI criAtomExCategory_AttachAisacByName(const CriChar8* name, const CriChar8* global_aisac_name);
9143
9156 void CRIAPI criAtomExCategory_DetachAisacById(CriAtomExCategoryId id, const CriChar8* global_aisac_name);
9157
9168 void CRIAPI criAtomExCategory_DetachAisacByName(const CriChar8* name, const CriChar8* global_aisac_name);
9169
9177 void CRIAPI criAtomExCategory_DetachAisacAllById(CriAtomExCategoryId id);
9178
9186 void CRIAPI criAtomExCategory_DetachAisacAllByName(const CriChar8* name);
9187
9197 CriSint32 CRIAPI criAtomExCategory_GetNumAttachedAisacsById(CriAtomExCategoryId id);
9198
9208 CriSint32 CRIAPI criAtomExCategory_GetNumAttachedAisacsByName(const CriChar8* name);
9209
9223 CriBool CRIAPI criAtomExCategory_GetAttachedAisacInfoById(
9224 CriAtomExCategoryId id,
9225 CriSint32 aisac_attached_index,
9226 CriAtomExAisacInfo *aisac_info
9227 );
9228
9242 CriBool CRIAPI criAtomExCategory_GetAttachedAisacInfoByName(
9243 const CriChar8* name,
9244 CriSint32 aisac_attached_index,
9245 CriAtomExAisacInfo *aisac_info
9246 );
9247
9261 CriBool CRIAPI criAtomExCategory_GetCurrentAisacControlValueById(
9262 CriAtomExCategoryId category_id,
9263 CriAtomExAisacControlId aisac_control_id,
9264 CriFloat32 * control_value
9265 );
9266
9280 CriBool CRIAPI criAtomExCategory_GetCurrentAisacControlValueByName(
9281 const CriChar8* category_name,
9282 const CriChar8* aisac_control_name,
9283 CriFloat32 * control_value
9284 );
9285
9295 CriSint32 CRIAPI criAtomExCategory_GetNumCuePlayingCountById(CriAtomExCategoryId id);
9296
9306 CriSint32 CRIAPI criAtomExCategory_GetNumCuePlayingCountByName(const CriChar8* name);
9307
9315 void CRIAPI criAtomExCategory_StopById(CriAtomExCategoryId id);
9316
9324 void CRIAPI criAtomExCategory_StopByName(const CriChar8* name);
9325
9333 void CRIAPI criAtomExCategory_StopWithoutReleaseTimeById(CriAtomExCategoryId id);
9334
9342 void CRIAPI criAtomExCategory_StopWithoutReleaseTimeByName(const CriChar8* name);
9343
9344
9345
9346
9378 CriSint32 CRIAPI criAtomExPlayer_CalculateWorkSize(
9379 const CriAtomExPlayerConfig *config);
9380
9544 CriAtomExPlayerHn CRIAPI criAtomExPlayer_Create(
9545 const CriAtomExPlayerConfig *config, void *work, CriSint32 work_size);
9546
9565 void CRIAPI criAtomExPlayer_Destroy(CriAtomExPlayerHn player);
9566
9612 void CRIAPI criAtomExPlayer_SetCueId(
9613 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, CriAtomExCueId id);
9614
9659 void CRIAPI criAtomExPlayer_SetCueName(
9660 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, const CriChar8 *cue_name);
9661
9711 void CRIAPI criAtomExPlayer_SetCueIndex(
9712 CriAtomExPlayerHn player, CriAtomExAcbHn acb_hn, CriAtomExCueIndex index);
9713
9765 void CRIAPI criAtomExPlayer_SetData(
9766 CriAtomExPlayerHn player, void *buffer, CriSint32 size);
9767
9828 void CRIAPI criAtomExPlayer_SetFile(
9829 CriAtomExPlayerHn player, CriFsBinderHn binder, const CriChar8 *path);
9830
9897 void CRIAPI criAtomExPlayer_SetContentId(
9898 CriAtomExPlayerHn player, CriFsBinderHn binder, CriSint32 id);
9899
9950 void CRIAPI criAtomExPlayer_SetWaveId(
9951 CriAtomExPlayerHn player, CriAtomAwbHn awb, CriAtomExWaveId id);
9952
10055 CriAtomExPlaybackId CRIAPI criAtomExPlayer_Start(CriAtomExPlayerHn player);
10056
10145 CriAtomExPlaybackId CRIAPI criAtomExPlayer_Prepare(CriAtomExPlayerHn player);
10146
10170 void CRIAPI criAtomExPlayer_Stop(CriAtomExPlayerHn player);
10171
10197 void CRIAPI criAtomExPlayer_StopWithoutReleaseTime(CriAtomExPlayerHn player);
10198
10220 void CRIAPI criAtomExPlayer_StopAllPlayers(void);
10221
10245 void CRIAPI criAtomExPlayer_StopAllPlayersWithoutReleaseTime(void);
10246
10266 void CRIAPI criAtomExPlayer_EnumeratePlayers(CriAtomExPlayerCbFunc func, void *obj);
10267
10296 void CRIAPI criAtomExPlayer_Pause(CriAtomExPlayerHn player, CriBool sw);
10297
10332 void CRIAPI criAtomExPlayer_Resume(CriAtomExPlayerHn player, CriAtomExResumeMode mode);
10333
10352 CriBool CRIAPI criAtomExPlayer_IsPaused(CriAtomExPlayerHn player);
10353
10420 CriAtomExPlayerStatus CRIAPI criAtomExPlayer_GetStatus(CriAtomExPlayerHn player);
10421
10436 CriSint32 CRIAPI criAtomExPlayer_GetNumPlaybacks(CriAtomExPlayerHn player);
10437
10448 CriAtomExPlaybackId CRIAPI criAtomExPlayer_GetLastPlaybackId(CriAtomExPlayerHn player);
10449
10504 CriSint64 CRIAPI criAtomExPlayer_GetTime(CriAtomExPlayerHn player);
10505
10521 void CRIAPI criAtomExPlayer_SetFormat(
10522 CriAtomExPlayerHn player, CriAtomExFormat format);
10523
10539 void CRIAPI criAtomExPlayer_SetNumChannels(
10540 CriAtomExPlayerHn player, CriSint32 num_channels);
10541
10557 void CRIAPI criAtomExPlayer_SetSamplingRate(
10558 CriAtomExPlayerHn player, CriSint32 sampling_rate);
10559
10575 void CRIAPI criAtomExPlayer_SetSoundRendererType(
10576 CriAtomExPlayerHn player, CriAtomSoundRendererType type);
10577
10600 void CRIAPI criAtomExPlayer_SetGroupNumber(
10601 CriAtomExPlayerHn player, CriSint32 group_no);
10602
10646 void CRIAPI criAtomExPlayer_SetVoiceControlMethod(
10647 CriAtomExPlayerHn player, CriAtomExVoiceControlMethod method);
10648
10664 void CRIAPI criAtomExPlayer_SetVoicePoolIdentifier(
10665 CriAtomExPlayerHn player, CriAtomExVoicePoolIdentifier identifier);
10666
10684 void CRIAPI criAtomExPlayer_SetHcaMxMixerId(CriAtomExPlayerHn player, CriSint32 mixer_id);
10685
10713 void CRIAPI criAtomExPlayer_SetAsrRackId(CriAtomExPlayerHn player, CriSint32 rack_id);
10714
10750 void CRIAPI criAtomExPlayer_SetAsrRackIdArray(
10751 CriAtomExPlayerHn player, const CriSint32 *rack_id_array, CriSint32 num_racks);
10752
10781 void CRIAPI criAtomExPlayer_SetStartTime(
10782 CriAtomExPlayerHn player, CriSint64 start_time_ms);
10783
10809 void CRIAPI criAtomExPlayer_SetSequencePrepareTime(
10810 CriAtomExPlayerHn player, CriUint32 seq_prep_time_ms);
10811
10859 void CRIAPI criAtomExPlayer_SetSyncPlaybackId(
10860 CriAtomExPlayerHn player, CriAtomExPlaybackId playback_id);
10861
10878 void CRIAPI criAtomExPlayer_SetPlaybackRatio(
10879 CriAtomExPlayerHn player, CriFloat32 playback_ratio);
10880
10925 void CRIAPI criAtomExPlayer_LimitLoopCount(CriAtomExPlayerHn player, CriSint32 count);
10926
10949 void CRIAPI criAtomExPlayer_UpdateAll(CriAtomExPlayerHn player);
10950
10974 void CRIAPI criAtomExPlayer_Update(
10975 CriAtomExPlayerHn player, CriAtomExPlaybackId id);
10976
11009 void CRIAPI criAtomExPlayer_ResetParameters(CriAtomExPlayerHn player);
11010
11022 CriFloat32 CRIAPI criAtomExPlayer_GetParameterFloat32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11023
11035 CriUint32 CRIAPI criAtomExPlayer_GetParameterUint32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11036
11048 CriSint32 CRIAPI criAtomExPlayer_GetParameterSint32(CriAtomExPlayerHn player, CriAtomExParameterId id);
11049
11127 void CRIAPI criAtomExPlayer_SetVolume(
11128 CriAtomExPlayerHn player, CriFloat32 volume);
11129
11191 void CRIAPI criAtomExPlayer_SetPitch(CriAtomExPlayerHn player, CriFloat32 pitch);
11192
11220 void CRIAPI criAtomExPlayer_SetMaxPitch(CriAtomExPlayerHn player, CriFloat32 pitch);
11221
11267 void CRIAPI criAtomExPlayer_SetPan3dAngle(
11268 CriAtomExPlayerHn player, CriFloat32 pan3d_angle);
11269
11314 void CRIAPI criAtomExPlayer_SetPan3dInteriorDistance(
11315 CriAtomExPlayerHn player, CriFloat32 pan3d_interior_distance);
11316
11357 void CRIAPI criAtomExPlayer_SetPan3dVolume(
11358 CriAtomExPlayerHn player, CriFloat32 pan3d_volume);
11359
11378 void CRIAPI criAtomExPlayer_SetPanType(
11379 CriAtomExPlayerHn player, CriAtomExPanType pan_type);
11380
11402 void CRIAPI criAtomExPlayer_SetPanSpeakerType(
11403 CriAtomExPlayerHn player, CriAtomExPanSpeakerType pan_speaker_type);
11404
11420 void CRIAPI criAtomExPlayer_AddMixDownCenterVolumeOffset(
11421 CriAtomExPlayerHn player, CriFloat32 mixdown_center_volume_offset);
11422
11438 void CRIAPI criAtomExPlayer_AddMixDownLfeVolumeOffset(
11439 CriAtomExPlayerHn player, CriFloat32 mixdown_lfe_volume_offset);
11440
11460 void CRIAPI criAtomExPlayer_ChangeDefaultPanSpeakerType(
11461 CriAtomExPanSpeakerType pan_speaker_type);
11462
11485 void CRIAPI criAtomExPlayer_SetPanAngleType(
11486 CriAtomExPlayerHn player, CriAtomExPanAngleType pan_angle_type);
11487
11509 void CRIAPI criAtomExPlayer_SetPanSpread(CriAtomExPlayerHn player, CriFloat32 spread);
11510
11610 void CRIAPI criAtomExPlayer_SetSendLevel(
11611 CriAtomExPlayerHn player, CriSint32 ch, CriAtomExSpeakerId spk, CriFloat32 level);
11612
11660 void CRIAPI criAtomExPlayer_SetBusSendLevelByName(
11661 CriAtomExPlayerHn player, const CriChar8* bus_name, CriFloat32 level);
11662
11681 void CRIAPI criAtomExPlayer_SetBusSendLevelOffsetByName(
11682 CriAtomExPlayerHn player, const CriChar8* bus_name, CriFloat32 level_offset);
11683
11725 void CRIAPI criAtomExPlayer_SetPanAdx1Compatible(
11726 CriAtomExPlayerHn player, CriSint32 ch, CriFloat32 pan);
11727
11783 void CRIAPI criAtomExPlayer_SetBandpassFilterParameters(
11784 CriAtomExPlayerHn player, CriFloat32 cof_low, CriFloat32 cof_high);
11785
11854 void CRIAPI criAtomExPlayer_SetBiquadFilterParameters(
11855 CriAtomExPlayerHn player, CriAtomExBiquadFilterType type, CriFloat32 frequency,
11856 CriFloat32 gain, CriFloat32 q_value);
11857
11912 void CRIAPI criAtomExPlayer_SetVoicePriority(
11913 CriAtomExPlayerHn player, CriSint32 priority);
11914
11966 void CRIAPI criAtomExPlayer_SetAisacControlById(
11967 CriAtomExPlayerHn player, CriAtomExAisacControlId control_id, CriFloat32 control_value);
11968
12008 void CRIAPI criAtomExPlayer_SetAisacControlByName(
12009 CriAtomExPlayerHn player, const CriChar8 *control_name, CriFloat32 control_value);
12010
12021 void CRIAPI criAtomExPlayer_ClearAisacControls(CriAtomExPlayerHn player);
12022
12023
12078 void CRIAPI criAtomExPlayer_Set3dSourceHn(
12079 CriAtomExPlayerHn player, CriAtomEx3dSourceHn source);
12080
12144 void CRIAPI criAtomExPlayer_Set3dSourceListHn(
12145 CriAtomExPlayerHn player, CriAtomEx3dSourceListHn source_list);
12146
12196 void CRIAPI criAtomExPlayer_Set3dListenerHn(
12197 CriAtomExPlayerHn player, CriAtomEx3dListenerHn listener);
12198
12225 CriFloat32 CRIAPI criAtomExPlayer_GetAisacControlById(
12226 CriAtomExPlayerHn player, CriAtomExAisacControlId control_id);
12227
12254 CriFloat32 CRIAPI criAtomExPlayer_GetAisacControlByName(
12255 CriAtomExPlayerHn player, const CriChar8 *control_name);
12256
12281 void CRIAPI criAtomExPlayer_SetCategoryById(
12282 CriAtomExPlayerHn player, CriUint32 category_id);
12283
12304 void CRIAPI criAtomExPlayer_SetCategoryByName(
12305 CriAtomExPlayerHn player, const CriChar8 *category_name);
12306
12320 void CRIAPI criAtomExPlayer_UnsetCategory(CriAtomExPlayerHn player);
12321
12330 CriSint32 CRIAPI criAtomExPlayer_GetNumCategories(CriAtomExPlayerHn player);
12331
12343 CriBool CRIAPI criAtomExPlayer_GetCategoryInfo(CriAtomExPlayerHn player, CriUint16 index, CriAtomExCategoryInfo* info);
12344
12379 void CRIAPI criAtomExPlayer_SetTrackInfo(CriAtomExPlayerHn player,
12380 CriSint32 num_tracks, const CriSint32 *channels_per_track);
12381
12405 void CRIAPI criAtomExPlayer_SetTrackVolume(
12406 CriAtomExPlayerHn player, CriSint32 track_no, CriFloat32 volume);
12407
12437 void CRIAPI criAtomExPlayer_SetSilentMode(
12438 CriAtomExPlayerHn player, CriAtomExSilentMode silent_mode);
12439
12465 void CRIAPI criAtomExPlayer_SetCuePriority(
12466 CriAtomExPlayerHn player, CriSint32 cue_priority);
12467
12487 void CRIAPI criAtomExPlayer_SetPreDelayTime(
12488 CriAtomExPlayerHn player, CriFloat32 predelay_time_ms);
12489
12518 void CRIAPI criAtomExPlayer_SetEnvelopeAttackTime(
12519 CriAtomExPlayerHn player, CriFloat32 attack_time_ms);
12520
12549 void CRIAPI criAtomExPlayer_SetEnvelopeHoldTime(
12550 CriAtomExPlayerHn player, CriFloat32 hold_time_ms);
12551
12580 void CRIAPI criAtomExPlayer_SetEnvelopeDecayTime(
12581 CriAtomExPlayerHn player, CriFloat32 decay_time_ms);
12582
12611 void CRIAPI criAtomExPlayer_SetEnvelopeReleaseTime(
12612 CriAtomExPlayerHn player, CriFloat32 release_time_ms);
12613
12642 void CRIAPI criAtomExPlayer_SetEnvelopeSustainLevel(
12643 CriAtomExPlayerHn player, CriFloat32 susutain_level);
12644
12786 void CRIAPI criAtomExPlayer_SetDataRequestCallback(
12787 CriAtomExPlayerHn player, CriAtomExPlayerDataRequestCbFunc func, void *obj);
12788
12826 void CRIAPI criAtomExPlayer_SetFilterCallback(
12827 CriAtomExPlayerHn player, CriAtomExPlayerFilterCbFunc func, void *obj);
12828
12840 void CRIAPI criAtomExPlayer_SetRandomSeed(CriAtomExPlayerHn player, CriUint32 seed);
12841
12855 void CRIAPI criAtomExPlayer_SetDspParameter(
12856 CriAtomExPlayerHn player, CriSint32 param_id, CriFloat32 param_val);
12857
12890 void CRIAPI criAtomExPlayer_AttachAisac(CriAtomExPlayerHn player, const CriChar8* global_aisac_name);
12891 void CRIAPI criAtomExPlayer_AttachAisacByIndex(CriAtomExPlayerHn player, CriUint16 global_aisac_index);
12892
12908 void CRIAPI criAtomExPlayer_DetachAisac(CriAtomExPlayerHn player, const CriChar8* global_aisac_name);
12909 void CRIAPI criAtomExPlayer_DetachAisacByIndex(CriAtomExPlayerHn player, CriUint16 global_aisac_index);
12910
12922 void CRIAPI criAtomExPlayer_DetachAisacAll(CriAtomExPlayerHn player);
12923
12932 CriSint32 CRIAPI criAtomExPlayer_GetNumAttachedAisacs(CriAtomExPlayerHn player);
12933
12947 CriBool CRIAPI criAtomExPlayer_GetAttachedAisacInfo(
12948 CriAtomExPlayerHn player,
12949 CriSint32 aisac_attached_index,
12950 CriAtomExAisacInfo *aisac_info
12951 );
12952
12966 void CRIAPI criAtomExPlayer_SetStreamingCacheId(
12967 CriAtomExPlayerHn player, CriAtomExStreamingCacheId cache_id);
12968
13011 void CRIAPI criAtomExPlayer_AttachTween(CriAtomExPlayerHn player, CriAtomExTweenHn tween);
13012
13025 void CRIAPI criAtomExPlayer_DetachTween(CriAtomExPlayerHn player, CriAtomExTweenHn tween);
13026
13038 void CRIAPI criAtomExPlayer_DetachTweenAll(CriAtomExPlayerHn player);
13039
13079 void CRIAPI criAtomExPlayer_SetFirstBlockIndex(
13080 CriAtomExPlayerHn player, CriAtomExBlockIndex index);
13081
13111 void CRIAPI criAtomExPlayer_SetBlockTransitionCallback(
13112 CriAtomExPlayerHn player, CriAtomExPlayerBlockTransitionCbFunc func, void *obj);
13113
13124 CriAtomExSoundObjectHn CRIAPI criAtomExPlayer_GetSoundObject(CriAtomExPlayerHn player);
13125
13188 void CRIAPI criAtomExPlayer_SetDrySendLevel(
13189 CriAtomExPlayerHn player, CriAtomExSpeakerId spk, CriFloat32 offset, CriFloat32 gain);
13190
13206 void CRIAPI criAtomExPlayer_SetSelectorLabel(
13207 CriAtomExPlayerHn player, const CriChar8 *selector, const CriChar8 *label);
13208
13209
13220 void CRIAPI criAtomExPlayer_ClearSelectorLabels(CriAtomExPlayerHn player);
13221
13251 void CRIAPI criAtomExPlayer_SetPlaybackTrackInfoNotificationCallback(
13252 CriAtomExPlayerHn player, CriAtomExPlayerPlaybackTrackInfoNotificationCbFunc func, void *obj);
13253
13254
13255
13256
13276 void CRIAPI criAtomExPlayback_Stop(CriAtomExPlaybackId id);
13277
13297 void CRIAPI criAtomExPlayback_StopWithoutReleaseTime(CriAtomExPlaybackId id);
13298
13339 void CRIAPI criAtomExPlayback_Pause(CriAtomExPlaybackId id, CriBool sw);
13340
13379 void CRIAPI criAtomExPlayback_Resume(CriAtomExPlaybackId id, CriAtomExResumeMode mode);
13380
13390 CriBool CRIAPI criAtomExPlayback_IsPaused(CriAtomExPlaybackId id);
13391
13417 CriAtomExPlaybackStatus CRIAPI criAtomExPlayback_GetStatus(CriAtomExPlaybackId id);
13418
13439 CriBool CRIAPI criAtomExPlayback_GetFormatInfo(
13440 CriAtomExPlaybackId id, CriAtomExFormatInfo *info);
13441
13480 CriBool CRIAPI criAtomExPlayback_GetSource(
13481 CriAtomExPlaybackId id, CriAtomExSourceInfo *source);
13482
13495 CriAtomPlayerHn CRIAPI criAtomExPlayback_GetAtomPlayer(CriAtomExPlaybackId id);
13496
13543 CriSint64 CRIAPI criAtomExPlayback_GetTime(CriAtomExPlaybackId id);
13544
13596 CriSint64 CRIAPI criAtomExPlayback_GetTimeSyncedWithAudio(CriAtomExPlaybackId id);
13597
13645 CriSint64 CRIAPI criAtomExPlayback_GetTimeSyncedWithAudioMicro(CriAtomExPlaybackId id);
13646
13680 CriSint64 CRIAPI criAtomExPlayback_GetSequencePosition(CriAtomExPlaybackId id);
13681
13713 CriBool CRIAPI criAtomExPlayback_GetNumPlayedSamples(
13714 CriAtomExPlaybackId id, CriSint64 *num_samples, CriSint32 *sampling_rate);
13715
13734 CriBool CRIAPI criAtomExPlayback_GetParameterFloat32(
13735 CriAtomExPlaybackId playback_id,
13736 CriAtomExParameterId parameter_id,
13737 CriFloat32 *value_float32
13738 );
13739
13758 CriBool CRIAPI criAtomExPlayback_GetParameterUint32(
13759 CriAtomExPlaybackId playback_id,
13760 CriAtomExParameterId parameter_id,
13761 CriUint32* value_uint32
13762 );
13763
13782 CriBool CRIAPI criAtomExPlayback_GetParameterSint32(
13783 CriAtomExPlaybackId playback_id,
13784 CriAtomExParameterId parameter_id,
13785 CriSint32* value_sint32
13786 );
13787
13805 CriBool CRIAPI criAtomExPlayback_GetAisacControlById(
13806 CriAtomExPlaybackId playback_id, CriAtomExAisacControlId control_id, CriFloat32 *control_value);
13807
13825 CriBool CRIAPI criAtomExPlayback_GetAisacControlByName(
13826 CriAtomExPlaybackId playback_id, const CriChar8 *control_name, CriFloat32 *control_value);
13827
13843 void CRIAPI criAtomExPlayback_SetNextBlockIndex(CriAtomExPlaybackId id, CriAtomExBlockIndex index);
13844
13858 CriAtomExBlockIndex CRIAPI criAtomExPlayback_GetCurrentBlockIndex(CriAtomExPlaybackId id);
13859
13875 CriBool CRIAPI criAtomExPlayback_GetPlaybackTrackInfo(CriAtomExPlaybackId id, CriAtomExPlaybackTrackInfo* info);
13876
13894 CriBool CRIAPI criAtomExPlayback_GetBeatSyncInfo(CriAtomExPlaybackId id, CriAtomExBeatSyncInfo* info);
13895
13896
13897
13898
13927 CriSint32 CRIAPI criAtomExPlayer_CalculateWorkSizeForFader(
13928 const CriAtomExFaderConfig *config);
13929
14046 void CRIAPI criAtomExPlayer_AttachFader(CriAtomExPlayerHn player,
14047 const CriAtomExFaderConfig *config, void *work, CriSint32 work_size);
14048
14064 void CRIAPI criAtomExPlayer_DetachFader(CriAtomExPlayerHn player);
14065
14114 void CRIAPI criAtomExPlayer_SetFadeOutTime(CriAtomExPlayerHn player, CriSint32 ms);
14115
14127 CriSint32 CRIAPI criAtomExPlayer_GetFadeOutTime(CriAtomExPlayerHn player);
14128
14153 void CRIAPI criAtomExPlayer_SetFadeInTime(CriAtomExPlayerHn player, CriSint32 ms);
14154
14166 CriSint32 CRIAPI criAtomExPlayer_GetFadeInTime(CriAtomExPlayerHn player);
14167
14201 void CRIAPI criAtomExPlayer_SetFadeInStartOffset(CriAtomExPlayerHn player, CriSint32 ms);
14202
14214 CriSint32 CRIAPI criAtomExPlayer_GetFadeInStartOffset(CriAtomExPlayerHn player);
14215
14245 void CRIAPI criAtomExPlayer_SetFadeOutEndDelay(CriAtomExPlayerHn player, CriSint32 ms);
14246
14258 CriSint32 CRIAPI criAtomExPlayer_GetFadeOutEndDelay(CriAtomExPlayerHn player);
14259
14274 CriBool CRIAPI criAtomExPlayer_IsFading(CriAtomExPlayerHn player);
14275
14293 void CRIAPI criAtomExPlayer_ResetFaderParameters(CriAtomExPlayerHn player);
14294
14295
14296
14297
14298
14321 void CRIAPI criAtomExSequencer_SetEventCallback(CriAtomExSequencerEventCbFunc func, void* obj);
14322
14323
14324
14325
14348 void CRIAPI criAtomExBeatSync_SetCallback(CriAtomExBeatSyncCbFunc func, void* obj);
14349
14350
14351
14352
14383 CriSint32 CRIAPI criAtomEx3dSource_CalculateWorkSize(const CriAtomEx3dSourceConfig *config);
14384
14405 CriAtomEx3dSourceHn CRIAPI criAtomEx3dSource_Create(
14406 const CriAtomEx3dSourceConfig *config, void *work, CriSint32 work_size);
14407
14420 void CRIAPI criAtomEx3dSource_Destroy(CriAtomEx3dSourceHn ex_3d_source);
14421
14454 void CRIAPI criAtomEx3dSource_Update(CriAtomEx3dSourceHn ex_3d_source);
14455
14466 void CRIAPI criAtomEx3dSource_ResetParameters(CriAtomEx3dSourceHn ex_3d_source);
14467
14484 void CRIAPI criAtomEx3dSource_SetPosition(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *position);
14485
14495 CriAtomExVector CRIAPI criAtomEx3dSource_GetPosition(CriAtomEx3dSourceHn ex_3d_source);
14496
14514 void CRIAPI criAtomEx3dSource_SetVelocity(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *velocity);
14515
14540 void CRIAPI criAtomEx3dSource_SetOrientation(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *front, const CriAtomExVector *top);
14541
14573 void CRIAPI criAtomEx3dSource_SetConeParameter(CriAtomEx3dSourceHn ex_3d_source,
14574 CriFloat32 inside_angle,
14575 CriFloat32 outside_angle,
14576 CriFloat32 outside_volume
14577 );
14578
14596 void CRIAPI criAtomEx3dSource_ChangeDefaultConeParameter(
14597 CriFloat32 inside_angle,
14598 CriFloat32 outside_angle,
14599 CriFloat32 outside_volume
14600 );
14601
14623 void CRIAPI criAtomEx3dSource_SetMinMaxAttenuationDistance(CriAtomEx3dSourceHn ex_3d_source,
14624 CriFloat32 min_attenuation_distance,
14625 CriFloat32 max_attenuation_distance
14626 );
14627
14647 void CRIAPI criAtomEx3dSource_ChangeDefaultMinMaxAttenuationDistance(
14648 CriFloat32 min_attenuation_distance,
14649 CriFloat32 max_attenuation_distance
14650 );
14651
14679 void CRIAPI criAtomEx3dSource_SetInteriorPanField(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 source_radius, CriFloat32 interior_distance);
14680
14693 void CRIAPI criAtomEx3dSource_ChangeDefaultInteriorPanField(CriFloat32 source_radius, CriFloat32 interior_distance);
14694
14712 void CRIAPI criAtomEx3dSource_SetDopplerFactor(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 doppler_factor);
14713
14729 void CRIAPI criAtomEx3dSource_ChangeDefaultDopplerFactor(CriFloat32 doppler_factor);
14730
14752 void CRIAPI criAtomEx3dSource_SetVolume(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 volume);
14753
14769 void CRIAPI criAtomEx3dSource_ChangeDefaultVolume(CriFloat32 volume);
14770
14789 void CRIAPI criAtomEx3dSource_SetMaxAngleAisacDelta(CriAtomEx3dSourceHn ex_3d_source, CriFloat32 max_delta);
14790
14804 void CRIAPI criAtomEx3dSource_SetDistanceAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
14805
14818 void CRIAPI criAtomEx3dSource_SetListenerBasedAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
14819
14832 void CRIAPI criAtomEx3dSource_SetSourceBasedAngleAisacControlId(CriAtomEx3dSourceHn ex_3d_source, CriUint16 aisac_control_id);
14833
14863 CriSint32 CRIAPI criAtomEx3dSourceList_CalculateWorkSize(const CriAtomEx3dSourceListConfig *config);
14864
14885 CriAtomEx3dSourceListHn CRIAPI criAtomEx3dSourceList_Create(
14886 const CriAtomEx3dSourceListConfig *config, void *work, CriSint32 work_size);
14887
14903 void CRIAPI criAtomEx3dSourceList_Destroy(CriAtomEx3dSourceListHn ex_3d_source_list);
14904
14929 void CRIAPI criAtomEx3dSourceList_Add(
14930 CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source);
14931
14951 void CRIAPI criAtomEx3dSourceList_Remove(
14952 CriAtomEx3dSourceListHn ex_3d_source_list, CriAtomEx3dSourceHn ex_3d_source);
14953
14972 void CRIAPI criAtomEx3dSourceList_RemoveAll(CriAtomEx3dSourceListHn ex_3d_source_list);
14973
15003 CriSint32 CRIAPI criAtomEx3dListener_CalculateWorkSize(const CriAtomEx3dListenerConfig *config);
15004
15005
15026 CriAtomEx3dListenerHn CRIAPI criAtomEx3dListener_Create(
15027 const CriAtomEx3dListenerConfig *config, void *work, CriSint32 work_size);
15028
15041 void CRIAPI criAtomEx3dListener_Destroy(CriAtomEx3dListenerHn ex_3d_listener);
15042
15075 void CRIAPI criAtomEx3dListener_Update(CriAtomEx3dListenerHn ex_3d_listener);
15076
15087 void CRIAPI criAtomEx3dListener_ResetParameters(CriAtomEx3dListenerHn ex_3d_listener);
15088
15105 void CRIAPI criAtomEx3dListener_SetPosition(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *position);
15106
15117 CriAtomExVector CRIAPI criAtomEx3dListener_GetPosition(CriAtomEx3dListenerHn ex_3d_listener);
15118
15136 void CRIAPI criAtomEx3dListener_SetVelocity(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *velocity);
15137
15156 void CRIAPI criAtomEx3dListener_SetOrientation(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *front, const CriAtomExVector *top);
15157
15173 void CRIAPI criAtomEx3dListener_SetDistanceFactor(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 distance_factor);
15174
15192 void CRIAPI criAtomEx3dListener_SetFocusPoint(CriAtomEx3dListenerHn ex_3d_listener, const CriAtomExVector *focus_point);
15193
15209 void CRIAPI criAtomEx3dListener_SetDistanceFocusLevel(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 distance_focus_level);
15210
15227 void CRIAPI criAtomEx3dListener_SetDirectionFocusLevel(CriAtomEx3dListenerHn ex_3d_listener, CriFloat32 direction_focus_level);
15228
15229
15230
15231
15232
15247 void CRIAPI criAtomExVoicePool_DetachDsp(CriAtomExVoicePoolHn pool);
15248
15260 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForDspPitchShifter(
15261 const CriAtomExDspPitchShifterConfig *config);
15262
15280 void CRIAPI criAtomExVoicePool_AttachDspPitchShifter(CriAtomExVoicePoolHn pool,
15281 const CriAtomExDspPitchShifterConfig *config, void *work, CriSint32 work_size);
15282
15294 CriSint32 CRIAPI criAtomExVoicePool_CalculateWorkSizeForDspTimeStretch(
15295 const CriAtomExDspTimeStretchConfig *config);
15296
15314 void CRIAPI criAtomExVoicePool_AttachDspTimeStretch(CriAtomExVoicePoolHn pool,
15315 const CriAtomExDspTimeStretchConfig *config, void *work, CriSint32 work_size);
15316
15317
15318
15319
15338 CriBool CRIAPI criAtomExStreamingCache_IsCachedWaveformById(
15339 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, CriAtomExCueId id);
15340
15359 CriBool CRIAPI criAtomExStreamingCache_IsCachedWaveformByName(
15360 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, const CriChar8 *name);
15361
15381 CriBool CRIAPI criAtomExStreamingCache_LoadWaveformById(
15382 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, CriAtomExCueId cue_id);
15383
15403 CriBool CRIAPI criAtomExStreamingCache_LoadWaveformByName(
15404 CriAtomExStreamingCacheId stm_cache_id, CriAtomExAcbHn acb_hn, const CriChar8 *name);
15405
15406
15407
15408
15409
15438
15439 CriSint32 CRIAPI criAtomExTween_CalculateWorkSize(const CriAtomExTweenConfig *config);
15440
15464 CriAtomExTweenHn CRIAPI criAtomExTween_Create(
15465 const CriAtomExTweenConfig *config, void *work, CriSint32 work_size);
15466
15479 void CRIAPI criAtomExTween_Destroy(CriAtomExTweenHn tween);
15480
15488 CriFloat32 CRIAPI criAtomExTween_GetValue(CriAtomExTweenHn tween);
15489
15500 void CRIAPI criAtomExTween_MoveTo(CriAtomExTweenHn tween, CriUint16 time_ms, CriFloat32 value);
15501
15512 void CRIAPI criAtomExTween_MoveFrom(CriAtomExTweenHn tween, CriUint16 time_ms, CriFloat32 value);
15513
15521 void CRIAPI criAtomExTween_Stop(CriAtomExTweenHn tween);
15522
15533 void CRIAPI criAtomExTween_Reset(CriAtomExTweenHn tween);
15534
15535
15536
15537
15565 void CRIAPI criAtomEx_SetVoiceEventCallback(CriAtomExVoiceEventCbFunc func, void *obj);
15566
15591 void CRIAPI criAtomEx_EnumerateVoiceInfos(CriAtomExVoiceInfoCbFunc func, void *obj);
15592
15611 void CRIAPI criAtomEx_SetMonitoringVoiceStopCallback(CriAtomExMonitoringVoiceStopCbFunc func, void *obj);
15612
15625 void CRIAPI criAtomEx_SetMonitoringVoiceStopPlaybackId(CriAtomExPlaybackId playback_id);
15626
15627
15628
15629
15630
15662 CriSint32 CRIAPI criAtomExSoundObject_CalculateWorkSize(
15663 const CriAtomExSoundObjectConfig *config);
15664
15677 CriAtomExSoundObjectHn CRIAPI criAtomExSoundObject_Create(
15678 const CriAtomExSoundObjectConfig *config, void *work, CriSint32 work_size);
15679
15690 void CRIAPI criAtomExSoundObject_Destroy(CriAtomExSoundObjectHn sound_object);
15691
15714 void CRIAPI criAtomExSoundObject_AddPlayer(CriAtomExSoundObjectHn sound_object, CriAtomExPlayerHn player);
15715
15731 void CRIAPI criAtomExSoundObject_DeletePlayer(CriAtomExSoundObjectHn sound_object, CriAtomExPlayerHn player);
15732
15747 void CRIAPI criAtomExSoundObject_DeleteAllPlayers(CriAtomExSoundObjectHn sound_object);
15748
15749
15750
15751
15752
15753
15754
15755
15756
15757 CriSint64 CRIAPI criAtomExPlayer_GetTimeReal(CriAtomExPlayerHn player);
15758 CriSint64 CRIAPI criAtomExPlayback_GetTimeReal(CriAtomExPlaybackId id);
15759 void CRIAPI criAtomExPlayback_EnumerateAtomPlayers(
15760 CriAtomExPlaybackId id, CriAtomPlayerCbFunc func, void* obj);
15761 void CRIAPI criAtomEx3dListener_GetFocusPoint(CriAtomEx3dListenerHn ex_3d_listener, CriAtomExVector *focus_point);
15762 CriFloat32 CRIAPI criAtomEx3dListener_GetDistanceFocusLevel(CriAtomEx3dListenerHn ex_3d_listener);
15763 CriFloat32 CRIAPI criAtomEx3dListener_GetDirectionFocusLevel(CriAtomEx3dListenerHn ex_3d_listener);
15764 CriAtomExAcbHn CRIAPI criAtomExAcb_GetCurrentAcb(void);
15765 void CRIAPI criAtomEx3dSource_SetAttenuationDistanceSetting(CriAtomEx3dSourceHn ex_3d_source, CriBool sw);
15766 CriBool CRIAPI criAtomEx3dSource_GetAttenuationDistanceSetting(const CriAtomEx3dSourceHn ex_3d_source);
15767
15768 #ifdef __cplusplus
15769 }
15770 #endif
15771
15772
15773 #define criAtomExPlayer_SetAisacById(player, control_id, control_value) \
15774 criAtomExPlayer_SetAisacControlById(player, control_id, control_value)
15775 #define criAtomExPlayer_SetAisacByName(player, control_name, control_value) \
15776 criAtomExPlayer_SetAisacControlByName(player, control_name, control_value)
15777 #define criAtomExPlayer_GetAisacById(player, control_id) \
15778 criAtomExPlayer_GetAisacControlById(player, control_id)
15779 #define criAtomExPlayer_GetAisacByName(player, control_name) \
15780 criAtomExPlayer_GetAisacControlByName(player,control_name)
15781 #define criAtomExPlayback_GetAisacById(playback_id, control_id, control_value) \
15782 criAtomExPlayback_GetAisacControlById(playback_id, control_id, control_value)
15783 #define criAtomExPlayback_GetAisacByName(playback_id, control_name, control_value) \
15784 criAtomExPlayback_GetAisacControlByName(playback_id, control_name, control_value)
15785 #define criAtomExCategory_SetAisacById(id, control_id, control_value) \
15786 criAtomExCategory_SetAisacControlById(id, control_id, control_value)
15787 #define criAtomExCategory_SetAisacByName(name, control_name, control_value) \
15788 criAtomExCategory_SetAisacControlByName(name, control_name, control_value)
15789
15790
15791
15792 #ifdef __cplusplus
15793 extern "C" {
15794 #endif
15795
15796
15802 void CRIAPI criAtomExPlayer_SetBusSendLevel(
15803 CriAtomExPlayerHn player, CriSint32 bus_index, CriFloat32 level);
15804
15810 void CRIAPI criAtomExPlayer_SetBusSendLevelOffset(
15811 CriAtomExPlayerHn player, CriSint32 bus_index, CriFloat32 level_offset);
15812
15818 void CRIAPI criAtomEx_GetNumUsedVirtualVoices(CriSint32 *cur_num, CriSint32 *limit);
15819
15825 void CRIAPI criAtomEx_GetNumUsedSequences(CriSint32 *cur_num, CriSint32 *limit);
15826
15832 void CRIAPI criAtomEx_GetNumUsedSequenceTracks(CriSint32 *cur_num, CriSint32 *limit);
15833
15839 void CRIAPI criAtomEx_GetNumUsedSequenceTrackItems(CriSint32 *cur_num, CriSint32 *limit);
15840
15846 void CRIAPI criAtomEx_GetNumUsedAisacAutoModulations(CriSint32 *cur_num, CriSint32 *limit);
15847
15853 void CRIAPI criAtomEx3dSource_SetConeOrientation(CriAtomEx3dSourceHn ex_3d_source, const CriAtomExVector *cone_orient);
15854
15855
15856
15857 #ifdef __cplusplus
15858 }
15859 #endif
15860
15865 #endif
15866
15867 -stdin