//use criterion::{criterion_group, criterion_main, Criterion}; /* use lc3_codec::{ common::{ complex::Complex, config::{FrameDuration, Lc3Config, SamplingFrequency}, }, decoder::modified_dct::Mdct, };*/ #[rustfmt::skip] const _X_HAT: [f64; 400] = [ -1798.34720386441722, 1925.98654913236078, 510.79246576686126, -924.51326528154073, 207.72741080593022, 776.50578968604418, 299.45011846929526, 0.00000000000000, 138.03889012613357, -55.17449473340206, 55.55818484003172, 55.84366775987241, 98.89680247199858, -13.91151994518990, 138.96462839031736, 217.36806067167862, 145.28652708720597, 1063.47788159065999, 296.31836682795074, -279.93862954558142, 355.10018464556788, -242.29465108439933, 395.82016856001172, 293.23092578800953, -206.17679912828666, 796.34735569608199, -1208.40175248093010, -1608.25140376553691, -245.93347641955341, -1667.63949862150207, -128.37276216522329, 715.25678199369099, -423.89185830040225, 254.67116898215644, -865.25855315463468, -683.59171593194833, 520.60717667339213, 101.07285492103860, 255.44966516749864, 364.87315350414195, 362.67732491202071, 183.63120360010365, 140.18074152299556, 69.88772529148635, -109.66553385542701, 159.64023790851866, 61.88865525146026, -5.57072278191457, 43.44519632841552, -36.35787339810033, -59.83934900183326, -91.46381084107747, -110.08525538322392, 225.65194854263123, 290.32996188363671, 11.27148735164410, 207.81073118818210, 12.94821603045577, 23.68158334485864, 180.34172816564478, -23.18673627380011, 143.55587439400136, -21.46797854779093, 24.73110898881467, 87.83438248951221, -26.40644955445909, 69.57702981552956, -136.35167223553864, 89.32893763567468, -103.04265039439089, 85.63958619031469, 932.93072757350456, 243.31827471784186, -32.43840987107050, 188.29314883636064, -79.96275323839033, 94.08895891027048, -65.28357047336114, 41.58505202051732, -65.40663592674095, -387.15375091181460, 5.22034087466464, -65.33852371970123, -82.97275735518555, 39.46691822482605, -41.85030116261567, -20.41856611709551, -63.06586061608038, -65.16668642252530, 6.33921873976774, 107.95868741756485, -58.43784966110996, -18.20688662516798, 23.32830961724039, -51.11762169858644, -27.74315189706474, -159.70468297601826, -15.29612356410133, -80.70983627483932, -16.12663645709875, -1.18066080409579, -75.19564019253887, 103.22850211164165, -193.68634244675857, -282.06784372862558, -348.45571044431478, -60.24169947023407, 307.55988875874783, 63.57077346698662, -3.36175258856376, -180.28887153887294, -71.35089643705095, 69.21329931826995, 68.70186648848752, 41.37272470343523, -32.99775079042006, 124.91118369479626, 130.07221249849300, 64.13369184709578, -122.10281558053444, -14.86203598650988, -90.02334376134797, -257.01557825802541, -199.72824502213845, -792.57601041716600, -620.37429734194552, -38.01845150655204, -88.84222481680358, 107.99274822636468, 270.51191453036762, 162.31333829938927, 224.56728471677226, 296.53700542892142, -17.44641575775043, -255.49702200392667, -251.44203452998158, -378.72701183013248, -553.34174662368684, -679.52729351744279, -808.74840444353219, -1019.76299871646233, -911.42284254757919, -1081.36410953282029, -1264.16888629283335, -747.93983366303291, -483.71326436114089, -507.32688446342530, -141.45082556129873, 33.30696430964807, 65.28950195518205, 302.63581026956541, 314.75813474448154, 372.44324633331507, 236.39803032653811, 85.53931236080143, 130.28262731958452, 3.43168283956188, -177.67913844037227, -95.64183199600255, 105.48701908482133, -43.53576107786122, -279.33740562328433, -269.89094877599291, -36.50030961457711, -59.96029060651663, 8.44982753560319, 153.23972732628653, 91.01214227768220, 181.66560564634185, -115.12577225729565, -201.00276391846870, -281.75563077632631, -60.99763166732410, 180.97413564113745, -446.90758763493659, 322.66749158493178, -320.09443549030243, -70.43503426449099, 1536.86738376753851, -981.95905980590919, -958.48420669075449, 260.45542937485732, -546.53529844082664, 134.07832677892682, -108.67806335558534, 14.25455984137170, 201.93304831421131, -312.77463168799937, -189.64737859063223, -176.27573540354740, 43.05568849328051, 33.27856681540540, 26.16377057666719, 26.61450806904429, 11.53037138082078, 85.19057667221075, 57.01008320863709, 54.97282790411086, -47.18957050408146, 48.33022043327580, 0.00000000000000, -94.51154881640129, 0.00000000000000, 0.00000000000000, 0.00000000000000, -94.51154881640129, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 284.87697759481171, 0.00000000000000, 1044.54891784764277, 474.79496265801947, -1614.30287303726618, -664.71294772122735, -94.95899253160390, -284.87697759481171, 0.00000000000000, -189.91798506320779, 0.00000000000000, -94.95899253160390, 0.00000000000000, 0.00000000000000, 0.00000000000000, -17.47915362218058, -17.47915362218058, 17.47915362218058, 17.47915362218058, -17.47915362218058, 17.47915362218058, 17.47915362218058, -17.47915362218058, 0.00000000000000, 0.00000000000000, 0.00000000000000, -93.22215265162978, 93.22215265162978, -93.22215265162978, -91.51708030296835, 183.03416060593671, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 91.51708030296835, 0.00000000000000, 0.00000000000000, -91.51708030296835, -91.51708030296835, 0.00000000000000, -91.51708030296835, 91.51708030296835, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, -89.84319444412158, 89.84319444412158, -89.84319444412158, 0.00000000000000, 0.00000000000000, 0.00000000000000, 179.68638888824316, 0.00000000000000, 0.00000000000000, 0.00000000000000, 16.84559895827280, 16.84559895827280, -16.55550372365668, 0.00000000000000, 0.00000000000000, 0.00000000000000, -88.29601985950228, 88.29601985950228, -88.29601985950228, 88.29601985950228, 0.00000000000000, 264.88805957850684, 264.88805957850684, 176.59203971900456, 1589.32835747104127, -264.88805957850684, -1501.03233761153888, -88.29601985950228, -353.18407943800912, -88.29601985950228, -86.87003216231066, -173.74006432462133, 0.00000000000000, -86.87003216231066, 86.87003216231066, -86.87003216231066, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 86.87003216231066, 86.87003216231066, 0.00000000000000, -86.87003216231066, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 170.93414855819813, 170.93414855819813, 0.00000000000000, 85.46707427909907, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 0.00000000000000, 427.33537139549537, 0.00000000000000, -85.46707427909907, 85.46707427909907, -85.46707427909907, 85.46707427909907, 0.00000000000000, 0.00000000000000, 0.00000000000000, 15.76627017685352, -15.76627017685352, -15.76627017685352, 15.76627017685352, 15.76627017685352, -15.76627017685352, -15.76627017685352, 15.76627017685352, 15.76627017685352, -15.76627017685352, 0.00000000000000, 0.00000000000000, 0.00000000000000, -84.08677427655211, 0.00000000000000, 0.00000000000000, 0.00000000000000, 15.76627017685352, -15.76627017685352, 15.76627017685352, -15.76627017685352, 15.51164366777002, -15.51164366777002, 0.00000000000000, 0.00000000000000, 0.00000000000000, 82.72876622810676, 0.00000000000000, -82.72876622810676, 0.00000000000000, 0.00000000000000, 0.00000000000000, -15.51164366777002, 15.51164366777002, -15.51164366777002, 15.51164366777002, -15.51164366777002, -15.51164366777002, 15.51164366777002, 15.51164366777002, 15.51164366777002, -15.51164366777002, -15.51164366777002, -15.51164366777002, -15.26112939692682, -15.26112939692682, -15.26112939692682, -15.26112939692682, -15.26112939692682, 15.26112939692682, 15.26112939692682, 15.26112939692682, 15.26112939692682, -15.26112939692682, 15.26112939692682, 15.26112939692682, 15.26112939692682, -15.26112939692682, -15.26112939692682, 15.26112939692682, -15.26112939692682, 15.26112939692682, -15.26112939692682, -15.26112939692682, 15.26112939692682, 15.26112939692682, 15.26112939692682, -15.26112939692682, -15.26112939692682, ]; //pub fn criterion_benchmark(_c: &mut Criterion) { // let config = Lc3Config::new(SamplingFrequency::Hz48000, FrameDuration::TenMs, 1); // let (scaler_len, complex_len) = Mdct::calc_working_buffer_length(&config); // let mut scaler_buf = vec![0.; scaler_len]; // let mut complex_buf = vec![Complex::new(0., 0.); complex_len]; // //let (mut mdct, _, _) = Mdct::new(config, &mut scaler_buf, &mut complex_buf); //c.bench_function("modified dct decode", |b| { // b.iter(|| mdct.run(black_box(&X_HAT))) //}); //} //criterion_group!(benches, criterion_benchmark); //criterion_main!(benches);