<!-- ##### SECTION Title ##### -->
svc-media-interfaces

<!-- ##### SECTION Short_Description ##### -->


<!-- ##### SECTION Long_Description ##### -->
<para>

</para>

<!-- ##### SECTION See_Also ##### -->
<para>

</para>

<!-- ##### SECTION Stability_Level ##### -->


<!-- ##### SECTION Image ##### -->


<!-- ##### STRUCT TpSvcMediaSessionHandler ##### -->
<para>

</para>


<!-- ##### SIGNAL TpSvcMediaSessionHandler::new-stream-handler ##### -->
<para>

</para>

@tpsvcmediasessionhandler: the object which received the signal.
@arg1: 
@arg2: 
@arg3: 
@arg4: 

<!-- ##### STRUCT TpSvcMediaSessionHandlerClass ##### -->
<para>

</para>


<!-- ##### USER_FUNCTION tp_svc_media_session_handler_error_impl ##### -->
<para>

</para>

@self: 
@in_Error_Code: 
@in_Message: 
@context: 


<!-- ##### FUNCTION tp_svc_media_session_handler_implement_error ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_session_handler_return_from_error ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_session_handler_ready_impl ##### -->
<para>

</para>

@self: 
@context: 


<!-- ##### FUNCTION tp_svc_media_session_handler_implement_ready ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_session_handler_return_from_ready ##### -->
<para>

</para>

@context: 


<!-- ##### FUNCTION tp_svc_media_session_handler_emit_new_stream_handler ##### -->
<para>

</para>

@instance: 
@arg_Stream_Handler: 
@arg_ID: 
@arg_Media_Type: 
@arg_Direction: 


<!-- ##### STRUCT TpSvcMediaStreamHandler ##### -->
<para>

</para>


<!-- ##### SIGNAL TpSvcMediaStreamHandler::add-remote-candidate ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::close ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.

<!-- ##### SIGNAL TpSvcMediaStreamHandler::remove-remote-candidate ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-active-candidate-pair ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 
@arg2: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-remote-candidate-list ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-remote-codecs ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-stream-held ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-stream-playing ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::set-stream-sending ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::start-telephony-event ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.
@arg1: 

<!-- ##### SIGNAL TpSvcMediaStreamHandler::stop-telephony-event ##### -->
<para>

</para>

@tpsvcmediastreamhandler: the object which received the signal.

<!-- ##### STRUCT TpSvcMediaStreamHandlerClass ##### -->
<para>

</para>


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_codec_choice_impl ##### -->
<para>

</para>

@self: 
@in_Codec_ID: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_codec_choice ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_codec_choice ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_error_impl ##### -->
<para>

</para>

@self: 
@in_Error_Code: 
@in_Message: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_error ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_error ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_native_candidates_prepared_impl ##### -->
<para>

</para>

@self: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_native_candidates_prepared ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_native_candidates_prepared ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_new_active_candidate_pair_impl ##### -->
<para>

</para>

@self: 
@in_Native_Candidate_ID: 
@in_Remote_Candidate_ID: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_new_active_candidate_pair ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_new_active_candidate_pair ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_new_native_candidate_impl ##### -->
<para>

</para>

@self: 
@in_Candidate_ID: 
@in_Transports: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_new_native_candidate ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_new_native_candidate ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_ready_impl ##### -->
<para>

</para>

@self: 
@in_Codecs: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_ready ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_ready ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_set_local_codecs_impl ##### -->
<para>

</para>

@self: 
@in_Codecs: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_set_local_codecs ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_set_local_codecs ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_stream_state_impl ##### -->
<para>

</para>

@self: 
@in_State: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_stream_state ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_stream_state ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_supported_codecs_impl ##### -->
<para>

</para>

@self: 
@in_Codecs: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_supported_codecs ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_supported_codecs ##### -->
<para>

</para>

@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_add_remote_candidate ##### -->
<para>

</para>

@instance: 
@arg_Candidate_ID: 
@arg_Transports: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_close ##### -->
<para>

</para>

@instance: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_remove_remote_candidate ##### -->
<para>

</para>

@instance: 
@arg_Candidate_ID: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_active_candidate_pair ##### -->
<para>

</para>

@instance: 
@arg_Native_Candidate_ID: 
@arg_Remote_Candidate_ID: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_remote_candidate_list ##### -->
<para>

</para>

@instance: 
@arg_Remote_Candidates: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_remote_codecs ##### -->
<para>

</para>

@instance: 
@arg_Codecs: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_stream_playing ##### -->
<para>

</para>

@instance: 
@arg_Playing: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_stream_sending ##### -->
<para>

</para>

@instance: 
@arg_Sending: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_start_telephony_event ##### -->
<para>

</para>

@instance: 
@arg_Event: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_stop_telephony_event ##### -->
<para>

</para>

@instance: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_emit_set_stream_held ##### -->
<para>

</para>

@instance: 
@arg_Held: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_hold_state_impl ##### -->
<para>

</para>

@self: 
@in_Held: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_hold_state ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_unhold_failure ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_hold_state ##### -->
<para>

</para>

@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_unhold_failure ##### -->
<para>

</para>

@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_unhold_failure_impl ##### -->
<para>

</para>

@self: 
@context: 


<!-- ##### USER_FUNCTION tp_svc_media_stream_handler_codecs_updated_impl ##### -->
<para>

</para>

@self: 
@in_Codecs: 
@context: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_implement_codecs_updated ##### -->
<para>

</para>

@klass: 
@impl: 


<!-- ##### FUNCTION tp_svc_media_stream_handler_return_from_codecs_updated ##### -->
<para>

</para>

@context: 


