How can I record my sound to get the symmetrical waveform?
AudioPlot[mysound, PlotStyle -> Red, AxesStyle -> Blue]
Or
How can I transform "my sound" to get the symmetrical waveform?
How can I record my sound to get the symmetrical waveform?
AudioPlot[mysound, PlotStyle -> Red, AxesStyle -> Blue]
Or
How can I transform "my sound" to get the symmetrical waveform?
Since you are interested in a visual representation of the audio waveform, there is no need to worry about the (audio) fidelity of the transformation. This reads in a sound, and then forces it to be symmetric.
a = Abs[AudioData[ExampleData[{"Audio", "BlackcapWarbler"}]][[1]]];
asym = Table[If[EvenQ[i], a[[i]], -a[[i]]], {i, Length[a]}];
ListLinePlot[asym, PlotRange -> All]
I see in your example ,audio file is tt5.wav
.
audio = Audio["tt5.wav"];
minmax = AudioBlockMap[MinMax, audio, .01]
You can view the max, min and mean of audio.
Show[AudioPlot[audio, AspectRatio -> 1/2, PlotRange -> All],
ListLinePlot[minmax, PlotStyle -> {Orange, Darker[Green]}, PlotRange -> {-1, 1}],
ListLinePlot[TimeSeriesMap[Mean, minmax], PlotStyle -> Red, PlotRange -> {-1, 1}]]
Then Using sample of audio Subtract the mean of audio,then it should be a symmetrical waveform.
you can use this to get it.Perfect!
newaudio = AudioSpectralMap[If[Abs@#Value < 2, 0., #Value] &, audio - Audio[TimeSeriesMap[Mean, minmax]]]
AudioPlot@newaudio