Skip to main content

surround/
surround.rs

1use opus2::{Application, MSEncoder};
2
3fn main() {
4	// The new struct-based API is much more readable!
5	let surround = MSEncoder::new_surround(48000, 6, 1, Application::Audio)
6		.expect("Failed to create surround encoder");
7
8	println!("=== Surround Encoder Configuration ===");
9	println!("Streams: {}", surround.streams);
10	println!("Coupled streams: {}", surround.coupled_streams);
11	println!("Channel mapping: {:?}", surround.mapping);
12
13	// You can destructure if you want specific fields
14	let opus2::SurroundEncoder {
15		encoder: _encoder,
16		streams,
17		coupled_streams,
18		mapping,
19	} = surround;
20
21	println!("\n=== Destructured Values ===");
22	println!("Streams: {}", streams);
23	println!("Coupled streams: {}", coupled_streams);
24	println!("Mapping: {:?}", mapping);
25
26	// Now you can use the encoder for encoding
27	// encoder.encode(...);
28
29	println!("\nEncoder is ready for use!");
30}