Asterisk - The Open Source Telephony Project
18.5.0
|
Channel driver for OSS sound cards. More...
#include "asterisk.h"
#include <ctype.h>
#include <math.h>
#include <sys/ioctl.h>
#include <soundcard.h>
#include "asterisk/channel.h"
#include "asterisk/file.h"
#include "asterisk/callerid.h"
#include "asterisk/module.h"
#include "asterisk/pbx.h"
#include "asterisk/cli.h"
#include "asterisk/causes.h"
#include "asterisk/musiconhold.h"
#include "asterisk/app.h"
#include "asterisk/bridge.h"
#include "asterisk/format_cache.h"
#include "console_video.h"
Go to the source code of this file.
Data Structures | |
struct | chan_oss_pvt |
descriptor for one of our channels. More... | |
Macros | |
#define | BOOST_MAX 40 |
#define | BOOST_SCALE (1<<9) |
#define | DEV_DSP "/dev/dsp" |
#define | FRAGS ( ( (6 * 5) << 16 ) | 0x6 ) |
#define | FRAME_SIZE 160 |
#define | O_CLOSE 0x444 /* special 'close' mode for device */ |
#define | QUEUE_SIZE 10 |
#define | TEXT_SIZE 256 |
#define | WARN_frag 4 |
#define | WARN_speed 2 |
#define | WARN_used_blocks 1 |
Functions | |
static char * | ast_ext_ctx (const char *src, char **ext, char **ctx) |
AST_MODULE_INFO_STANDARD_DEPRECATED (ASTERISK_GPL_KEY, "OSS Console Channel Driver") | |
static char * | console_active (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_answer (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
answer command from the console More... | |
static char * | console_autoanswer (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_boost (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_cmd (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_dial (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_do_answer (int fd) |
helper function for the answer key/cli command More... | |
static char * | console_flash (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_hangup (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_mute (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static char * | console_sendtext (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
Console send text CLI command. More... | |
static char * | console_transfer (struct ast_cli_entry *e, int cmd, struct ast_cli_args *a) |
static struct chan_oss_pvt * | find_desc (const char *dev) |
returns a pointer to the descriptor with the given name More... | |
struct video_desc * | get_video_desc (struct ast_channel *c) |
return the pointer to the video descriptor More... | |
static int | load_module (void) |
Load the module. More... | |
static int | oss_answer (struct ast_channel *c) |
remote side answered the phone More... | |
static int | oss_call (struct ast_channel *c, const char *dest, int timeout) |
handler for incoming calls. Either autoanswer, or start ringing More... | |
static int | oss_digit_begin (struct ast_channel *c, char digit) |
static int | oss_digit_end (struct ast_channel *c, char digit, unsigned int duration) |
static int | oss_fixup (struct ast_channel *oldchan, struct ast_channel *newchan) |
static int | oss_hangup (struct ast_channel *c) |
static int | oss_indicate (struct ast_channel *chan, int cond, const void *data, size_t datalen) |
static struct ast_channel * | oss_new (struct chan_oss_pvt *o, char *ext, char *ctx, int state, const struct ast_assigned_ids *assignedids, const struct ast_channel *requestor) |
allocate a new channel. More... | |
static struct ast_frame * | oss_read (struct ast_channel *chan) |
static struct ast_channel * | oss_request (const char *type, struct ast_format_cap *cap, const struct ast_assigned_ids *assignedids, const struct ast_channel *requestor, const char *data, int *cause) |
static int | oss_text (struct ast_channel *c, const char *text) |
static int | oss_write (struct ast_channel *c, struct ast_frame *f) |
used for data coming from the network More... | |
static int | setformat (struct chan_oss_pvt *o, int mode) |
static int | soundcard_writeframe (struct chan_oss_pvt *o, short *data) |
static void | store_boost (struct chan_oss_pvt *o, const char *s) |
store the boost factor More... | |
static void | store_callerid (struct chan_oss_pvt *o, const char *s) |
static struct chan_oss_pvt * | store_config (struct ast_config *cfg, char *ctg) |
static void | store_config_core (struct chan_oss_pvt *o, const char *var, const char *value) |
static void | store_mixer (struct chan_oss_pvt *o, const char *s) |
static int | unload_module (void) |
static int | used_blocks (struct chan_oss_pvt *o) |
Returns the number of blocks used in the audio output channel. More... | |
Variables | |
static struct ast_cli_entry | cli_oss [] |
static char * | config = "oss.conf" |
static struct ast_jb_conf | default_jbconf |
static struct ast_jb_conf | global_jbconf |
static char * | oss_active |
static int | oss_debug |
static struct chan_oss_pvt | oss_default |
static struct ast_channel_tech | oss_tech |
static char | tdesc [] = "OSS Console Channel Driver" |
Channel driver for OSS sound cards.
Definition in file chan_oss.c.
#define BOOST_MAX 40 |
#define BOOST_SCALE (1<<9) |
boost support. BOOST_SCALE * 10 ^(BOOST_MAX/20) must be representable in 16 bits to avoid overflows.
Definition at line 284 of file chan_oss.c.
Referenced by console_boost(), oss_read(), and store_boost().
#define DEV_DSP "/dev/dsp" |
Definition at line 237 of file chan_oss.c.
Referenced by store_config().
#define FRAGS ( ( (6 * 5) << 16 ) | 0x6 ) |
Definition at line 220 of file chan_oss.c.
#define FRAME_SIZE 160 |
Definition at line 214 of file chan_oss.c.
Referenced by oss_read(), and soundcard_writeframe().
#define O_CLOSE 0x444 /* special 'close' mode for device */ |
Definition at line 232 of file chan_oss.c.
Referenced by console_hangup(), oss_hangup(), and setformat().
#define QUEUE_SIZE 10 |
Definition at line 215 of file chan_oss.c.
#define TEXT_SIZE 256 |
Definition at line 227 of file chan_oss.c.
Referenced by console_sendtext().
#define WARN_frag 4 |
Definition at line 274 of file chan_oss.c.
Referenced by setformat().
#define WARN_speed 2 |
Definition at line 273 of file chan_oss.c.
Referenced by setformat().
#define WARN_used_blocks 1 |
Definition at line 272 of file chan_oss.c.
Referenced by used_blocks().
|
static |
Definition at line 402 of file chan_oss.c.
References ast_strdup, chan_oss_pvt::ext, find_desc(), NULL, oss_active, and chan_oss_pvt::overridecontext.
Referenced by console_dial(), and console_transfer().
AST_MODULE_INFO_STANDARD_DEPRECATED | ( | ASTERISK_GPL_KEY | , |
"OSS Console Channel Driver" | |||
) |
Referenced by load_module().
|
static |
Definition at line 1215 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_args::argv, ast_cli(), CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), chan_oss_pvt::name, chan_oss_pvt::next, NULL, oss_active, and ast_cli_entry::usage.
|
static |
answer command from the console
Definition at line 983 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, ast_cli_entry::command, console_do_answer(), ast_cli_args::fd, NULL, and ast_cli_entry::usage.
|
static |
Definition at line 927 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), ast_log, chan_oss_pvt::autoanswer, CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), LOG_WARNING, NULL, oss_active, and ast_cli_entry::usage.
|
static |
Definition at line 1272 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_args::argv, ast_cli(), chan_oss_pvt::boost, BOOST_SCALE, CLI_GENERATE, CLI_INIT, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), NULL, oss_active, store_boost(), and ast_cli_entry::usage.
|
static |
Generic console command handler. Basically a wrapper for a subset of config file options which are also available from the CLI
Definition at line 891 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), ast_log, CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, console_video_cli(), CONSOLE_VIDEO_CMDS, chan_oss_pvt::device, chan_oss_pvt::env, ast_cli_args::fd, find_desc(), LOG_WARNING, NULL, oss_active, store_config_core(), ast_cli_entry::usage, value, and var.
|
static |
Definition at line 1093 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), ast_exists_extension(), ast_ext_ctx(), AST_FRAME_DTMF, ast_free, ast_queue_frame(), AST_STATE_RINGING, CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, chan_oss_pvt::ctx, chan_oss_pvt::ext, ast_cli_args::fd, find_desc(), chan_oss_pvt::hookstate, ast_frame_subclass::integer, NULL, oss_active, oss_new(), chan_oss_pvt::owner, ast_frame::subclass, and ast_cli_entry::usage.
|
static |
helper function for the answer key/cli command
Definition at line 966 of file chan_oss.c.
References ast_cli(), AST_CONTROL_ANSWER, AST_FRAME_CONTROL, ast_queue_frame(), CLI_FAILURE, CLI_SUCCESS, find_desc(), chan_oss_pvt::hookstate, oss_active, and chan_oss_pvt::owner.
Referenced by console_answer(), and keypad_cfg_read().
|
static |
Definition at line 1067 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli(), AST_CONTROL_FLASH, AST_FRAME_CONTROL, ast_queue_frame(), CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), chan_oss_pvt::hookstate, NULL, oss_active, chan_oss_pvt::owner, and ast_cli_entry::usage.
|
static |
Definition at line 1041 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, AST_CAUSE_NORMAL_CLEARING, ast_cli(), ast_queue_hangup_with_cause(), CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), chan_oss_pvt::hookstate, NULL, O_CLOSE, oss_active, chan_oss_pvt::owner, setformat(), and ast_cli_entry::usage.
|
static |
Definition at line 1145 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_cli_args::fd, find_desc(), chan_oss_pvt::mute, NULL, oss_active, and ast_cli_entry::usage.
|
static |
Console send text CLI command.
Definition at line 1007 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_entry::args, ast_cli_args::argv, ast_cli(), AST_FRAME_TEXT, ast_join, ast_queue_frame(), ast_strlen_zero, buf, CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, ast_frame::data, ast_frame::datalen, ast_cli_args::fd, find_desc(), ast_frame::frametype, ast_frame_subclass::integer, NULL, oss_active, chan_oss_pvt::owner, ast_frame::ptr, ast_frame::subclass, TEXT_SIZE, and ast_cli_entry::usage.
|
static |
Definition at line 1178 of file chan_oss.c.
References ast_cli_args::argc, ast_cli_args::argv, ast_bridge_transfer_blind(), AST_BRIDGE_TRANSFER_SUCCESS, ast_channel_context(), ast_channel_is_bridged(), ast_channel_name(), ast_cli(), ast_ext_ctx(), ast_free, ast_log, ast_strdupa, CLI_FAILURE, CLI_GENERATE, CLI_INIT, CLI_SHOWUSAGE, CLI_SUCCESS, ast_cli_entry::command, chan_oss_pvt::ctx, chan_oss_pvt::ext, ast_cli_args::fd, find_desc(), LOG_WARNING, NULL, oss_active, chan_oss_pvt::owner, tmp(), and ast_cli_entry::usage.
|
static |
returns a pointer to the descriptor with the given name
forward declaration
Definition at line 376 of file chan_oss.c.
References ast_log, LOG_WARNING, chan_oss_pvt::name, chan_oss_pvt::next, and NULL.
Referenced by ast_ext_ctx(), console_active(), console_autoanswer(), console_boost(), console_cmd(), console_dial(), console_do_answer(), console_flash(), console_hangup(), console_mute(), console_sendtext(), console_transfer(), get_video_desc(), keypad_cfg_read(), load_module(), and oss_request().
struct video_desc* get_video_desc | ( | struct ast_channel * | c | ) |
return the pointer to the video descriptor
Definition at line 319 of file chan_oss.c.
References ast_channel_tech_pvt(), chan_oss_pvt::env, find_desc(), NULL, and oss_active.
Referenced by oss_new().
|
static |
Load the module.
Module loading including tests for configuration or dependencies. This function can return AST_MODULE_LOAD_FAILURE, AST_MODULE_LOAD_DECLINE, or AST_MODULE_LOAD_SUCCESS. If a dependency or environment variable fails tests return AST_MODULE_LOAD_FAILURE. If the module can not load the configuration file or other non-critical problem return AST_MODULE_LOAD_DECLINE. On success return AST_MODULE_LOAD_SUCCESS.
Definition at line 1478 of file chan_oss.c.
References ARRAY_LEN, ast_category_browse(), ast_channel_register(), ast_cli_register_multiple, ast_config_destroy(), ast_config_load, ast_format_cap_alloc, ast_format_cap_append, ast_format_slin, ast_log, AST_MODULE_INFO_STANDARD_DEPRECATED(), AST_MODULE_LOAD_DECLINE, AST_MODULE_LOAD_SUCCESS, ASTERISK_GPL_KEY, ast_channel_tech::capabilities, config, CONFIG_STATUS_FILEINVALID, find_desc(), global_jbconf, LOG_ERROR, LOG_NOTICE, NULL, oss_active, store_config(), and unload_module().
|
static |
remote side answered the phone
Definition at line 645 of file chan_oss.c.
References ast_channel_tech_pvt(), ast_setstate(), AST_STATE_UP, ast_verbose(), and chan_oss_pvt::hookstate.
|
static |
handler for incoming calls. Either autoanswer, or start ringing
Definition at line 603 of file chan_oss.c.
References args, AST_APP_ARG, ast_channel_caller(), ast_channel_dialed(), ast_channel_redirecting(), ast_channel_tech_pvt(), AST_CONTROL_ANSWER, AST_CONTROL_RINGING, AST_DECLARE_APP_ARGS, AST_FRAME_CONTROL, ast_indicate(), AST_NONSTANDARD_APP_ARGS, ast_queue_frame(), ast_strdupa, ast_strlen_zero, ast_verbose(), chan_oss_pvt::autoanswer, ast_frame::flags, chan_oss_pvt::hookstate, ast_frame_subclass::integer, chan_oss_pvt::name, parse(), S_COR, S_OR, and ast_frame::subclass.
|
static |
Definition at line 580 of file chan_oss.c.
|
static |
|
static |
Definition at line 754 of file chan_oss.c.
References ast_channel_tech_pvt(), and chan_oss_pvt::owner.
|
static |
Definition at line 654 of file chan_oss.c.
References ast_channel_tech_pvt(), ast_channel_tech_pvt_set(), ast_module_unref, ast_verbose(), chan_oss_pvt::autoanswer, chan_oss_pvt::autohangup, console_video_uninit(), chan_oss_pvt::env, chan_oss_pvt::hookstate, NULL, O_CLOSE, chan_oss_pvt::owner, ast_module_info::self, and setformat().
|
static |
Definition at line 761 of file chan_oss.c.
References ast_channel_name(), ast_channel_tech_pvt(), AST_CONTROL_BUSY, AST_CONTROL_CONGESTION, AST_CONTROL_HOLD, AST_CONTROL_INCOMPLETE, AST_CONTROL_PROCEEDING, AST_CONTROL_PROGRESS, AST_CONTROL_PVT_CAUSE_CODE, AST_CONTROL_RINGING, AST_CONTROL_SRCUPDATE, AST_CONTROL_UNHOLD, AST_CONTROL_VIDUPDATE, ast_log, ast_moh_start(), ast_moh_stop(), ast_verbose(), LOG_WARNING, and chan_oss_pvt::mohinterpret.
|
static |
allocate a new channel.
Definition at line 799 of file chan_oss.c.
References ast_party_caller::ani, ast_channel_alloc, ast_channel_caller(), ast_channel_dialed(), ast_channel_name(), ast_channel_nativeformats_set(), ast_channel_set_fd(), ast_channel_set_readformat(), ast_channel_set_writeformat(), ast_channel_tech_pvt_set(), ast_channel_tech_set(), ast_channel_unlock, ast_format_slin, ast_hangup(), ast_jb_configure(), ast_log, ast_module_ref, ast_pbx_start(), AST_STATE_DOWN, ast_strdup, ast_strlen_zero, c, ast_channel_tech::capabilities, chan_oss_pvt::cid_name, chan_oss_pvt::cid_num, console_video_start(), chan_oss_pvt::device, get_video_desc(), global_jbconf, chan_oss_pvt::language, LOG_WARNING, NULL, ast_party_id::number, ast_party_dialed::number, chan_oss_pvt::owner, ast_module_info::self, setformat(), chan_oss_pvt::sounddev, ast_party_number::str, ast_party_dialed::str, and ast_party_number::valid.
Referenced by console_dial(), and oss_request().
|
static |
Definition at line 705 of file chan_oss.c.
References ast_channel_tech_pvt(), ast_format_slin, AST_FRAME_NULL, AST_FRAME_VOICE, AST_FRIENDLY_OFFSET, AST_STATE_UP, chan_oss_pvt::boost, BOOST_SCALE, ast_frame::data, ast_frame::datalen, ast_frame_subclass::format, FRAME_SIZE, ast_frame::frametype, chan_oss_pvt::mute, ast_frame::offset, chan_oss_pvt::oss_read_buf, ast_frame::ptr, chan_oss_pvt::read_f, chan_oss_pvt::readpos, ast_frame::samples, chan_oss_pvt::sounddev, ast_frame::src, ast_frame::subclass, and ast_channel_tech::type.
|
static |
Definition at line 849 of file chan_oss.c.
References args, AST_APP_ARG, AST_CAUSE_BUSY, AST_DECLARE_APP_ARGS, ast_format_cap_get_names(), ast_format_cap_iscompatible_format(), AST_FORMAT_CAP_NAMES_LEN, AST_FORMAT_CMP_NOT_EQUAL, ast_format_slin, ast_log, AST_NONSTANDARD_APP_ARGS, AST_STATE_DOWN, ast_str_alloca, ast_strdupa, c, find_desc(), LOG_NOTICE, LOG_WARNING, chan_oss_pvt::name, NULL, oss_new(), chan_oss_pvt::owner, parse(), store_config_core(), value, and var.
|
static |
|
static |
used for data coming from the network
Definition at line 674 of file chan_oss.c.
References ast_channel_tech_pvt(), ast_frame::data, ast_frame::datalen, if(), chan_oss_pvt::oss_write_buf, chan_oss_pvt::oss_write_dst, ast_frame::ptr, and soundcard_writeframe().
|
static |
reset and close the device if opened, then open and initialize it in the desired mode, trigger reads and writes so we can start using it.
Definition at line 481 of file chan_oss.c.
References ast_channel_set_fd(), ast_log, ast_tvdiff_ms(), ast_tvnow(), ast_verb, chan_oss_pvt::CHAN_OSS_DUPLEX_FULL, chan_oss_pvt::CHAN_OSS_DUPLEX_READ, chan_oss_pvt::CHAN_OSS_DUPLEX_UNSET, chan_oss_pvt::CHAN_OSS_DUPLEX_WRITE, DEFAULT_SAMPLE_RATE, chan_oss_pvt::device, chan_oss_pvt::duplex, errno, chan_oss_pvt::frags, chan_oss_pvt::lastopen, LOG_WARNING, O_CLOSE, chan_oss_pvt::owner, chan_oss_pvt::sounddev, WARN_frag, WARN_speed, and chan_oss_pvt::warned.
Referenced by console_hangup(), oss_hangup(), oss_new(), soundcard_writeframe(), and store_config().
|
static |
Write an exactly FRAME_SIZE sized frame
Definition at line 452 of file chan_oss.c.
References ast_log, FRAME_SIZE, LOG_WARNING, oss_debug, chan_oss_pvt::queuesize, setformat(), chan_oss_pvt::sounddev, used_blocks(), and chan_oss_pvt::w_errors.
Referenced by oss_write().
|
static |
store the boost factor
Definition at line 1253 of file chan_oss.c.
References ast_log, chan_oss_pvt::boost, BOOST_MAX, BOOST_SCALE, and LOG_WARNING.
Referenced by console_boost(), and store_config_core().
|
static |
store the callerid components
Definition at line 1332 of file chan_oss.c.
References ast_callerid_split(), chan_oss_pvt::cid_name, and chan_oss_pvt::cid_num.
Referenced by store_config_core().
|
static |
grab fields from the config file, init the descriptor and open the device.
Definition at line 1368 of file chan_oss.c.
References ast_asprintf, ast_calloc, ast_copy_string(), ast_free, ast_log, ast_strdup, ast_strlen_zero, ast_tvnow(), ast_variable_browse(), ast_verb, chan_oss_pvt::CHAN_OSS_DUPLEX_FULL, console_video_start(), DEV_DSP, chan_oss_pvt::device, chan_oss_pvt::duplex, chan_oss_pvt::env, errno, error(), get_gui_startup(), chan_oss_pvt::lastopen, LOG_WARNING, chan_oss_pvt::mixer_cmd, chan_oss_pvt::mohinterpret, ast_variable::name, chan_oss_pvt::name, ast_variable::next, chan_oss_pvt::next, NULL, oss_active, oss_default, setformat(), store_config_core(), and ast_variable::value.
Referenced by load_module().
|
static |
Definition at line 1337 of file chan_oss.c.
References ast_jb_read_conf(), chan_oss_pvt::autoanswer, chan_oss_pvt::autohangup, console_video_config(), chan_oss_pvt::ctx, CV_BOOL, CV_END, CV_F, CV_START, CV_STR, CV_UINT, chan_oss_pvt::device, chan_oss_pvt::env, chan_oss_pvt::ext, chan_oss_pvt::frags, global_jbconf, chan_oss_pvt::language, chan_oss_pvt::mohinterpret, oss_debug, chan_oss_pvt::overridecontext, chan_oss_pvt::queuesize, store_boost(), store_callerid(), and store_mixer().
Referenced by console_cmd(), oss_request(), and store_config().
|
static |
store the mixer argument from the config file, filtering possibly invalid or dangerous values (the string is used as argument for system("mixer %s")
Definition at line 1313 of file chan_oss.c.
References ast_free, ast_log, ast_strdup, LOG_WARNING, chan_oss_pvt::mixer_cmd, and NULL.
Referenced by store_config_core().
|
static |
Definition at line 1443 of file chan_oss.c.
References ao2_cleanup, ARRAY_LEN, ast_channel_unregister(), ast_cli_unregister_multiple(), ast_free, ast_softhangup(), AST_SOFTHANGUP_APPUNLOAD, ast_channel_tech::capabilities, chan_oss_pvt::name, chan_oss_pvt::next, NULL, chan_oss_pvt::owner, and chan_oss_pvt::sounddev.
Referenced by load_module().
|
static |
Returns the number of blocks used in the audio output channel.
Definition at line 430 of file chan_oss.c.
References ast_log, LOG_WARNING, chan_oss_pvt::sounddev, chan_oss_pvt::total_blocks, WARN_used_blocks, and chan_oss_pvt::warned.
Referenced by soundcard_writeframe().
|
static |
Definition at line 1294 of file chan_oss.c.
|
static |
Definition at line 240 of file chan_oss.c.
Referenced by load_module().
|
static |
Global jitterbuffer configuration - by default, jb is disabled
Definition at line 76 of file chan_oss.c.
|
static |
Definition at line 84 of file chan_oss.c.
Referenced by load_module(), oss_new(), and store_config_core().
|
static |
the active device
Definition at line 316 of file chan_oss.c.
Referenced by ast_ext_ctx(), console_active(), console_autoanswer(), console_boost(), console_cmd(), console_dial(), console_do_answer(), console_flash(), console_hangup(), console_mute(), console_sendtext(), console_transfer(), get_video_desc(), keypad_cfg_read(), load_module(), and store_config().
|
static |
Definition at line 242 of file chan_oss.c.
Referenced by soundcard_writeframe(), and store_config_core().
|
static |
Definition at line 324 of file chan_oss.c.
Referenced by store_config().
|
static |
Definition at line 356 of file chan_oss.c.
|
static |
Definition at line 353 of file chan_oss.c.