本文整理汇总了C++中android::sp::id方法的典型用法代码示例。如果您正苦于以下问题:C++ sp::id方法的具体用法?C++ sp::id怎么用?C++ sp::id使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类android::sp
的用法示例。
在下文中一共展示了sp::id方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: android_fxSend_attach
/**
* pre-condition:
* ap != NULL
* for media players:
* ap->mAPlayer != 0
* ap->mTrackPlayer->mAudioTrack == 0
* for buffer queue players:
* ap->mAPlayer == 0
* ap->mTrackPlayer->mAudioTrack != 0 is optional; if no track yet then the setting is deferred
*/
android::status_t android_fxSend_attach(CAudioPlayer* ap, bool attach,
const android::sp<android::AudioEffect>& pFx, SLmillibel sendLevel) {
if (pFx == 0) {
return android::INVALID_OPERATION;
}
// There are 3 cases:
// mAPlayer != 0 && mAudioTrack == 0 means playing decoded audio
// mAPlayer == 0 && mAudioTrack != 0 means playing PCM audio
// mAPlayer == 0 && mAudioTrack == 0 means player not fully configured yet
// The asserts document and verify this.
if (ap->mAPlayer != 0) {
assert(ap->mTrackPlayer->mAudioTrack == 0);
if (attach) {
ap->mAPlayer->attachAuxEffect(pFx->id());
ap->mAPlayer->setAuxEffectSendLevel( sles_to_android_amplification(sendLevel) );
} else {
ap->mAPlayer->attachAuxEffect(0);
}
return android::NO_ERROR;
}
if (ap->mTrackPlayer->mAudioTrack == 0) {
// the player doesn't have an AudioTrack at the moment, so store this info to use it
// when the AudioTrack becomes available
if (attach) {
ap->mAuxEffect = pFx;
} else {
ap->mAuxEffect.clear();
}
// we keep track of the send level, independently of the current audio player level
ap->mAuxSendLevel = sendLevel - ap->mVolume.mLevel;
return android::NO_ERROR;
}
if (attach) {
android::status_t status = ap->mTrackPlayer->mAudioTrack->attachAuxEffect(pFx->id());
//SL_LOGV("attachAuxEffect(%d) returned %d", pFx->id(), status);
if (android::NO_ERROR == status) {
status =
ap->mTrackPlayer->mAudioTrack->setAuxEffectSendLevel(
sles_to_android_amplification(sendLevel) );
}
return status;
} else {
return ap->mTrackPlayer->mAudioTrack->attachAuxEffect(0);
}
}