Commit 48a1081d authored by jpbl's avatar jpbl

See ChangeLog

parent f0837450
......@@ -4,6 +4,10 @@ SFLphone (0.4.1-pre2) / now
* Bug fix when trying to use more than 6 lines.
* Now, we send a final response to reINVITEs
(thanks to Mikael Magnusson)
* We can build in different build directories.
(thanks to Mikael Magnusson)
* We actualy check if portaudio and eXosip2 libs
are installed
SFLphone (0.4.1-pre1) / 2005-08-11
* Use libeXosip2
......
Jean-Philippe Barette-LaPierre (30 April 2005) version 0.4.1-pre1
- Changed the order of initialization of modules, in order to
removed a race condition.
- We can build in different build directories.
(thanks to Mikael Magnusson)
- We actualy check if portaudio and eXosip2 libs
are installed. (thanks to Mikael Magnusson)
Jean-Philippe Barette-LaPierre (30 April 2005) version 0.4.1-pre1
- Now, we send a final response to reINVITEs
(thanks to Mikael Magnusson)
......@@ -21,7 +29,7 @@ Laurielle LEA (29 July 2005) version 0.4
Laurielle LEA (27 July 2005) version 0.4
- Migrate from libeXoSIP 0.9.0 to libeXosip2-1.9.1-pre15
(http://www.antisip.com/download/)
(http://www.antisip.com/download/)
Laurielle LEA (21 July 2005) version 0.4
- Change README.
......
......@@ -3,7 +3,7 @@ AC_INIT(acinclude.m4)
AM_CONFIG_HEADER(config.h)
dnl figure out the sflphone version
VERSION=`sed -ne 's/^#define VERSION "\(.*\)"/\1/p' src/global.h`
VERSION=`sed -ne 's/^#define VERSION "\(.*\)"/\1/p' ${srcdir}/src/global.h`
AC_SUBST(VERSION)
dnl get rid of release number
......@@ -81,7 +81,10 @@ SFLPHONE_LIBS="$SFLPHONE_LIBS $libosip2_LIBS"
if test $ac_cv_header_eXosip2_eXosip_h = no; then
AC_MSG_ERROR([*** missing eXosip2/eXosip.h. You need a working eXosip2 installation. See http://www.antisip.com/download/])
fi
libexosip2_LIBS="-leXosip2 "
AC_CHECK_LIB([eXosip2], [eXosip_init],[libexosip2_LIBS="-leXosip2 "],[
AC_MSG_ERROR([*** missing eXosip2 library. You need a working eXosip2 installation. See http://www.antisip.com/download/])])
SFLPHONE_LIBS="$SFLPHONE_LIBS $libexosip2_LIBS"
AC_SUBST(LIBQT)
......@@ -112,8 +115,11 @@ AM_CONDITIONAL(MAINTENER_CODE, test x$maintener = xyes)
if test $ac_cv_header_portaudio_h = no; then
AC_MSG_ERROR([*** missing portaudio.h. You need a working PortAudio installation. See http://www.portaudio.com])
fi
portaudio_LIBS="-lportaudio "
portaudio_CFLAGS="-DAUDIO_PORTAUDIO "
AC_CHECK_LIB([portaudio], [Pa_GetDeviceCount], [
portaudio_LIBS="-lportaudio "
portaudio_CFLAGS="-DAUDIO_PORTAUDIO "],
[AC_MSG_ERROR([*** missing portaudio V19 library. You need a working PortAudio installation. See http://www.portaudio.com])])
SFLPHONE_LIBS="$SFLPHONE_LIBS $portaudio_LIBS"
SFLPHONE_CXXFLAGS=="$SFLPHONE_CXXFLAGS $portaudio_CFLAGS"
AC_SUBST(portaudio_CFLAGS)
......
......@@ -44,9 +44,5 @@ sflphone_CXXFLAGS = -DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/sflphone\
sflphone_LDFLAGS = $(QT_LDFLAGS) $(X_LDFLAGS) -static
sflphone_LDADD = gui/libguiframework.la audio/libaudio.la ../stund/libstun.la ../utilspp/libutilspp.la -lpthread $(LIBQT) $(SFLPHONE_LIBS)
KDE_CXXFLAGS = $(USE_EXCEPTIONS)
AM_CPPFLAGS = $(QT_INCLUDES) $(X_INCLUDES) -Iaudio/pacpp/include $(libccext2_CFLAGS) $(libccgnu2_CFLAGS) $(portaudio_CFLAGS)
AM_CPPFLAGS = $(QT_INCLUDES) $(X_INCLUDES) -I$(top_srcdir) -Igui/qt -I$(srcdir)/audio/pacpp/include $(libccext2_CFLAGS) $(libccgnu2_CFLAGS) $(portaudio_CFLAGS)
......@@ -18,6 +18,6 @@ libaudio_la_SOURCES = \
tonegenerator.cpp tonegenerator.h \
ulaw.cpp ulaw.h
AM_CXXFLAGS = -Ipacpp/include/ $(libccext2_CFLAGS) $(libccrtp1_CFLAGS) $(portaudio_CFLAGS)
AM_CXXFLAGS = -I$(top_srcdir) -I$(srcdir)/pacpp/include/ $(libccext2_CFLAGS) $(libccrtp1_CFLAGS) $(portaudio_CFLAGS)
libaudio_la_LIBADD = gsm/libgsm.la pacpp/source/portaudiocpp/libportaudiocpp.la
......@@ -35,7 +35,9 @@ AudioLayer::AudioLayer ()
, _mainSndRingBuffer(SIZEBUF)
, _micRingBuffer(SIZEBUF)
, _stream(NULL)
{}
{
portaudio::System::initialize();
}
// Destructor
AudioLayer::~AudioLayer (void)
......@@ -53,20 +55,20 @@ AudioLayer::closeStream (void)
}
void
AudioLayer::openDevice (int index)
AudioLayer::openDevice (int outputIndex, int inputIndex)
{
closeStream();
// Set up the parameters required to open a (Callback)Stream:
portaudio::DirectionSpecificStreamParameters
outParams(portaudio::System::instance().deviceByIndex(index),
outParams(portaudio::System::instance().deviceByIndex(outputIndex),
2, portaudio::INT16, true,
portaudio::System::instance().deviceByIndex(index).defaultLowOutputLatency(),
portaudio::System::instance().deviceByIndex(outputIndex).defaultLowOutputLatency(),
NULL);
portaudio::DirectionSpecificStreamParameters
inParams(portaudio::System::instance().deviceByIndex(index),
inParams(portaudio::System::instance().deviceByIndex(inputIndex),
2, portaudio::INT16, true,
portaudio::System::instance().deviceByIndex(index).defaultLowInputLatency(),
portaudio::System::instance().deviceByIndex(inputIndex).defaultLowInputLatency(),
NULL);
portaudio::StreamParameters const params(inParams, outParams,
......
......@@ -42,7 +42,7 @@ public:
AudioLayer();
~AudioLayer (void);
void openDevice (int);
void openDevice (int, int);
void startStream (void);
void stopStream (void);
void sleep (int);
......
......@@ -19,4 +19,4 @@ libportaudiocpp_la_SOURCES = \
SystemHostApiIterator.cxx
AM_CXXFLAGS = -I../../include
AM_CXXFLAGS = -I$(srcdir)/../../include
......@@ -5,5 +5,6 @@ noinst_LTLIBRARIES = libguiframework.la
libguiframework_la_SOURCES = \
guiframework.cpp guiframework.h
libguiframework_la_CPPFLAGS = -I$(top_srcdir)
libguiframework_la_CXXFLAGS = $(libccext2_CFLAGS)
libguiframework_la_LIBADD = qt/libsflphoneqt.la
\ No newline at end of file
......@@ -38,7 +38,7 @@ libsflphoneqt_la_CXXFLAGS = -DPREFIX=\"$(prefix)\" -DPROGSHAREDIR=\"${datadir}/s
libsflphoneqt_la_LIBADD = $(portaudio_LIBS)
KDE_CXXFLAGS = $(USE_EXCEPTIONS)
AM_CPPFLAGS = -I../../audio/pacpp/include/ $(QT_INCLUDES) $(X_INCLUDES) $(libccext2_CFLAGS) $(portaudio_CFLAGS)
AM_CPPFLAGS = -I$(top_srcdir) -I$(srcdir)/../../audio/pacpp/include/ $(QT_INCLUDES) $(X_INCLUDES) $(libccext2_CFLAGS) $(portaudio_CFLAGS)
%.h: %.ui
......
......@@ -111,7 +111,7 @@ void ConfigurationPanel::init()
((QRadioButton*)stunButtonGroup->find(get_config_fields_int(SIGNALISATION, USE_STUN)))->setChecked(true);
// For audio tab
((QRadioButton*)DriverChoice->find(get_config_fields_int(AUDIO, DRIVER_NAME)))->setChecked(true);
((QRadioButton*)DriverChoice->find(get_config_fields_int(AUDIO, OUTPUT_DRIVER_NAME)))->setChecked(true);
codec1->setCurrentText(QString(get_config_fields_str(AUDIO, CODEC1)));
codec2->setCurrentText(QString(get_config_fields_str(AUDIO, CODEC2)));
......
......@@ -44,18 +44,30 @@ main (int argc, char **argv) {
{
QApplication a(argc, argv);
Manager::instance().initConfigFile();
try {
Manager::instance().init();
}
catch (const exception &e) {
std::cerr << e.what() << std::endl;
}
catch (...) {
std::cerr <<
"An unknown exception occured when initializing the system." <<
std::endl;
}
GUI = new QtGUIMainWindow (0, 0 ,
Qt::WDestructiveClose |
Qt::WStyle_Customize |
Qt::WStyle_NoBorder);
Manager::instance().setGui(GUI);
Manager::instance().init();
a.setMainWidget((QtGUIMainWindow*)GUI);
exit_code = a.exec();
Manager::instance().terminate();
}
#endif
}
return exit_code;
}
......
......@@ -74,6 +74,8 @@ ManagerImpl::ManagerImpl (void)
_ringback = false;
_exist = 0;
_loaded = false;
_gui = NULL;
_audiodriverPA = NULL;
}
ManagerImpl::~ManagerImpl (void)
......@@ -465,9 +467,10 @@ ManagerImpl::unregisterVoIPLink (void)
int
ManagerImpl::quitApplication (void)
{
// Quit VoIP-link library
// Quit VoIP-link library
terminate();
Config::deleteTree();
return 0;
}
int
......@@ -586,25 +589,45 @@ ManagerImpl::peerHungupCall (short id)
void
ManagerImpl::displayTextMessage (short id, const string& message)
{
_gui->displayTextMessage(id, message);
if(_gui) {
_gui->displayTextMessage(id, message);
}
else {
std::cout << message << std::endl;
}
}
void
ManagerImpl::displayErrorText (short id, const string& message)
{
_gui->displayErrorText(id, message);
if(_gui) {
_gui->displayErrorText(id, message);
}
else {
std::cerr << message << std::endl;
}
}
void
ManagerImpl::displayError (const string& error)
{
_gui->displayStatus(error);
if(_gui) {
_gui->displayStatus(error);
}
else {
std::cerr << error << std::endl;
}
}
void
ManagerImpl::displayStatus (const string& status)
{
_gui->displayStatus(status);
if(_gui) {
_gui->displayStatus(status);
}
else {
std::cout<< status << std::endl;
}
}
int
......@@ -851,7 +874,8 @@ ManagerImpl::initConfigFile (void)
fill_config_fields_str(SIGNALISATION, STUN_SERVER, DFT_STUN_SERVER);
fill_config_fields_int(SIGNALISATION, USE_STUN, NO);
fill_config_fields_int(AUDIO, DRIVER_NAME, DFT_DRIVER);
fill_config_fields_int(AUDIO, OUTPUT_DRIVER_NAME, DFT_DRIVER);
fill_config_fields_int(AUDIO, INPUT_DRIVER_NAME, DFT_DRIVER);
fill_config_fields_int(AUDIO, NB_CODEC, DFT_NB_CODEC);
fill_config_fields_str(AUDIO, CODEC1, DFT_CODEC);
fill_config_fields_str(AUDIO, CODEC2, DFT_CODEC);
......@@ -891,7 +915,8 @@ ManagerImpl::selectAudioDriver (void)
#if defined(AUDIO_PORTAUDIO)
_audiodriverPA = new AudioLayer();
_audiodriverPA->openDevice(get_config_fields_int(AUDIO, DRIVER_NAME));
_audiodriverPA->openDevice(get_config_fields_int(AUDIO, OUTPUT_DRIVER_NAME),
get_config_fields_int(AUDIO, INPUT_DRIVER_NAME));
#else
# error You must define one AUDIO driver to use.
#endif
......
......@@ -63,7 +63,8 @@
#define SEND_DTMF_AS "DTMF.sendDTMFas"
#define STUN_SERVER "STUN.STUNserver"
#define USE_STUN "STUN.useStun"
#define DRIVER_NAME "Drivers.driverName"
#define OUTPUT_DRIVER_NAME "Drivers.outputDriverName"
#define INPUT_DRIVER_NAME "Drivers.inputDriverName"
#define NB_CODEC "Codecs.nbCodec"
#define CODEC1 "Codecs.codec1"
#define CODEC2 "Codecs.codec2"
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment