DroidScript
DroidScript
учимся и разрабатываем

Синтезатор звука

11.12.2016

Объект синтезатора звука создаётся с помощью конструктора CreateSynth:

app.CreateSynth( (str) type )

Параметры:

  • type - тип:
    • VCA - амплитудная модуляция
    • VCF - частотная модуляция
    • Signal - сигнал

Базовый пример

Выполнить в DS

Методы:

  • GetType():str - возвращает тип объекта
    Выполнить в DS
    app.ShowPopup( myObject.GetType() );
  • PlayMidiTune( [""] tune ) - воспроизводит список midi-звуков в формате частота:длительность
    Выполнить в DS
    myObject.PlayMidiTune( "46:16,40:16,35:4" );
  • PlayNote( str note ) - воспроизводит звучание ноты, заданной идентификатором
    Выполнить в DS
    myObject.PlayNote( "60" );
  • PlayTone( float freq, float dur) - воспроизводит звук заданной частоты и длительности
    Выполнить в DS
    myObject.PlayTone( 440, 16 );
  • SetDelay( int ms ) - задаёт задержку повторения в мс
    Выполнить в DS
    myObject.SetDelay( 230 );
  • SetDelayEnabled( bool enable ) - управляет режимом доступности дилэя в цепи (true или false)
    Выполнить в DS
    myObject.SetDelayAttack( false );
  • SetFeedback( feedback ) - задаёт уровень обратной связи от 0 до 1 (0-100%)
    Выполнить в DS
    myObject.SetFeedBack( 0.6 );
  • SetFrequency( float freq ) - задаёт частоту тона в Гц
    Выполнить в DS
    myObject.SetWaveShape( 440 );
  • SetNoteLength( float dur ) - задаёт длительность звука
    Выполнить в DS
    myObject.SetNoteLength( 2.5 );
  • SetPhaser( float drywet, float rate, int range, float feedback ) - задаёт параметры фазовращателя
    Выполнить в DS
    myObject.SetPhaser( 0.4, 1.4, 50, 0.1 );
  • SetPhaserDryWet( float drywet ) - задаёт отношение сухой/мокрый от 0 до 1 (0-100%)
    Выполнить в DS
    myObject.SetPhaserDryWet( 0.4 );
  • SetPhaserEnabled( bool enable ) - управляет режимом доступности фазера в цепи (true или false)
    Выполнить в DS
    myObject.SetPhaserEnabled( true );
  • SetPhaserFeedback( float feedback ) - задаёт уровень обратной связи от 0 до 1 (0-100%)
    Выполнить в DS
    myObject.SetPhaserFeedback( 0.1 );
  • SetPhaserRange( int range ) - задаёт диапазон изменений фазы
    Выполнить в DS
    myObject.SetPhaserRange( 50 );
  • SetPhaserRate( float rate ) - скорость изменения
    Выполнить в DS
    myObject.SetPhaserRate( 1.4 );
  • SetVca( int attack, int decay, float sustain, int release ) - задаёт параметры амплитудной храктеристики (атака, спад, поддержка, отпускание)
    Выполнить в DS
    myObject.SetVca( 50, 10, 0.5, 80 );
  • SetVcaAttack( int attack ) - задаёт длительность атаки в мс
    Выполнить в DS
    myObject.SetVcaAttack( 50 );
  • SetVcaDecay( int decay ) - задаёт длительность спада в мс
    Выполнить в DS
    myObject.SetVcaDecay( 10 );
  • SetVcaEnabled( bool enable ) - управляет режимом доступности амплитудного усилителя в цепи (true или false)
    Выполнить в DS
    myObject.SetVcaEnabled( false );
  • SetVcaRelease( int release ) - задаёт длительность отпускания в мс
    Выполнить в DS
    myObject.SetVcaRelease( 80 );
  • SetVcaSustain( float sustain ) - задаёт величину поддержки (0 - тишина, 1 - 100%)
    Выполнить в DS
    myObject.SetVcaSustain( 0.5 );
  • SetVcf( int attack, int decay, float sustain, int release, int cuttoff, float resonance, float depth ) - задаёт параметры частотной характеристики (атака, спад, поддержка, отпускание, отсечка, резонанс, глубина)
    Выполнить в DS
    myObject.SetVcf( 50, 10, 0.5, 80, 440, 0.85, 2.0 );
  • SetVcfAttack( int attack ) - задаёт длительность атаки в мс
    Выполнить в DS
    myObject.SetVcfAttack( 50 );
  • SetVcfCutoff( int cuttoff ) - задаёт частоту отсечки в Гц
    Выполнить в DS
    myObject.SetVcfCutoff( 440 );
  • SetVcfDecay( int decay ) - задаёт длительность спада в мс
    Выполнить в DS
    myObject.SetVcfDecay( 10 );
  • SetVcfDepth( float depth ) - задаёт глубину затухания
    Выполнить в DS
    myObject.SetVcfDepth( 2.0 );
  • SetVcfEnabled( bool enable ) - управляет режимом доступности амплитудного усилителя в цепи (true или false)
    Выполнить в DS
    myObject.SetVcfEnabled( true );
  • SetVcfRelease( int release ) - задаёт длительность отпускания в мс
    Выполнить в DS
    myObject.SetVcfRelease( 80 );
  • SetVcfResonance( float resonance ) - задаёт величину резонанса
    Выполнить в DS
    myObject.SetVcfResonance( 0.85 );
  • SetVcfSustain( float sustain ) - задаёт величину поддержки (0 - тишина, 1 - 100%)
    Выполнить в DS
    myObject.SetVcfSustain( 0.5 );
  • SetVolume( float left, float right ) - задаёт громкость звука в левом и правом канале
    Выполнить в DS
    myObject.SetVolume( 1.0, 1.0 );
  • SetWaveShape( (str) shape ) - задаёт форму звуковой волны:
    • "Sin" - синусоида
    • "Saw" - пила
    • "Square" - прямоугольник
    • "White" - белый шум
    Выполнить в DS
    myObject.SetWaveShape( "Square" );
  • Start() - запускае воспроизведение
    Выполнить в DS
    myObject.Start();
  • Stop() - останавливает воспроизведение
    Выполнить в DS
    myObject.Stop();
© 2016-2024 
actech