Я бы посоветовал посмотреть на структуру данных для данного файла и «обрезать» данные в соответствующей точке вдоль линии, чтобы кадры не отсекались раньше.
Это будет означать просмотр частоты записи и скорости передачи данных и использование ее для получения размера (в битах) каждого кадра. Затем вы можете снимать фрагменты аудио, не обрезая отдельные данные кадра.
Посмотрите на это ТАК сообщение . Он предлагает рассматривать ваше аудио как двоичную строку для чтения. Поскольку это строка, вы можете копировать, вырезать и перемещать строку, как хотите, в новый выходной файл.
Проверьте это: http://docs.python.org/library/binascii.html
Также стоит посмотреть на: https://ccrma.stanford.edu/courses/422/projects/WaveFormat/
Либо это, либо просто оставьте его двоичным и используйте байтовые массивы. Нужно подумать о заголовочном файле и о том, что с этим происходит, хотя каждый формат отличается. MP3 легко сохранить заголовок, поскольку он чередуется между данными:
http://en.wikipedia.org/wiki/Mp3#File_structure
Хорошо, куча всего.
НАКОНЕЦ: Тот, который вы, без сомнения, уже видели: http://sourceforge.net/projects/audiotools/
Обновлено ....
Используйте метод bits_per_sample()
в ссылке на аудио инструменты от sourceforge.net
Returns the number of bits-per-sample in this audio file as a positive integer.
Затем разделите ваше аудио на байтовый массив, используя эту информацию и некоторую информацию сверху. Затем вы можете, по крайней мере, точно восстановить некоторые аудиоданные в формате RAW.
Вы можете взять длину файла в битах и разделить ее на 16. Затем вы можете использовать метод деления массива по времени в миллисекундах. Это звучит сложно, но это действительно элементарная математика.