play_tone.zig
This example generates a 440 Hz tone and plays it with PulseAudio.
const std = @import("std");
const radio = @import("radio");
pub fn main() !void {
var gpa = std.heap.GeneralPurposeAllocator(.{}){};
var source = radio.blocks.SignalSource.init(radio.blocks.SignalSource.WaveformFunction.Cosine, 440, 44100, .{});
var sink = radio.blocks.PulseAudioSink(1).init();
var top = radio.Flowgraph.init(gpa.allocator(), .{ .debug = true });
defer top.deinit();
try top.connect(&source.block, &sink.block);
try top.start();
radio.platform.waitForInterrupt();
_ = try top.stop();
}
$ ./zig-out/bin/example-play_tone