本文整理汇总了C++中AudioManager::getEnc方法的典型用法代码示例。如果您正苦于以下问题:C++ AudioManager::getEnc方法的具体用法?C++ AudioManager::getEnc怎么用?C++ AudioManager::getEnc使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类AudioManager
的用法示例。
在下文中一共展示了AudioManager::getEnc方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1:
int playCallback( const void *input, void *output,
unsigned long,
const PaStreamCallbackTimeInfo* timeInfo,
PaStreamCallbackFlags statusFlags,
void *userData)
{
AudioManager *dis = (AudioManager*)userData;
SAMPLE *out = (SAMPLE *)output;
(void) timeInfo;
(void) statusFlags;
(void) input;
int tmp;
//NEW WAY
dis->getPool().tryLock(PLAY_MUTEX);
tmp = dis->getSizePlay();
dis->setSizePlay(0);
dis->getPool().unLock(PLAY_MUTEX);
if (tmp)
dis->getEnc()->decodeAudio(dis->getStaticBufferPlay(), out, tmp);
//OLD
//dis->getEnc()->decodeAudio(dis->getDataPlay(), out, dis->getRetencPlay());
return paContinue;
}
示例2: retenc
int recordCallback( const void *input, void *output,
unsigned long,
const PaStreamCallbackTimeInfo* timeInfo,
PaStreamCallbackFlags statusFlags,
void *userData)
{
AudioManager *dis = (AudioManager*)userData;
const SAMPLE *in = (const SAMPLE *)input;
int retenc(0);
(void) timeInfo;
(void) statusFlags;
(void) output;
//OLD
// dis->setDataRec(dis->getEnc()->encodeAudio(in, &retenc));
// dis->setRetencRec(retenc);
dis->getPool().tryLock(REC_MUTEX);
//dis->getBufferRec().write(dis->getEnc()->encodeAudio(in, &retenc), retenc);
unsigned char *tmp = dis->getEnc()->encodeAudio(in, &retenc);
if (dis->getSizeRec() + retenc < 255*255)
{
LibC::memcpy(dis->getStaticBufferRec() + dis->getSizeRec(), tmp, retenc);
dis->setSizeRec(dis->getSizeRec() + retenc);
}
dis->getPool().unLock(REC_MUTEX);
return paContinue;
}