From: <kr...@us...> - 2006-09-15 01:26:37
|
Revision: 371 http://svn.sourceforge.net/astlinux/?rev=371&view=rev Author: krisk84 Date: 2006-09-14 18:26:33 -0700 (Thu, 14 Sep 2006) Log Message: ----------- add nick d app_conference hack Modified Paths: -------------- trunk/astlinux.config trunk/package/appconference/Config.in trunk/package/appconference/appconference.mk Added Paths: ----------- trunk/package/appconference/opt-appconference-g729hack.patch Modified: trunk/astlinux.config =================================================================== --- trunk/astlinux.config 2006-09-14 19:50:44 UTC (rev 370) +++ trunk/astlinux.config 2006-09-15 01:26:33 UTC (rev 371) @@ -157,6 +157,7 @@ BR2_PACKAGE_ASTERISK_CHANSCCP=y # BR2_PACKAGE_ASTERISK_RESCONV is not set # BR2_PACKAGE_ASTERISK_LOWMEMORY is not set +# BR2_PACKAGE_ASTERISK_METERMAID is not set BR2_PACKAGE_ASTERISKNATIVESOUNDS=y BR2_PACKAGE_ASTERISKNATIVESOUNDS_ULAW=y # BR2_PACKAGE_ASTERISKNATIVESOUNDS_ALAW is not set @@ -167,6 +168,7 @@ # BR2_PACKAGE_ASTERISKAPPBUNDLE is not set # BR2_PACKAGE_ASTERISKMQUEUE is not set BR2_PACKAGE_ASTERISKAPPCONFERENCE=y +# BR2_PACKAGE_ASTERISKAPPCONFERENCE_G729HACK is not set BR2_PACKAGE_DIGIUMG729=y # BR2_PACKAGE_APCUPSD is not set BR2_PACKAGE_ASTMANPROXY=y Modified: trunk/package/appconference/Config.in =================================================================== --- trunk/package/appconference/Config.in 2006-09-14 19:50:44 UTC (rev 370) +++ trunk/package/appconference/Config.in 2006-09-15 01:26:33 UTC (rev 371) @@ -7,3 +7,13 @@ less resources than meetme http://www.voip-info.org/wiki/view/Asterisk+app_conference + +config BR2_PACKAGE_ASTERISKAPPCONFERENCE_G729HACK + bool "app_conference g729 hack" + default n + depends BR2_PACKAGE_ASTERISKAPPCONFERENCE + help + This patch is a hack that: + - forces all callers to g729a + - shuts down the conference and hangs up on members + when a moderator/speaker leaves Modified: trunk/package/appconference/appconference.mk =================================================================== --- trunk/package/appconference/appconference.mk 2006-09-14 19:50:44 UTC (rev 370) +++ trunk/package/appconference/appconference.mk 2006-09-15 01:26:33 UTC (rev 371) @@ -20,6 +20,9 @@ touch $(APPCONFERENCE_DIR)/.unpacked $(APPCONFERENCE_DIR)/.configured: $(APPCONFERENCE_DIR)/.unpacked +ifeq ($(strip $(BR2_PACKAGE_ASTERISKAPPCONFERENCE_G729HACK)),y) + toolchain/patch-kernel.sh $(APPCONFERENCE_DIR) package/appconference/ opt-appconference-g729hack.patch +endif toolchain/patch-kernel.sh $(APPCONFERENCE_DIR) package/appconference/ appconference\*.patch touch $(APPCONFERENCE_DIR)/.configured Added: trunk/package/appconference/opt-appconference-g729hack.patch =================================================================== --- trunk/package/appconference/opt-appconference-g729hack.patch (rev 0) +++ trunk/package/appconference/opt-appconference-g729hack.patch 2006-09-15 01:26:33 UTC (rev 371) @@ -0,0 +1,54 @@ +diff -ur app_conference.orig/conference.c app_conference/conference.c +--- app_conference.orig/conference.c 2006-06-02 17:39:52.000000000 -0400 ++++ app_conference/conference.c 2006-09-14 21:16:05.000000000 -0400 +@@ -198,6 +198,10 @@ + // check for dead members + if ( member->remove_flag == 1 ) + { ++ // When speaker leaves, shut down the conference ++ if(member->type == 'S' || member->type == 'M') ++ end_conference(conf); ++ + // leave message for other members of the conference + membertest = conf->memberlist ; + +@@ -627,7 +631,9 @@ + if ( c == AC_SLINEAR_INDEX ) + conf->from_slinear_paths[ c ] = NULL; + else +- conf->from_slinear_paths[ c ] =ast_translator_build_path( 1 << c, AST_FORMAT_SLINEAR); ++// conf->from_slinear_paths[ c ] =ast_translator_build_path( 1 << c, AST_FORMAT_SLINEAR); ++ conf->from_slinear_paths[ c ] =ast_translator_build_path( AST_FORMAT_G729A, AST_FORMAT_G729A); ++ + } + + // add the initial member +@@ -1189,7 +1195,7 @@ + // can't be used simultaneously for multiple audio streams + // + +- struct ast_trans_pvt* trans = ast_translator_build_path( member->write_format, AST_FORMAT_SLINEAR ) ; ++ struct ast_trans_pvt* trans = ast_translator_build_path( member->write_format, AST_FORMAT_G729A ) ; + + if ( trans != NULL ) + { +diff -ur app_conference.orig/member.c app_conference/member.c +--- app_conference.orig/member.c 2006-06-05 13:40:52.000000000 -0400 ++++ app_conference/member.c 2006-09-14 21:16:05.000000000 -0400 +@@ -994,12 +994,12 @@ + + // set member's audio formats, taking dsp preprocessing into account + // ( chan->nativeformats, AST_FORMAT_SLINEAR, AST_FORMAT_ULAW, AST_FORMAT_GSM ) +- member->read_format = ( member->dsp == NULL ) ? chan->nativeformats : AST_FORMAT_SLINEAR ; +- member->write_format = chan->nativeformats ; ++ member->read_format = AST_FORMAT_G729A ; ++ member->write_format = AST_FORMAT_G729A ; + + // translation paths ( ast_translator_build_path() returns null if formats match ) +- member->to_slinear = ast_translator_build_path( AST_FORMAT_SLINEAR, member->read_format ) ; +- member->from_slinear = ast_translator_build_path( member->write_format, AST_FORMAT_SLINEAR ) ; ++ member->to_slinear = ast_translator_build_path( AST_FORMAT_G729A, member->read_format ) ; ++ member->from_slinear = ast_translator_build_path( member->write_format, AST_FORMAT_G729A ) ; + + //ast_log( AST_CONF_DEBUG, "AST_FORMAT_SLINEAR => %d\n", AST_FORMAT_SLINEAR ) ; + This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |