mpstreamqueueplayertest.cpp
来自「基于sipfoundy 公司开发的sipx协议API」· C++ 代码 · 共 501 行 · 第 1/2 页
CPP
501 行
Url url2(szUrl); pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; pPlayer->removeListener(pListener) ; delete pPlayer ; delete pListener ; } } void testRawSynchronousMultipleManyBad() { osPrintf("testRawSynchronousMultipleManyBad\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { char szUrl[128] ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; sprintf(szUrl, "http://%s/nums/1.wav", BASE_URL) ; Url url1(szUrl); sprintf(szUrl, "http://%s/nums/2.wav", BASE_URL) ; Url url2(szUrl); sprintf(szUrl, "http://%s/nums/3.wav", BASE_URL) ; Url url3(szUrl); sprintf(szUrl, "http://%s/nums/4.wav", BASE_URL) ; Url url4(szUrl); sprintf(szUrl, "http://%s/nums/5.wav", BASE_URL) ; Url url5(szUrl); sprintf(szUrl, "http://%s/nums/doesnotexist.wav", BASE_URL) ; Url urlBad(szUrl); pPlayer->add(url1, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(url3, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(url4, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(url5, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->add(urlBad, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; pPlayer->play() ; pPlayer->wait() ; delete pPlayer ; } } void testRawSynchronousMultipleMany() { osPrintf("testRawSynchronousMultipleMany\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { MyStreamQueueHistoryKeeper* pListener = new MyStreamQueueHistoryKeeper() ; char szUrl[128] ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; pPlayer->addListener(pListener) ; sprintf(szUrl, "http://%s/nums/8.wav", BASE_URL) ; Url url2(szUrl); for (int i = 0; i< 5; i++) { pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; } pPlayer->play() ; sprintf(szUrl, "http://%s/nums/9.wav", BASE_URL) ; Url url3(szUrl); for (int i = 0; i< 5; i++) { pPlayer->add(url3, STREAM_SOUND_LOCAL | STREAM_FORMAT_WAV) ; } pPlayer->wait() ; pPlayer->play() ; pPlayer->wait() ; pPlayer->removeListener(pListener) ; delete pPlayer ; delete pListener ; } } void testRawSynchronousMultipleDelete() { osPrintf("testRawSynchronousMultipleDelete\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { char szUrl[128] ; osPrintf("\n\ntestRawSynchronousMultipleDelete (%d of %d): %s\n", j+1, TESTING_ATTEMPTS, BASE_URL) ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; sprintf(szUrl, "http://%s/longstream.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url(szUrl) ; pPlayer->add(url, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; int delay = abs(rand() % 3000) ; if ((delay > 32) && (delay < 2500)) OsTask::delay(delay) ; delete pPlayer ; } } void testRawSynchronousMultipleBadRaw() { osPrintf("testRawSynchronousMultipleBadRaw\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { char szUrl[128] ; Url url ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; sprintf(szUrl, "http://%s/noexist.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url1(szUrl); pPlayer->add(url1, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; sprintf(szUrl, "http://%s/nums/1.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url2(szUrl); pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; sprintf(szUrl, "http://%s/noexist.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url3(szUrl); pPlayer->add(url3, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; Url url3a(szUrl); osPrintf("Playing %s\n", szUrl) ; pPlayer->add(url3a, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; sprintf(szUrl, "http://%s/nums/2.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url4(szUrl); pPlayer->add(url4, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; delete pPlayer ; } } void testRawSynchronousMultipleBadWav() { osPrintf("testRawSynchronousMultipleBadWav\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { char szUrl[128] ; Url url ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; sprintf(szUrl, "http://%s/noexist.wav", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url1(szUrl); pPlayer->add(url1, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; sprintf(szUrl, "http://%s/nums/1.wav", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url2(szUrl); pPlayer->add(url2, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; sprintf(szUrl, "http://%s/noexist.wav", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url3(szUrl); pPlayer->add(url3, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; osPrintf("Playing %s\n", szUrl) ; Url url4(szUrl); pPlayer->add(url4, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; sprintf(szUrl, "http://%s/nums/2.wav", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url5(szUrl); pPlayer->add(url5, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; delete pPlayer ; } } void testRawSynchronousManyBadRaw() { osPrintf("testRawSynchronousManyBadRaw\n") ; for (int j=0; j<TESTING_ATTEMPTS; j++) { char szUrl[128] ; MpStreamQueuePlayer* pPlayer = new MpStreamQueuePlayer(mCfg->getFlowGraph()->getMsgQ()) ; sprintf(szUrl, "http://%s/noexist.raw", BASE_URL) ; osPrintf("Playing %s\n", szUrl) ; Url url(szUrl); pPlayer->add(url, STREAM_SOUND_LOCAL | STREAM_FORMAT_RAW) ; pPlayer->play() ; pPlayer->wait() ; delete pPlayer ; } }private: MpTestConfig *mCfg;};CPPUNIT_TEST_SUITE_REGISTRATION(MpStreamQueuePlayerTest);
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?