annotate foosdk/sdk/foobar2000/foo_sample/dsp_sample.h @ 1:20d02a178406 default tip

*: check in everything else yay
author Paper <paper@tflc.us>
date Mon, 05 Jan 2026 02:15:46 -0500
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
1 #pragma once
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
2
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
3 namespace dsp_sample_common {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
4 //This is our GUID. Generate your own one when reusing this code.
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
5 static constexpr GUID guid = { 0x890827b, 0x67df, 0x4c27, { 0xba, 0x1a, 0x4f, 0x95, 0x8d, 0xf, 0xb5, 0xd0 } };
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
6
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
7 static void make_preset(float gain, dsp_preset & out) {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
8 dsp_preset_builder builder; builder << gain; builder.finish(guid, out);
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
9 }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
10 static float parse_preset(const dsp_preset & in) {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
11 try {
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
12 float gain;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
13 dsp_preset_parser parser(in); parser >> gain;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
14 return gain;
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
15 } catch(exception_io_data const &) {return 0;}
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
16 }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
17
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
18 }
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
19
20d02a178406 *: check in everything else
Paper <paper@tflc.us>
parents:
diff changeset
20 using namespace dsp_sample_common;