blob: 3085ad4f9685572050bdca1fd53612c42958f8cf [file] [log] [blame]
Philipp Maier844876f2018-07-13 09:17:07 +02001#pragma once
2
Neels Hofmeyr31f525e2018-05-14 18:14:15 +02003#include <stdbool.h>
4#include <osmocom/gsm/protocol/gsm_04_08.h>
Philipp Maier5bc43cd2018-07-13 16:14:18 +02005
Neels Hofmeyr31f525e2018-05-14 18:14:15 +02006struct gsm0808_channel_type;
7struct gsm0808_speech_codec_list;
8struct gsm_audio_support;
9struct bts_codec_conf;
Philipp Maier67e47c62018-09-13 12:05:51 +020010struct bsc_msc_data;
11struct gsm_bts;
Neels Hofmeyr31f525e2018-05-14 18:14:15 +020012
13int match_codec_pref(enum gsm48_chan_mode *chan_mode,
14 bool *full_rate,
Philipp Maierc9a4f692018-09-21 14:21:50 +020015 uint16_t *s15_s0,
Neels Hofmeyr31f525e2018-05-14 18:14:15 +020016 const struct gsm0808_channel_type *ct,
17 const struct gsm0808_speech_codec_list *scl,
Philipp Maierc9a4f692018-09-21 14:21:50 +020018 const struct bsc_msc_data *msc,
19 const struct gsm_bts *bts);
Philipp Maier67e47c62018-09-13 12:05:51 +020020
21void gen_bss_supported_codec_list(struct gsm0808_speech_codec_list *scl,
22 const struct bsc_msc_data *msc,
23 const struct gsm_bts *bts);