Skip to content
Snippets Groups Projects
Commit 48a1081d authored by jpbl's avatar jpbl
Browse files

See ChangeLog

parent f0837450
No related branches found
No related tags found
No related merge requests found
......@@ -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"
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment