Exemplo n.º 1
0
bool SamplePlayer::_set(const StringName& p_name, const Variant& p_value) {

	String name=p_name;

	if (name=="play/play") {
		if (library.is_valid()) {

			String what=p_value;
			if (what=="")
				stop_all();
			else
				play(what);

			played_back=what;
		}
	} else if (name=="config/samples")
		set_sample_library(p_value);
	else if (name=="config/voices")
		set_voice_count(p_value);
	else if (name.begins_with("default/")) {

		String what=name.right(8);

		if (what=="volume_db")
			set_default_volume_db(p_value);
		else if (what=="pitch_scale")
			set_default_pitch_scale(p_value);
		else if (what=="pan")
			_default.pan=p_value;
		else if (what=="depth")
			_default.depth=p_value;
		else if (what=="height")
			_default.height=p_value;
		else if (what=="filter/type")
			_default.filter_type=FilterType(p_value.operator int());
		else if (what=="filter/cutoff")
			_default.filter_cutoff=p_value;
		else if (what=="filter/resonance")
			_default.filter_resonance=p_value;
		else if (what=="filter/gain")
			_default.filter_gain=p_value;
		else if (what=="reverb_room")
			_default.reverb_room=ReverbRoomType(p_value.operator int());
		else if (what=="reverb_send")
			_default.reverb_send=p_value;
		else if (what=="chorus_send")
			_default.chorus_send=p_value;
		else
			return false;


	} else
		return false;

	return true;
}
Exemplo n.º 2
0
void testFilter() {
	Store store_comp;
	std::vector<byte> data;
	uint32_t size = (rand() * 7654321 + rand()) % kDataSize;
	for (uint32_t i = 0; i < size; ++i) {
		data.push_back(rand() % 256);
	}
	std::vector<byte> out_data;
	store_comp.compress(&FilterType(&ReadMemoryStream(&data)), &WriteVectorStream(&out_data), std::numeric_limits<uint64_t>::max());
	std::vector<byte> result;
	WriteVectorStream wvs(&result);
	FilterType reverse_filter(&wvs); 
	store_comp.decompress(&ReadMemoryStream(&out_data), &reverse_filter, std::numeric_limits<uint64_t>::max());
	reverse_filter.flush();
	// Check tht the shit matches.
	check(result.size() == data.size());
	for (uint32_t i = 0; i < data.size(); ++i) {
		byte a = result[i];
		byte b = data[i];
		check(a == b);
	}
}
Exemplo n.º 3
0
void Filter::on_filterComboBox_currentIndexChanged(int index)
{
    currentFilter = FilterType(index);
    applyFilter();
}