audio_samples 1.0.5

A typed audio processing library for Rust that treats audio as a first-class, invariant-preserving object rather than an unstructured numeric buffer.
Documentation
operation,implementation,duration_s,n_samples,iterations,warmup,min_us,mean_us,median_us,max_us,stddev_us
resample_44100_to_16000_1s,ffmpeg_default,1,44100,1000,100,88.53,131.43,128.13,273.61,18.55
resample_44100_to_16000_1s,ffmpeg_soxr,1,44100,1000,100,195.80,211.02,203.93,526.47,41.53
resample_44100_to_16000_1s,audio_samples_fast,1,44100,1000,100,36.68,38.43,36.77,101.75,6.10
resample_44100_to_16000_1s,audio_samples_medium,1,44100,1000,100,279.89,286.92,280.87,806.10,43.92
resample_44100_to_16000_1s,audio_samples_high,1,44100,1000,100,329.15,358.45,346.70,1014.12,74.53
lowpass_1000hz_order2_1s,ffmpeg_lowpass_order2,1,44100,200,20,298.27,370.90,327.19,601.26,73.27
highpass_1000hz_order2_1s,ffmpeg_highpass_order2,1,44100,200,20,293.81,329.30,308.00,527.11,49.29
lowpass_1000hz_order2_1s,audio_samples_butterworth,1,44100,200,20,105.03,106.30,105.23,154.28,5.42
highpass_1000hz_order2_1s,audio_samples_butterworth,1,44100,200,20,105.09,107.21,105.25,178.15,8.54
rms_and_peak_1s,c_native,1,44100,1000,100,4.62,7.94,4.66,21.31,3.61
rms_and_peak_1s,audio_samples,1,44100,1000,100,5.22,5.25,5.24,8.08,0.13
stereo_to_mono_1s,ffmpeg_swresample,1,44100,1000,100,32.26,33.26,33.05,119.56,3.29
mono_to_stereo_1s,ffmpeg_swresample,1,44100,1000,100,19.33,25.19,19.43,118.28,11.19
stereo_to_mono_1s,audio_samples,1,44100,1000,100,2.95,4.71,5.61,80.25,2.75
mono_to_stereo_1s,audio_samples,1,44100,1000,100,7.85,8.02,7.97,47.68,1.27
format_f32_to_i16_1s,ffmpeg_swresample,1,44100,1000,100,3.10,4.83,5.98,17.88,1.48
format_i16_to_f32_1s,ffmpeg_swresample,1,44100,1000,100,4.37,4.50,4.48,6.71,0.14
format_f32_to_i16_1s,audio_samples,1,44100,1000,100,2.39,2.47,2.46,11.38,0.30
format_i16_to_f32_1s,audio_samples,1,44100,1000,100,5.22,5.25,5.24,8.29,0.17
scale_by_half_1s,c_native,1,44100,1000,100,4.86,8.75,9.57,76.08,2.87
clip_1s,c_native,1,44100,1000,100,4.55,6.34,4.65,17.84,2.31
normalize_peak_1s,c_native,1,44100,1000,100,8.63,9.24,8.69,46.39,1.91
scale_by_half_1s,audio_samples,1,44100,1000,100,4.56,4.69,4.60,20.64,0.71
clip_1s,audio_samples,1,44100,1000,100,4.58,4.65,4.62,14.77,0.39
clip_inplace_1s,audio_samples_inplace,1,44100,1000,100,4.61,4.91,5.09,8.97,0.30
normalize_peak_1s,audio_samples,1,44100,1000,100,8.68,10.21,8.74,65.04,2.78
trim_middle_1s,c_native,1,44100,1000,100,4.74,4.92,4.96,7.56,0.17
pad_end_1s,c_native,1,44100,1000,100,3.78,3.91,3.90,8.22,0.20
fade_in_1s,c_native,1,44100,1000,100,4.15,4.28,4.27,8.65,0.18
trim_middle_1s,audio_samples,1,44100,1000,100,1.30,4.39,5.94,15.60,2.31
pad_end_1s,audio_samples,1,44100,1000,100,3.80,3.86,3.85,6.38,0.14
fade_in_1s,audio_samples,1,44100,1000,100,11.36,11.63,11.46,72.25,2.04
resample_44100_to_16000_5s,ffmpeg_default,5,220500,1000,100,458.86,591.32,573.12,1060.54,75.02
resample_44100_to_16000_5s,ffmpeg_soxr,5,220500,1000,100,993.75,1075.68,1015.77,2228.90,225.61
resample_44100_to_16000_5s,audio_samples_fast,5,220500,1000,100,188.62,194.67,190.76,400.71,21.61
resample_44100_to_16000_5s,audio_samples_medium,5,220500,1000,100,1006.55,1043.95,1012.99,2405.04,145.77
resample_44100_to_16000_5s,audio_samples_high,5,220500,1000,100,1554.70,1679.60,1635.74,3011.53,225.84
lowpass_1000hz_order2_5s,ffmpeg_lowpass_order2,5,220500,200,20,582.08,654.54,610.60,1074.43,90.46
highpass_1000hz_order2_5s,ffmpeg_highpass_order2,5,220500,200,20,581.62,611.55,597.77,837.26,44.28
lowpass_1000hz_order2_5s,audio_samples_butterworth,5,220500,200,20,517.51,550.93,531.82,808.71,60.49
highpass_1000hz_order2_5s,audio_samples_butterworth,5,220500,200,20,516.17,524.43,521.74,739.33,18.26
rms_and_peak_5s,c_native,5,220500,1000,100,23.12,31.12,23.19,94.73,14.91
rms_and_peak_5s,audio_samples,5,220500,1000,100,25.59,26.54,25.60,112.86,7.25
stereo_to_mono_5s,ffmpeg_swresample,5,220500,1000,100,191.00,195.32,193.59,294.53,6.48
mono_to_stereo_5s,ffmpeg_swresample,5,220500,1000,100,155.89,158.70,156.72,309.05,9.51
stereo_to_mono_5s,audio_samples,5,220500,1000,100,27.04,33.99,27.78,92.13,8.07
mono_to_stereo_5s,audio_samples,5,220500,1000,100,59.69,61.58,60.32,356.77,9.85
format_f32_to_i16_5s,ffmpeg_swresample,5,220500,1000,100,16.17,28.62,30.00,129.43,5.84
format_i16_to_f32_5s,ffmpeg_swresample,5,220500,1000,100,21.63,22.62,22.58,48.11,1.01
format_f32_to_i16_5s,audio_samples,5,220500,1000,100,14.83,16.14,15.32,121.16,6.32
format_i16_to_f32_5s,audio_samples,5,220500,1000,100,25.61,25.85,25.67,29.58,0.59
scale_by_half_5s,c_native,5,220500,1000,100,25.19,27.19,25.93,107.30,5.16
clip_5s,c_native,5,220500,1000,100,23.70,24.27,23.90,29.92,0.95
normalize_peak_5s,c_native,5,220500,1000,100,43.83,45.32,43.98,147.50,5.56
scale_by_half_5s,audio_samples,5,220500,1000,100,22.98,23.77,23.49,91.42,2.98
clip_5s,audio_samples,5,220500,1000,100,22.96,24.48,23.16,100.41,5.67
clip_inplace_5s,audio_samples_inplace,5,220500,1000,100,28.75,31.19,31.00,103.16,4.71
normalize_peak_5s,audio_samples,5,220500,1000,100,43.28,44.46,43.47,220.40,6.62
trim_middle_5s,c_native,5,220500,1000,100,6.13,7.05,6.20,169.91,5.97
pad_end_5s,c_native,5,220500,1000,100,16.00,16.52,16.40,30.68,0.89
fade_in_5s,c_native,5,220500,1000,100,15.65,15.93,15.79,20.88,0.59
trim_middle_5s,audio_samples,5,220500,1000,100,6.08,6.18,6.16,10.68,0.23
pad_end_5s,audio_samples,5,220500,1000,100,15.38,15.84,15.77,20.09,0.53
fade_in_5s,audio_samples,5,220500,1000,100,22.44,32.98,22.89,201.88,13.45
resample_44100_to_16000_10s,ffmpeg_default,10,441000,1000,100,974.24,1169.42,1128.20,2068.96,156.11
resample_44100_to_16000_10s,ffmpeg_soxr,10,441000,1000,100,2015.49,2128.58,2056.01,4487.48,272.00
resample_44100_to_16000_10s,audio_samples_fast,10,441000,1000,100,393.50,408.30,403.02,791.66,33.11
resample_44100_to_16000_10s,audio_samples_medium,10,441000,1000,100,2026.48,2111.69,2042.00,5408.42,309.43
resample_44100_to_16000_10s,audio_samples_high,10,441000,1000,100,3083.68,3303.37,3211.66,7444.87,338.09
lowpass_1000hz_order2_10s,ffmpeg_lowpass_order2,10,441000,200,20,943.06,1018.20,969.55,1411.98,105.30
highpass_1000hz_order2_10s,ffmpeg_highpass_order2,10,441000,200,20,937.77,998.76,967.35,1490.25,88.64
lowpass_1000hz_order2_10s,audio_samples_butterworth,10,441000,200,20,1064.15,1109.19,1086.83,1481.94,78.40
highpass_1000hz_order2_10s,audio_samples_butterworth,10,441000,200,20,1062.69,1098.49,1083.94,1498.09,73.26
rms_and_peak_10s,c_native,10,441000,1000,100,46.29,47.01,46.45,140.19,3.85
rms_and_peak_10s,audio_samples,10,441000,1000,100,51.20,64.42,52.28,246.59,36.44
stereo_to_mono_10s,ffmpeg_swresample,10,441000,1000,100,271.90,334.96,328.25,665.36,33.30
mono_to_stereo_10s,ffmpeg_swresample,10,441000,1000,100,329.05,345.19,336.47,775.49,38.78
stereo_to_mono_10s,audio_samples,10,441000,1000,100,67.18,68.96,67.58,190.53,6.62
mono_to_stereo_10s,audio_samples,10,441000,1000,100,146.35,157.69,149.55,545.16,22.92
format_f32_to_i16_10s,ffmpeg_swresample,10,441000,1000,100,38.55,43.87,39.24,155.66,10.03
format_i16_to_f32_10s,ffmpeg_swresample,10,441000,1000,100,54.97,56.16,55.57,63.85,1.30
format_f32_to_i16_10s,audio_samples,10,441000,1000,100,29.35,48.50,35.36,161.13,24.82
format_i16_to_f32_10s,audio_samples,10,441000,1000,100,51.22,54.01,52.26,342.81,19.21
scale_by_half_10s,c_native,10,441000,1000,100,74.10,79.02,74.83,212.87,11.68
clip_10s,c_native,10,441000,1000,100,73.22,75.44,74.07,202.70,5.77
normalize_peak_10s,c_native,10,441000,1000,100,108.84,109.92,109.16,133.10,2.02
scale_by_half_10s,audio_samples,10,441000,1000,100,73.16,75.16,73.60,139.36,4.78
clip_10s,audio_samples,10,441000,1000,100,74.00,75.20,74.51,106.09,2.13
clip_inplace_10s,audio_samples_inplace,10,441000,1000,100,77.66,82.30,79.66,219.59,10.68
normalize_peak_10s,audio_samples,10,441000,1000,100,108.32,109.83,109.61,128.68,1.42
trim_middle_10s,c_native,10,441000,1000,100,13.42,16.23,13.62,114.91,5.97
pad_end_10s,c_native,10,441000,1000,100,50.44,51.76,51.61,95.89,2.06
fade_in_10s,c_native,10,441000,1000,100,48.82,50.27,49.23,135.65,4.53
trim_middle_10s,audio_samples,10,441000,1000,100,14.51,15.25,14.67,86.14,2.98
pad_end_10s,audio_samples,10,441000,1000,100,50.45,52.95,52.16,132.06,5.96
fade_in_10s,audio_samples,10,441000,1000,100,56.38,59.21,56.97,155.84,6.77
resample_44100_to_16000_30s,ffmpeg_default,30,1323000,1000,100,3183.20,3656.63,3433.03,6149.92,584.72
resample_44100_to_16000_30s,ffmpeg_soxr,30,1323000,1000,100,6176.35,6500.16,6318.61,13661.60,624.80
resample_44100_to_16000_30s,audio_samples_fast,30,1323000,1000,100,1223.65,1306.01,1266.47,2179.09,153.43
resample_44100_to_16000_30s,audio_samples_medium,30,1323000,1000,100,6022.55,6667.50,6091.02,16092.31,1672.33
resample_44100_to_16000_30s,audio_samples_high,30,1323000,1000,100,9643.31,10171.88,9824.30,17890.15,868.42
lowpass_1000hz_order2_30s,ffmpeg_lowpass_order2,30,1323000,200,20,2369.58,2512.04,2429.14,3955.61,232.11
highpass_1000hz_order2_30s,ffmpeg_highpass_order2,30,1323000,200,20,2370.29,2453.62,2423.70,3418.58,133.49
lowpass_1000hz_order2_30s,audio_samples_butterworth,30,1323000,200,20,3195.69,3286.16,3258.00,4191.18,133.54
highpass_1000hz_order2_30s,audio_samples_butterworth,30,1323000,200,20,3194.36,3300.15,3251.41,4528.93,186.76
rms_and_peak_30s,c_native,30,1323000,1000,100,139.00,143.86,141.96,359.74,14.49
rms_and_peak_30s,audio_samples,30,1323000,1000,100,153.61,190.44,156.09,593.26,106.64
stereo_to_mono_30s,ffmpeg_swresample,30,1323000,1000,100,1096.62,1322.03,1251.80,2846.54,233.94
mono_to_stereo_30s,ffmpeg_swresample,30,1323000,1000,100,1227.42,1426.21,1351.80,2885.91,234.18
stereo_to_mono_30s,audio_samples,30,1323000,1000,100,202.27,214.50,207.37,593.01,35.31
mono_to_stereo_30s,audio_samples,30,1323000,1000,100,458.84,498.59,477.73,1142.96,81.24
format_f32_to_i16_30s,ffmpeg_swresample,30,1323000,1000,100,151.10,157.62,153.82,378.83,20.70
format_i16_to_f32_30s,ffmpeg_swresample,30,1323000,1000,100,227.16,235.01,228.37,474.11,28.83
format_f32_to_i16_30s,audio_samples,30,1323000,1000,100,100.04,108.40,109.25,381.99,22.76
format_i16_to_f32_30s,audio_samples,30,1323000,1000,100,153.56,171.71,155.64,879.83,93.02
scale_by_half_30s,c_native,30,1323000,1000,100,248.27,271.79,254.16,543.99,50.91
clip_30s,c_native,30,1323000,1000,100,246.45,264.30,259.48,523.43,30.77
normalize_peak_30s,c_native,30,1323000,1000,100,370.60,385.74,378.84,654.61,38.63
scale_by_half_30s,audio_samples,30,1323000,1000,100,251.81,291.11,257.97,525.66,65.82
clip_30s,audio_samples,30,1323000,1000,100,250.73,259.24,254.45,491.45,24.01
clip_inplace_30s,audio_samples_inplace,30,1323000,1000,100,243.10,263.09,254.12,588.71,33.29
normalize_peak_30s,audio_samples,30,1323000,1000,100,368.87,377.96,372.41,662.88,28.87
trim_middle_30s,c_native,30,1323000,1000,100,72.87,85.72,76.97,204.23,16.04
pad_end_30s,c_native,30,1323000,1000,100,151.84,156.44,152.43,337.63,18.52
fade_in_30s,c_native,30,1323000,1000,100,150.89,155.68,151.44,338.18,18.45
trim_middle_30s,audio_samples,30,1323000,1000,100,75.09,78.45,75.60,199.25,10.77
pad_end_30s,audio_samples,30,1323000,1000,100,152.32,155.79,152.93,374.76,14.05
fade_in_30s,audio_samples,30,1323000,1000,100,158.23,162.19,158.93,334.89,17.99
resample_44100_to_16000_60s,ffmpeg_default,60,2646000,1000,100,6868.28,7727.47,7449.24,12908.37,885.69
resample_44100_to_16000_60s,ffmpeg_soxr,60,2646000,1000,100,13615.16,14489.94,14124.28,24383.55,954.09
resample_44100_to_16000_60s,audio_samples_fast,60,2646000,1000,100,2569.88,2806.79,2723.63,4658.51,284.75
resample_44100_to_16000_60s,audio_samples_medium,60,2646000,1000,100,12668.56,13613.08,13077.27,23666.87,1338.38
resample_44100_to_16000_60s,audio_samples_high,60,2646000,1000,100,19819.83,21079.53,20404.54,47098.34,2075.25
lowpass_1000hz_order2_60s,ffmpeg_lowpass_order2,60,2646000,200,20,4560.23,4858.24,4645.48,7180.60,430.78
highpass_1000hz_order2_60s,ffmpeg_highpass_order2,60,2646000,200,20,4555.24,4738.86,4619.20,6102.96,274.26
lowpass_1000hz_order2_60s,audio_samples_butterworth,60,2646000,200,20,6407.82,6630.64,6552.45,9089.46,291.42
highpass_1000hz_order2_60s,audio_samples_butterworth,60,2646000,200,20,6400.80,6601.19,6516.94,8351.82,245.18
rms_and_peak_60s,c_native,60,2646000,1000,100,282.28,287.64,284.00,726.68,27.22
rms_and_peak_60s,audio_samples,60,2646000,1000,100,309.52,320.96,311.54,1110.87,70.63
stereo_to_mono_60s,ffmpeg_swresample,60,2646000,1000,100,3938.45,4421.15,4240.47,8525.34,558.54
mono_to_stereo_60s,ffmpeg_swresample,60,2646000,1000,100,4396.65,4812.68,4671.23,9043.27,526.61
stereo_to_mono_60s,audio_samples,60,2646000,1000,100,488.26,571.98,528.77,1572.01,150.82
mono_to_stereo_60s,audio_samples,60,2646000,1000,100,1353.75,1520.67,1445.69,3589.60,245.98
format_f32_to_i16_60s,ffmpeg_swresample,60,2646000,1000,100,305.69,326.15,309.39,726.64,58.32
format_i16_to_f32_60s,ffmpeg_swresample,60,2646000,1000,100,454.29,463.15,457.22,891.83,33.30
format_f32_to_i16_60s,audio_samples,60,2646000,1000,100,219.42,243.88,229.15,683.09,67.93
format_i16_to_f32_60s,audio_samples,60,2646000,1000,100,308.73,341.99,314.94,1667.81,160.45
scale_by_half_60s,c_native,60,2646000,1000,100,510.43,540.40,521.37,1147.95,76.56
clip_60s,c_native,60,2646000,1000,100,577.57,623.91,595.84,1386.42,98.28
normalize_peak_60s,c_native,60,2646000,1000,100,793.25,864.93,822.90,1569.32,145.08
scale_by_half_60s,audio_samples,60,2646000,1000,100,530.75,562.75,541.71,1190.76,68.38
clip_60s,audio_samples,60,2646000,1000,100,531.90,563.31,544.37,1149.79,68.02
clip_inplace_60s,audio_samples_inplace,60,2646000,1000,100,662.33,802.58,775.49,1609.46,128.88
normalize_peak_60s,audio_samples,60,2646000,1000,100,770.29,813.80,798.25,1442.49,64.79
trim_middle_60s,c_native,60,2646000,1000,100,652.26,699.85,674.03,1388.89,84.12
pad_end_60s,c_native,60,2646000,1000,100,304.51,338.15,314.71,789.99,68.77
fade_in_60s,c_native,60,2646000,1000,100,313.15,325.96,319.68,424.59,15.90
trim_middle_60s,audio_samples,60,2646000,1000,100,150.83,196.02,155.69,388.76,54.26
pad_end_60s,audio_samples,60,2646000,1000,100,306.40,324.86,313.78,784.91,43.14
fade_in_60s,audio_samples,60,2646000,1000,100,312.07,337.71,322.56,752.23,57.37