Go to the documentation of this file.00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022
00023
00024
00025
00026
00027
00033 #ifndef OPUS_DEFINES_H
00034 #define OPUS_DEFINES_H
00035
00036 #include "opus_types.h"
00037
00038 #ifdef __cplusplus
00039 extern "C" {
00040 #endif
00041
00046 #define OPUS_OK 0
00047
00048 #define OPUS_BAD_ARG -1
00049
00050 #define OPUS_BUFFER_TOO_SMALL -2
00051
00052 #define OPUS_INTERNAL_ERROR -3
00053
00054 #define OPUS_INVALID_PACKET -4
00055
00056 #define OPUS_UNIMPLEMENTED -5
00057
00058 #define OPUS_INVALID_STATE -6
00059
00060 #define OPUS_ALLOC_FAIL -7
00061
00066 #ifndef OPUS_EXPORT
00067 # if defined(__GNUC__) && defined(OPUS_BUILD)
00068 # define OPUS_EXPORT __attribute__ ((visibility ("default")))
00069 # elif defined(WIN32) && !defined(__MINGW32__)
00070 # ifdef OPUS_BUILD
00071 # define OPUS_EXPORT __declspec(dllexport)
00072 # else
00073 # define OPUS_EXPORT
00074 # endif
00075 # else
00076 # define OPUS_EXPORT
00077 # endif
00078 #endif
00079
00080 # if !defined(OPUS_GNUC_PREREQ)
00081 # if defined(__GNUC__)&&defined(__GNUC_MINOR__)
00082 # define OPUS_GNUC_PREREQ(_maj,_min) \
00083 ((__GNUC__<<16)+__GNUC_MINOR__>=((_maj)<<16)+(_min))
00084 # else
00085 # define OPUS_GNUC_PREREQ(_maj,_min) 0
00086 # endif
00087 # endif
00088
00089 #if (!defined(__STDC_VERSION__) || (__STDC_VERSION__ < 199901L) )
00090 # if OPUS_GNUC_PREREQ(3,0)
00091 # define OPUS_RESTRICT __restrict__
00092 # elif (defined(_MSC_VER) && _MSC_VER >= 1400)
00093 # define OPUS_RESTRICT __restrict
00094 # else
00095 # define OPUS_RESTRICT
00096 # endif
00097 #else
00098 # define OPUS_RESTRICT restrict
00099 #endif
00100
00104 #if defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4)
00105 # define OPUS_WARN_UNUSED_RESULT __attribute__ ((__warn_unused_result__))
00106 #else
00107 # define OPUS_WARN_UNUSED_RESULT
00108 #endif
00109 #if !defined(OPUS_BUILD) && defined(__GNUC__) && OPUS_GNUC_PREREQ(3, 4)
00110 # define OPUS_ARG_NONNULL(_x) __attribute__ ((__nonnull__(_x)))
00111 #else
00112 # define OPUS_ARG_NONNULL(_x)
00113 #endif
00114
00118 #define OPUS_SET_APPLICATION_REQUEST 4000
00119 #define OPUS_GET_APPLICATION_REQUEST 4001
00120 #define OPUS_SET_BITRATE_REQUEST 4002
00121 #define OPUS_GET_BITRATE_REQUEST 4003
00122 #define OPUS_SET_MAX_BANDWIDTH_REQUEST 4004
00123 #define OPUS_GET_MAX_BANDWIDTH_REQUEST 4005
00124 #define OPUS_SET_VBR_REQUEST 4006
00125 #define OPUS_GET_VBR_REQUEST 4007
00126 #define OPUS_SET_BANDWIDTH_REQUEST 4008
00127 #define OPUS_GET_BANDWIDTH_REQUEST 4009
00128 #define OPUS_SET_COMPLEXITY_REQUEST 4010
00129 #define OPUS_GET_COMPLEXITY_REQUEST 4011
00130 #define OPUS_SET_INBAND_FEC_REQUEST 4012
00131 #define OPUS_GET_INBAND_FEC_REQUEST 4013
00132 #define OPUS_SET_PACKET_LOSS_PERC_REQUEST 4014
00133 #define OPUS_GET_PACKET_LOSS_PERC_REQUEST 4015
00134 #define OPUS_SET_DTX_REQUEST 4016
00135 #define OPUS_GET_DTX_REQUEST 4017
00136 #define OPUS_SET_VBR_CONSTRAINT_REQUEST 4020
00137 #define OPUS_GET_VBR_CONSTRAINT_REQUEST 4021
00138 #define OPUS_SET_FORCE_CHANNELS_REQUEST 4022
00139 #define OPUS_GET_FORCE_CHANNELS_REQUEST 4023
00140 #define OPUS_SET_SIGNAL_REQUEST 4024
00141 #define OPUS_GET_SIGNAL_REQUEST 4025
00142 #define OPUS_GET_LOOKAHEAD_REQUEST 4027
00143
00144 #define OPUS_GET_SAMPLE_RATE_REQUEST 4029
00145 #define OPUS_GET_FINAL_RANGE_REQUEST 4031
00146 #define OPUS_GET_PITCH_REQUEST 4033
00147 #define OPUS_SET_GAIN_REQUEST 4034
00148 #define OPUS_GET_GAIN_REQUEST 4045
00149 #define OPUS_SET_LSB_DEPTH_REQUEST 4036
00150 #define OPUS_GET_LSB_DEPTH_REQUEST 4037
00151
00152 #define OPUS_GET_LAST_PACKET_DURATION_REQUEST 4039
00153
00154
00155
00156
00157 #define __opus_check_int(x) (((void)((x) == (opus_int32)0)), (opus_int32)(x))
00158 #define __opus_check_int_ptr(ptr) ((ptr) + ((ptr) - (opus_int32*)(ptr)))
00159 #define __opus_check_uint_ptr(ptr) ((ptr) + ((ptr) - (opus_uint32*)(ptr)))
00160
00166
00167 #define OPUS_AUTO -1000
00168 #define OPUS_BITRATE_MAX -1
00172 #define OPUS_APPLICATION_VOIP 2048
00173
00175 #define OPUS_APPLICATION_AUDIO 2049
00176
00178 #define OPUS_APPLICATION_RESTRICTED_LOWDELAY 2051
00179
00180 #define OPUS_SIGNAL_VOICE 3001
00181 #define OPUS_SIGNAL_MUSIC 3002
00182 #define OPUS_BANDWIDTH_NARROWBAND 1101
00183 #define OPUS_BANDWIDTH_MEDIUMBAND 1102
00184 #define OPUS_BANDWIDTH_WIDEBAND 1103
00185 #define OPUS_BANDWIDTH_SUPERWIDEBAND 1104
00186 #define OPUS_BANDWIDTH_FULLBAND 1105
00221 #define OPUS_SET_COMPLEXITY(x) OPUS_SET_COMPLEXITY_REQUEST, __opus_check_int(x)
00222
00227 #define OPUS_GET_COMPLEXITY(x) OPUS_GET_COMPLEXITY_REQUEST, __opus_check_int_ptr(x)
00228
00240 #define OPUS_SET_BITRATE(x) OPUS_SET_BITRATE_REQUEST, __opus_check_int(x)
00241
00248 #define OPUS_GET_BITRATE(x) OPUS_GET_BITRATE_REQUEST, __opus_check_int_ptr(x)
00249
00264 #define OPUS_SET_VBR(x) OPUS_SET_VBR_REQUEST, __opus_check_int(x)
00265
00275 #define OPUS_GET_VBR(x) OPUS_GET_VBR_REQUEST, __opus_check_int_ptr(x)
00276
00293 #define OPUS_SET_VBR_CONSTRAINT(x) OPUS_SET_VBR_CONSTRAINT_REQUEST, __opus_check_int(x)
00294
00303 #define OPUS_GET_VBR_CONSTRAINT(x) OPUS_GET_VBR_CONSTRAINT_REQUEST, __opus_check_int_ptr(x)
00304
00318 #define OPUS_SET_FORCE_CHANNELS(x) OPUS_SET_FORCE_CHANNELS_REQUEST, __opus_check_int(x)
00319
00328 #define OPUS_GET_FORCE_CHANNELS(x) OPUS_GET_FORCE_CHANNELS_REQUEST, __opus_check_int_ptr(x)
00329
00346 #define OPUS_SET_MAX_BANDWIDTH(x) OPUS_SET_MAX_BANDWIDTH_REQUEST, __opus_check_int(x)
00347
00359 #define OPUS_GET_MAX_BANDWIDTH(x) OPUS_GET_MAX_BANDWIDTH_REQUEST, __opus_check_int_ptr(x)
00360
00378 #define OPUS_SET_BANDWIDTH(x) OPUS_SET_BANDWIDTH_REQUEST, __opus_check_int(x)
00379
00390 #define OPUS_SET_SIGNAL(x) OPUS_SET_SIGNAL_REQUEST, __opus_check_int(x)
00391
00400 #define OPUS_GET_SIGNAL(x) OPUS_GET_SIGNAL_REQUEST, __opus_check_int_ptr(x)
00401
00402
00417 #define OPUS_SET_APPLICATION(x) OPUS_SET_APPLICATION_REQUEST, __opus_check_int(x)
00418
00431 #define OPUS_GET_APPLICATION(x) OPUS_GET_APPLICATION_REQUEST, __opus_check_int_ptr(x)
00432
00439 #define OPUS_GET_SAMPLE_RATE(x) OPUS_GET_SAMPLE_RATE_REQUEST, __opus_check_int_ptr(x)
00440
00454 #define OPUS_GET_LOOKAHEAD(x) OPUS_GET_LOOKAHEAD_REQUEST, __opus_check_int_ptr(x)
00455
00465 #define OPUS_SET_INBAND_FEC(x) OPUS_SET_INBAND_FEC_REQUEST, __opus_check_int(x)
00466
00474 #define OPUS_GET_INBAND_FEC(x) OPUS_GET_INBAND_FEC_REQUEST, __opus_check_int_ptr(x)
00475
00483 #define OPUS_SET_PACKET_LOSS_PERC(x) OPUS_SET_PACKET_LOSS_PERC_REQUEST, __opus_check_int(x)
00484
00489 #define OPUS_GET_PACKET_LOSS_PERC(x) OPUS_GET_PACKET_LOSS_PERC_REQUEST, __opus_check_int_ptr(x)
00490
00500 #define OPUS_SET_DTX(x) OPUS_SET_DTX_REQUEST, __opus_check_int(x)
00501
00509 #define OPUS_GET_DTX(x) OPUS_GET_DTX_REQUEST, __opus_check_int_ptr(x)
00510
00516 #define OPUS_SET_LSB_DEPTH(x) OPUS_SET_LSB_DEPTH_REQUEST, __opus_check_int(x)
00517
00522 #define OPUS_GET_LSB_DEPTH(x) OPUS_GET_LSB_DEPTH_REQUEST, __opus_check_int_ptr(x)
00523
00527 #define OPUS_GET_LAST_PACKET_DURATION(x) OPUS_GET_LAST_PACKET_DURATION_REQUEST, __opus_check_int_ptr(x)
00528
00569 #define OPUS_RESET_STATE 4028
00570
00579 #define OPUS_GET_FINAL_RANGE(x) OPUS_GET_FINAL_RANGE_REQUEST, __opus_check_uint_ptr(x)
00580
00591 #define OPUS_GET_PITCH(x) OPUS_GET_PITCH_REQUEST, __opus_check_int_ptr(x)
00592
00605 #define OPUS_GET_BANDWIDTH(x) OPUS_GET_BANDWIDTH_REQUEST, __opus_check_int_ptr(x)
00606
00624 #define OPUS_SET_GAIN(x) OPUS_SET_GAIN_REQUEST, __opus_check_int(x)
00625
00629 #define OPUS_GET_GAIN(x) OPUS_GET_GAIN_REQUEST, __opus_check_int_ptr(x)
00630
00642 OPUS_EXPORT const char *opus_strerror(int error);
00643
00648 OPUS_EXPORT const char *opus_get_version_string(void);
00651 #ifdef __cplusplus
00652 }
00653 #endif
00654
00655 #endif