Возможно ли это, и знает ли кто, как этого добиться?
Обработать звук
Вечерок добрый. Есть у меня одна "Умная мысль" и ля неё необходимо чтоб кто-то из Вас обработал мне звук. Необходимо получить WAV файл с разрядностью в 4бита и частотой дискретизации в 8кГц. (8192Гц если быть точным).
Возможно ли это, и знает ли кто, как этого добиться?
Возможно ли это, и знает ли кто, как этого добиться?
- Реклама
- Сообщения: 13796
- Зарегистрирован: Чт сен 20, 2007 14:08:00
насчет 4 врят ли, но 8кгц может делать любой редактор
тематические ответы только в форуме, в приват не пишите
А почему 4 бита? Звук же совсем говняшкой станет, даже на 8-ми битах уже треск слышен.
I'm on a huge rock, flying through space!
Ну, надо так. Вы сделайте, я послушай. Просто мне надо эо услышать, а я не знаю как получить такое херовое качество.
Сделайте мне, я не знаю зачем оно мне, но мне надо. Я послушаю.
Смотри, сделать 8-битный PCM можно запросто, любой конвертер из инета тебе поможет. Ужать до 4-х бит можно тоже, но так как я на высокоуровневых языках даже hello world не напишу, я мог бы сделать это через микроконтроллер... Но зачем мне этот геморрой- я без понятия.
Тем более не очень понятно, как тебе эти 4 бита подавать, по 2 семпла на байт, или чтобы каждый байт- это число от 0 до 15.
И сколько семплов в секунд?
Когда уже народ поймет, что никто не будет помогать тому, кто даже не может заставить себя подробно описать ситуацию в своем прошении о безвозмездной помощи.
Смотри, сделать 8-битный PCM можно запросто, любой конвертер из инета тебе поможет. Ужать до 4-х бит можно тоже, но так как я на высокоуровневых языках даже hello world не напишу, я мог бы сделать это через микроконтроллер... Но зачем мне этот геморрой- я без понятия.
Тем более не очень понятно, как тебе эти 4 бита подавать, по 2 семпла на байт, или чтобы каждый байт- это число от 0 до 15.
И сколько семплов в секунд?
Когда уже народ поймет, что никто не будет помогать тому, кто даже не может заставить себя подробно описать ситуацию в своем прошении о безвозмездной помощи.
I'm on a huge rock, flying through space!
- Реклама
Можно эмулировать 4-х битный звук. Открыть 8-и битный WAV и после поля "data+размер" обнулить все младшие полубайты
Но это лучше не вручную конечно
Но это лучше не вручную конечно
Неправильно собранная из неисправных деталей схема нуждается в отладке и сразу не работает... (С)
Берём исходный звук 8 бит. Чтобы отбросить 4 младших разряда, в звуковом редакторе уменьшаем уровень громкости до 6,25%. Далее восстанавливаем громкость.
Звук очень поганый, слушайте.
Может стоит обратить внимание на ADPCM? У этого кодека маленькая загрузка процессора, но качество звука получше будет.
Звук очень поганый, слушайте.
Может стоит обратить внимание на ADPCM? У этого кодека маленькая загрузка процессора, но качество звука получше будет.
- Вложения
-
- ru_0001_4bit.zip
- (22.45 КБ) 135 скачиваний
- Сообщения: 46891
- Зарегистрирован: Пт янв 23, 2009 19:20:05
Взять 8-битный звук и в любом редакторе уменьшить уровень на 24 децибела... Останется как раз 4 бита...

Спасибо, друзья. Это именно то, что я хотел. А теперь вопрос номер два. Там частота дискретизации 64кБ/с. Где б можно было её понизить насколько смогу? В идеале до 8кБ/с.
Частота дискретизации там 8КГц.
А скорость потока 64кбит/с, что в переводе на байты даст 8кбайт/с.
Звук там хранится в 8-битном виде. При переводе в настоящий 4-битный будет 4кбайт/с. Ну это либо самописной программой, либой какой-то спец утилитой.
Меньше будет только с использованием кодеков вроде CELP или MPEG.
В прошлом году я запускал кодек Speex. 1-2кбайт/с при телефонном качестве звука. Но надо 32-битный процессор.
А скорость потока 64кбит/с, что в переводе на байты даст 8кбайт/с.
Звук там хранится в 8-битном виде. При переводе в настоящий 4-битный будет 4кбайт/с. Ну это либо самописной программой, либой какой-то спец утилитой.
Меньше будет только с использованием кодеков вроде CELP или MPEG.
В прошлом году я запускал кодек Speex. 1-2кбайт/с при телефонном качестве звука. Но надо 32-битный процессор.
А. То есть он в восьмибитном, но используются только промежуточные значения. Т.е не все 256, а только 16 из них, что придаёт ему 4-битности условной?
Вот еще вспомнил.
Есть 1-битная дифференциальная модуляция.
Отличие от ADPCM - в отсутствии адаптивного предиктора.
Кодер - это компаратор, декодер - самая обычная интегрирующая RC-цепочка. Так реально получить телефонное качество с потоком 1-3кбайт/сек. Если интересно - посмотрите старые схемы цифровых ревербераторов.
Есть 1-битная дифференциальная модуляция.
Отличие от ADPCM - в отсутствии адаптивного предиктора.
Кодер - это компаратор, декодер - самая обычная интегрирующая RC-цепочка. Так реально получить телефонное качество с потоком 1-3кбайт/сек. Если интересно - посмотрите старые схемы цифровых ревербераторов.
Хм... Интересно... У меня шина 4кБайт/сек. И она вообще передаёт команды между модулями. На включение/выкллючение/опрос датчика. И мне стало интересно -- смогу ли я там ещё звук прогнать. Мало ли -- пригодится. По идее надо послать байт 0b10101010. Тогда все устройства временно выключатся и включится только одно -- звуковой модуль. Ну и дальше ему кидать данные в ЦАП.
Пока что результатом 4бит 8ксемпл/сек я доволен -- думал хуже будет. Попробую в железе, немного сгладив RC цепью. А вот 1-битную дифференциальную модуляцию возьму на заметку -- не слышал такого раньше.
Пока что результатом 4бит 8ксемпл/сек я доволен -- думал хуже будет. Попробую в железе, немного сгладив RC цепью. А вот 1-битную дифференциальную модуляцию возьму на заметку -- не слышал такого раньше.
Я так понял, речь шла о дельта-сигма модуляции? Гугл выдаёт такую картинку по теме:

А у меня ведь все единички и нулики одной длительности и расстояние между ними одинаковое. А тут я вижу некий аналог ШИМа.

А у меня ведь все единички и нулики одной длительности и расстояние между ними одинаковое. А тут я вижу некий аналог ШИМа.
Дифференциальная импульсно-кодовая модуляция
http://ru.wikipedia.org/wiki/%C4%E8%F4% ... F%F6%E8%FF
Шаг квантования фиксирован и равен единице(1 бит).
http://ru.wikipedia.org/wiki/%C4%E8%F4% ... F%F6%E8%FF
Шаг квантования фиксирован и равен единице(1 бит).
Код: Выделить всё
6E 80 80 80 6E 6E 80 80 6E 6E 6E 6E 6E 6E 5C 5C
5C 6E 4A 37 4A 5C 80 80 5C 80 B6 B6 92 B6 C9 C9
B6 B6 A4 80 80 80 80 5C 6E 80 6E 5C 6E 80 80 92
B6 C9 C9 DB DB C9 B6 B6 A4 92 80 80 6E 6E 5C 5C
5C 5C 6E 5C 5C 6E 6E 6E 5C 5C 5C 4A 37 37 25 25
25 80 6E 4A 80 DB DB A4 C9 FF ED B6 C9 B6 80 80
80 6E 4A 4A 6E 5C 4A 5C 80 80 80 92 A4 B6 B6 C9
B6 B6 C9 C9 92 92 A4 92 80 80 80 6E 6E 80 80 6E
6E 80 6E 5C 6E 6E 5C 4A 4A 37 37 25 13 13 80 80
4A 80 ED DB A4 DB FF DB A4 C9 B6 80 5C 80 6E 37
4A 6E 6E 5C 6E 80 92 92 B6 B6 B6 C9 B6 A4 A4 B6
92 80 80 92 80 6E 80 80 6E 80 80 80 6E 80 80 6E
5C 5C 5C 4A 37 25 25 13 13 25 80 5C 5C A4 FF C9
B6 ED FF C9 92 B6 92 80 5C 6E 5C 4A 4A 5C 6E 6E
80 92 A4 B6 B6 B6 C9 C9 A4 92 A4 92 80 80 80 80
6E 80 80 80 80 80 80 80 80 6E 6E 6E 5C 4A 4A 37
25 13 13 13 5C 80 37 80 DB FF 92 C9 FF ED 92 A4
C9 80 6E 5C 6E 4A 4A 4A 6E 6E 80 80 92 B6 B6 B6
B6 DB B6 A4 A4 B6 80 80 80 80 80 6E 80 80 80 80
80 80 80 6E 6E 5C 5C 4A 4A 37 37 13 13 25 80 5C
25 80 DB B6 80 ED FF DB 92 C9 C9 92 80 80 80 5CТак никто и не говорил что он чисто четырехбитный. Только по качеству.
Решил вспомнить программирование под Excel.
Вот файл с макросом для него. При открытии разрешить использовать макрос. Затем нажать кнопку конвертирования, выбрать исходный вавчик, затем для сохранения txt. Надо выбрать сущетсвующий файл txt иначе почему-то выбивает с ошибкой.
Макрос просто пакует 2 старшие тетрады соседних байтов в один. Без разбора форматов WAV.
Решил вспомнить программирование под Excel.
Вот файл с макросом для него. При открытии разрешить использовать макрос. Затем нажать кнопку конвертирования, выбрать исходный вавчик, затем для сохранения txt. Надо выбрать сущетсвующий файл txt иначе почему-то выбивает с ошибкой.
Макрос просто пакует 2 старшие тетрады соседних байтов в один. Без разбора форматов WAV.
- Вложения
-
- 4bit_excel.zip
- (12.51 КБ) 190 скачиваний
У меня есть программист, он прогу запилил. Она сама ВАВ вскрывает, отсекает служебное и пересчитываем 8бит в 4бит.




