Asterisk - The Open Source Telephony Project
18.5.0
|
H.264 Format Attribute Module. More...
Go to the source code of this file.
Data Structures | |
struct | h264_attr |
Macros | |
#define | APPEND_IF_NONZERO(field, str, name) |
#define | APPEND_IF_NOT_H264_UNSET(field, str, name) |
#define | DETERMINE_JOINT(joint, attr1, attr2, field) (joint->field = (attr1 && attr1->field) ? attr1->field : (attr2 && attr2->field) ? attr2->field : 0) |
#define | H264_ATTR_KEY_UNSET UINT8_MAX |
Value that indicates an attribute is actually unset. More... | |
#define | H264_MAX_SPS_PPS_SIZE 16 |
Maximum size for SPS / PPS values in sprop-parameter-sets attribute if you change this value then you must change H264_MAX_SPS_PPS_SIZE_SCAN_LIMIT as well. More... | |
#define | H264_MAX_SPS_PPS_SIZE_SCAN_LIMIT "15" |
This is used when executing sscanf on buffers of H264_MAX_SPS_PPS_SIZE length. It must ALWAYS be a string literal representation of one less than H264_MAX_SPS_PPS_SIZE. More... | |
Functions | |
static void | __reg_module (void) |
static void | __unreg_module (void) |
struct ast_module * | AST_MODULE_SELF_SYM (void) |
static int | h264_clone (const struct ast_format *src, struct ast_format *dst) |
static enum ast_format_cmp_res | h264_cmp (const struct ast_format *format1, const struct ast_format *format2) |
static void | h264_destroy (struct ast_format *format) |
static void | h264_generate_sdp_fmtp (const struct ast_format *format, unsigned int payload, struct ast_str **str) |
static struct ast_format * | h264_getjoint (const struct ast_format *format1, const struct ast_format *format2) |
static struct ast_format * | h264_parse_sdp_fmtp (const struct ast_format *format, const char *attributes) |
static int | load_module (void) |
static int | unload_module (void) |
Variables | |
static struct ast_module_info | __mod_info = { .name = AST_MODULE, .flags = AST_MODFLAG_DEFAULT , .description = "H.264 Format Attribute Module" , .key = "This paragraph is copyright (c) 2006 by Digium, Inc. \In order for your module to load, it must return this \key via a function called \"key\". Any code which \includes this paragraph must be licensed under the GNU \General Public License version 2 or later (at your \option). In addition to Digium's general reservations \of rights, Digium expressly reserves the right to \allow other parties to license this paragraph under \different terms. Any use of Digium, Inc. trademarks or \logos (including \"Asterisk\" or \"Digium\") without \express written permission of Digium, Inc. is prohibited.\n" , .buildopt_sum = "30ef0c93b36035ec78c9cfd712d36d9b" , .support_level = AST_MODULE_SUPPORT_CORE, .load = load_module, .unload = unload_module, } |
static const struct ast_module_info * | ast_module_info = &__mod_info |
static struct ast_format_interface | h264_interface |
H.264 Format Attribute Module.
This is a format attribute module for the H.264 codec.
Definition in file res_format_attr_h264.c.
Definition at line 246 of file res_format_attr_h264.c.
Referenced by h264_generate_sdp_fmtp().
Definition at line 235 of file res_format_attr_h264.c.
Referenced by h264_generate_sdp_fmtp().
#define DETERMINE_JOINT | ( | joint, | |
attr1, | |||
attr2, | |||
field | |||
) | (joint->field = (attr1 && attr1->field) ? attr1->field : (attr2 && attr2->field) ? attr2->field : 0) |
Definition at line 114 of file res_format_attr_h264.c.
Referenced by h264_getjoint().
#define H264_ATTR_KEY_UNSET UINT8_MAX |
Value that indicates an attribute is actually unset.
Definition at line 40 of file res_format_attr_h264.c.
Referenced by h264_parse_sdp_fmtp().
#define H264_MAX_SPS_PPS_SIZE 16 |
Maximum size for SPS / PPS values in sprop-parameter-sets attribute if you change this value then you must change H264_MAX_SPS_PPS_SIZE_SCAN_LIMIT as well.
Definition at line 45 of file res_format_attr_h264.c.
#define H264_MAX_SPS_PPS_SIZE_SCAN_LIMIT "15" |
This is used when executing sscanf on buffers of H264_MAX_SPS_PPS_SIZE length. It must ALWAYS be a string literal representation of one less than H264_MAX_SPS_PPS_SIZE.
Definition at line 49 of file res_format_attr_h264.c.
Referenced by h264_parse_sdp_fmtp().
|
static |
Definition at line 337 of file res_format_attr_h264.c.
|
static |
Definition at line 337 of file res_format_attr_h264.c.
struct ast_module* AST_MODULE_SELF_SYM | ( | void | ) |
Definition at line 337 of file res_format_attr_h264.c.
|
static |
Definition at line 83 of file res_format_attr_h264.c.
References ast_calloc, ast_format_get_attribute_data(), and ast_format_set_attribute_data().
|
static |
Definition at line 101 of file res_format_attr_h264.c.
References AST_FORMAT_CMP_EQUAL, AST_FORMAT_CMP_NOT_EQUAL, ast_format_get_attribute_data(), and h264_attr::PROFILE_IDC.
|
static |
Definition at line 76 of file res_format_attr_h264.c.
References ast_format_get_attribute_data(), and ast_free.
|
static |
Definition at line 257 of file res_format_attr_h264.c.
References APPEND_IF_NONZERO, APPEND_IF_NOT_H264_UNSET, ast_format_get_attribute_data(), ast_str_append(), ast_strlen_zero, h264_attr::DEINT_BUF_CAP, h264_attr::LEVEL, h264_attr::LEVEL_ASYMMETRY_ALLOWED, h264_attr::MAX_BR, h264_attr::MAX_CPB, h264_attr::MAX_DPB, h264_attr::MAX_FPS, h264_attr::MAX_FS, h264_attr::MAX_MBPS, h264_attr::MAX_RCMD_NALU_SIZE, h264_attr::MAX_SMBPS, h264_attr::PACKETIZATION_MODE, h264_attr::PARAMETER_ADD, h264_attr::PPS, h264_attr::PROFILE_IDC, h264_attr::PROFILE_IOP, h264_attr::REDUNDANT_PIC_CAP, h264_attr::SPROP_DEINT_BUF_REQ, h264_attr::SPROP_INIT_BUF_TIME, h264_attr::SPROP_INTERLEAVING_DEPTH, h264_attr::SPROP_MAX_DON_DIFF, and h264_attr::SPS.
|
static |
Definition at line 116 of file res_format_attr_h264.c.
References ast_copy_string(), ast_format_clone(), ast_format_get_attribute_data(), ast_strlen_zero, h264_attr::DEINT_BUF_CAP, DETERMINE_JOINT, h264_attr::LEVEL, h264_attr::LEVEL_ASYMMETRY_ALLOWED, h264_attr::MAX_BR, h264_attr::MAX_CPB, h264_attr::MAX_DPB, h264_attr::MAX_FPS, h264_attr::MAX_FS, h264_attr::MAX_MBPS, h264_attr::MAX_RCMD_NALU_SIZE, h264_attr::MAX_SMBPS, NULL, h264_attr::PACKETIZATION_MODE, h264_attr::PARAMETER_ADD, h264_attr::PPS, h264_attr::PROFILE_IDC, h264_attr::PROFILE_IOP, h264_attr::REDUNDANT_PIC_CAP, h264_attr::SPROP_DEINT_BUF_REQ, h264_attr::SPROP_INIT_BUF_TIME, h264_attr::SPROP_INTERLEAVING_DEPTH, h264_attr::SPROP_MAX_DON_DIFF, and h264_attr::SPS.
|
static |
Definition at line 166 of file res_format_attr_h264.c.
References ast_format_clone(), ast_format_get_attribute_data(), ast_strdupa, ast_strip(), h264_attr::DEINT_BUF_CAP, H264_ATTR_KEY_UNSET, H264_MAX_SPS_PPS_SIZE_SCAN_LIMIT, h264_attr::LEVEL, h264_attr::LEVEL_ASYMMETRY_ALLOWED, h264_attr::MAX_BR, h264_attr::MAX_CPB, h264_attr::MAX_DPB, h264_attr::MAX_FPS, h264_attr::MAX_FS, h264_attr::MAX_MBPS, h264_attr::MAX_RCMD_NALU_SIZE, h264_attr::MAX_SMBPS, NULL, h264_attr::PACKETIZATION_MODE, h264_attr::PARAMETER_ADD, h264_attr::PPS, h264_attr::PROFILE_IDC, h264_attr::PROFILE_IOP, h264_attr::REDUNDANT_PIC_CAP, h264_attr::SPROP_DEINT_BUF_REQ, h264_attr::SPROP_INIT_BUF_TIME, h264_attr::SPROP_INTERLEAVING_DEPTH, h264_attr::SPROP_MAX_DON_DIFF, h264_attr::SPS, and strsep().
|
static |
Definition at line 324 of file res_format_attr_h264.c.
References ast_format_interface_register, AST_MODFLAG_DEFAULT, AST_MODULE_INFO(), AST_MODULE_LOAD_DECLINE, AST_MODULE_LOAD_SUCCESS, AST_MODULE_SUPPORT_CORE, ASTERISK_GPL_KEY, and unload_module().
|
static |
Definition at line 319 of file res_format_attr_h264.c.
Referenced by load_module().
|
static |
Definition at line 337 of file res_format_attr_h264.c.
|
static |
Definition at line 337 of file res_format_attr_h264.c.
|
static |
Definition at line 310 of file res_format_attr_h264.c.