Примените масштабирование времени к передаче потокового аудио
The audioTimeScaler объект выполняет изменение шкалы звукового времени (TSM) независимо по каждому входному каналу.
Для изменения шкалы времени передачи потокового аудио:
Создайте audioTimeScaler Объекту и установите его свойства.
Вызывайте объект с аргументами, как будто это функция.
Дополнительные сведения о работе системных объектов см. в разделе «Что такое системные объекты?».
создает объект, aTS = audioTimeScaleraTS, который выполняет изменение шкалы звукового времени независимо по каждому входному каналу с течением времени.
устанавливает aTS = audioTimeScaler(speedupFactor)SpeedupFactor свойство к speedupFactor.
устанавливает каждое свойство aTS = audioTimeScaler(___,'Name',Value)Name к заданной Value. Неопределенные свойства имеют значения по умолчанию.
aTS = audioTimeScaler(1.2,'Window',sqrt(hann(1024,'periodic')),'OverlapLength',768) создает объект, aTS, что увеличивает темп аудио в 1,2 раза его исходную скорость с помощью периодического окна Ханна с 1024 точками и перекрытия с 768 точками.Чтобы использовать функцию объекта, задайте Системную object™ в качестве первого входного параметра. Например, чтобы освободить системные ресурсы системного объекта с именем obj, используйте следующий синтаксис:
release(obj)
audioTimeScaler использует ту же фазу алгоритм вокодера, что и stretchAudio и основывается на описаниях в [1] и [2].
[1] Дриджер, Джонатан и Майнард Мюллер. A Review of Time-Scale Modification of Music Signals (неопр.) (недоступная ссылка). Прикладные науки. Том 6, Выпуск 2, 2016.
[2] Дриджер, Джонатан. «Алгоритмы изменения шкалы времени для музыкальных аудиосигналов». Магистерская диссертация, Саарландский университет, 2011.