Это моё «увлекательное» увлечение.8 бит звуковых образцов до 16 бит
У меня есть любимые однотактные сигналы из ПЗУ классического синтезатора.
Это 8-разрядные образцы (256 возможных значений).
Поскольку они всего 8 бит, уровень шума довольно высок. Это связано с ошибкой квантования. Ошибка квантования довольно странная. Это немного испортит все частоты.
Я хотел бы взять эти циклы и сделать их «чистыми» 16-битными версиями. (Да, я знаю, что люди любят грязные версии, поэтому я позволю пользователю интерполировать между грязными и чистыми в любой степени.)
Это звучит невозможно, правильно, потому что я потерял низкие 8 бит навсегда , правильно? Но это было в моей голове некоторое время, и я уверен, что смогу это сделать.
Помните, что это однотактные сигналы, которые повторяются снова и снова для воспроизведения, поэтому это особый случай. (Конечно, синтезатор делает всевозможные вещи, чтобы сделать звук интересным, в том числе конверты, модуляции, фильтры затухания и т. Д.)
Для каждого отдельного байтового образца я действительно знаю, что это один из 256 значения в 16-разрядной версии. (Представьте обратный процесс, когда 16-битное значение усечено или округлено до 8 бит.)
Моя оценочная функция пытается получить минимальный уровень шума. Я должен судить об этом с помощью одного или нескольких БПФ.
Исчерпывающие испытания, вероятно, потребуются навсегда, поэтому я мог бы принять первый проход с низким разрешением. Или я просто произвольно нажимаю случайно выбранные значения вокруг (в пределах известных значений, которые будут содержать одну и ту же 8-битную версию), и делать оценку и сохранять чистую версию? Или я могу сделать что-то быстрее? Я в опасности попасть в локальные минимумы, когда могут быть какие-то лучшие минимумы в другом месте поискового пространства? У меня это было в других подобных ситуациях.
Есть ли какие-либо первоначальные предположения, которые я могу сделать, возможно, глядя на соседние значения?
Edit: Несколько человек отметили, что проблему легче, если я удалить требование о том, что новая форма сигнала будет продегустировать к оригиналу. Это правда. На самом деле, если я просто ищу чистые звуки, решение тривиально.
Я ни в коем случае не специалист по DSP, но короткий поиск (http://www.google.com/search?&q=improve++audio++bit+rate) привел некоторые документы: http://www2.computer.org/portal/web/csdl/doi?doc=abs/proceedings/icme/2001/1198/00/11980031abs.htm, http://iwaenc05.ele.tue.nl/proceedings/papers/S04 -02.pdf. Может быть, это даст вам некоторые идеи на следующие выходные ;-) –
Спасибо, диво! Я прочту их. – Nosredna
Большинство документов, которые я нашел, говорят о низкой частоте дискретизации. Только несколько говорят о восстановлении после ошибки квантования. Я все еще не решил, стоит ли даже думать об ошибке частоты дискретизации, так как у меня уже есть хороший интерполятор качества звука. – Nosredna