6#include <osmocom/core/utils.h>
8extern const uint16_t gsm610_bitorder[];
9extern const uint16_t gsm620_unvoiced_bitorder[];
10extern const uint16_t gsm620_voiced_bitorder[];
11extern const uint16_t gsm660_bitorder[];
13extern const uint16_t gsm690_12_2_bitorder[];
14extern const uint16_t gsm690_10_2_bitorder[];
15extern const uint16_t gsm690_7_95_bitorder[];
16extern const uint16_t gsm690_7_4_bitorder[];
17extern const uint16_t gsm690_6_7_bitorder[];
18extern const uint16_t gsm690_5_9_bitorder[];
19extern const uint16_t gsm690_5_15_bitorder[];
20extern const uint16_t gsm690_4_75_bitorder[];
22extern const struct value_string osmo_amr_type_names[];
35 AMR_TDMA_EFR_SID = 10,
40enum osmo_amr_quality {
49static inline bool osmo_amr_is_speech(
enum osmo_amr_type ft)
66bool osmo_fr_check_sid(uint8_t *rtp_payload,
size_t payload_len);
67bool osmo_hr_check_sid(uint8_t *rtp_payload,
size_t payload_len);
68int osmo_amr_rtp_enc(uint8_t *payload, uint8_t cmr,
enum osmo_amr_type ft,
69 enum osmo_amr_quality bfi);
70int osmo_amr_rtp_dec(
const uint8_t *payload,
int payload_len, uint8_t *cmr,
71 int8_t *cmi,
enum osmo_amr_type *ft,
72 enum osmo_amr_quality *bfi, int8_t *sti);