2015-10-27 2 views
0

Я работаю над некоторым программным обеспечением, которое может генерировать «Single Cycle Waveforms» на основе некоторых основных осциллограмм и некоторых операций, выполняемых на этих (упрощенных) операциях. На данный момент я добавил способность импортировать wavefiles (как «рисованный» сигнал) и простую функцию воспроизведения (используя NAudio), чтобы пользователь мог слушать генерируемые осциллограммы.Вставить метаданные в wave-файлы, сохраненные с помощью NAudio

Целью генерации этих осциллограмм является окончательное их экспорт на внешние/отдельные волновые файлы («Single Cycle Waveforms» и/или Wave-таблицы), поэтому их можно загрузить в синтезаторы/сэмплеры и использовать для производства музыки ,

Однако, помимо необработанных данных (формы сигнала), я хотел бы вставить петлевые маркеры (loop-start/end) вместе с корневым ключом и так далее. Кто-нибудь знает, возможно ли это с помощью Naudio, и если да, то как?

ответ

0

Файлы WAVE состоят из серии фрагментов RIFF. Есть два, которые должны присутствовать - фрагмент формата и блок данных, но можно добавить больше, и есть некоторые стандартные, которые могут удовлетворить ваши потребности. У NAudio нет встроенной поддержки для записи произвольных фрагментов, но WaveFileWriter можно переопределить, чтобы включить запись пользовательских фрагментов. Хорошим примером этого является класс CueWaveFileWriter, который может быть полезен для маркеров цикла.

Альтернативой является поиск файлов .sfz, которые поддерживаются многими пробоотборниками, и представляет собой простой текстовый формат, который описывает, как будут использоваться ваши образцы WAV.

+0

Спасибо за ответ Марк, я дам ему попробовать наследовать от WaveFileWriter, как вы предлагаете. –