Why does audiowrite modify my data frames slightly?
显示 更早的评论
I have a vector that I want to write to an audio file (any format, .wav or .mp4 or any other audio format). Afterwards, I want the exact decimal floating point values back when I read that audio file later. It is a project about audio stenography. Problem is that reading that audio file gives values that are slightly different. I want exact. I cannot even truncate them to any fixed length because different elements of my vector have different number of digits in floating point. Here is a brief version of the code I am having trouble with:
>> Fs= 8000
>> my_vector= [-0.74446 , 0.009]
>> audiowrite('newfile.wav', my_vector, Fs)
>> recovered_vector= audioread('newfile.wav')
recovered_vector =
-0.744476318359375
0.008972167968750
I wanted the same values back, -0.74446 and 0.009. I tried with different audio formats (.og, .ogg, .mp4, .wav). wav was giving closest results but they are still not exact. I also tried with changing the image quality parameter with .ogg (it does not work with .wav) but it did not help.
I think its a really basic thing that I am missing here....Any help would be much appreciated.
Thanks.
采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Audio and Video Data 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!