| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
Media Format API. More...
#include "asterisk/codec.h"

Go to the source code of this file.
| Data Structures | |
| struct | ast_format_interface | 
| Optional format interface to extend format operations.  More... | |
| Macros | |
| #define | ast_format_interface_register(codec, interface) __ast_format_interface_register(codec, interface, AST_MODULE_SELF) | 
| Register a format interface for use with the provided codec. | |
| Enumerations | |
| enum | ast_format_cmp_res { AST_FORMAT_CMP_EQUAL = 0 , AST_FORMAT_CMP_NOT_EQUAL , AST_FORMAT_CMP_SUBSET } | 
| Format comparison results.  More... | |
| Functions | |
| int | __ast_format_interface_register (const char *codec, const struct ast_format_interface *interface, struct ast_module *mod) | 
| Register a format interface for use with the provided codec. | |
| const void * | ast_format_attribute_get (const struct ast_format *format, const char *name) | 
| struct ast_format * | ast_format_attribute_set (const struct ast_format *format, const char *name, const char *value) | 
| Set an attribute on a format to a specific value. | |
| int | ast_format_can_be_smoothed (const struct ast_format *format) | 
| Get whether or not the format can be smoothed. | |
| struct ast_format * | ast_format_clone (const struct ast_format *format) | 
| Clone an existing media format so it can be modified. | |
| enum ast_format_cmp_res | ast_format_cmp (const struct ast_format *format1, const struct ast_format *format2) | 
| Compare two formats. | |
| struct ast_format * | ast_format_create (struct ast_codec *codec) | 
| Create a new media format. | |
| struct ast_format * | ast_format_create_named (const char *format_name, struct ast_codec *codec) | 
| Create a new media format with a specific name. | |
| unsigned int | ast_format_determine_length (const struct ast_format *format, unsigned int samples) | 
| Get the length (in milliseconds) for the format with a given number of samples. | |
| void | ast_format_generate_sdp_fmtp (const struct ast_format *format, unsigned int payload, struct ast_str **str) | 
| This function is used to produce an fmtp SDP line for an Asterisk format. The attributes present on the Asterisk format are translated into the SDP equivalent. | |
| void * | ast_format_get_attribute_data (const struct ast_format *format) | 
| Get the attribute data on a format. | |
| unsigned int | ast_format_get_channel_count (const struct ast_format *format) | 
| Get the channel count on a format. | |
| struct ast_codec * | ast_format_get_codec (const struct ast_format *format) | 
| Get the codec associated with a format. | |
| unsigned int | ast_format_get_codec_id (const struct ast_format *format) | 
| Get the codec identifier associated with a format. | |
| const char * | ast_format_get_codec_name (const struct ast_format *format) | 
| Get the codec name associated with a format. | |
| unsigned int | ast_format_get_default_ms (const struct ast_format *format) | 
| Get the default framing size (in milliseconds) for a format. | |
| unsigned int | ast_format_get_maximum_ms (const struct ast_format *format) | 
| Get the maximum amount of media carried in this format. | |
| unsigned int | ast_format_get_minimum_bytes (const struct ast_format *format) | 
| Get the minimum number of bytes expected in a frame for this format. | |
| unsigned int | ast_format_get_minimum_ms (const struct ast_format *format) | 
| Get the minimum amount of media carried in this format. | |
| const char * | ast_format_get_name (const struct ast_format *format) | 
| Get the name associated with a format. | |
| unsigned int | ast_format_get_sample_rate (const struct ast_format *format) | 
| Get the sample rate of a media format. | |
| int | ast_format_get_smoother_flags (const struct ast_format *format) | 
| Get smoother flags for this format. | |
| enum ast_media_type | ast_format_get_type (const struct ast_format *format) | 
| Get the media type of a format. | |
| int | ast_format_init (void) | 
| Initialize media format support. | |
| struct ast_format * | ast_format_joint (const struct ast_format *format1, const struct ast_format *format2) | 
| Get a common joint capability between two formats. | |
| struct ast_format * | ast_format_parse_sdp_fmtp (const struct ast_format *format, const char *attributes) | 
| This function is used to have a media format aware module parse and interpret SDP attribute information. Once interpreted this information is stored on the format itself using Asterisk format attributes. | |
| struct stasis_message_type * | ast_format_register_type (void) | 
| Get the message type used for signaling a format registration. | |
| void | ast_format_set_attribute_data (struct ast_format *format, void *attribute_data) | 
| Set the attribute data on a format. | |
| void | ast_format_set_channel_count (struct ast_format *format, unsigned int channel_count) | 
| Set the channel count on a format. | |
| struct stasis_message_type * | ast_format_unregister_type (void) | 
| Get the message type used for signaling a format unregistration. | |
Media Format API.
Definition in file format.h.
| #define ast_format_interface_register | ( | codec, | |
| interface | |||
| ) | __ast_format_interface_register(codec, interface, AST_MODULE_SELF) | 
| enum ast_format_cmp_res | 
Format comparison results.
Definition at line 34 of file format.h.
| int __ast_format_interface_register | ( | const char * | codec, | 
| const struct ast_format_interface * | interface, | ||
| struct ast_module * | mod | ||
| ) | 
Register a format interface for use with the provided codec.
| codec | The name of codec the interface is applicable to | 
| interface | A pointer to the interface implementation | 
| mod | The module this format interface is provided by | 
| 0 | success | 
| -1 | failure | 
Definition at line 90 of file format.c.
References AO2_ALLOC_OPT_LOCK_NOLOCK, ao2_alloc_options, ao2_find, ao2_link_flags, ao2_ref, ast_log, ast_module_shutdown_ref, ast_verb, format_interface::codec, ast_format_interface::format_clone, ast_format_interface::format_destroy, format_interface::interface, interfaces, lock, LOG_ERROR, NULL, OBJ_NOLOCK, OBJ_SEARCH_KEY, and SCOPED_AO2WRLOCK.
Referenced by load_module().
| const void * ast_format_attribute_get | ( | const struct ast_format * | format, | 
| const char * | name | ||
| ) | 
| format | The format to retrieve the attribute from | 
| name | Attribute name | 
| non-NULL | the attribute value | 
| NULL | the attribute does not exist or is unset | 
Definition at line 267 of file format.c.
References ao2_find, ao2_ref, ast_format::codec, ast_format_interface::format_attribute_get, format_interface::interface, interfaces, name, ast_codec::name, NULL, and OBJ_SEARCH_KEY.
Referenced by AST_TEST_DEFINE(), and AST_TEST_DEFINE().
| struct ast_format * ast_format_attribute_set | ( | const struct ast_format * | format, | 
| const char * | name, | ||
| const char * | value | ||
| ) | 
Set an attribute on a format to a specific value.
| format | The format to set the attribute on | 
| name | Attribute name | 
| value | Attribute value | 
| non-NULL | success | 
| NULL | failure | 
Definition at line 248 of file format.c.
References ao2_bump, ao2_find, ao2_ref, interfaces, name, OBJ_SEARCH_KEY, and value.
Referenced by AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), and AST_TEST_DEFINE().
| int ast_format_can_be_smoothed | ( | const struct ast_format * | format | ) | 
Get whether or not the format can be smoothed.
| format | The media format | 
| 0 | the format cannot be smoothed | 
| 1 | the format can be smoothed | 
Definition at line 344 of file format.c.
References ast_format::codec, and ast_codec::smooth.
Referenced by ast_rtp_write(), and multicast_rtp_write().
| struct ast_format * ast_format_clone | ( | const struct ast_format * | format | ) | 
Clone an existing media format so it can be modified.
| format | The existing media format | 
| non-NULL | success | 
| NULL | failure | 
Definition at line 180 of file format.c.
References ao2_ref, ast_format_create_named(), ast_format::codec, ast_format_interface::format_clone, ast_format::interface, ast_format::name, and NULL.
Referenced by AST_TEST_DEFINE(), celt_getjoint(), celt_parse_sdp_fmtp(), celt_set(), h263_getjoint(), h263_parse_sdp_fmtp(), h264_getjoint(), h264_parse_sdp_fmtp(), ilbc_getjoint(), ilbc_parse_sdp_fmtp(), opus_getjoint(), opus_parse_sdp_fmtp(), opus_set(), silk_getjoint(), silk_parse_sdp_fmtp(), silk_set(), test_core_format_attribute_set(), test_core_format_get_joint(), test_core_format_parse_sdp_fmtp(), vp8_getjoint(), vp8_parse_sdp_fmtp(), and vp8_set().
| enum ast_format_cmp_res ast_format_cmp | ( | const struct ast_format * | format1, | 
| const struct ast_format * | format2 | ||
| ) | 
Compare two formats.
Definition at line 201 of file format.c.
References AST_FORMAT_CMP_EQUAL, AST_FORMAT_CMP_NOT_EQUAL, ast_format::codec, ast_format_interface::format_cmp, if(), and NULL.
Referenced by __ast_read(), __ast_smoother_feed(), adsi_careful_send(), alarmreceiver_exec(), ast_audiosocket_send_frame(), ast_bridge_channel_restore_formats(), ast_channel_make_compatible_helper(), ast_dsp_process(), ast_dsp_silence_noise_with_energy(), ast_format_cache_is_slinear(), ast_format_cap_get_compatible_format(), ast_format_cap_get_format_framing(), ast_format_cap_iscompatible_format(), ast_format_compatibility_format2bitfield(), ast_format_joint(), ast_frame_slinear_sum(), ast_read_generator_actions(), ast_read_image(), ast_rtp_codecs_payload_code_sample_rate(), ast_rtp_codecs_payload_code_tx_sample_rate(), ast_rtp_codecs_payloads_set_rtpmap_type_rate(), ast_rtp_codecs_payloads_unset(), ast_rtp_engine_unload_format(), ast_rtp_get_rate(), ast_rtp_interpret(), ast_rtp_lookup_mime_subtype2(), ast_rtp_lookup_sample_rate2(), ast_rtp_write(), ast_set_read_format_path(), ast_set_write_format_path(), ast_slinfactory_feed(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), ast_write_stream(), ast_writestream(), audiohook_list_translate_to_native(), audiohook_list_translate_to_slin(), audiohook_read_frame_helper(), background_detect_exec(), bridge_p2p_rtp_write(), chan_pjsip_read_stream(), conf_run(), dahdi_read(), dahdi_write(), fax_detect_framehook(), fax_gateway_framehook(), filehelper(), find_static_payload_type(), generate_interpolated_slin(), generic_fax_exec(), iax2_send(), iax_frame_wrap(), jack_hook_callback(), jingle_add_payloads_to_description(), make_silence(), measurenoise(), moh_files_generator(), ooh323_convertAsteriskCapToH323Cap(), ooh323_rtp_read(), ooh323c_set_capability(), ooh323c_set_capability_for_call(), ooh323c_start_transmit_channel(), payload_mapping_rx_clear_primary(), pcm_seek(), pcm_write(), rtp_get_rate(), rtp_raw_write(), rtp_raw_write(), send_start_rtp(), set_channel_format(), set_format(), setup_rtp_connection(), socket_process_helper(), softmix_bridge_write_voice(), softmix_process_write_audio(), spandsp_fax_gateway_process(), spandsp_v21_detect(), and webchan_write().
| struct ast_format * ast_format_create | ( | struct ast_codec * | codec | ) | 
Create a new media format.
| codec | The codec to use | 
| non-NULL | success | 
| NULL | failure | 
Definition at line 196 of file format.c.
References ast_format_create_named(), ast_format::codec, and ast_codec::name.
Referenced by ast_format_cap_append_by_type(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), and newpvt().
| struct ast_format * ast_format_create_named | ( | const char * | format_name, | 
| struct ast_codec * | codec | ||
| ) | 
Create a new media format with a specific name.
| format_name | The name to use for the format | 
| codec | The codec to use | 
codec cannot be explicitly used for the name of the format. This is the case for codecs with multiple sample rates| non-NULL | success | 
| NULL | failure | 
Definition at line 157 of file format.c.
References AO2_ALLOC_OPT_LOCK_NOLOCK, ao2_bump, ao2_find, ao2_ref, ao2_t_alloc_options, ast_format::channel_count, ast_format::codec, format_interface::codec, format_destroy(), ast_format::interface, format_interface::interface, interfaces, ast_format::name, NULL, OBJ_SEARCH_KEY, and S_OR.
Referenced by ast_format_clone(), ast_format_create(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), and AST_TEST_DEFINE().
| unsigned int ast_format_determine_length | ( | const struct ast_format * | format, | 
| unsigned int | samples | ||
| ) | 
Get the length (in milliseconds) for the format with a given number of samples.
| format | The media format | 
| samples | The number of samples | 
Definition at line 384 of file format.c.
References ast_codec_determine_length(), and ast_format::codec.
Referenced by moh_generate(), and monmp3thread().
| void ast_format_generate_sdp_fmtp | ( | const struct ast_format * | format, | 
| unsigned int | payload, | ||
| struct ast_str ** | str | ||
| ) | 
This function is used to produce an fmtp SDP line for an Asterisk format. The attributes present on the Asterisk format are translated into the SDP equivalent.
| format | to generate an fmtp line for | 
| payload | numerical payload for the fmtp line | 
| str | structure that the fmtp line will be appended to | 
Definition at line 305 of file format.c.
References ao2_find, ao2_ref, ast_format::codec, ast_format_interface::format_generate_sdp_fmtp, format_interface::interface, interfaces, ast_codec::name, OBJ_SEARCH_KEY, and str.
Referenced by AST_TEST_DEFINE(), AST_TEST_DEFINE(), and generate_fmtp_attr().
| void * ast_format_get_attribute_data | ( | const struct ast_format * | format | ) | 
Get the attribute data on a format.
| format | The media format | 
Definition at line 125 of file format.c.
References ast_format::attribute_data.
Referenced by celt_clone(), celt_cmp(), celt_destroy(), celt_generate_sdp_fmtp(), celt_getjoint(), celt_parse_sdp_fmtp(), celt_set(), h263_clone(), h263_cmp(), h263_destroy(), h263_generate_sdp_fmtp(), h263_getjoint(), h263_parse_sdp_fmtp(), h264_clone(), h264_cmp(), h264_destroy(), h264_generate_sdp_fmtp(), h264_getjoint(), h264_parse_sdp_fmtp(), ilbc_clone(), ilbc_destroy(), ilbc_generate_sdp_fmtp(), ilbc_getjoint(), ilbc_parse_sdp_fmtp(), ilbc_samples(), ilbctolin_framein(), lintoilbc_frameout(), lintoilbc_new(), opus_clone(), opus_destroy(), opus_generate_sdp_fmtp(), opus_get(), opus_getjoint(), opus_parse_sdp_fmtp(), opus_set(), silk_clone(), silk_destroy(), silk_generate_sdp_fmtp(), silk_get(), silk_getjoint(), silk_parse_sdp_fmtp(), silk_set(), test_core_format_attribute_get(), test_core_format_attribute_set(), test_core_format_clone(), test_core_format_cmp(), test_core_format_destroy(), test_core_format_generate_sdp_fmtp(), test_core_format_get_joint(), test_core_format_parse_sdp_fmtp(), vp8_clone(), vp8_destroy(), vp8_generate_sdp_fmtp(), vp8_getjoint(), vp8_parse_sdp_fmtp(), and vp8_set().
| unsigned int ast_format_get_channel_count | ( | const struct ast_format * | format | ) | 
Get the channel count on a format.
| format | The media format | 
Definition at line 135 of file format.c.
References ast_format::channel_count.
Referenced by opus_clone(), opus_getjoint(), and softmix_bridge_join().
| struct ast_codec * ast_format_get_codec | ( | const struct ast_format * | format | ) | 
Get the codec associated with a format.
| format | The media format | 
Definition at line 324 of file format.c.
References ao2_bump, and ast_format::codec.
Referenced by ast_codec_samples_count(), ast_format_cache_get_by_codec(), ast_format_cap_append_by_type(), ast_translator_best_choice(), set_instance_translator(), and websocket_new().
| unsigned int ast_format_get_codec_id | ( | const struct ast_format * | format | ) | 
Get the codec identifier associated with a format.
| format | The media format | 
Definition at line 329 of file format.c.
References ast_format::codec, and ast_codec::id.
Referenced by ast_format_cap_get_compatible_format(), ast_format_cap_get_format_framing(), ast_format_cap_iscompatible_format(), ast_format_cap_remove(), ast_format_compatibility_codec2bitfield(), ast_slinfactory_feed(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), format2index(), format_cap_framed_init(), format_cap_replace(), format_in_format_cap(), and payload_mapping_tx_is_present().
| const char * ast_format_get_codec_name | ( | const struct ast_format * | format | ) | 
Get the codec name associated with a format.
| format | The media format | 
Definition at line 339 of file format.c.
References ast_format::codec, and ast_codec::name.
Referenced by ast_rtp_engine_load_format(), handle_response_setup(), and speech_aeap_engine_create().
| unsigned int ast_format_get_default_ms | ( | const struct ast_format * | format | ) | 
Get the default framing size (in milliseconds) for a format.
| format | The media format | 
Definition at line 359 of file format.c.
References ast_format::codec, and ast_codec::default_ms.
Referenced by __get_from_jb(), ast_format_cap_get_format_framing(), ast_rtp_write(), AST_TEST_DEFINE(), format_cap_framed_init(), jb_get_and_deliver(), multicast_rtp_write(), set_channel_timer(), set_instance_translator(), and websocket_new().
| unsigned int ast_format_get_maximum_ms | ( | const struct ast_format * | format | ) | 
Get the maximum amount of media carried in this format.
| format | The media format | 
Definition at line 369 of file format.c.
References ast_format::codec, and ast_codec::maximum_ms.
Referenced by create_outgoing_sdp_stream().
| unsigned int ast_format_get_minimum_bytes | ( | const struct ast_format * | format | ) | 
Get the minimum number of bytes expected in a frame for this format.
| format | The media format | 
Definition at line 374 of file format.c.
References ast_format::codec, and ast_codec::minimum_bytes.
Referenced by ast_rtp_write(), multicast_rtp_write(), and websocket_new().
| unsigned int ast_format_get_minimum_ms | ( | const struct ast_format * | format | ) | 
Get the minimum amount of media carried in this format.
| format | The media format | 
Definition at line 364 of file format.c.
References ast_format::codec, and ast_codec::minimum_ms.
Referenced by ast_rtp_write(), multicast_rtp_write(), and websocket_new().
| const char * ast_format_get_name | ( | const struct ast_format * | format | ) | 
Get the name associated with a format.
| format | The media format | 
Definition at line 334 of file format.c.
References ast_format::name.
Referenced by __ast_format_cap_get_names(), __ast_play_and_record(), __ast_smoother_feed(), add_format_information_cb(), add_static_payload(), adsi_transmit_message_full(), agent_login_exec(), ast_bridge_channel_restore_formats(), ast_channel_make_compatible_helper(), ast_codec_samples_count(), ast_dsp_call_progress(), ast_dsp_process(), ast_dsp_silence_noise_with_energy(), ast_format_cache_set(), ast_frame_subclass2str(), ast_openvstream(), ast_rtp_write(), ast_set_read_format_path(), ast_set_write_format_path(), ast_slinfactory_feed(), ast_stopstream(), ast_streamfile(), ast_translator_best_choice(), ast_translator_build_path(), ast_write_stream(), ast_writestream(), background_detect_exec(), bridge_p2p_rtp_write(), chan_pjsip_read_stream(), chan_pjsip_write_stream(), channel_do_masquerade(), cli_channelstats_print_body(), create_outgoing_sdp_stream(), dahdi_write(), do_waiting(), eagi_exec(), format_cmp_cb(), format_hash_cb(), func_channel_read(), function_iaxpeer(), g719read(), g723_read(), g726_read(), g729_read(), generate_status(), generic_read(), gsm_read(), h263_read(), h264_read(), handle_cli_core_show_file_formats(), handle_cli_moh_show_classes(), handle_core_show_image_formats(), handle_showchan(), handle_streamfile(), iax2_codec_pref_string(), iax2_getformatname(), ilbc_read(), init_jack_data(), isAnsweringMachine(), jack_hook_callback(), jingle_read(), jingle_write(), linear_release(), media_offer_read_av(), moh_alloc(), moh_files_release(), moh_release(), multicast_rtp_write(), ooh323_convertAsteriskCapToH323Cap(), ooh323_rtp_read(), ooh323_set_read_format(), ooh323_set_write_format(), ooh323_write(), pcm_read(), print_frame(), process_cn_rfc3389(), read_thread_handler(), rtp_codecs_assign_payload_code_rx(), send_start_rtp(), serialize_showchan(), set_channel_format(), set_format(), set_instance_translator(), show_sound_info_cb(), siren14read(), siren7read(), socket_process_helper(), softmix_bridge_write_voice(), spandsp_v21_detect(), start_rtp(), unistim_new(), unistim_rtp_read(), unistim_write(), vox_read(), wav_read(), wav_read(), webchan_write(), and websocket_new().
| unsigned int ast_format_get_sample_rate | ( | const struct ast_format * | format | ) | 
Get the sample rate of a media format.
| format | The media format | 
Definition at line 379 of file format.c.
References ast_format::codec, and ast_codec::sample_rate.
Referenced by __get_from_jb(), ari_bridges_play_new(), ast_channel_make_compatible_helper(), ast_ratestream(), ast_read_generator_actions(), ast_readaudio_callback(), ast_readvideo_callback(), ast_rtp_dtmf_begin(), ast_rtp_engine_load_format(), ast_rtp_get_rate(), ast_rtp_interpret(), ast_smoother_read(), ast_translate(), ast_translator_best_choice(), ast_translator_build_path(), audiohook_list_translate_to_slin(), audiohook_read_frame_helper(), calc_timestamp(), gather_softmix_stats(), generator_force(), hook_event_cb(), ilbc_samples(), init_jack_data(), mixmonitor_save_prep(), monmp3thread(), mp3_exec(), ogg_speex_open(), opus_samples(), pitch_shift(), rtp_get_rate(), schedule_delivery(), set_instance_translator(), set_talk_detect(), silk_cmp(), silk_getjoint(), silk_samples(), snoop_determine_format(), speex_callback(), stasis_app_control_snoop(), waitstream_control(), waitstream_core(), wav_open(), wav_rewrite(), and websocket_new().
| int ast_format_get_smoother_flags | ( | const struct ast_format * | format | ) | 
Get smoother flags for this format.
| format | The media format | 
Definition at line 349 of file format.c.
References ast_format::codec, and ast_codec::smoother_flags.
Referenced by ast_rtp_write(), and multicast_rtp_write().
| enum ast_media_type ast_format_get_type | ( | const struct ast_format * | format | ) | 
Get the media type of a format.
| format | The media format | 
Definition at line 354 of file format.c.
References ast_format::codec, and ast_codec::type.
Referenced by __ast_read(), ast_ari_recordings_get_stored_file(), ast_format_cap_append_from_cap(), ast_format_cap_get_best_by_type(), ast_format_cap_has_type(), ast_format_cap_remove_by_type(), ast_format_cap_replace_from_cap(), ast_openvstream(), ast_playstream(), ast_rtp_codecs_get_stream_type(), ast_rtp_engine_load_format(), ast_rtp_interpret(), ast_translator_best_choice(), ast_translator_build_path(), ast_write_stream(), ast_writestream(), check_translation_path(), codec_choose_from_prefs(), create_outgoing_sdp_stream(), filehelper(), filestream_close(), get_filestream(), jingle_add_payloads_to_description(), stream_echo_write(), and stream_echo_write_error().
| int ast_format_init | ( | void | ) | 
Initialize media format support.
| 0 | success | 
| -1 | failure | 
Definition at line 77 of file format.c.
References AO2_ALLOC_OPT_LOCK_RWLOCK, ao2_container_alloc_hash, ast_register_cleanup(), FORMAT_INTERFACE_BUCKETS, format_shutdown(), interfaces, and NULL.
Referenced by asterisk_daemon().
| struct ast_format * ast_format_joint | ( | const struct ast_format * | format1, | 
| const struct ast_format * | format2 | ||
| ) | 
Get a common joint capability between two formats.
| non-NULL | if joint capability exists | 
| NULL | if no joint capability exists | 
Definition at line 226 of file format.c.
References ao2_bump, ast_format_cmp(), AST_FORMAT_CMP_EQUAL, ast_format::attribute_data, ast_format::codec, and NULL.
Referenced by ast_format_cap_get_compatible_format(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), and AST_TEST_DEFINE().
| struct ast_format * ast_format_parse_sdp_fmtp | ( | const struct ast_format * | format, | 
| const char * | attributes | ||
| ) | 
This function is used to have a media format aware module parse and interpret SDP attribute information. Once interpreted this information is stored on the format itself using Asterisk format attributes.
| format | to set | 
| attributes | string containing the fmtp line from the SDP | 
| non-NULL | success, attribute values were valid | 
| NULL | failure, values were not acceptable | 
Definition at line 286 of file format.c.
References ao2_bump, ao2_find, ao2_ref, ast_format::codec, ast_format_interface::format_parse_sdp_fmtp, format_interface::interface, interfaces, ast_codec::name, and OBJ_SEARCH_KEY.
Referenced by ast_rtp_codecs_payloads_set_rtpmap_type_rate(), AST_TEST_DEFINE(), AST_TEST_DEFINE(), and get_codecs().
| struct stasis_message_type * ast_format_register_type | ( | void | ) | 
Get the message type used for signaling a format registration.
| NULL | on error | 
Referenced by __ast_format_def_register(), ast_file_init(), and file_shutdown().
| void ast_format_set_attribute_data | ( | struct ast_format * | format, | 
| void * | attribute_data | ||
| ) | 
Set the attribute data on a format.
| format | The media format | 
| attribute_data | The attribute data | 
Definition at line 130 of file format.c.
References ast_format::attribute_data.
Referenced by celt_clone(), h263_clone(), h264_clone(), ilbc_clone(), opus_clone(), silk_clone(), test_core_format_clone(), and vp8_clone().
| void ast_format_set_channel_count | ( | struct ast_format * | format, | 
| unsigned int | channel_count | ||
| ) | 
Set the channel count on a format.
| format | The media format | 
| channel_count | The number of audio channels used | 
Definition at line 140 of file format.c.
References ast_format::channel_count.
Referenced by opus_clone(), opus_getjoint(), and opus_parse_sdp_fmtp().
| struct stasis_message_type * ast_format_unregister_type | ( | void | ) | 
Get the message type used for signaling a format unregistration.
| NULL | on error | 
Referenced by ast_file_init(), ast_format_def_unregister(), and file_shutdown().