2017-01-09 2 views
0

Я хотел бы сгенерировать звук на входе AudioSource в Unity.Генерация звука на входе AudioSource

Я попытался с помощью OnAudioFilterRead() MonoBehaviour, но это только позволяет изменять аудиоданные послеAudioSource, который обходит любого/качки территориального анализа/усиление и т.д. на AudioSource компонента.

У меня также возникла идея использовать AudioClip в качестве буфера, заполнив его аудиоданными, а затем загрузив их в AudioSource, но я не думаю, что это можно было бы сделать, не зная размер буфера и возможность загрузите новый клип при чтении каждого буфера. Нет способа читать в AudioClip, поскольку каждый новый буфер необходим.

Есть ли способ изменить звуковые данные AudioSourceдо, он проходит через пространственную пространственную обработку звука/качку/усиление и т. Д.?

+0

Это не вне форума и не просит «рекомендовать или найти книгу, инструмент, библиотеку программного обеспечения, учебник или другой ресурс вне сайта». Это прямой вопрос о Единстве. Если что-то неясно, то прокомментируйте, и я отредактирую для ясности, спасибо. –

ответ

0

Я решил это сам. Это была глупая ошибка. После прочтения Документов для OnAudioFilterRead правильно я обнаружил, что в нем говорится:

Аудиоданное представляет собой массив поплавков в диапазоне от [-1.0f; 1.0f] и содержит аудио от предыдущего фильтра в цепи или AudioClip на AudioSource. Если это первый фильтр в цепочке и клип не подключен к источнику звука, этот фильтр будет «воспроизводиться». Таким образом, вы можете использовать фильтр в качестве аудиоклипа, процедурно генерации звука.

я имел аудио клип в AudioSource, который был остановлен OnFilterRead быть первым процессом в цепи DSP. Исправлена ​​проблема с удалением аудиоклипа!