SoX

Ответить
 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 29-Июл-24 18:08 (1 год 5 месяцев назад, ред. 11-Янв-26 23:41)

Это не окончательный вариант. Тема для обсуждений.
Если кому-то есть что сказать, просьба не молчать.
SoX (Sound eXchange)
    Основные преимущества утилиты:
  1. Высокая точность ресемплирования (выше eac3to с ресемплером SSRC);
  2. Свободный коэффициент изменения скорости (полезно при работе со звуковыми дорожками с нестандартной скоростью воспроизведения);
  3. Кроссплатформенность (Windows / MacOS / Linux).

Установка и регистрация в "Переменных средах"
  1. Скачиваем последнюю стабильную версию и распаковываем архив в любое удобное место, не требующее дополнительных прав на доступ;
  2. Строго рекомендуется: переименовать файл sox_ng.exe в sox.exe, чтобы в дальнейшем упростить жизнь себе и окружающим. На работоспособность программы это никак не повлияет;
  3. Важно: данная инструкция рассчитана на сборку SoX со встроенной библиотекой libsndfile (включена поддержка формата W64). Версии без этой библиотеки не подходят;
  4. SoX - консольная утилита, поэтому для удобства работы регистрируем её в "Переменных средах" (системная переменная PATH). В противном случае, придётся каждый раз указывать полный путь к exe-файлу:
---
    Windows XP/7:
  1. Вариант 1: Пуск > Панель управления > Система и безопасность > Система > Дополнительные параметры системы > Дополнительно > Переменные среды
  2. Вариант 2: Win+R > sysdm.cpl > Дополнительно > Переменные среды
  3. В поле системные переменные выбрать переменную "Path", нажать "Изменить", добавить в конце строки символ ";", затем адрес папки sox.exe, подтвердить.

    Windows 10/11:
  1. Вариант 1: Поиск > перемен > Изменение системных переменных сред > Переменные среды
  2. Вариант 2: Win+R > sysdm.cpl > Дополнительно > Переменные среды
  3. В поле "Системные переменные" зайти в переменную "Path", нажать "Создать", затем нажать "Обзор" и указать путь до папки с файлом sox.exe.
  1. Если всё сделано правильно, то при вводе в командной строке sox появится следующая информация:
---

    Изменение скорости звуковых дорожек:
На вход подаётся 24-/32-битный WAV или 24-битный W64 писал(а):
sox -S input.wav output.wav speed коэффициент rate -u -s
sox -S input.w64 output.w64 speed коэффициент rate -u -s
На вход подаётся 16-битный WAV/W64 писал(а):
sox -S input.wav -b 24 output.wav speed коэффициент rate -u -s
sox -S input.w64 -b 24 output.w64 speed коэффициент rate -u -s
    Примечания:
  1. Важно: утилита не умеет полноценно работать с 32-bit float, размер WAV на входе ограничен 2 Гб и в ней не предусмотрен "второй проход" (по примеру eac3to) для устранения проблем, которые могут возникнуть в момент преобразования. Все проблемы (чаще всего, это будет размер и клиппинг) придётся решать самостоятельно, заранее подготовив дорожку к работе в SoX.
  2. В связи с этим, чтение лога становится важным критерием качественного преобразования звуковых дорожек:
Примеры логов
    Пример штатного лога:

    Duration: 01:55:17.66 / In:100% / Clip:0 - фактическая продолжительность / файл обработан полностью / без клиппинга.
    Пример лога, требующего вмешательства (1):

    Duration: 01:55:17.66 / In:100% / Clip:12 - фактическая продолжительность / файл обработан полностью / обнаружен клиппинг.
    Дорожке требуется предварительная нормализация с помощью ключа --norm.
    Рекомендуется: запас по шкале (headroom) не менее 3 дБ (-3 dBFS). С этим значением чаще всего удаётся избежать клиппинга при любых формах амплитуды.
    Строго не рекомендуется: использовать ключ -G или --guard, а также ключ --norm без указания конкретного значения - нормализация не будет корректной.
Пример нормализации до значения -3 dBFS писал(а):
sox -S --norm=-3 input.w64 output.w64 speed коэффициент rate -u -s

    Пример лога, требующего вмешательства (2):

    Duration: 00:32:26.64 / In:100% / Clip:0 - продолжительность ограничена / файл обработан полностью / без клиппинга.
    Размер дорожки превышает 2 Гб (обработаны первые полчаса из двух). Дорожку необходимо преобразовать в формат W64 (не выше 24-bit integer).
    Рекомендуется: воспользоваться для получения W64 утилитой eac3to, которая умеет корректно обходить ограничение на размер формата WAV.
    Не рекомендуется: использовать ключ --ignore-length для обхода ограничений. В конце полученной дорожки могут появиться артефакты.
Пример преобразования WAV в W64 с помощью eac3to писал(а):
eac3to input.wav output.w64
  1. По умолчанию SoX возвращает полученной дорожке исходную разрядность, что крайне не рекомендуется делать, когда речь идёт о 16 битах.
    По этой причине вводится ключ -b 24, чтобы на выходе получить 24-bit integer.
  2. Ключ -b 24 можно заменить на -e float и получить на выходе 32-bit float.
  3. Дорожку в 32-bit float (WAV, но не W64) можно подавать и на вход, но с осторожностью, заранее убедившись, что в ней отсутствуют переполнения ("плавающая запятая" это позволяет).
    На все переполнения на входе SoX не реагирует, а просто их срезает (целочисленная точность). Ключ -e float в этом случае не нужен.
  4. Краткое описание основных ключей:
    -S - отображает информацию о ходе операции (обязательный ключ);
    --norm - нормализация входящей дорожки (например, --norm=-3). Необходим только при обнаружении клиппинга (см. Примеры логов);
    speed - команда для изменения скорости дорожки, где коэффициент может быть стандартным (см. ниже) или любым;
    rate - задаёт качество ресемплирования: -u - сверхвысокое (полоса пропускания - 95%), -s - увеличивает полосу пропускания с 95% до 99%.
  5. Если на вход подаётся дорожка с частотой дискретизации 44 кГц, а на выходе требуется 48, то в конец команды rate нужно добавить 48k (например, rate -u -s 48k).
  6. Преобразования не ограничены родственностью формата. Возможны все варианты: WAV -> WAV / WAV -> W64 / W64 -> WAV / W64 -> W64.
  7. Отменить текущую операцию можно в любой момент сочетанием клавиш Ctrl+C.

Стандартные коэффициенты изменения скорости
Код:
-----------------------------------------------------------------------
   Начальная скорость    |  Конечная скорость  |      Коэффициент     |
-----------------------------------------------------------------------
-----------------------------------------------------------------------
           24p           |    23.976 (NTSC)    |   0.999000999000999  |
-----------------------------------------------------------------------
      23.976 (NTSC)      |         24p         |         1.001        |
-----------------------------------------------------------------------
-----------------------------------------------------------------------
         25 (PAL)        |    23.976 (NTSC)    |   0.959040959040959  |
-----------------------------------------------------------------------
      23.976 (NTSC)      |       25 (PAL)      |   1.042708333333330  |
-----------------------------------------------------------------------
-----------------------------------------------------------------------
         25 (PAL)        |         24p         |         0.960        |
-----------------------------------------------------------------------
           24p           |       25 (PAL)      |   1.041666666666670  |
-----------------------------------------------------------------------
  1. Округлять стандартные коэффициенты нельзя - падает точность преобразований.

[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 25-Дек-25 18:13 (спустя 1 год 4 месяца, ред. 27-Дек-25 18:42)

Всё не проверял сразу скажу! Но сделал следующие тесты. Перетяжка центрального канала дороги мульта из 23.976 в 24 и обратно. 1 скрин - оригинал. 2 скрин - первый перетяг. 3 скрин - обратный перетяг. 4 скрин - микс оригинала и инвертированного обратного перетяга. 5 скрин - увеличение микса (что отрезано от оригинала, то в миксе и осталость)
1. SoX
Код:

sox -S d:\1\2\test.wav d:\1\2\test_newsox.wav speed 1.001
sox -S d:\1\2\test_newsox.wav d:\1\2\test_backsox.wav speed 0.999000999000999
В итоге.
- подрезает верхние частоты (как на твоих скринах в теме пережатия дорожек), хотя у меня и не заметно, т.к. у меня срезает какие-то пики.
- что отрезалось, то осталось в миксе.
- длительность дороги совпадает (видно на 4 скрине)
скрытый текст
[свернуть]
2. eac3to 3.34 (по умолчанию SSRC (Shibata Sample Rate Converter) был немного оптимизирован by madshi) это в инструкции в спойлере команд -slowdown, -speedup, -23.976, -changeTo24.000, -r8brain
Код:

eac3to d:\1\2\test.wav d:\1\2\test_neweac.wav -changeto24.000 -23.976
eac3to d:\1\2\test_neweac.wav d:\1\2\test_backeac.wav -changeto23.976 -24.000
В итоге.
- не срезает частоты.
- прога добавила в начало дороги 2 сэмпла тишины (пришлось отрезать)
- прога добавила в конец дороги 270 сэмплов тишины (разность длины видно на скрине 4 (67065844-67066112 = 272 = 2+270))
- микс так себе
скрытый текст
[свернуть]
3. eac3to 3.55 (по умолчанию SSRC (Shibata Sample Rate Converter) был немного оптимизирован by madshi)
Код:

e:\Soft\eac3to_3.55\eac3to.exe d:\1\2\test.wav d:\1\2\test_neweac.3.55.wav -changeto24.000 -23.976
e:\Soft\eac3to_3.55\eac3to.exe d:\1\2\test_neweac.3.55.wav d:\1\2\test_backeac.3.55.wav -changeto23.976 -24.000
В итоге.
- не срезает частоты.
- прога добавила в начало дороги 2 сэмпла тишины (пришлось отрезать)
- прога добавила в конец дороги 270 сэмплов тишины (разность длины видно на скрине 4 (67065844-67066112 = 272 = 2+270))
- микс так себе
скрытый текст
[свернуть]
4. eac3to 3.34 (Ресэмплер 2. r8brain)
Код:

eac3to d:\1\2\test.wav d:\1\2\test_neweac.r8brain.wav -changeto24.000 -23.976 -r8brain
eac3to d:\1\2\test_neweac.r8brain.wav d:\1\2\test_backeac.r8brain.wav -changeto23.976 -24.000 -r8brain
В итоге.
- подрезает верхние частоты.
- что отрезалось, то осталось в миксе.
- длительность дороги совпадает (видно на 4 скрине). Ни чего не добавлено ни в конце, ни в начале
- микс лысый, но видно, что шумы остаются.
скрытый текст
Вывод. SoX использует ресэмплер похожий на r8brain, но почемуто микс лучше... И в eac3to чем дальше от начала дороги, тем больше "шума" остается в миксе
Получается: или срез частот небольшой, но как бы без изменений амплитуды или без среза частот, но с изменённой местами амплитудой.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 18:23 (спустя 9 мин., ред. 25-Дек-25 18:23)

"Ярковато" получается. И ломает строй. Надо подумать.
Про "без сохранения" убрал.
А под спойлером твой изначальный вариант на 100% смотрится и читается лучше.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 25-Дек-25 19:31 (спустя 1 час 8 мин., ред. 27-Дек-25 18:41)


теперь по делу.
Заметил одну бяку. Щас проверю, наделаю скринов и скину сюда
Итак.
1 скрин - три разные команды
первая - перетяжка без опции --ignore-length
вторая - перетяжка с опцией --ignore-length (появилась инфа о клиппинге)
третья - обратная перетяжка с опцией --ignore-length (так же есть инфа о клиппинге)

2 скрин - сравнение результатов первой и второй команд (добавлена в конце дорожки какая-то хрень)

3 скрин - увеличение сравнения результатов первой и второй команд (добавлена в конце дорожки какая-то хрень)

4 скрин - микс оригинала и инвертированного результата второй команды

5 скрин - увеличение микса оригинала и инвертированного результата второй команды (курсор стоит на окончании длины тестового оригинала)

Вот такая эпидерсия! проверял разные сочетания ключей в командной строке. Такое дерьмо в конце перетянутой дороги даёт именно --ignore-length
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 19:34 (спустя 2 мин.)

semёn_52
Файл, скорее всего, больше 4 Гб, и в первом случае утилита просто не добралась до клиппинга.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 25-Дек-25 19:45 (спустя 10 мин., ред. 25-Дек-25 19:45)

interdude
Нет. test.wav 268 269 544 байт
Исходный файл тот же, когда я делал первые сравнения в ЛС с обратными перетяжками разными программами
И в конце тестового файла 100% тишина
Можно и не заметить. Там всего 25 мс добавляет примерно. Глянь у себя тоже
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 19:52 (спустя 7 мин.)

semёn_52
Лучше на твоем файле.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 25-Дек-25 20:01 (спустя 8 мин., ред. 25-Дек-25 20:01)

interdude писал(а):
88622845"Ярковато" получается. И ломает строй. Надо подумать.
Просто в тэге box виднее выделение цветов.
interdude писал(а):
88622845И ломает строй.
Тут согласен. Вся инструкция в целом так же сделана. Читабельно вроде. Можно и не менять, да.
interdude писал(а):
88623190semёn_52
Лучше на твоем файле.
http://sendfile.su/1745220
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 20:25 (спустя 24 мин.)

semёn_52
Да, на некоторых своих файлах такая же ерунда.
Это серьёзная проблема. Если не смогу побороть, то сворачиваем лавочку.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 25-Дек-25 20:37 (спустя 12 мин., ред. 25-Дек-25 20:37)

interdude писал(а):
86530439преимущества
В преимущества проги можно добавить кроссплатформенность (Windows / Mac / Linux)
Цитата:
SoX - консольная утилита, поэтому для удобства работы регистрируем её в "Переменных средах" (системная переменная PATH). В противном случае, придётся каждый раз указывать полный путь к exe-файлу
Добавить " и не будет работать пакетное преобразование"
interdude писал(а):
88623299Это серьёзная проблема. Если не смогу побороть, то сворачиваем лавочку.
ОК
Тогда может быть имеет смысл вытащить на свет r8brain для eac3to? А то эта опция сильно закинута в дебри
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 20:49 (спустя 11 мин.)

semёn_52 писал(а):
88623341Тогда может быть имеет смысл вытащить на свет r8brain для eac3to
А там не тот r8brain, с которым сравнивали. В еак встроен free, а сравнивали платную Pro.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 25-Дек-25 23:34 (спустя 2 часа 44 мин.)

semёn_52
В общем, пока что единственное решение, это использовать SoX со встроенной библиотекой libsndfile: https://hydrogenaudio.org/index.php/topic,120839.0.html
В такой сокс можно подавать .W64 файлы, не требующие --ignore-length. При этом на выходе можно указывать .WAV.
Осталось перепроверить эту версию на всё остальное. Страдания не должны заканчиваться.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 26-Дек-25 08:45 (спустя 9 часов)

semёn_52
Теперь не получается заставить программу нормализовывать дорожку с переполнениями до преобразования. Срезает всё, а потом что-то там себе нормализует.
В общем, утилита предназначена строго для работы с 24-bit integer, не выше. При этом желательно заранее подготовить дорожку - дать запас по шкале, потому что нормализация здесь работает не по-человечески.
Всё это будет создавать лишнюю суету при работе, как следствие - повышается вероятность накосячить.
В той же eac3to все возникающие проблемы решает "второй проход".
Мне кажется, все настолько привыкли к float, что возвращаться к integer, да еще с такими "особенностями" - ну это такое себе.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 26-Дек-25 09:38 (спустя 53 мин., ред. 27-Дек-25 23:34)

interdude
Итак, в плане перетяжки дорожек получается, что SOX ограничен файлами wav более 2 ГБ. Ведь без ключа --ignore-length sox тянет лучше eac3to. И основной плюс sox в перетяжке нестандартных коэффициентов и кроссплатформенности.
То, что sox добавляет мусор в конец перетянутой дорожки если добавить ключ --ignore-length решаемо в любом аудиоредакторе за пару кликов. Основную дорожку он при этом тянет без искажений и оригинал миксуется с инвертированным обратным перетягом опять в ноль, кроме добавленного мусора. Может надо посмотреть сколько он добавляет? Всегда одинаково или нет...
С другой стороны, сколько бы он ни добавил, всё это можно сделать тишиной в аудиоредакторе. Ведь с точки зрения воспроизведения совместно с видео длина аудио не особо важна. При кодировании, например, в AC3 тоже надо отрезать 256 сэмплов от начала дороги хоть тресни. Ничего. Справляемся как-то. А тут и отрезать не надо. В аудишене мышью выделил, ПКМ на выделении, выбрать "Тишина", Ctrl+S (сохранил). Всё.
Ещё один минус - максимум 25 бит на выходе. Минус этот как бы и не минус, а вполне себе допустимо.
Моё мнение - SOX однозначно стОит внимания.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 26-Дек-25 10:00 (спустя 21 мин., ред. 26-Дек-25 10:00)

semёn_52
Просто хочется решения по типу "подал-получил", как eac3to.
Тут же всё идет к тому, что утилита будет рассчитана на максимально уверенных в себе парнишей, которые могут заранее всё предусмотреть и подготовить дорожку так, что к ней будет не докопаться.
Получится так, что в инструкции к соксу вначале будет огромная простыня о том, что можно делать, а что не можно. Обычный пользователь, увидев эту красоту, скажет "да ну на хер" и уйдёт в еак, в которой, повторюсь, все проблемы решает "второй проход". Вообще все.
Проблему с --ignore-length решает билд сокса совместимый с W64.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 26-Дек-25 11:05 (спустя 1 час 4 мин.)

Тогда херим тему, получается. Раз не получается)
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 26-Дек-25 14:54 (спустя 3 часа)

semёn_52
Надо подумать.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 27-Дек-25 11:27 (спустя 20 часов)

semёn_52
Ладно, продолжим.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 27-Дек-25 12:42 (спустя 1 час 15 мин.)

Давай тему в раздел обработки аудио и видео закинем. Может кто ещё мысли свои выскажет?
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 27-Дек-25 12:55 (спустя 12 мин.)

semёn_52
Можно.
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 27-Дек-25 17:57 (спустя 5 часов)

interdude
переноси. Ты - топикстартер
[Профиль]  [ЛС] 

bot · 27-Дек-25 18:15 (спустя 18 мин.)

Тема была перенесена из форума Оформление раздач (Группа "Top Seed") в форум Обработка видео + аудио
interdude
 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 27-Дек-25 18:40 (спустя 43 мин.)

Поменял своё первое сообщение в теме на свои тесты в первых наших обсуждениях
[Профиль]  [ЛС] 

Drommer.94

Стаж: 15 лет 4 месяца

Сообщений: 250

Drommer.94 · 27-Дек-25 22:50 (спустя 4 часа)

Если правильно понимаю, то обсуждение было про перетягивание без сохранения тональности.
Однако для перетягивания с сохранением тональности использовать SoX точно не вариант. Даже ffmpeg справляется лучше.
P.S. В какой момент и почему решили, что SoX лучше, чем eac3to, ведь во втором посте написано, что SoX срезает верхние частоты?
[Профиль]  [ЛС] 

semёn_52

Moderator senior

Стаж: 14 лет 2 месяца

Сообщений: 2995

semёn_52 · 27-Дек-25 23:13 (спустя 23 мин., ред. 27-Дек-25 23:13)

Без сохранения. Путаю глаголы)
Drommer.94 писал(а):
88631727ведь во втором посте написано, что SoX срезает верхние частоты?
Начиналось с этого, да. Срез частот победили командой
Код:
rate -v -s
Drommer.94 писал(а):
88631727P.S. В какой момент и почему решили, что SoX лучше, чем eac3to
Не лучше. Как бы точнее. Если сделать микс оригинала с инвертированным обратным перетягом, то это видно наглядно на скринах во втором посте
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 27-Дек-25 23:14 (спустя 18 сек.)

Drommer.94 писал(а):
88631727SoX срезает верхние частоты
Это уже не актуально. Полосу пропускания можно "разогнать" и до 99,7%. Там, правда, есть о чем подумать, стоит оно того или нет.
В остальном, тут был проделан простой опыт. SoX и eac3to перетягивали одну и ту же дорожку туда и обратно (допустим NTSC -> PAL -> NTSC). Затем их результат противофазился с исходником. После сокса остатки на уровне погрешности - практически ноль (дорожка вернулась в прежнее состояние), а еак так не умеет - точность ниже.
Хотя я не уверен, что на слух это возможно будет определить. Тут скорее формально-математическая точность.
SoX, если все закончится нормально, в дальнейшем будет особенно полезен для нестандартных скоростей.
[Профиль]  [ЛС] 

Drommer.94

Стаж: 15 лет 4 месяца

Сообщений: 250

Drommer.94 · 27-Дек-25 23:20 (спустя 6 мин.)

Понял, спасибо.
interdude ещё писал про проблему с клиппингом. Проблема именно в той версии, что поддерживает W64 или глобальная?
Цитата:
SoX, если все закончится нормально, в дальнейшем будет особенно полезен для нестандартных скоростей.
Да, это полезно.
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 27-Дек-25 23:26 (спустя 6 мин.)

Drommer.94
Глобальная. Или я что-то делаю не так, или у автора программы было очень странное видение борьбы с переполнением.
[Профиль]  [ЛС] 

Drommer.94

Стаж: 15 лет 4 месяца

Сообщений: 250

Drommer.94 · 27-Дек-25 23:48 (спустя 21 мин.)

Вероятно, вопрос покажется глупым, но как вы поняли, что он сначала срезает, а потом что-то нормализует?
[Профиль]  [ЛС] 

interdude

Top Seed 03* 160r

Стаж: 13 лет

Сообщений: 5338

interdude · 28-Дек-25 09:04 (спустя 9 часов, ред. 28-Дек-25 09:04)

Drommer.94
Подал в неё дорожку в 32-float с экстремально большими переполнениями. Подставлял и -G, и --norm - ничего не помогало.
Получается, эти ключи предназначены только для дорожки на выходе, если в момент преобразования амплитуда вылетает за 0.
Надо будет проверить, сравнив с еаком, и потом подкорректировать описание, но уже уверен, что всё так и есть. Программа и в самом деле рассчитана строго на integer, где в принципе не может быть переполнений у файла на входе.
Если кто-то знает или найдёт способ полноценно пропихнуть в неё float, будешь вообще сказка.
Правда, я, наверное, сильно драматизирую. Многие до сих пор разбирают еаком в интегер с ключом -no2ndpass, лишь бы не нормализовывать. Срежет, не срежет - только не нормализация! А я тут за этим флоатом гоняюсь...
[Профиль]  [ЛС] 
 
Ответить
Loading...
Error