#include "effects/effects.h" #include #include #include #include "ui/collapsiblewidget.h" VolumeEffect::VolumeEffect(Clip* c) : Effect(c) { container = new CollapsibleWidget(); container->setText(audio_effect_names[AUDIO_VOLUME_EFFECT]); ui = new QWidget(); QGridLayout* ui_layout = new QGridLayout(); ui_layout->addWidget(new QLabel("Volume:"), 0, 0); volume_val = new QSpinBox(); volume_val->setMinimum(0); volume_val->setMaximum(400); ui_layout->addWidget(volume_val, 0, 1); ui->setLayout(ui_layout); container->setContents(ui); // set defaults volume_val->setValue(100); } Effect* VolumeEffect::copy() { VolumeEffect* v = new VolumeEffect(parent_clip); v->volume_val->setValue(volume_val->value()); return v; } void VolumeEffect::process_audio(uint8_t *samples, int nb_bytes) { for (int i=0;ivalue()*0.01; samples[i+1] = (uint8_t) (full_sample >> 8); samples[i] = (uint8_t) full_sample; } }