mirror of
https://github.com/asterisk/asterisk.git
synced 2025-09-19 11:42:27 +00:00
Merged revisions 209838 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r209838 | russell | 2009-08-01 05:59:05 -0500 (Sat, 01 Aug 2009) | 13 lines Modify how Playtones() is used in Milliwatt() to resolve gain issue. When Milliwatt() was changed internally to use Playtones() so that the proper tone was used, it introduced a drop in gain in the output signal. So, use the playtones API directly and specify a volume argument such that the output matches the gain of the original Milliwatt() code. (closes issue #15386) Reported by: rue_mohr Patches: issue_15386.rev2.diff uploaded by russell (license 2) Tested by: rue_mohr ........ git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@209839 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -32,6 +32,7 @@ ASTERISK_FILE_VERSION(__FILE__, "$Revision$")
|
|||||||
#include "asterisk/module.h"
|
#include "asterisk/module.h"
|
||||||
#include "asterisk/channel.h"
|
#include "asterisk/channel.h"
|
||||||
#include "asterisk/pbx.h"
|
#include "asterisk/pbx.h"
|
||||||
|
#include "asterisk/indications.h"
|
||||||
|
|
||||||
/*** DOCUMENTATION
|
/*** DOCUMENTATION
|
||||||
<application name="Milliwatt" language="en_US">
|
<application name="Milliwatt" language="en_US">
|
||||||
@@ -142,19 +143,13 @@ static int old_milliwatt_exec(struct ast_channel *chan)
|
|||||||
static int milliwatt_exec(struct ast_channel *chan, const char *data)
|
static int milliwatt_exec(struct ast_channel *chan, const char *data)
|
||||||
{
|
{
|
||||||
const char *options = data;
|
const char *options = data;
|
||||||
struct ast_app *playtones_app;
|
|
||||||
int res = -1;
|
int res = -1;
|
||||||
|
|
||||||
if (!ast_strlen_zero(options) && strchr(options, 'o')) {
|
if (!ast_strlen_zero(options) && strchr(options, 'o')) {
|
||||||
return old_milliwatt_exec(chan);
|
return old_milliwatt_exec(chan);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!(playtones_app = pbx_findapp("Playtones"))) {
|
res = ast_playtones_start(chan, 23255, "1004/1000", 0);
|
||||||
ast_log(LOG_ERROR, "The Playtones application is required to run Milliwatt()\n");
|
|
||||||
return -1;
|
|
||||||
}
|
|
||||||
|
|
||||||
res = pbx_exec(chan, playtones_app, "1004/1000");
|
|
||||||
|
|
||||||
while (!res) {
|
while (!res) {
|
||||||
res = ast_safe_sleep(chan, 10000);
|
res = ast_safe_sleep(chan, 10000);
|
||||||
|
Reference in New Issue
Block a user