Skip to content

Commit

Permalink
Merge pull request #10 from suhasHere/master
Browse files Browse the repository at this point in the history
Linux Webrtc Audio Support
  • Loading branch information
ethanhugg committed Aug 26, 2011
2 parents d2b59aa + e8468e0 commit 8c669eb
Show file tree
Hide file tree
Showing 6 changed files with 161 additions and 9 deletions.
3 changes: 2 additions & 1 deletion SConstruct
Original file line number Diff line number Diff line change
Expand Up @@ -147,7 +147,7 @@ elif sys.platform=='darwin':

elif sys.platform=='linux2':
build_env["CPPFLAGS"] = [
'-Werror',
#'-Werror',
'-Wall',
'-fexceptions',
'-fno-common',
Expand All @@ -162,6 +162,7 @@ elif sys.platform=='linux2':
'-march=i486'
]
build_env["CPPDEFINES"] += [
'NO_WEBRTC_VIDEO',
'_GNU_SOURCE',
'SIP_OS_LINUX',
'LINUX',
Expand Down
6 changes: 3 additions & 3 deletions Sconscriptlib
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ elif sys.platform =='darwin':
]

elif sys.platform =='linux2':
gipslib = 'third_party/lib/libVideoEngine_Linux_gcc.a'
# gipslib = 'third_party/lib/libVideoEngine_Linux_gcc.a'
src_files = [
'src/libcallcontrol.a',
'src/sipcc/libsipcc.a',
Expand All @@ -47,8 +47,8 @@ if sys.platform =='win32':
env.Install("./out/lib/", 'third_party\lib\ddraw.lib')
else:
env.Install("./out/lib/", "lib" + componentName + suffixName + ".a")
if sys.platform == 'linux2':
env.Install("./out/lib/", gipslib)
# if sys.platform == 'linux2':
# env.Install("./out/lib/", gipslib)


# function to help write the linux_export directory
Expand Down
78 changes: 76 additions & 2 deletions ikran/SConstruct
Original file line number Diff line number Diff line change
Expand Up @@ -307,7 +307,44 @@ elif sys.platform=='linux2':
'/usr/lib',
mozsdkpath + '/lib',
mozsdkpath + '/bin',
webrtcpath + '/out/Debug'
webrtcpath + '/out/Debug/obj.target/src/video_engine/main/source',
webrtcpath + '/out/Debug/obj.target/src/voice_engine/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_render/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/media_file/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_processing/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_capture/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/utility/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/codecs/vp8/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_video/jpeg/main/source',
webrtcpath + '/out/Debug/obj.target/third_party/libvpx',
webrtcpath + '/out/Debug/obj.target/third_party/libjpeg_turbo',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_device/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/NetEQ/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/ns/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/aecm/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/aec/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_audio/resampler/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iLBC/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/agc/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/CNG/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iSAC/fix/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iSAC/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_audio/vad/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/udp_transport/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_conference_mixer/source',
webrtcpath + '/out/Debug/obj.target/src/modules/rtp_rtcp/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/codecs/i420/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_video/vplib/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/G711/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/utility',
webrtcpath + '/out/Debug/obj.target/src/common_audio/signal_processing_library/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/G722/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/PCM16B/main/source',
webrtcpath + '/out/Debug/obj.target/third_party/protobuf',
webrtcpath + '/out/Debug/obj.target/src/system_wrappers/source'
]
libs += [
componentName + suffixName,
Expand All @@ -330,7 +367,44 @@ elif sys.platform=='linux2':
'Xext',
'glib-2.0',
'chromium',
'VideoEngine_Linux_gcc',
'libvideo_engine_core.a',
'libvoice_engine_core.a',
'libvideo_render_module.a',
'libmedia_file.a',
'libvideo_processing.a',
'libvideo_capture_module.a',
'libwebrtc_utility.a',
'libwebrtc_video_coding.a',
'libwebrtc_vp8.a',
'libwebrtc_jpeg.a',
'libvpx.a',
'libjpeg_turbo.a',
'libaudio_coding_module.a',
'libaudio_processing.a',
'libaudio_device.a',
'libNetEq.a',
'libns.a',
'libaecm.a',
'libaec.a',
'libresampler.a',
'libiLBC.a',
'libagc.a',
'libCNG.a',
'libiSACFix.a',
'libiSAC.a',
'libvad.a',
'libudp_transport.a',
'libaudio_conference_mixer.a',
'librtp_rtcp.a',
'libwebrtc_i420.a',
'libwebrtc_vplib.a',
'libG711.a',
'libapm_util.a',
'libspl.a',
'libG722.a',
'libPCM16B.a',
'libprotobuf_lite.a',
'libsystem_wrappers.a'
]
env["LINKFLAGS"] += [
'-shared',
Expand Down
2 changes: 1 addition & 1 deletion src/softphonewrapper/CC_SIPCCCall.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -423,7 +423,7 @@ void CC_SIPCCCall::addStream(int streamId, bool isVideo)
// At the moment the only candidate is the muted state
if (isVideo)
{
#ifndef __APPLE__
#ifndef NO_WEBRTC_VIDEO
VideoTermination * pVideo = VcmSIPCCBinding::getVideoTermination();

// if there is a window for this call apply it to the stream
Expand Down
79 changes: 77 additions & 2 deletions tests/testapp_softphone/SConstruct
Original file line number Diff line number Diff line change
Expand Up @@ -184,7 +184,45 @@ elif sys.platform=='linux2':
libpath += [
'../../third_party/chromium_base',
'../../third_party/lib',
'/usr/lib'
'/usr/lib',
webrtcpath + '/out/Debug/obj.target/src/video_engine/main/source',
webrtcpath + '/out/Debug/obj.target/src/voice_engine/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_render/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/media_file/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_processing/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_capture/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/utility/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/codecs/vp8/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_video/jpeg/main/source',
webrtcpath + '/out/Debug/obj.target/third_party/libvpx',
webrtcpath + '/out/Debug/obj.target/third_party/libjpeg_turbo',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_device/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/NetEQ/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/ns/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/aecm/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/aec/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_audio/resampler/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iLBC/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/agc/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/CNG/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iSAC/fix/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/iSAC/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_audio/vad/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/udp_transport/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_conference_mixer/source',
webrtcpath + '/out/Debug/obj.target/src/modules/rtp_rtcp/source',
webrtcpath + '/out/Debug/obj.target/src/modules/video_coding/codecs/i420/main/source',
webrtcpath + '/out/Debug/obj.target/src/common_video/vplib/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/G711/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_processing/utility',
webrtcpath + '/out/Debug/obj.target/src/common_audio/signal_processing_library/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/G722/main/source',
webrtcpath + '/out/Debug/obj.target/src/modules/audio_coding/codecs/PCM16B/main/source',
webrtcpath + '/out/Debug/obj.target/third_party/protobuf',
webrtcpath + '/out/Debug/obj.target/src/system_wrappers/source'
]
libs += [
componentName + suffixName,
Expand All @@ -198,7 +236,44 @@ elif sys.platform=='linux2':
'Xext',
'glib-2.0',
'chromium',
'VideoEngine_Linux_gcc'
'libvideo_engine_core.a',
'libvoice_engine_core.a',
'libvideo_render_module.a',
'libmedia_file.a',
'libvideo_processing.a',
'libvideo_capture_module.a',
'libwebrtc_utility.a',
'libwebrtc_video_coding.a',
'libwebrtc_vp8.a',
'libwebrtc_jpeg.a',
'libvpx.a',
'libjpeg_turbo.a',
'libaudio_coding_module.a',
'libaudio_processing.a',
'libaudio_device.a',
'libNetEq.a',
'libns.a',
'libaecm.a',
'libaec.a',
'libresampler.a',
'libiLBC.a',
'libagc.a',
'libCNG.a',
'libiSACFix.a',
'libiSAC.a',
'libvad.a',
'libudp_transport.a',
'libaudio_conference_mixer.a',
'librtp_rtcp.a',
'libwebrtc_i420.a',
'libwebrtc_vplib.a',
'libG711.a',
'libapm_util.a',
'libspl.a',
'libG722.a',
'libPCM16B.a',
'libprotobuf_lite.a',
'libsystem_wrappers.a'
]
env["LINKFLAGS"] += [
'-z',
Expand Down
2 changes: 2 additions & 0 deletions tests/testapp_softphone/testapp.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -74,6 +74,7 @@
#include "PhoneDetails.h"
#include "CSFAudioControl.h"


#ifndef NOVIDEO
#include "VideoWindow.h"
#endif
Expand Down Expand Up @@ -568,6 +569,7 @@ static void handleOriginatePhoneCall (CallControlManagerPtr ccmPtr, const string


#ifndef NOVIDEO
CSFLogDebug(logTag, " SUHAS SUHAS SUHAS SUHAS SUHAS SUHAS SUHAS ");
// associate the video window - even if this is not a video call, it might be escalated later, so
// it is easier to always associate them
outgoingCall->setRemoteWindow((VideoWindowHandle)hVideoWindow);
Expand Down

0 comments on commit 8c669eb

Please sign in to comment.