Три соображения.
1) Стандарт для цифровых телефонных линий - это дискретизация звука на частоте 8 КГц (максимальная частота звука - 4 КГц) с 256 возможными уровнями сигнала (8-битный АЦП, динамический диапазон 48 Дб).
"Фонограф", насколько я понял его формат (http://forum.agatcomp.ru//viewtopic.php?id=100), дискретизирует звук на частоте около 30 КГц (максимальная частота звука - 15 КГц) с 2 уровнями сигнала (1-битный АЦП, динамический диапазон 0 Дб).
То есть, основная причина потери качества - в 8 раз меньшая разрядность по сравнению с телефонной линией, и при воспроизведении ее уже никак не восстановить.
"Фонограф" еще применяет RLE к оцифрованным данным, но это сжатие без потерь и на качество оно не влияет.
2) Психоакустические модели точно ничем тут не помогут, потому что они про спектральный состав сигнала. Вот если бы "Фонограф" синтезировал звук из простых синусов, то да, модели могли бы сказать - вот из этих двух синусов второй можно нафиг выкинуть, потому что человек его вообще не услышит на фоне первого.
3) Улучшить качество можно, но не сильно. Магнитофонный вход Агата распознает сигнал амплитудой примерно от 50 милливольт как "1", все что ниже - как "0" (тишину). При этом стандартное напряжение на линейном входе 0,3 В.
Первое, что можно сделать - поиграться с этим пороговым уровнем (слишком сильно снижать не стоит, потому что начнут оцифровываться шумы).
Вторая проблема - одинаковый звук с разными уровнями громкости цифруется по разному. На картинке три одинаковых синуса с разной амплитудой. Первый после оцифровки пропал, у второго и третьего разная скважность, а из-за этого будет отличаться тембр.
Чтобы с этим побороться нужно сжать динамический диапазон. В звуковых редакторах есть такой эффект - "компрессор". Он делает тихие звуки громче, а громкие - оставляет как есть. С его помощью можно улучшить разборчивость тихих звуков.
Еще можно сделать программную оцифровку с учетом ошибки квантования. Проблема 1-битного АЦП в том, что он весь диапазон напряжений от 50 до 300 мВ превратит в "1", а диапазон от -300 мВ до 49 мВ - в "0".
Если представить, что выход АЦП сразу идет на ЦАП, то получается, что у нас на входе АЦП 50 мВ, а на выходе ЦАП сразу 300 мВ. На входе АЦП 0, а на выходе ЦАП -300 мВ.
Если на каждом шагу вычитать из входного сигнала сигнал с "как бы выхода ЦАП", то у нас будет напряжение ошибки. Это напряжение нужно прибавить к входному сигналу на следующем шаге оцифровки и тогда ошибка будет учтена. Разрядность АЦП это не повысит, но ошибка будет "размазана" по соседним отсчетам и будет менее заметна на слух.
Post's attachments Phonograph.png 35.17 kb, 284 downloads since 2021-02-06