本文整理汇总了C++中audio::GainNodeRef::setValue方法的典型用法代码示例。如果您正苦于以下问题:C++ GainNodeRef::setValue方法的具体用法?C++ GainNodeRef::setValue怎么用?C++ GainNodeRef::setValue使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类audio::GainNodeRef
的用法示例。
在下文中一共展示了GainNodeRef::setValue方法的9个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: setup
void SamplePlayerNodeTestApp::setup()
{
mUnderrunFade = mOverrunFade = mRecorderOverrunFade = 0;
mSamplePlayerNodeEnabledState = false;
printSupportedExtensions();
setSourceFile( loadResource( INITIAL_AUDIO_RES ) );
auto ctx = audio::master();
mPan = ctx->makeNode( new audio::Pan2dNode() );
// mPan->setStereoInputModeEnabled( false );
mGain = ctx->makeNode( new audio::GainNode() );
mGain->setValue( 0.6f );
mGain >> mPan >> ctx->getOutput();
setupBufferPlayerNode();
// setupFilePlayerNode();
setupUI();
ctx->enable();
mEnableSamplePlayerNodeButton.setEnabled( true );
CI_LOG_V( "context samplerate: " << ctx->getSampleRate() );
}
示例2: setup
void DeviceTestApp::setup()
{
console() << audio::Device::printDevicesToString();
auto ctx = audio::master();
mMonitor = ctx->makeNode( new audio::MonitorNode( audio::MonitorNode::Format().windowSize( 1024 ) ) );
mGain = ctx->makeNode( new audio::GainNode() );
mGain->setValue( 0.4f );
mGain->connect( mMonitor );
setOutputDevice( audio::Device::getDefaultOutput() );
setInputDevice( audio::Device::getDefaultInput() );
//setInputDevice( audio::Device::getDefaultInput(), 1 ); // force mono input
//setupMultiChannelDevice( "PreSonus FIREPOD (1431)" );
// setupMultiChannelDeviceWindows( "MOTU Analog (MOTU Audio Wave for 64 bit)" );
mRecorder = ctx->makeNode( new audio::BufferRecorderNode( RECORD_SECONDS * ctx->getSampleRate() ) );
mRecorder->setEnabled( false );
mGain >> mRecorder;
// setupInputPulled();
// setupIOClean();
PRINT_GRAPH( ctx );
setupUI();
CI_LOG_V( "Context samplerate: " << ctx->getSampleRate() );
}
示例3: setup
void ParamTestApp::setup()
{
auto ctx = audio::master();
mGain = ctx->makeNode( new audio::GainNode() );
mGain->setValue( 0.8f );
mPan = ctx->makeNode( new audio::Pan2dNode() );
mGen = ctx->makeNode( new audio::GenSineNode() );
// mGen = ctx->makeNode( new audio::GenTriangleNode() );
// mGen = ctx->makeNode( new audio::GenPhasorNode() );
mGen = ctx->makeNode( new audio::GenPulseNode );
mGen->setFreq( 220 );
mLowPass = ctx->makeNode( new audio::FilterLowPassNode() );
setupBasic();
setupUI();
PRINT_GRAPH( ctx );
testApply();
// testApply2();
// connectProcessor();
}
示例4: processDrag
void SamplePlayerNodeTestApp::processDrag( Vec2i pos )
{
if( mGainSlider.hitTest( pos ) )
mGain->setValue( mGainSlider.mValueScaled );
else if( mPanSlider.hitTest( pos ) )
mPan->setPos( mPanSlider.mValueScaled );
else if( mLoopBeginSlider.hitTest( pos ) )
mSamplePlayerNode->setLoopBeginTime( mLoopBeginSlider.mValueScaled );
else if( mLoopEndSlider.hitTest( pos ) )
mSamplePlayerNode->setLoopEndTime( mLoopEndSlider.mValueScaled );
else if( pos.y > getWindowCenter().y )
seek( pos.x );
}
示例5: setup
void WebAudioApp::setup()
{
Context::setMaster( new ContextWebAudio, new DeviceManagerWebAudio );
auto ctx = audio::master();
mGen = ctx->makeNode( new audio::GenSineNode );
mGain = ctx->makeNode( new audio::GainNode );
mGen->setFreq( 220 );
mGain->setValue( 0.5f );
// connections can be made this way or with connect(). The master Context's getOutput() is the speakers by default.
mGen >> mGain >> ctx->getOutput();
mGen->enable();
ctx->enable();
}
示例6: setup
void NodeBasic::setup()
{
// You use the audio::Context to make new audio::Node instances (audio::master() is the speaker-facing Context).
auto ctx = audio::master();
mGen = ctx->makeNode( new audio::GenSineNode );
mGain = ctx->makeNode( new audio::GainNode );
mGen->setFreq( 220 );
mGain->setValue( 0.5f );
// connections can be made this way or with connect(). The master Context's getOutput() is the speakers by default.
mGen >> mGain >> ctx->getOutput();
// Node's need to be enabled to process audio. EffectNode's are enabled by default, while NodeSource's (like Gen) need to be switched on.
mGen->enable();
// Context also must be started. Starting and stopping this controls the entire DSP graph.
ctx->enable();
}
示例7: processDrag
void SamplePlayerNodeTestApp::processDrag( ivec2 pos )
{
if( mGainSlider.hitTest( pos ) )
mGain->setValue( mGainSlider.mValueScaled );
else if( mPanSlider.hitTest( pos ) ) {
#if TEST_STEREO_INPUT_PANNING
mPan->getParamPos()->applyRamp( mPanSlider.mValueScaled, 0.6f );
#else
mPan->setPos( mPanSlider.mValueScaled );
#endif
}
else if( mLoopBeginSlider.hitTest( pos ) )
mSamplePlayerNode->setLoopBeginTime( mLoopBeginSlider.mValueScaled );
else if( mLoopEndSlider.hitTest( pos ) )
mSamplePlayerNode->setLoopEndTime( mLoopEndSlider.mValueScaled );
else if( mTriggerDelaySlider.hitTest( pos ) ) {
}
else if( pos.y > getWindowCenter().y )
seek( pos.x );
}
示例8: makeNodes
void NodeEffectsTestApp::makeNodes()
{
auto ctx = audio::master();
mGain = ctx->makeNode( new audio::GainNode );
mGain->setValue( 0.25f );
mPan = ctx->makeNode( new audio::Pan2dNode );
CI_LOG_V( "gen button enabled: " << mGenButton.mEnabled );
auto genFmt = audio::Node::Format().autoEnable();
if( mGenButton.mEnabled )
mGen = ctx->makeNode( new audio::GenSineNode( 220, genFmt ) );
else
mGen = ctx->makeNode( new audio::GenNoiseNode( genFmt ) );
mLowPass = ctx->makeNode( new audio::FilterLowPassNode() );
mLowPass->setCutoffFreq( 400 );
// mLowPass = ctx->makeNode( new audio::FilterHighPassNode() );
mDelay = ctx->makeNode( new audio::DelayNode );
mDelay->setDelaySeconds( 0.5f );
// mDelay->setDelaySeconds( 100.0f / (float)ctx->getSampleRate() );
}
示例9: mouseDrag
void NodeBasic::mouseDrag( MouseEvent event )
{
mGen->setFreq( event.getPos().x );
mGain->setValue( 1.0f - (float)event.getPos().y / (float)getWindowHeight() );
}