Holger Hans Peter Freyther wrote: hi holger,
+#define MNCC_RTP_CREATE 0x0204 +#define MNCC_RTP_CONNECT 0x0205 +#define MNCC_RTP_FREE 0x0206 Increase the version. We have a uint32_t for the version number and it will take a while to overflow it. i already did it. but thanks for reminding me, so i did it also for the attached patch: 0001-Complete-definitions-for-all-speech-traffic-frames-a.patch + RTP_PROXY, /* forward from BTS to BTS */ + RTP_RECV_UPSTREAM, /* forward to L4 application */ + RTP_RECV_L4, /* receive RTP frames from L4 application */ L4? is that the best name you can think off? for signalling messages (mncc application) it makes sense. for rtp it might lead to misunderstanding i changed that in the attached patch: 0006-Adding-traffic-forwarding-via-RTP-to-remote-applicat.patch There are already methods for "is IP based BTS", "is E1 based BTS". Couldn't you use them here? makes sense. i updated the patch above using this is_e1_bts() macro. + /* L4 uses RTP for this transaction, we send our data via RTP, + * otherwise we send it through MNCC interface */ + if (msg_type == GSM_TCHF_FRAME + || msg_type == GSM_TCHF_FRAME_EFR + || msg_type == GSM_TCHH_FRAME + || msg_type == GSM_TCH_FRAME_AMR + || msg_type == GSM_BAD_FRAME) {
I have seen lchan->type checks and message type checks like these as well. Could you create a predicate function that check mncc_is_audio_message(), or lchan_voice_chan? this was already done mncc_is_data_frame() check in a later patch of jolly/testing branch. i rebased my testing branch, so the patch is prior the other patches now: (see 0002-Use-helper-function-to-check-if-an-MNCC-frame-is-dat.patch).
the other patches changed a bit, due to rebase and some other improvements. i do not want to post them again, so please refer to jolly/testing branch. if wanted, i will post them. best regards, andreas