SWITCH_DECLARE(void) switch_core_media_set_resolveice(switch_bool_t resolve_ice);
SWITCH_DECLARE(switch_bool_t) switch_core_media_has_resolveice(void);
+typedef struct switch_rtp_engine_s switch_rtp_engine_t;
+SWITCH_DECLARE(switch_rtp_engine_t *) switch_core_media_get_engine(switch_core_session_t *session, int media_type);
+SWITCH_DECLARE(switch_codec_t*) switch_core_media_get_codec(switch_core_session_t *session, switch_media_type_t type);
+
SWITCH_END_EXTERN_C
#endif
/* For Emacs:
};
-typedef struct switch_rtp_engine_s {
+struct switch_rtp_engine_s {
switch_secure_settings_t ssec[CRYPTO_INVALID+1];
switch_rtp_crypto_key_type_t crypto_type;
void *engine_user_data;
int8_t engine_function_running;
switch_frame_buffer_t *write_fb;
-} switch_rtp_engine_t;
+};
#define MAX_REJ_STREAMS 10
return status;
}
+SWITCH_DECLARE(switch_rtp_engine_t *) switch_core_media_get_engine(switch_core_session_t *session, int media_type)
+{
+ if (!session) return NULL;
+
+ return &session->media_handle->engines[media_type];
+}
+
+SWITCH_DECLARE(switch_codec_t*) switch_core_media_get_codec(switch_core_session_t *session, switch_media_type_t type)
+{
+ switch_rtp_engine_t *engine = switch_core_media_get_engine(session, type);
+
+ if (!engine) return NULL;
+ return &engine->read_codec;
+}
/* For Emacs:
* Local Variables: