Как я могу добавить к очень большой файл WAV с NAudio? - PullRequest
0 голосов
/ 15 мая 2019

Я использую WaveFileWriter из NAudio для записи звука с микрофона и сохранения в файл WAV. Но некоторые из этих файлов должны содержать огромное количество данных, возможно, 12 часов записи, что может дать файл размером более 1 ГБ.

Чтобы сохранить накопительную запись, я должен открыть новую WaveFileWriter, открыть существующую запись, скопировать данные из существующей в новую и затем добавить последующее аудио в устройство записи.

Проблема в том, что как только файл становится очень большим, это происходит очень медленно. В моем приложении запись должна часто останавливаться и возобновляться, а задержка в несколько секунд каждый раз неприемлема.

Я хотел бы просто открыть файл в режиме добавления, но при закрытии файла произойдет сбой с ошибкой:

Невозможно выполнить поиск в обратном направлении, чтобы перезаписать данные, которые ранее существовали в файле, открытом в режиме добавления.

(Это потому, что при закрытии необходимо обновить заголовок, требуя поиска по началу, что не разрешено в режиме добавления.)

Есть ли способ добавить к очень большому файлу WAV или другой способ обойти эту проблему?

...