Трябва да създам редица последователни музикални проби. Имайки 1 секунда дълга вълна с честота на дискретизация 44100, трябва да мога да получа масив от точно 44100 проби. За съжаление това не е вярно.
Моят подход е следният:
1) Създайте output.wav, който е дълъг 1 секунда с честота на дискретизация 44100
avconv -i input.mp3 -ss 00:01:00 -t 00:00:01 -ar 44100 -ac 1 output.wav
2) Прочитам файла и отпечатвам броя на пробите
meta,song = scipy.io.wavfile.read(path + "/" +file)
assert meta == 44100
print(len(song))
За различни избори на input.mp3 и начална позиция получавам различни номера: 43776, 43776, 44928, 43776, 43776, 44928
Въпросът ми е защо е така? и как мога да променя стъпка 1, за да създам последователни проби от данни?