Страница 1 из 3
импорт аудиофайла в МК
Добавлено: Чт авг 07, 2014 22:47:47
uwrtey
Как импортировать небольшой аудио_файл во флешь или EEPROM память микроконтроллера.
Предполагаю использовать Мегу8 или 328.
Я так понимаю его сначала нужно оцифровать до примитивного уровня?
Можно конечно записать на флешку, а потом воспроизвести с помощью МК, но тут задача немного иная..
Каким образом можно оцифровать ?
Re: импорт аудиофайла в МК
Добавлено: Чт авг 07, 2014 23:07:14
ploop
Оцифровать цифровую информацию... Шикарно!

Re: импорт аудиофайла в МК
Добавлено: Чт авг 07, 2014 23:32:51
uwrtey
uwrtey писал(а):оцифровать до примитивного уровня?
я имел в виду что превратить файл в двоичный код. ( пишу я на Асме. )
Да и файл изначально нужно записать...
Хотя я сейчас думаю, а может его в компьютер записать не с помощью микрофона, а с помощью MAX232 и терминалки???
Я хочу размножить брелоки от радиоворот в гараже...
Re: импорт аудиофайла в МК
Добавлено: Чт авг 07, 2014 23:36:52
SmarTrunk
Имелось в виду, что если файл - то он уже оцифрован. И если он WAW (т.е. сырое аудио без сжатия), то это уже почти то, что нужно, только с какой-то служебной информацией в начале файла. И этот файл можно писать во флеш МК, или (если большой), то на SD- (или какую нибудь)- карту флеш-памяти, подключать ее к МК.
Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 00:58:12
pcb
Курите PCM
Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 11:26:17
uwrtey
SmarTrunk писал(а): И этот файл можно писать во флеш МК, или (если большой)
как произвести запись?
PCM?
Может пнете куда ни-будь? Почитать и примеры посмотреть..
Загуглить что-то мне так и не удалось.
Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 11:46:39
ploop
как произвести запись?
Да прилинкуйте к коду отдельным текстовым файлом, компилятор соберёт потом всё в кучу, так и запишите.
Текстовик с данными создать скриптом, чтобы такого вида был:
Код: Выделить всё
.db 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 2, 2, 2, 2, 2, 3
.db 3, 3, 3, 3, 4, 4, 4, 4, 4, 5, 5, 5, 5, 5, 6, 6
.db 6, 6, 6, 7, 7, 7, 7, 7, 8, 8, 8, 8, 8, 9, 9, 9
.db 9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 12, 12, 12, 12, 13, 13
.db 13, 13, 14, 14, 14, 14, 15, 15, 15, 15, 16, 16, 16, 16, 17, 17
... и тд
Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 21:08:57
zero648
Или прикрепить отдельным файлом
Код: Выделить всё
...
Logon_Sound:
.include "Logon_Sound_7.asm"
Critical_Stop:
.include "Militseyskaya_kryakalka1.asm"
Navigation_Start:
.include "Navigation_Start_7.asm"
...
"Logon_Sound_7.asm"
.db 0x3E,0x13 ; Длина массива
.db 0x81,0x83,0x84,0x84
.db 0x7E,0x7A,0x77,0x7B,0x81,0x84,0x85,0x84,0x80,0x7C,0x79,0x79,0x7C,0x82,0x86,0x88
.db 0x87,0x83,0x7C,0x79,0x7B,0x7F,0x84,0x86,0x87,0x86,0x83,0x7C,0x76,0x76,0x78,0x7C
...
...
.db 0x7F,0x7D,0x7D,0x7E,0x82,0x84,0x83,0x82,0x81,0x81,0x83,0x84,0x83,0x7F,0x7C,0x7B
.db 0x7D,0x7F,0x7F,0x7E,0x7E,0x7F,0x81,0x82,0x83,0x80
Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 22:08:30
ploop
ploop писал(а):Да прилинкуйте к коду отдельным текстовым файлом
zero648 писал(а):Или прикрепить отдельным файлом

Re: импорт аудиофайла в МК
Добавлено: Пт авг 08, 2014 22:38:11
zero648
Re: импорт аудиофайла в МК
Добавлено: Сб авг 09, 2014 13:42:57
uwrtey
Текстовый файл то где взять?
Wav открыть с помощью блокнота ?
Re: импорт аудиофайла в МК
Добавлено: Сб авг 09, 2014 16:09:56
Леонид Иванович
В звуковом редакторе для уменьшения объема сначала нужно выбрать минимально подходящую частоту дискретизации и разрядность (прослушать, что получилось, можно на компьютере). Я выбирал 32 кГц 8 бит MONO. Затем сохранить в формате RAW (например, у Sound Forge есть такая возможность). Затем утилитой hex2text (присоединил) конвертировать файл в текстовый. В программе делал так:
Код: Выделить всё
const __flash char Sound[]={
#include "Sound32_8.dat"
};
//генерация звука с помощью PWM на выводе OC2:
#pragma vector = TIMER2_OVF_vect
__interrupt void Play(void)
{
if(Pointer < TableSize)
{
OCR2 = Sound[Pointer];
Pointer++;
}
}
Re: импорт аудиофайла в МК
Добавлено: Сб авг 09, 2014 17:40:20
uwrtey
Спасибо, Леонид Иванович. Буду пробовать..
Re: импорт аудиофайла в МК
Добавлено: Сб авг 09, 2014 20:09:11
ploop
uwrtey писал(а):Текстовый файл то где взять?
Вон даже утилита есть. А так скрипт написать дело 15 минут.
Re: импорт аудиофайла в МК
Добавлено: Вс авг 10, 2014 15:23:20
mrFox
кстати насчет ADPCM - что нашел
http://we.easyelectronics.ru/Soft/szhat ... adpcm.html
краткое описание, асемблерная процедура декодирование (100 тактов на сэмпл),
утилита конвертирования WAV в бинарный ADPCM (правда только 44кГц/стерео)
на 1МГц можно выводить звук 8кГц/моно, правда впритык
для себя в утилиту добавил вывод в С массив + любая частота + моно
можко сделать и вывод в асемблер
Re: импорт аудиофайла в МК
Добавлено: Сб июл 18, 2015 00:47:56
uwrtey
Не могу разобраться как пользоваться hex2text.
1) сначала я записываю аудиофайл
2) затем сжимаю его до моно, 8 бит, 32 кГц
3) затем сохраняю его как RAW файл
я если честно первый раз слышу, что аудио можно так сохранить - я думал токо фотки ( фотик у меня так сохраняет )
ну дык вот - RAW файл сохраняю ( можно 8 бит можно 16 бит - как правильно ? )
4) далее нужно RAW файл конвертнуть в TXT с помощью утилиты hex2text
вот 4 пункт мне не удается сделать - непойму почему...
открывается окно командной строки с сообщением "нажмите любую клавишу для продолжения" и все...
Если я открою RAW фал с помощью блокнота, то вижу вместо HEX - каракули - скорее всего это юникод ( UTF-8 ) или что то подобное ( там куча кирилицы )
Беру эти каракули и перевожу с помощью онлайн утилиты в HEX - получаю текст с 16ти ричной кодировкой.
Вот теперь мне нужно понять правильно ли я делаю ( тоесть, утилита Hex2text должна делать то-же самое или она конвертирует как то по другому.. ???? )
Ну и нужно понять какого черта HEX2TXT не работает??? ( У меня WIN7 )
Вон даже утилита есть. А так скрипт написать дело 15 минут.
Скрипт ??? Какой еще скрипт ?
Это .vbs что ли ???? Да куда мне...
Тут видите, очень много зависит от возраста, а если быть тонее от года рождения.
Те кто раньше родился застали и DOS и коммандную строку.
Я вырос отношусь к тому поколению, которое DELPHI юзает.
Это не оправдание, конечно, но, увы, знаний в этой области у меня не столько, сколько хотелось-бы...
А сейчас уже времени не хватает - нужно работать...
Re: импорт аудиофайла в МК
Добавлено: Сб июл 18, 2015 12:56:36
smacorp
uwrtey писал(а):сейчас уже времени не хватает - нужно работать...
Пару месяцев назад уже спрашивали о такой конвертации. Вот свеженаписаная утилита для этого - полистайте тему -
http://radiokot.ru/forum/viewtopic.php? ... 4#p2378354
Re: импорт аудиофайла в МК
Добавлено: Сб июл 18, 2015 13:48:21
uwrtey
Спасибо.
Подскажите мне пожалуйста - правильно ли я понимаю алгоритм действий:
1) сначала я записываю аудиофайл
2) затем сжимаю его до моно, 8 бит, 32 кГц
3) затем сохраняю его как RAW файл
4) далее нужно RAW файл конвертнуть в TXT, который будет содержать HEX Или BIN в чистом виде
по идее я могу RAW открыть блокнотом, но при этом увижу каракули.
Каракули эти - это кодировка ASKII ( а скорее всего UTF-8 )
конвертирую эти каракули а любом конвертере ASCII to HEX
и сохраняю в блокнотике получившийся hex
правильно? или открывать RAW блокнотом лишено смысла ???
Перечитываю ту ветку, лихо Вы там сопливым носы утираете.. Гыы
П.С.
Качнул программку BinToText, но она тоже почему то не запускается.
У меня Win7 x86
вот скриншотом поймал
ППС
Всё, кажется разобрался.
Создал в папке файл.bat
с текстом:
Start BinToTxt (имя файла).bin a
Re: импорт аудиофайла в МК
Добавлено: Сб июл 18, 2015 19:19:08
smacorp
uwrtey писал(а):или открывать RAW блокнотом лишено смысла ???
Да, лишено полностью.
uwrtey писал(а):Создал в папке файл.bat с текстом: Start BinToTxt (имя файла).bin a
Команда start лишняя, будет работать и без неё. И символ "а" тоже не нужен, он просто игнорируется.
Собственно и bat тоже лишний - запускается в командной строке (Пуск -> Программы -> Стандартные -> Командная строка): BinToTxt.exe входной_файл
Re: импорт аудиофайла в МК
Добавлено: Сб июл 18, 2015 21:21:09
uwrtey
Да, лишено полностью.
Если не сложно, то объясните пожалуйста - почему?