Библиотека ESP8266Audio для ESP8266 и ESP32.

На примере с ESP8266 радио.

пользовательские блоки для работы с аудио/видео
Правила форума
Рекомендации по размещению блоков:
Автор блока создает подробное описание блока, отличие от подобных(если есть на данный момент).Сложные блоки очень желательно с примерами.
При выходе новых версий редактирует/дополняет свой первый пост с указанием даты, версии, причины.
В каждой теме обсуждается только выложенный автором блок - баги, возможность (или предложение) доработки и прочие хотелки.
Свои блоки, переработанные, с другими библиотеками, протоколами и т.д.- размещаем либо сами отдельно, либо обсуждаем и дорабатываем в форуме Разработка блоков.
Пользователи улучшив блок автора и проверив его работоспособность - могут обратиться к автору или модераторам с просьбой добавить их версию блока в первое сообщение темы.
aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#1

Сообщение aidar_i » 02.04.2019{, 20:01}

На примере с ESP8266 радио и ESP32 радио.
Обсуждения и вопросы по теме здесь.

Библиотека, убраны примеры для его облегчения:
ESP8266 lib.rar
(784.14 КБ) 496 скачиваний
Для работы с последними платами ЕСП8266 обновите эту библиотеку https://github.com/earlephilhower/ESP8266Audio
Сюда выложил последние пользовательские блоки (ПБ) по разным вариантам радио:
- использование только ESP8266 без дополнительных плат;
- с дополнительными платами РСМ5102;
- с внешней памятью SPIRAM;
- с дополнительными платами РСМ5102 и с внешней памятью SPIRAM вместе.
Блок пользователя:
ESP8266RADIO.ubl
(510.2 КБ) 359 скачиваний
Простой пример использования блоков и подключения дополнительной платы РСМ5102, и внешней памяти. Можно эти блоки вставлять в проекты приведенные на ссылке выше.
Все блоки в одном примере на разных платах. Включать только первую плату и плату выбранного варианта радио, остальные отключить.
Пример:
Пример ESP8266 WiFi RADIO.flp
(1.33 МБ) 435 скачиваний
P.S. Обнаружил, что при использовании дисплея LCD1602 происходит конфликт входа En радио и EN дисплея, заменил пока только во второй плате ПБ радио En на En_r. Пример ниже
Пример ESP8266 WiFi RADIO_1.flp
(1.32 МБ) 275 скачиваний
ПБ
Проигрывание файлов из SPIFFS.ubl
(121.57 КБ) 321 скачивание
Все проверено на железе и работает!

Попробовал проигрывание файлов MP3 из файловой системы ESP8266.
В архиве
-Папка pr1 скетч, скомпилированный с приложенного примера для наглядности, там находится папка data с файлом MP3.
-ESP8266FS инструмент, интегрируемый в IDE Arduino.
-Инструкция прошивки плат.
-Пример.
-2 файла MP3.
SPIFFS.rar
(905.74 КБ) 373 скачивания
Обновленные ПБ выше. Пример и видео здесь

Для ESP32 выложил пример и библиотеки новые (работают библиотеки с обоими контроллерами) здесь.
Последний раз редактировалось aidar_i 06.03.2020{, 00:20}, всего редактировалось 11 раз.

neangel
Сержант
Сообщения: 138
Зарегистрирован: 10.01.2019{, 13:13}
Репутация: 1
Откуда: Москва
Имя: Игорь

Библиотека ESP8266Audio для ESP8266 и ESP32.

#41

Сообщение neangel » 04.06.2022{, 08:49}

Здравствуйте aidar_i

Пусть вы и правы но в последнее время и так все зашуганы правилами.
Можно же и так ...
Зашёл человек в вашу тему ... бац! ... и подобрал в ней себе SD карту для 8266
Которой изначально нет в флпрог.
viewtopic.php?f=68&t=7348&p=110789&hili ... B0#p110789

Со всем к вам уважением .. даже не знаю чтобы я делал без ваших блоков, aidar_i
А по сути просто нашёл повод ещё раз сказать вам - Спасибо!

Аватара пользователя
Phazz
Полковник
Сообщения: 2552
Зарегистрирован: 17.10.2016{, 15:38}
Репутация: 367
Откуда: Сургут
Имя: Анатолий

Библиотека ESP8266Audio для ESP8266 и ESP32.

#42

Сообщение Phazz » 04.06.2022{, 08:57}

Ну если каждый будет использовать рандомный топик вместо поиска. То форум превратится в свалку. А блок записи на SD можно взять из блоков для АВР

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#43

Сообщение aidar_i » 04.06.2022{, 10:32}

neangel писал(а):
04.06.2022{, 08:49}
все зашуганы правилами.
Никто не зашуган, правила на то и правила, чтобы выполнять! А не для того, чтобы нарушать, те не надо к ним относиться так, как мы иногда относимся к законам, хотя там последствия гораздо тяжелее :)
Моими блоками пользуйтесь на здоровье.

uim22
Рядовой
Сообщения: 4
Зарегистрирован: 10.01.2021{, 07:58}
Репутация: 0
Имя: ALEKSEI

Библиотека ESP8266Audio для ESP8266 и ESP32.

#44

Сообщение uim22 » 06.06.2022{, 04:58}

[/quote]
Попробуйте в скетче #include "SPIFFS.h" поднять выше на 3 строки после #include "esp_system.h".
[/quote]
Спасибо!
Это помогло, проект компилируется. В железе пока не опробовал.

SergeSM
Рядовой
Сообщения: 2
Зарегистрирован: 29.12.2021{, 12:31}
Репутация: 0
Имя: Сергей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#45

Сообщение SergeSM » 09.10.2023{, 13:13}

Здравствуйте,
FLProf 8.2.3 Win10 64
esp 8266 nodemcu v3
Библиотека ESP8266Audio-1.9.7 последняя из https://github.com/earlephilhower/ESP8266Audio
Не работает одновременно штатный WiFi клиент и Проигрывание файлов из SPIFFS
Если в проекте FLProg включен WiFi клиент звука при воспроизведении нет. И подключения к WIFi то же нет.
И ещё обнаружил, при первом включении обязательно нужно подать на вход start_pl единицу. Иначе постоянный ребут.
Пожалуйста помогите разобраться, в проекте нужна озвучка, но пока никак не получается.
Прикрепил тестовый проект
Вложения
Play MP3 from SPIFFS_TEST.flp
(383.9 КБ) 11 скачиваний
0.jpg

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#46

Сообщение aidar_i » 01.12.2023{, 20:46}

SergeSM писал(а):
09.10.2023{, 13:13}
Здравствуйте,
FLProf 8.2.3 Win10 64
esp 8266 nodemcu v3
Библиотека ESP8266Audio-1.9.7 последняя из https://github.com/earlephilhower/ESP8266Audio
Не работает одновременно штатный WiFi клиент и Проигрывание файлов из SPIFFS
Если в проекте FLProg включен WiFi клиент звука при воспроизведении нет. И подключения к WIFi то же нет.
Раньше не видел вопрос.
Во первых нужно плату с моим блоком включать по условию, IpConnect = true;
Во вторых, в моем блоке выключается WiFi: закомментируйте эту строку

Код: Выделить всё

  WiFi.mode(WIFI_OFF); 
Думаю, должен работать.

Отправлено спустя 8 минут 4 секунды:
SergeSM писал(а):
09.10.2023{, 13:13}
И ещё обнаружил, при первом включении обязательно нужно подать на вход start_pl единицу. Иначе постоянный ребут.
Попробуйте так сделать:
Play MP3 from SPIFFS_TEST1.flp
(374.05 КБ) 18 скачиваний

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#47

Сообщение aidar_i » 08.12.2023{, 10:29}

Развлекаюсь дальше: сделал проигрыватель МП3 файлов на этой библиотеке с СД карты. Файлы проигрываются последовательно.
Можно собрать использовав ESP32+SD , если добавить I2S модуль (РСМ5102) качество воспроизведения будет выше.
Можно воспроизводить прямо с выводов ESP32 или I2S модуля (например, PCM5102).
Я использовал TTGO TM ESP32 (MUSIK ALBUM), очень удобный для экспериментов, брал для Ка Радио (прошил и готово).
Пришлось создать для подключения кнопок модуля доп блок входов МК, тк в штатном описании ESP32 нет выводов 37,38,39.
СпойлерПоказать
T14 V1.0.jpg
Player SD ESP.flp
(565.14 КБ) 14 скачиваний
Так же научился смотреть видео файлы на этом модуле, звук видео проигрывается с помощью этой библиотеки, если интересно, переработаю и выложу.

SergeSM
Рядовой
Сообщения: 2
Зарегистрирован: 29.12.2021{, 12:31}
Репутация: 0
Имя: Сергей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#48

Сообщение SergeSM » 18.12.2023{, 09:56}

aidar_i писал(а):
01.12.2023{, 20:54}
Попробуйте так сделать:
Play MP3 from SPIFFS_TEST1.flp
В этом примере нет звука.
В терминале пишет

Код: Выделить всё

Sample MP3 playback begins...
MP3 done
А в моем примере когда есть звук

Код: Выделить всё

Sample MP3 playback begins...
ID3 callback for: eof = 'id3'
MP3 done

AstroGraf
Рядовой
Сообщения: 63
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 12
Откуда: Калининград
Имя: Алексей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#49

Сообщение AstroGraf » 26.03.2024{, 11:56}

Добрый день, aidar_i!
Сделал, все как Вы написали, но не могу загрузить музыкальный файл в память Wemos D1 mini. Получаю сообщение:

[SPIFFS] data : C:\Users\HP\AppData\Local\Temp\flprog\pr6\data
[SPIFFS] size : 2024
[SPIFFS] page : 256
[SPIFFS] block : 8192
/harpsi-cs.mp3
[SPIFFS] upload : C:\Users\HP\AppData\Local\Temp\arduino_build_444389/pr6.spiffs.bin
[SPIFFS] address : 0x200000
[SPIFFS] reset : --before default_reset --after hard_reset
[SPIFFS] port : COM3
[SPIFFS] speed : 921600
[SPIFFS] python : python.exe
[SPIFFS] uploader : c:\Program Files (x86)\FLProg\ideV8\portable\packages\esp8266\hardware\esp8266\3.1.2\tools\upload.py

usage: esptool [-h] [--chip {auto,esp8266,esp32,esp32s2,esp32s3beta2,esp32c3}]
[--port PORT] [--baud BAUD]
[--before {default_reset,no_reset,no_reset_no_sync}]
[--after {hard_reset,soft_reset,no_reset}] [--no-stub]
[--trace] [--override-vddsdio [{1.8V,1.9V,OFF}]]
[--connect-attempts CONNECT_ATTEMPTS]
{load_ram,dump_mem,read_mem,write_mem,write_flash,run,image_info,make_image,elf2image,read_mac,chip_id,flash_id,read_flash_status,write_flash_status,read_flash,verify_flash,erase_flash,erase_region,version,get_security_info}
...
esptool: error: unrecognized arguments: --end
SPIFFS Upload failed!

Перед этим вообще не получалось откомпилировать скетч, в итоге переустановил FlProg и библиотеки, скетч начал компилироваться.
Использую:
ESP8266FS-0.4.0 (другую версию не воспринимала IDE), попробовал 0.5.0, без изменений
ESP8266Audio-1.9.7
FlProg 8.2.3
Arduino IDE 1.8.19
Windows 10 64

Меня немного смущают пути к uploader в папку portable, хотя установлена полная версия. Это нормально?

Отправлено спустя 3 часа 50 минут 7 секунд:
Так, я разобрался, нашел еще в одном месте необновленный файл esp8266fs.jar
Нужна версия 0.5.0 от ноября 2019
Все заработало, но вот качество звука на Wemos D1 mini - ужасное, слышен постоянный треск. Можно ли что-то с этим сделать?
Причем музыка заканчивается и треск вместе с ней. Т.е. дело именно в ЦАП.

Отправлено спустя 25 минут 38 секунд:
Добавил в проект сервопривод - пошли ужасные наводки на динамик.
Можно ли использовать для вывода звука иной контакт, кроме RX? Неудобно каждый раз отключать при загрузке.

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#50

Сообщение aidar_i » 26.03.2024{, 18:19}

AstroGraf писал(а):
26.03.2024{, 16:12}
качество звука на Wemos D1 mini - ужасное, слышен постоянный треск.
У меня нормальное, может громкость слишком большая? Пройдите в Гитхаб в библиотеку, почитайте описание, там все написано, и про помехи тоже.
Используйте ЦАП на базе PCM5102, качество отменное.

AstroGraf
Рядовой
Сообщения: 63
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 12
Откуда: Калининград
Имя: Алексей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#51

Сообщение AstroGraf » 26.03.2024{, 19:11}

Вижу в описании такой текст, прошу помощи в переводе, т.к. не понятны ньюансы:
High pitched buzzing with the 1-T circuit
The 1-T amp can NOT drive any sort of amplified speaker. If there is a power or USB input to the speaker, or it has lights or Bluetooth or a battery, it can NOT be used with this circuit.

The 1T output is a binary signal at 0 or 5V, with nothing in between. When you connect to a 8ohm paper physical speaker directly, the speaker cone itself has inertia and acts as a low pass filter and averages the density of pulses in order to give a nice, analog output.

When you feed the 1T output to an amp you are alternatively grounding and overdriving the op-amp's input at a high frequency. That causes ringing and the opamp has a frequency response high enough to amplify the high frequency noise and you get that buzzing.

The same problem may happen with piezo speakers. They have a very high frequency response, normally, and have (almost) no inertia. So you hear the buzzing at high frequency.

1-Т - это усилитель на одном транзисторе? Его нельзя использовать т.к. как раз появится жужжание?
Не нашел ничего, что позволило бы понизить громкость. Она и так очень маленькая на 8Ом динамике от старого компьютера. Собрал усилитель на транзисторе BC337. Жужжит что с ним, что без него...

AstroGraf
Рядовой
Сообщения: 63
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 12
Откуда: Калининград
Имя: Алексей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#52

Сообщение AstroGraf » 27.03.2024{, 08:43}

Доброе утро, aidar_i!

Прошу помощи! Мне нужно было написать простую программу, которая по нажатию кнопки играла бы мелодию и крутила сервопривод (360) постоянного вращения определенное время. Но столкнулся с несколькими проблемами, и сейчас у меня вначале играет музыка (18 сек) и только потом начинает вращаться серва. Хотя если убираю блок проигрывания музыки, серва работает нормально. Также обнаружилась проблема, что блок TON не работает от нажатия кнопки и пришлось использовать TOF с инверсией.
Подозреваю что это все как-то может быть связано с музыкальным блоком, поэтому пишу в этой теме. Мелодию использую из Вашего примера.
Вложения
Play MP3 from SPIFFS_1 + servo.flp
(242.79 КБ) 5 скачиваний

Аватара пользователя
Imran
Сержант
Сообщения: 228
Зарегистрирован: 08.11.2017{, 20:53}
Репутация: 8
Имя: Имран

Библиотека ESP8266Audio для ESP8266 и ESP32.

#53

Сообщение Imran » 27.03.2024{, 22:44}

neangel писал(а):
04.06.2022{, 08:49}
Со всем к вам уважением .. даже не знаю чтобы я делал без ваших блоков, aidar_i
А по сути просто нашёл повод ещё раз сказать вам - Спасибо!
Это точно сказано :) Еше раз Спасибо aidar_i,

aidar_i
Полковник
Сообщения: 3120
Зарегистрирован: 24.12.2016{, 16:55}
Репутация: 674
Откуда: Уфа
Имя: Айдар
Контактная информация:

Библиотека ESP8266Audio для ESP8266 и ESP32.

#54

Сообщение aidar_i » 28.03.2024{, 16:24}

Imran писал(а):
27.03.2024{, 22:44}
neangel писал(а):
04.06.2022{, 08:49}
Со всем к вам уважением .. даже не знаю чтобы я делал без ваших блоков, aidar_i
А по сути просто нашёл повод ещё раз сказать вам - Спасибо!
Это точно сказано :) Еше раз Спасибо aidar_i,
Рад помочь.

Отправлено спустя 16 секунд:
AstroGraf писал(а):
27.03.2024{, 08:43}
Доброе утро, aidar_i!

Прошу помощи! Мне нужно было написать простую программу, которая по нажатию кнопки играла бы мелодию и крутила сервопривод (360) постоянного вращения определенное время. Но столкнулся с несколькими проблемами, и сейчас у меня вначале играет музыка (18 сек) и только потом начинает вращаться серва. Хотя если убираю блок проигрывания музыки, серва работает нормально. Также обнаружилась проблема, что блок TON не работает от нажатия кнопки и пришлось использовать TOF с инверсией.
Подозреваю что это все как-то может быть связано с музыкальным блоком, поэтому пишу в этой теме. Мелодию использую из Вашего примера.
Параллельная работа музыки и серво , скорее, не получится, примените мп3 плеер. Нужно попробовать на ESP32 на разных ядрах.

AstroGraf
Рядовой
Сообщения: 63
Зарегистрирован: 21.08.2018{, 19:05}
Репутация: 12
Откуда: Калининград
Имя: Алексей

Библиотека ESP8266Audio для ESP8266 и ESP32.

#55

Сообщение AstroGraf » 28.03.2024{, 16:28}

Спасибо! Так и подумал. Проект переделал под DFplayer

Ответить

Вернуться в «Звук и видео»