Войти
ПрограммированиеФорумЗвук

Как загрузить mp3 и перевести в wav, чтобы создать directsound buffer с таким звуком? (4 стр)

Страницы: 1 2 3 4 5 6 Следующая »
#45
10:31, 19 дек. 2011

ronniko
Буфер выглядит так-же как блок данных несжатого wav файла...


#46
0:36, 27 дек. 2011

Привет всем!
Хочу вас обрадовать тем, что я завершил работу над первым конвеером компрессии wav.

Удалось перевести 16 бит в 12 бит.

На данном этапе достигнута степень компрессии в 75% от оригинала.

Специально я выбрал музыку для теста.
Где были глубокий бас и высокие частоты.
Тестирование прошло успешно.
Никаких искажений заметить не смог - мое ИМХО.
Сейчас приступаю к созданию второго конвеера.
Незнаю пока на сколько удастся, но где-то надеюсь пока в диапозоне
25-50% сжатия от оригинала.

#47
10:06, 27 дек. 2011

касательно глубокого баса и высоких частот. нас интересует уровень сигнала
при 16 битах это 64к уровней от -32к до +32к. уровень сигнала это не частота.

#48
12:25, 27 дек. 2011

ИПавлов
Если я не ошибаюсь - сигнал относителен...
Т.Е. все равно какова разрядность выборки, размах сигнала будет одинаковым, разве что синус начнет ломаться от дискретизации.

#49
13:21, 27 дек. 2011

Andconst
Ты сжал ровно на столько, на сколько потерял качество. Это не сжатие, а усечение (если я правильно понял, что ты сделал).
Для сравнения - какой-нибудь ZIP жмёт лучше, не теряя ничего при этом.

#50
13:26, 27 дек. 2011

я надеялся автор сам дойдёт до алгоритмов сжатия типа ZIP

#51
14:07, 27 дек. 2011

ну или прочитает что нить про flac формат. А еще лучше заглянет в его исходники.

Повторюсь:
1. Берем семпл, прогоняем через банк фильтров
2. Над остатком от фильтрации проводим 1D свертку
3. Кодируем полученные значения парамами кол-во нулей/значение (тут оооочень большой разбег для фантазии, и по сути чем лучше мы продумаем этот шаг, тем лучше будет сжатие на выходе с кодера. У меня например, на данном этапе, находится 4 блока анализаторов в каждом по 16 проходов).
3. Кодируем пары любым энтропийным кодером.

Результаты: мы получим достаточно приемлимое качество сжатия, БЕЗ потери качества сигнала как такового. По сути - изобретем еще один flac.

#52
14:11, 27 дек. 2011

Мух ну скорее всего только тебе можно этим заниматься, а другим ещё учиться надо. этоже только для учёных.

#53
18:09, 27 дек. 2011

Я сразу так и думал делать формат сжатия только для игр.
Идти на потери везде где можно.
Не для концертов и музыкальных студий.
Потеря точности составляет 16 раз.
Но это лучше чем 8 бит, который дает 256 значений для уровня громкости.
12 бит = 4096 значений.
Я ЛИЧНО искажений НИКАКИХ незаметил.
Главное - ровный синус.
Вот сжатия направленных на частоту саму, имеет опасность повредить звук.

В общем считаем.

2 Ватт - "потолок" для комнаты.
Обычно так на слух многие гонят звук где-то не более 700 милливатт, когда играют.

Но возьмем за эталон 2 Вт.

Сопротивление динамиков составляет 8 или 4 Ом.
Обычно 4 Ом.

Обычные звуковые усилители запитывают динамики напряжением 5в, 9в,12в, 15в, (25в - это обычно HI-END) в максимуме громкости.

Возьмем 12 вольт. Для компьтерных систем - это максимум стандарт как бы.

12 вольт / 4 Ом получаем 3 Ампера . Это дает максимум 36 Ватт мощности, что можно получить от 12 вольт теоритически.
Но нам 2 Ватта "достаточно"
3 вольта / 4 Ом = 0, 75 ток
3 В * 0,75 А = 2,25 Ватт = 2250 милливатт. Даже с запасом.

Дальше

3000 милливольт / 4096 значений от 12 бит.
Мы получаем значение 0,73 милливольта для одной выборки амплитуды сигнала.

Это для трех вольт при 12 битах получается меньше 1 милливольта для 2,25 Ватт.

Для 1 вольта при 8 битах получается 4 милливольта, но при мощности 250 милливатт при максимуме.

Эх, не помню сколько, но 0,75 милливольт очень близок к порогу чувствительности уха при перерасчете на децибеллы.

Вот я ещё думаю над тем чтобы 44 килогерц сократить до 32 килогерц.
Делим на два получаем 16 килогерц как максимум для частоты звука
Для музыки 22 килогерц неприемлимо.
Так как 11 килогерц выступает как максимум.
А 16 килогерц, пока думаю.

#54
18:20, 27 дек. 2011

Зачем останавливаться на ZIP?

Процесс сжатия будет как череда конвееров.
Методы сжатия общего назначения планируется применить, но
этот конвеер будет выступать последним.
Пока сейчас мне необходимо работать с "простыми" данными для различных обработок звука.

В общем да, я получал FLAC, но с потерями.
Пока задействован только первый конвеер.
И он облегчает работу для других конвееров.

#55
19:05, 27 дек. 2011

никто не говорит, что нужно останавливаться на зип, но никто не говорит, что просто отрезать от 16 бит 4 бита это хорошо. вообще никто ничего не говорит

#56
19:06, 27 дек. 2011

Andconst
> 5в, 9в,12в, 15в, (25в - это обычно HI-END) в максимуме громкости.
Хрипения и шипения? Ты где нибудь видел в компьютерных колонках трансформаторы, способные дать 3А?
Если уж речь идет о качестве, что тут делают китайские колонки?

#57
19:20, 27 дек. 2011
ИПавлов
> Мух ну скорее всего только тебе можно этим заниматься, а другим ещё учиться
> надо. этоже только для учёных.
Тебя задевает чтоли фраза про ученых, или не веришь что они там реально были? Так возьми и посмотри сколько народу разрабатывало форматы сжатия, фома не верующий. Я тоже не знал когда то, стало интересно - узнал, а не пытался применять какие то фигулины для того чтобы изобрести сжатие без потерь, которое итак уже изобрели давно.
#58
19:24, 27 дек. 2011

Andconst
> В общем да, я получал FLAC, но с потерями.
Бгыы)) Ну и нафик оно надо, чем оно лучше mp3 то? Ты вроде хотел сделать именно чтобы без потерь и жало хорошо, а получается пока как всегда.. :)

#59
2:07, 28 дек. 2011

Мух
        ->а получается пока как всегда.. :)

Да рассмешил меня однако.

Я же говорил наоборот.
Сжатие с потерями, но на слух - ПОЙДЕТ!
И чтобы жало хорошо - нет,

Я сразу определил так
Мой кодек по соотношению качество/размер хуже будет чем MP3 и OGG в 2,3,4 раза
И лучше в 2,3,4 раза чем FLAC.
Это прикидки.

max255
                    Andconst
                    -> 5в, 9в,12в, 15в, (25в - это обычно HI-END) в максимуме громкости.
              ->  Хрипения и шипения? Ты где нибудь видел в компьютерных колонках трансформаторы, способные дать 3А?
              ->  Если уж речь идет о качестве, что тут делают китайские колонки?

max255

Вам доказать другим (что не стоит гонятся за высшим качеством звука ) удалось лучше, чем мне!
Вообще-то дешевле производить импульсные блоки питания.
Они мощнее не по-детски, но вносят в звук искажения больше, чем обычные.
Скорее всего это попортит звук, чем "ограниченность" 12 бит.
3А - это то, что возможно получить. Говорил об этом, чтобы внести ясность в том что качество звука относительна.
Я понимаю ваши беспокойства насчет качества звука, потому что качество звука очень влияет на репутацию игры, в общем
играет далеко не последнюю роль!

Сомниваюсь, что музыкальные студии и звукорежиссеры используют ogg, mp3, flac повсеместно.
Я лично wav 16 bit 44100 неуважаю.
Уважаю 16 бит 96 килогерц.

Решил не делать 32 килогерца из 44100
Частота будет такой же на выходе, в зависимости подачи конкретного PCM.
Хотел отметить, что не каждый конвертер переводит хорошо из 44100 в 32000 (32075).
32 делим на 2 получаем 16 килогерц потолок для звука.
Это слехвой достаточно для фоновой музыки, а также само по себе с помощью конвертера облегчает задачу сжатия.
ZIP в лучшем случае можно добиться 75% сжатия, но для богатой музыки не ниже 85%.
ИМХО(FACT).

Страницы: 1 2 3 4 5 6 Следующая »
ПрограммированиеФорумЗвук

Тема в архиве.