Здравствуйте. Есть проблема. Нужно применить фильтр ScaleTempo к более чем 100k файлам с ключом
--speed=0.4 --af=scaletempo=stride=10:overlap=0.8
mpv in.wav --oac=pcm_u8 -o out.wav
mencoder in.wav -o out.wav -of lavf -oac lavc -lavcopts acodec=pcm_u8
не работает вообще. Лог.
В Gstreamer я не знаю, как правильно сформулировать команду.
Из-того, что mpv на файлах больше секунды не прибавляет дополнительную секунду тишины, то решение с пост-обработкой и отрезанием тишины кажется еще более трудоемким.
P.S. Я протестировал альтернативы и пришел к заключению, что для голоса это самый лучший вариант. Sox, Audacity, Rubber Band, FFmpeg дают результат существенно хуже. Rubber Band сглаживает лучше, но металлический окрас делает общее восприятие хуже. Наткнулся на это решение случайно, в дополнение для Anki. С ним голос замедляется не хуже, чем это делает YouTube. Другие настройки дают результат на уровне вышеприведенных альтернатив. Интересный момент, что самый частый совет в интернете, это
--af=scaletempo=stride=30:overlap=.50
Буду рад, если подскажите качественные проприетарные решения для замедления речи.
P.S.S. В GoldenDict можно изменить плеер для воспроизведения звукового контента в словарях.
mplayer -speed 0.4 -af scaletempo=stride=10:overlap=0.8