提交 b9e03353 authored 作者: Anthony Minessale's avatar Anthony Minessale

update

git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@4616 d0543943-73ff-0310-b7d9-9358b9ac24b2
上级 210926e5
...@@ -7,9 +7,6 @@ ...@@ -7,9 +7,6 @@
*/ */
#undef HAVE_DIRENT_H #undef HAVE_DIRENT_H
/* Define to 1 if you have the <dlfcn.h> header file. */
#undef HAVE_DLFCN_H
/* Define to 1 if you have the `gethostname' function. */ /* Define to 1 if you have the `gethostname' function. */
#undef HAVE_GETHOSTNAME #undef HAVE_GETHOSTNAME
......
...@@ -33,8 +33,6 @@ POST_INSTALL = : ...@@ -33,8 +33,6 @@ POST_INSTALL = :
NORMAL_UNINSTALL = : NORMAL_UNINSTALL = :
PRE_UNINSTALL = : PRE_UNINSTALL = :
POST_UNINSTALL = : POST_UNINSTALL = :
build_triplet = @build@
host_triplet = @host@
subdir = src/mod subdir = src/mod
DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in DIST_COMMON = $(srcdir)/Makefile.am $(srcdir)/Makefile.in
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4 ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
...@@ -60,7 +58,6 @@ ACLOCAL = @ACLOCAL@ ...@@ -60,7 +58,6 @@ ACLOCAL = @ACLOCAL@
AMDEP_FALSE = @AMDEP_FALSE@ AMDEP_FALSE = @AMDEP_FALSE@
AMDEP_TRUE = @AMDEP_TRUE@ AMDEP_TRUE = @AMDEP_TRUE@
AMTAR = @AMTAR@ AMTAR = @AMTAR@
AR = @AR@
AUTOCONF = @AUTOCONF@ AUTOCONF = @AUTOCONF@
AUTOHEADER = @AUTOHEADER@ AUTOHEADER = @AUTOHEADER@
AUTOMAKE = @AUTOMAKE@ AUTOMAKE = @AUTOMAKE@
...@@ -73,22 +70,15 @@ CPPFLAGS = @CPPFLAGS@ ...@@ -73,22 +70,15 @@ CPPFLAGS = @CPPFLAGS@
CRASHPROT_FALSE = @CRASHPROT_FALSE@ CRASHPROT_FALSE = @CRASHPROT_FALSE@
CRASHPROT_TRUE = @CRASHPROT_TRUE@ CRASHPROT_TRUE = @CRASHPROT_TRUE@
CURL = @CURL@ CURL = @CURL@
CXX = @CXX@
CXXCPP = @CXXCPP@
CXXDEPMODE = @CXXDEPMODE@
CXXFLAGS = @CXXFLAGS@
CYGPATH_W = @CYGPATH_W@ CYGPATH_W = @CYGPATH_W@
DEFS = @DEFS@ DEFS = @DEFS@
DEPDIR = @DEPDIR@ DEPDIR = @DEPDIR@
DYNAMIC_LIB_EXTEN = @DYNAMIC_LIB_EXTEN@ DYNAMIC_LIB_EXTEN = @DYNAMIC_LIB_EXTEN@
ECHO = @ECHO@
ECHO_C = @ECHO_C@ ECHO_C = @ECHO_C@
ECHO_N = @ECHO_N@ ECHO_N = @ECHO_N@
ECHO_T = @ECHO_T@ ECHO_T = @ECHO_T@
EGREP = @EGREP@ EGREP = @EGREP@
EXEEXT = @EXEEXT@ EXEEXT = @EXEEXT@
F77 = @F77@
FFLAGS = @FFLAGS@
GETLIB = @GETLIB@ GETLIB = @GETLIB@
INSTALL_DATA = @INSTALL_DATA@ INSTALL_DATA = @INSTALL_DATA@
INSTALL_PROGRAM = @INSTALL_PROGRAM@ INSTALL_PROGRAM = @INSTALL_PROGRAM@
...@@ -106,8 +96,6 @@ LIBCURL_CPPFLAGS = @LIBCURL_CPPFLAGS@ ...@@ -106,8 +96,6 @@ LIBCURL_CPPFLAGS = @LIBCURL_CPPFLAGS@
LIBCURL_DEPS = @LIBCURL_DEPS@ LIBCURL_DEPS = @LIBCURL_DEPS@
LIBOBJS = @LIBOBJS@ LIBOBJS = @LIBOBJS@
LIBS = @LIBS@ LIBS = @LIBS@
LIBTOOL = @LIBTOOL@
LN_S = @LN_S@
LTLIBOBJS = @LTLIBOBJS@ LTLIBOBJS = @LTLIBOBJS@
MAKEINFO = @MAKEINFO@ MAKEINFO = @MAKEINFO@
OBJEXT = @OBJEXT@ OBJEXT = @OBJEXT@
...@@ -119,7 +107,6 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@ ...@@ -119,7 +107,6 @@ PACKAGE_TARNAME = @PACKAGE_TARNAME@
PACKAGE_VERSION = @PACKAGE_VERSION@ PACKAGE_VERSION = @PACKAGE_VERSION@
PATH_SEPARATOR = @PATH_SEPARATOR@ PATH_SEPARATOR = @PATH_SEPARATOR@
PRTDIAG = @PRTDIAG@ PRTDIAG = @PRTDIAG@
RANLIB = @RANLIB@
SET_MAKE = @SET_MAKE@ SET_MAKE = @SET_MAKE@
SHELL = @SHELL@ SHELL = @SHELL@
SOLINK = @SOLINK@ SOLINK = @SOLINK@
...@@ -134,34 +121,20 @@ WANT_DEBUG_TRUE = @WANT_DEBUG_TRUE@ ...@@ -134,34 +121,20 @@ WANT_DEBUG_TRUE = @WANT_DEBUG_TRUE@
WGET = @WGET@ WGET = @WGET@
ZCAT = @ZCAT@ ZCAT = @ZCAT@
_libcurl_config = @_libcurl_config@ _libcurl_config = @_libcurl_config@
ac_ct_AR = @ac_ct_AR@
ac_ct_CC = @ac_ct_CC@ ac_ct_CC = @ac_ct_CC@
ac_ct_CXX = @ac_ct_CXX@
ac_ct_F77 = @ac_ct_F77@
ac_ct_RANLIB = @ac_ct_RANLIB@
ac_ct_STRIP = @ac_ct_STRIP@ ac_ct_STRIP = @ac_ct_STRIP@
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@ am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@ am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
am__include = @am__include@ am__include = @am__include@
am__leading_dot = @am__leading_dot@ am__leading_dot = @am__leading_dot@
am__quote = @am__quote@ am__quote = @am__quote@
am__tar = @am__tar@ am__tar = @am__tar@
am__untar = @am__untar@ am__untar = @am__untar@
bindir = @bindir@ bindir = @bindir@
build = @build@
build_alias = @build_alias@ build_alias = @build_alias@
build_cpu = @build_cpu@
build_os = @build_os@
build_vendor = @build_vendor@
datadir = @datadir@ datadir = @datadir@
exec_prefix = @exec_prefix@ exec_prefix = @exec_prefix@
host = @host@
host_alias = @host_alias@ host_alias = @host_alias@
host_cpu = @host_cpu@
host_os = @host_os@
host_vendor = @host_vendor@
includedir = @includedir@ includedir = @includedir@
infodir = @infodir@ infodir = @infodir@
install_sh = @install_sh@ install_sh = @install_sh@
...@@ -230,15 +203,6 @@ $(top_srcdir)/configure: $(am__configure_deps) ...@@ -230,15 +203,6 @@ $(top_srcdir)/configure: $(am__configure_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
$(ACLOCAL_M4): $(am__aclocal_m4_deps) $(ACLOCAL_M4): $(am__aclocal_m4_deps)
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
mostlyclean-libtool:
-rm -f *.lo
clean-libtool:
-rm -rf .libs _libs
distclean-libtool:
-rm -f libtool
uninstall-info-am: uninstall-info-am:
tags: TAGS tags: TAGS
TAGS: TAGS:
...@@ -300,11 +264,11 @@ distclean-generic: ...@@ -300,11 +264,11 @@ distclean-generic:
maintainer-clean-generic: maintainer-clean-generic:
@echo "This command is intended for maintainers to use" @echo "This command is intended for maintainers to use"
@echo "it deletes files that may require special tools to rebuild." @echo "it deletes files that may require special tools to rebuild."
clean-am: clean-generic clean-libtool mostlyclean-am clean-am: clean-generic mostlyclean-am
distclean: distclean-am distclean: distclean-am
-rm -f Makefile -rm -f Makefile
distclean-am: clean-am distclean-generic distclean-libtool distclean-am: clean-am distclean-generic
dvi: dvi-am dvi: dvi-am
...@@ -332,7 +296,7 @@ maintainer-clean-am: distclean-am maintainer-clean-generic ...@@ -332,7 +296,7 @@ maintainer-clean-am: distclean-am maintainer-clean-generic
mostlyclean: mostlyclean-am mostlyclean: mostlyclean-am
mostlyclean-am: mostlyclean-generic mostlyclean-libtool mostlyclean-am: mostlyclean-generic
pdf: pdf-am pdf: pdf-am
...@@ -344,14 +308,13 @@ ps-am: ...@@ -344,14 +308,13 @@ ps-am:
uninstall-am: uninstall-info-am uninstall-am: uninstall-info-am
.PHONY: all all-am check check-am clean clean-generic clean-libtool \ .PHONY: all all-am check check-am clean clean-generic distclean \
distclean distclean-generic distclean-libtool distdir dvi \ distclean-generic distdir dvi dvi-am html html-am info info-am \
dvi-am html html-am info info-am install install-am \ install install-am install-data install-data-am install-exec \
install-data install-data-am install-exec install-exec-am \ install-exec-am install-info install-info-am install-man \
install-info install-info-am install-man install-strip \ install-strip installcheck installcheck-am installdirs \
installcheck installcheck-am installdirs maintainer-clean \ maintainer-clean maintainer-clean-generic mostlyclean \
maintainer-clean-generic mostlyclean mostlyclean-generic \ mostlyclean-generic pdf pdf-am ps ps-am uninstall uninstall-am \
mostlyclean-libtool pdf pdf-am ps ps-am uninstall uninstall-am \
uninstall-info-am uninstall-info-am
......
...@@ -731,7 +731,6 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, v ...@@ -731,7 +731,6 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, v
} }
/* If a file or speech event is being played */ /* If a file or speech event is being played */
if (conference->fnode) { if (conference->fnode) {
switch_mutex_lock(conference->mutex);
/* Lead in time */ /* Lead in time */
if (conference->fnode->leadin) { if (conference->fnode->leadin) {
conference->fnode->leadin--; conference->fnode->leadin--;
...@@ -759,8 +758,6 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, v ...@@ -759,8 +758,6 @@ static void *SWITCH_THREAD_FUNC conference_thread_run(switch_thread_t *thread, v
} }
} }
has_file_data = 1; has_file_data = 1;
switch_mutex_unlock(conference->mutex);
} else { } else {
has_file_data = 0; has_file_data = 0;
} }
...@@ -1751,16 +1748,9 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th ...@@ -1751,16 +1748,9 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th
return NULL; return NULL;
} }
if (switch_core_timer_init(&timer, conference->timer_name, conference->interval, samples, rec->pool) == SWITCH_STATUS_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "setup timer success interval: %u samples: %u\n", conference->interval, samples);
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Timer Setup Failed. Conference Cannot Start\n");
return NULL;
}
switch_mutex_lock(globals.hash_mutex); switch_mutex_lock(globals.hash_mutex);
globals.threads++; globals.threads++;
switch_mutex_unlock(globals.hash_mutex); switch_mutex_unlock(globals.hash_mutex);
member = &smember; member = &smember;
...@@ -1805,11 +1795,21 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th ...@@ -1805,11 +1795,21 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th
goto end; goto end;
} }
if (switch_core_timer_init(&timer, conference->timer_name, conference->interval, samples, rec->pool) == SWITCH_STATUS_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "setup timer success interval: %u samples: %u\n", conference->interval, samples);
} else {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Timer Setup Failed. Conference Cannot Start\n");
goto end;
}
if ((vval = switch_mprintf("Conference %s", conference->name))) { if ((vval = switch_mprintf("Conference %s", conference->name))) {
switch_core_file_set_string(&fh, SWITCH_AUDIO_COL_STR_TITLE, vval); switch_core_file_set_string(&fh, SWITCH_AUDIO_COL_STR_TITLE, vval);
switch_safe_free(vval); switch_safe_free(vval);
} }
switch_core_file_set_string(&fh, SWITCH_AUDIO_COL_STR_ARTIST, "FreeSWITCH mod_conference Software Conference Module");
while(switch_test_flag(member, MFLAG_RUNNING) && switch_test_flag(conference, CFLAG_RUNNING) && conference->count) { while(switch_test_flag(member, MFLAG_RUNNING) && switch_test_flag(conference, CFLAG_RUNNING) && conference->count) {
mux_used = (uint32_t) switch_buffer_inuse(member->mux_buffer); mux_used = (uint32_t) switch_buffer_inuse(member->mux_buffer);
...@@ -1832,7 +1832,8 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th ...@@ -1832,7 +1832,8 @@ static void *SWITCH_THREAD_FUNC conference_record_thread_run(switch_thread_t *th
if (!switch_test_flag((&fh), SWITCH_FILE_PAUSE)) { if (!switch_test_flag((&fh), SWITCH_FILE_PAUSE)) {
switch_size_t len = (switch_size_t) rlen / sizeof(int16_t); switch_size_t len = (switch_size_t) rlen / sizeof(int16_t);
if (switch_core_file_write(&fh, data, &len) != SWITCH_STATUS_SUCCESS) { if (switch_core_file_write(&fh, data, &len) != SWITCH_STATUS_SUCCESS) {
goto end; switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Write Failed\n");
switch_clear_flag_locked(member, MFLAG_RUNNING);
} }
} }
} }
......
...@@ -530,8 +530,9 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path) ...@@ -530,8 +530,9 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path)
{ {
shout_context_t *context; shout_context_t *context;
char *host, *file; char *host, *file;
char *username, *password; char *username, *password, *port;
char *err = NULL; char *err = NULL;
int portno = 0;
if ((context = switch_core_alloc(handle->memory_pool, sizeof(*context))) == 0) { if ((context = switch_core_alloc(handle->memory_pool, sizeof(*context))) == 0) {
return SWITCH_STATUS_MEMERR; return SWITCH_STATUS_MEMERR;
...@@ -610,6 +611,17 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path) ...@@ -610,6 +611,17 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path)
goto error; goto error;
} }
if ((port = strchr(host, ':'))) {
*port++ = '\0';
if (port) {
portno = atoi(port);
}
}
if (!portno) {
portno = 8000;
}
if (!(context->shout = shout_new())) { if (!(context->shout = shout_new())) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not allocate shout_t\n"); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Could not allocate shout_t\n");
goto error; goto error;
...@@ -625,7 +637,7 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path) ...@@ -625,7 +637,7 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path)
goto error; goto error;
} }
if (shout_set_port(context->shout, 8000) != SHOUTERR_SUCCESS) { if (shout_set_port(context->shout, portno) != SHOUTERR_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting port: %s\n", shout_get_error(context->shout)); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting port: %s\n", shout_get_error(context->shout));
goto error; goto error;
} }
...@@ -650,6 +662,11 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path) ...@@ -650,6 +662,11 @@ static switch_status_t shout_file_open(switch_file_handle_t *handle, char *path)
goto error; goto error;
} }
if (shout_set_description(context->shout, "FreeSWITCH mod_shout Broadcasting Module") != SHOUTERR_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting name: %s\n", shout_get_error(context->shout));
goto error;
}
if (shout_set_audio_info(context->shout, "bitrate", "64000") != SHOUTERR_SUCCESS) { if (shout_set_audio_info(context->shout, "bitrate", "64000") != SHOUTERR_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting user: %s\n", shout_get_error(context->shout)); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting user: %s\n", shout_get_error(context->shout));
goto error; goto error;
...@@ -818,6 +835,11 @@ static switch_status_t shout_file_set_string(switch_file_handle_t *handle, switc ...@@ -818,6 +835,11 @@ static switch_status_t shout_file_set_string(switch_file_handle_t *handle, switc
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting name: %s\n", shout_get_error(context->shout)); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting name: %s\n", shout_get_error(context->shout));
} }
break; break;
case SWITCH_AUDIO_COL_STR_ARTIST:
if (shout_set_description(context->shout, string) != SHOUTERR_SUCCESS) {
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "Error setting name: %s\n", shout_get_error(context->shout));
}
break;
default: default:
switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Value Ignored\n"); switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "Value Ignored\n");
break; break;
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论