Use fileutils for the audio file in voe_auto_test.

BUG=
TEST=voe_auto_test

Review URL: http://webrtc-codereview.appspot.com/250010

git-svn-id: http://webrtc.googlecode.com/svn/trunk@850 4adac7df-926f-26a2-2b94-8c16560cd09d
This commit is contained in:
andrew@webrtc.org 2011-10-31 21:31:07 +00:00
parent 27957508a3
commit 3134aacd6b
6 changed files with 109 additions and 94 deletions

View File

@ -22,12 +22,6 @@ using namespace webrtc;
namespace voetest { namespace voetest {
#ifdef MAC_IPHONE
extern char micFile[256];
#else
extern const char* micFile;
#endif
#define CHECK(expr) \ #define CHECK(expr) \
if (expr) \ if (expr) \
{ \ { \
@ -81,7 +75,8 @@ int VoECpuTest::DoTest()
CHECK(base->StartReceive(channel)); CHECK(base->StartReceive(channel));
CHECK(base->StartPlayout(channel)); CHECK(base->StartPlayout(channel));
CHECK(base->StartSend(channel)); CHECK(base->StartSend(channel));
CHECK(file->StartPlayingFileAsMicrophone(channel, micFile, true, true)); CHECK(file->StartPlayingFileAsMicrophone(channel, _mgr.AudioFilename(),
true, true));
CHECK(codec->SetVADStatus(channel, true)); CHECK(codec->SetVADStatus(channel, true));
CHECK(apm->SetAgcStatus(true, kAgcAdaptiveAnalog)); CHECK(apm->SetAgcStatus(true, kAgcAdaptiveAnalog));

View File

@ -43,10 +43,8 @@ const char* RemoteIP = "192.168.200.1"; // transmit to this IP address
#ifdef MAC_IPHONE #ifdef MAC_IPHONE
#define SLEEP_IF_IPHONE(x) SLEEP(x) #define SLEEP_IF_IPHONE(x) SLEEP(x)
extern char micFile[256];
#else #else
#define SLEEP_IF_IPHONE(x) #define SLEEP_IF_IPHONE(x)
extern const char* micFile;
#endif #endif
#ifdef WEBRTC_ANDROID #ifdef WEBRTC_ANDROID
@ -355,7 +353,8 @@ void VoEExtendedTest::Play(int channel,
fflush(NULL); fflush(NULL);
if (addFileAsMicrophone) if (addFileAsMicrophone)
{ {
file->StartPlayingFileAsMicrophone(channel, micFile, true, true); file->StartPlayingFileAsMicrophone(channel, _mgr.AudioFilename(), true,
true);
TEST_LOG("[file as mic]"); TEST_LOG("[file as mic]");
fflush(NULL); fflush(NULL);
} }
@ -1677,7 +1676,8 @@ int VoEExtendedTest::TestCallReport()
TEST_MUSTPASS(base->StartReceive(0)); TEST_MUSTPASS(base->StartReceive(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
/////////////////////////// ///////////////////////////
// Actual test starts here // Actual test starts here
@ -2636,8 +2636,10 @@ int VoEExtendedTest::TestCodec()
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
if (file) if (file)
{ {
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
true, true)); _mgr.AudioFilename(),
true,
true));
} }
// Scan all supported and valid codecs and remove from receiving db, then // Scan all supported and valid codecs and remove from receiving db, then
@ -3658,7 +3660,8 @@ int VoEExtendedTest::TestEncryption()
TEST_MUSTPASS(base->StartReceive(0)); TEST_MUSTPASS(base->StartReceive(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
/////////////////////////// ///////////////////////////
// Actual test starts here // Actual test starts here
@ -3913,7 +3916,8 @@ int VoEExtendedTest::TestEncryption()
TEST_MUSTPASS(base->StartReceive(0)); TEST_MUSTPASS(base->StartReceive(0));
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
MARK(); SLEEP(2000); MARK(); SLEEP(2000);
TEST_MUSTPASS(encrypt->DisableSRTPSend(0)); TEST_MUSTPASS(encrypt->DisableSRTPSend(0));
TEST_MUSTPASS(encrypt->DisableSRTPReceive(0)); TEST_MUSTPASS(encrypt->DisableSRTPReceive(0));
@ -5888,7 +5892,8 @@ int VoEExtendedTest::TestNetwork()
TEST_MUSTPASS(base->SetSendDestination(0, 8000, "::1")); TEST_MUSTPASS(base->SetSendDestination(0, 8000, "::1"));
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
file->StartPlayingFileAsMicrophone(0, micFile, true ,true); file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(), true,
true);
SLEEP(500); // ensure that we receieve some packets SLEEP(500); // ensure that we receieve some packets
// SetSourceFilter and GetSourceFilter // SetSourceFilter and GetSourceFilter
@ -6969,7 +6974,8 @@ int VoEExtendedTest::TestRTP_RTCP()
MARK(); MARK();
ANL(); ANL();
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
// ------------------------------------------------------------------------ // ------------------------------------------------------------------------
// >> InsertExtraRTPPacket // >> InsertExtraRTPPacket
@ -7005,7 +7011,8 @@ int VoEExtendedTest::TestRTP_RTCP()
MARK(); // not sending MARK(); // not sending
TEST_ERROR(VE_NOT_SENDING); TEST_ERROR(VE_NOT_SENDING);
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
SLEEP(1000); SLEEP(1000);
for (int p = 0; p < 128; p++) for (int p = 0; p < 128; p++)
@ -7213,7 +7220,8 @@ int VoEExtendedTest::TestRTP_RTCP()
TEST_MUSTPASS(base->StartReceive(0)); TEST_MUSTPASS(base->StartReceive(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
SLEEP(8000); SLEEP(8000);
@ -7467,7 +7475,8 @@ TEST(RTCPStatistics #2);
TEST_MUSTPASS(base->StartReceive(0)); TEST_MUSTPASS(base->StartReceive(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
TEST_MUSTPASS(rtp_rtcp->SetFECStatus(0, true, 126)); TEST_MUSTPASS(rtp_rtcp->SetFECStatus(0, true, 126));
MARK(); MARK();
TEST_LOG("Should sound OK with FEC enabled\n"); TEST_LOG("Should sound OK with FEC enabled\n");
@ -7636,7 +7645,8 @@ int VoEExtendedTest::TestVolumeControl()
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
#ifdef _TEST_FILE_ #ifdef _TEST_FILE_
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true ,true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, _mgr.AudioFilename(),
true, true));
#endif #endif
//////////////////////////// ////////////////////////////

View File

@ -29,9 +29,10 @@
#include "../../source/voice_engine_defines.h" // defines build macros #include "../../source/voice_engine_defines.h" // defines build macros
#endif #endif
#include "thread_wrapper.h"
#include "critical_section_wrapper.h" #include "critical_section_wrapper.h"
#include "event_wrapper.h" #include "event_wrapper.h"
#include "thread_wrapper.h"
#include "testsupport/fileutils.h"
#ifdef _TEST_NETEQ_STATS_ #ifdef _TEST_NETEQ_STATS_
#include "../../interface/voe_neteq_stats.h" // Not available in delivery folder #include "../../interface/voe_neteq_stats.h" // Not available in delivery folder
@ -44,7 +45,7 @@
using namespace webrtc; using namespace webrtc;
namespace voetest{ namespace voetest {
#ifdef MAC_IPHONE #ifdef MAC_IPHONE
// Defined in iPhone specific test file // Defined in iPhone specific test file
@ -128,7 +129,7 @@ char* GetResource(char* resource)
return filenameStr[currentStr]; return filenameStr[currentStr];
} }
const char* GetResource(const char* resource) const char* GetResource(const char* resource)
{ {
currentStr = !currentStr; currentStr = !currentStr;
sprintf(filenameStr[currentStr], sprintf(filenameStr[currentStr],
"/tmp/%s", "/tmp/%s",
@ -137,25 +138,6 @@ const char* GetResource(const char* resource)
} }
#endif #endif
#if defined(MAC_IPHONE)
char micFile[256] = {0}; // Filename copied to buffer in code
#elif defined(WEBRTC_MAC) && !defined(WEBRTC_MAC_INTEL)
const char* micFile = "audio_long16bigendian.pcm";
#elif defined(WEBRTC_ANDROID)
const char* micFile = "/sdcard/audio_long16.pcm";
#elif defined(_WIN32)
// File path is relative to the location of 'voice_engine.gyp'.
const char* micFile = "../../test/data/voice_engine/audio_long16.pcm";
#elif defined(WEBRTC_LINUX)
// Assumes launch from command line: $ ./out/<Debug><Release>/audio_device_test_func
const char* micFile = "./test/data/voice_engine/audio_long16.pcm";
#elif (defined(WEBRTC_MAC_INTEL) || defined(WEBRTC_MAC))
// Assumes that the working directory in Xcode is set to <path-to-src>/xcodebuild/<Debug><Release>.
const char* micFile = "../../test/data/voice_engine/audio_long16.pcm";
#else
const char* micFile = "audio_long16.pcm";
#endif
#if !defined(MAC_IPHONE) #if !defined(MAC_IPHONE)
const char* summaryFilename = const char* summaryFilename =
"/tmp/VoiceEngineSummary.txt"; "/tmp/VoiceEngineSummary.txt";
@ -596,6 +578,7 @@ bool SubAPIManager::GetExtendedMenuSelection(ExtendedSelection& sel)
} }
VoETestManager::VoETestManager() : VoETestManager::VoETestManager() :
initialized_(false),
ve(0), ve(0),
base(0), base(0),
report(0), report(0),
@ -606,31 +589,57 @@ VoETestManager::VoETestManager() :
file(0), file(0),
hardware(0), hardware(0),
#ifdef _TEST_NETEQ_STATS_ #ifdef _TEST_NETEQ_STATS_
neteqst(0), neteqst(NULL),
#endif #endif
netw(0), netw(0),
rtp_rtcp(0), rtp_rtcp(0),
vsync(0), vsync(0),
volume(0), volume(0),
apm(0), apm(0),
instanceCount(0) instanceCount(0),
resourcePath_(),
audioFilename_()
{}
VoETestManager::~VoETestManager()
{}
bool VoETestManager::Init()
{ {
if (initialized_)
return true;
if (VoiceEngine::SetTraceFile(NULL) != -1) if (VoiceEngine::SetTraceFile(NULL) != -1)
{ {
// should not be possible to call a Trace method before the VoE is // should not be possible to call a Trace method before the VoE is
// created // created
TEST_LOG("\nError at line: %i (VoiceEngine::SetTraceFile()" TEST_LOG("\nError at line: %i (VoiceEngine::SetTraceFile()"
"should fail)!\n", __LINE__); "should fail)!\n", __LINE__);
return false;
} }
#ifdef _TEST_NETEQ_STATS_
neteqst = 0;
#endif
ve = VoiceEngine::Create();
instanceCount++;
};
VoETestManager::~VoETestManager() #if defined(WEBRTC_ANDROID)
{ resourcePath_ = "/sdcard/";
#else
resourcePath_ = webrtc::test::GetProjectRootPath();
if (resourcePath_ == webrtc::test::kCannotFindProjectRootDir)
{
TEST_LOG("Failed to get project root directory\n");
return false;
}
resourcePath_ += "test/data/voice_engine/";
#endif
audioFilename_ = resourcePath_ + "audio_long16.pcm";
ve = VoiceEngine::Create();
if (!ve)
{
TEST_LOG("Failed to create VoiceEngine\n");
return false;
}
instanceCount++;
return true;
} }
void VoETestManager::GetInterfaces() void VoETestManager::GetInterfaces()
@ -1322,7 +1331,7 @@ int VoETestManager::DoStandardTest()
TEST_LOG("Start playing a file as microphone, so you don't need to" TEST_LOG("Start playing a file as microphone, so you don't need to"
" speak all the time\n"); " speak all the time\n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
SLEEP(1000); SLEEP(1000);
@ -1343,7 +1352,8 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("Start playing a file locally => " TEST_LOG("Start playing a file locally => "
"you should now hear this file being played out \n"); "you should now hear this file being played out \n");
TEST_MUSTPASS(file->StartPlayingFileLocally(0, micFile, true)); TEST_MUSTPASS(file->StartPlayingFileLocally(0, AudioFilename(),
true));
SLEEP(2000); SLEEP(2000);
} }
TEST_LOG("Put playing on hold => should *not* hear audio \n"); TEST_LOG("Put playing on hold => should *not* hear audio \n");
@ -1680,10 +1690,8 @@ int VoETestManager::DoStandardTest()
if (file) if (file)
{ {
TEST_LOG("==> Start playing a file as microphone again \n"); TEST_LOG("==> Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(
micFile, 0, AudioFilename(), true, true));
true,
true));
} }
#else #else
TEST_LOG("Skipping extended iSAC API tests - " TEST_LOG("Skipping extended iSAC API tests - "
@ -1923,7 +1931,7 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("Start playing a file as microphone again...\n"); TEST_LOG("Start playing a file as microphone again...\n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
} }
@ -2247,10 +2255,8 @@ int VoETestManager::DoStandardTest()
TEST_MUSTPASS(base->StartPlayout(0)); TEST_MUSTPASS(base->StartPlayout(0));
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(
micFile, 0, AudioFilename(), true, true));
true,
true));
break; break;
} }
} }
@ -2413,7 +2419,7 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("==> Start playing a file as microphone again \n"); TEST_LOG("==> Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
SLEEP(1000); SLEEP(1000);
@ -2854,10 +2860,8 @@ int VoETestManager::DoStandardTest()
if (file) if (file)
{ {
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(
micFile, 0, AudioFilename(), true, true));
true,
true));
} }
else else
{ {
@ -2989,7 +2993,8 @@ int VoETestManager::DoStandardTest()
TEST_MUSTPASS(file->StopPlayingFileAsMicrophone(0)); TEST_MUSTPASS(file->StopPlayingFileAsMicrophone(0));
TEST_LOG("==> Start playing a file as microphone again \n"); TEST_LOG("==> Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true , true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, AudioFilename(),
true, true));
#else #else
TEST_LOG("\n\n+++ File tests NOT ENABLED +++\n"); TEST_LOG("\n\n+++ File tests NOT ENABLED +++\n");
#endif // #ifdef _TEST_FILE_ #endif // #ifdef _TEST_FILE_
@ -3135,7 +3140,7 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
} }
@ -3160,7 +3165,7 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
} }
@ -3211,7 +3216,7 @@ int VoETestManager::DoStandardTest()
TEST_LOG("Start playing a file as microphone again using" TEST_LOG("Start playing a file as microphone again using"
" external transport\n"); " external transport\n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
} }
@ -3233,7 +3238,9 @@ int VoETestManager::DoStandardTest()
if (file) if (file)
{ {
TEST_LOG("Start playing a file as microphone again using transport\n"); TEST_LOG("Start playing a file as microphone again using transport\n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
AudioFilename(),
true,
true)); true));
} }
SLEEP(2000); SLEEP(2000);
@ -3328,7 +3335,7 @@ int VoETestManager::DoStandardTest()
{ {
TEST_LOG("Start playing a file as microphone again \n"); TEST_LOG("Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0,
micFile, AudioFilename(),
true, true,
true)); true));
} }
@ -3522,7 +3529,8 @@ int VoETestManager::DoStandardTest()
TEST_MUSTPASS(base->StartSend(0)); TEST_MUSTPASS(base->StartSend(0));
TEST_LOG("==> Start playing a file as microphone again \n"); TEST_LOG("==> Start playing a file as microphone again \n");
TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, micFile, true , true)); TEST_MUSTPASS(file->StartPlayingFileAsMicrophone(0, AudioFilename(),
true, true));
#else #else
TEST_LOG("Skipping external rec and playout tests - \ TEST_LOG("Skipping external rec and playout tests - \
WEBRTC_VOE_EXTERNAL_REC_AND_PLAYOUT not defined \n"); WEBRTC_VOE_EXTERNAL_REC_AND_PLAYOUT not defined \n");
@ -3647,7 +3655,6 @@ int VoETestManager::DoStandardTest()
TEST_LOG("\n\n+++ NetEQ statistics tests NOT ENABLED +++\n"); TEST_LOG("\n\n+++ NetEQ statistics tests NOT ENABLED +++\n");
#endif // #ifdef _TEST_NETEQ_STATS_ #endif // #ifdef _TEST_NETEQ_STATS_
////////////////// //////////////////
// Stop streaming // Stop streaming
@ -3672,19 +3679,14 @@ int runAutoTest(TestType testType, ExtendedSelection extendedSel)
SubAPIManager apiMgr; SubAPIManager apiMgr;
apiMgr.DisplayStatus(); apiMgr.DisplayStatus();
#ifdef MAC_IPHONE
// Write mic file path to buffer
TEST_LOG("Get mic file path \n");
if (0 != GetResource("audio_long16.pcm", micFile, 256))
{
TEST_LOG("Failed get mic file path! \n");
}
#endif
//////////////////////////////////// ////////////////////////////////////
// Create VoiceEngine and sub API:s // Create VoiceEngine and sub API:s
voetest::VoETestManager tm; voetest::VoETestManager tm;
if (!tm.Init())
{
return -1;
}
tm.GetInterfaces(); tm.GetInterfaces();
////////////////////// //////////////////////

View File

@ -11,6 +11,8 @@
#ifndef WEBRTC_VOICE_ENGINE_VOE_STANDARD_TEST_H #ifndef WEBRTC_VOICE_ENGINE_VOE_STANDARD_TEST_H
#define WEBRTC_VOICE_ENGINE_VOE_STANDARD_TEST_H #define WEBRTC_VOICE_ENGINE_VOE_STANDARD_TEST_H
#include <string>
#include "voe_test_defines.h" #include "voe_test_defines.h"
#include "voe_test_interface.h" #include "voe_test_interface.h"
@ -282,10 +284,18 @@ public:
VoETestManager(); VoETestManager();
~VoETestManager(); ~VoETestManager();
// Must be called after construction.
bool Init();
void GetInterfaces(); void GetInterfaces();
int ReleaseInterfaces(); int ReleaseInterfaces();
int DoStandardTest(); int DoStandardTest();
const char* AudioFilename() const
{
return audioFilename_.c_str();
}
VoiceEngine* VoiceEnginePtr() const VoiceEngine* VoiceEnginePtr() const
{ {
return ve; return ve;
@ -350,6 +360,7 @@ public:
#endif #endif
private: private:
bool initialized_;
VoiceEngine* ve; VoiceEngine* ve;
VoEBase* base; VoEBase* base;
VoECallReport* report; VoECallReport* report;
@ -368,6 +379,8 @@ private:
VoEVolumeControl* volume; VoEVolumeControl* volume;
VoEAudioProcessing* apm; VoEAudioProcessing* apm;
int instanceCount; int instanceCount;
std::string resourcePath_;
std::string audioFilename_;
}; };
} // namespace voetest } // namespace voetest

View File

@ -25,12 +25,6 @@ using namespace webrtc;
namespace voetest { namespace voetest {
#ifdef MAC_IPHONE
extern char micFile[256];
#else
extern const char* micFile;
#endif
#define CHECK(expr) \ #define CHECK(expr) \
if (expr) \ if (expr) \
{ \ { \
@ -295,7 +289,7 @@ int VoEUnitTest::MenuSelection()
// StartMedia // StartMedia
// ---------------------------------------------------------------------------- // ----------------------------------------------------------------------------
int VoEUnitTest::StartMedia(int channel, int VoEUnitTest::StartMedia(int channel,
int rtpPort, int rtpPort,
bool listen, bool listen,
bool playout, bool playout,
@ -332,7 +326,7 @@ int VoEUnitTest::StartMedia(int channel,
// play mic as file, mix with microphone to ensure that SWB can be // play mic as file, mix with microphone to ensure that SWB can be
//tested as well //tested as well
const bool mixWithMic(true); const bool mixWithMic(true);
CHECK(file->StartPlayingFileAsMicrophone(channel, micFile, CHECK(file->StartPlayingFileAsMicrophone(channel, _mgr.AudioFilename(),
true, mixWithMic)); true, mixWithMic));
} }
if (localFile) if (localFile)

View File

@ -15,6 +15,7 @@
'dependencies': [ 'dependencies': [
'voice_engine_core', 'voice_engine_core',
'<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers', '<(webrtc_root)/system_wrappers/source/system_wrappers.gyp:system_wrappers',
'<(webrtc_root)/../test/test.gyp:test_support',
], ],
'include_dirs': [ 'include_dirs': [
'auto_test', 'auto_test',