Оглавление:
- Шаг 1. Закупка
- Шаг 2: соберите оборудование
- Шаг 3. Присоедините к Pi и подключите динамики
- Шаг 4: Загрузите Raspbian Lite
- Шаг 5: настройте Pi
- Шаг 6. Используйте SSH для открытия сеанса на удаленном компьютере
- Шаг 7: установите Mopidy
- Шаг 8. Используйте Python Pip для установки других… Установок (расширений)
- Шаг 9. Настройте Mopidy как услугу
- Шаг 10: Добавьте свою музыку
- Шаг 11: Файл конфигурации звуковой карты - Asound.conf
- Шаг 12: Убедитесь, что мы используем правильный оверлей для Configure.txt в / boot
- Шаг 13: наслаждайтесь музыкой
- Шаг 14: Заключение
Видео: Аудио ЦАП-усилитель-стример Raspberry Pi: 14 шагов
2024 Автор: John Day | [email protected]. Последнее изменение: 2024-01-30 11:49
Измените устаревшую голосовую шапку Google AIY в специальное устройство для потоковой передачи стереозвука без головы.
Теперь, когда голосовым системам Google AIY приближается двухлетний возраст, вы, возможно, обнаружили, что новинка немного устарела. Или вам может быть интересно, имеет ли реклама в вашем браузере ближайший фестиваль эпохи Возрождения какое-либо отношение к заданному вами вопросу о том, где вы можете найти хорошие скидки на кроссовки для бега под броней.
Если у вас уже есть такой, этот проект покажет вам, как использовать существующий голосовой комплект Google AIY и использовать его в качестве специального аудиостримера без наушников. Если у вас еще нет комплекта и вы живете рядом с микроцентром; вам повезло - их еще много, и я сомневаюсь, что они станут дешевле, чем текущая цена в 5 долларов. (на самом деле, по состоянию на июль 2019 года они составляют 3 доллара).
Этот проект посвящен аудио и никак не связан с искусственным интеллектом. Мы будем работать над полностью отдельной операционной системой, хранящейся на отдельной карте micro sd, что позволит вам сохранить все функции AI нетронутыми. Кроме того, мы улучшим пользовательский опыт, введя стереозвук (за несколько долларов больше), поскольку мы создадим масштабируемое устройство потоковой передачи звука. Наконец, по завершении этого проекта мы оставим голосовую шапку в состоянии, готовом к будущему расширению. Ограничения расширения будут ограничены только нашим творчеством.
Шаг 1. Закупка
Я напишу это руководство с той точки зрения, что у вас еще нет набора Google Voice. Если у вас уже есть установка голосового набора - необходимые дополнительные элементы отмечены * ниже. Кроме того, последнее предложение Raspberry Pi (Pi 3 A +) идеально подходит для этого проекта в зависимости от его форм-фактора, и я все равно настоятельно рекомендую купить его. Однако любой Pi должен работать, если он будет вмещать шляпу голосового набора и GPIO.
Ингредиенты:
- Raspberry Pi (рекомендуется Pi 3 A +)
- 5,25 В, 2,4 А, источник питания micro usb
- Карта Micro SD (в зависимости от размера вашей музыкальной коллекции должно хватить 16 ГБ)
- Max98357A ЦАП и усилитель (от Adafruit) *
- Динамики). В комплекте идет один, но для стерео нам понадобится дополнительный динамик. (также Adafruit)
- Набор Google AIY Voice
- Заголовок - однополосный *
- Провод динамика *
Необходимые инструменты: паяльник, припой, отвертка Philips размером 00 или 000. Инструмент для зачистки проводов, малярная или малярная лента для временной фиксации разъема во время пайки, переходник с USB на micro SD.
Шаг 2: соберите оборудование
Из коробки голосовая шляпа поступает в монорежиме. К счастью, инженеры Google разработали плату, позволяющую перейти на стерео, просто добавив еще одну плату Max98357a в качестве еще одной шляпы. Нам даже коробку обрисовали.
Вы угадали: шапку будем делать на шляпе. Аппаратное обеспечение поверх Аппаратного обеспечения уже на вершине.
Используя заголовок, предоставленный набором микросхем Adafruit Max98357a, мы начинаем с припайки 7-контактного разъема к голосовой шляпе прямо под словами «AIY projects Voice Hat». Кусок малярной ленты, прикрепленный к более длинным штыревым контактам на лицевой стороне платы, может быть полезен для предотвращения соскальзывания разъемов с места, поскольку на этом этапе пайки мы будем работать с платой вверх ногами.
Также припаяйте два контакта внутри коробки с белой рамкой к головке голосового управления, где будет находиться синяя плата max98357a.
НЕ ПРИПИВАЙТЕ РАЗЪЕМ ДИНАМИКА НА ПЛАТУ MAX98357a!
Вместо этого подключите клеммы динамиков к голосовой шляпе, выровняв их прямо под тем местом, где только что были припаяны два полюса. Подключение левого динамика и подключение правого динамика должны быть выровнены вместе, в один ряд из четырех клемм.
Переверните доску лицевой стороной вверх.
Припаяйте перемычку с надписью «JP4», оставив каплю припоя на перемычке. Не забывайте эту часть, иначе у нас не будет стерео!
Осторожно прикрепите синюю плату max98357a к длинным штырям, выступающим из голосовой шляпы. Это было немного сложно, поэтому постарайтесь припаять контакты как можно перпендикулярно плате. С некоторыми незначительными перебоями с двухштырьковой головкой мне удалось добиться этого с минимальными усилиями.
Завершите припайку штыревых контактов к синей микросхеме max98357a - и семиконтактный, и двухконтактный разъем должны надежно удерживать max98357a на месте.
Готово с пайкой!
Шаг 3. Присоедините к Pi и подключите динамики
Используя две нейлоновые прокладки, входящие в комплект, аккуратно соедините женский голосовой набор с мужскими заголовками на Raspberry Pi. Нейлоновые прокладки должны защелкнуться, обеспечивая надежную посадку в противоположных углах жатки.
С помощью крошечной отвертки с головкой Philips (000 или 00) открутите винты на клемме динамика настолько, чтобы провод динамика мог войти в компрессионные отверстия. Вы не должны выкручивать винты, но достаточно открутите их там, где они кажутся ослабленными.
Вставьте провод динамика малого диаметра в отверстие и затяните винты, чтобы надежно закрепить провод динамика.
Я обнаружил, что этот шаг был самой сложной задачей всего проекта - я не мог найти достаточно маленькую отвертку, или мой хлипкий провод динамика был слишком тонким, чтобы поглотить сжатие винта, и скорее сломался, чем держался. Я сделал модификацию, построив «наконечники» или провода меньшего размера, которые были достаточно твердыми, чтобы выдерживать сжатие, и достаточно длинными, чтобы их можно было припаять к оголенным концам провода динамика. Уродливо, да, но эффективно.
Готово с оборудованием!
Шаг 4: Загрузите Raspbian Lite
Многие из вас уже хорошо знакомы с процессом загрузки и записи изображений на SD-карту, и последующие шаги немного выходят за рамки этого проекта. Я на всякий случай выделю следующие шаги, но если вы все еще застряли, есть масса ресурсов, которые могут вам помочь.
Последнее изменение: июнь 2020 г. для загрузки Buster Lite.
· Загрузите и установите Etcher от Balena Software
· Загрузите последнюю версию ОС Raspbian Lite с сайта raspberrypi.org
· Используя Etcher, запишите образ Raspbian на SD-карту
· После завершения, если не используется pi-ноль w - перенесите недавно созданную SD-карту на нашу Raspberry Pi. Если вы используете пи-ноль w, нам нужно внести некоторые изменения в файл WPA_Supplicant.conf в загрузочном разделе, чтобы настроить ваш Wi-Fi.
Шаг 5: настройте Pi
С нашим недавно созданным изображением давайте включим пи. Но сначала давайте позаимствуем монитор и клавиатуру, чтобы облегчить настройку. Вставьте карту micro sd и подсоедините кабель для зарядки micro usb. Если повезет, зеленый светодиод несколько раз мигнет во время загрузки. Первая загрузка может занять несколько минут, но через 5 минут мы должны быть готовы к работе над нашей конфигурацией. «Lite» Raspbian не имеет рабочего стола.
В командной строке: войдите как pi, пароль «raspberry».
· Войдите в панель конфигурации, набрав «sudo raspi-config» в командной строке.
· Немедленно измените свой пароль.
· Настройте Wi-Fi, используя параметры сети на панели конфигурации
· Измените параметры локализации и установите часовой пояс
· Включите SSH, используя опцию панели интерфейсов
· Запустите «sudo apt-get update», чтобы обновить программное обеспечение до последней версии.
Нам понадобится IP-адрес Pi. Я рекомендую приложение под названием «FING», которое можно загрузить на любое устройство Android, и в нем будут перечислены все устройства, подключенные к вашей сети. Мы будем искать устройство под названием «raspberrypi». Запишите IP-адрес.
С этого момента нам больше не потребуется монитор или клавиатура. Все дальнейшие настройки будут выполняться с использованием командных строк через сеанс SSH.
Шаг 6. Используйте SSH для открытия сеанса на удаленном компьютере
Использовать SSH довольно просто. Откройте окно терминала с любого устройства в вашей сети и введите команду
ssh pi @ myipaddress
Замените «myipaddress» числовыми значениями, полученными с помощью fing.
Впервые вас могут встретить страшное предупреждение о том, что вас нет в списке приглашенных, однако есть предложение, которое должно гласить: «Чтобы удалить это…», скопируйте длинную строку символов и вставьте ее в команду. подсказка, нажмите ввод. Затем с помощью клавиши со стрелкой вверх повторите команду ssh pi @ myipaddress, выберите «Да» и введите свой пароль. Поздравляем! Теперь вы подключены к своему устройству, если видите командную строку «pi @ raspberrypi: ~ $».
Шаг 7: установите Mopidy
Мы собираемся установить Mopidy в качестве нашего музыкального сервера. Здесь много вариантов, но я покажу вам, как установить расширение под названием «Music Box», которое позволит вам управлять своей музыкой через веб-интерфейс, а не из командной строки.
Что такое Mopidy? Согласно веб-сайту, Mopidy - это набор громких слов, из-за которых я сейчас чувствую себя довольно неполноценным, но давайте просто скажем, что Mopidy - это платформа, с которой будет играть наша музыка. Это будет музыкальный сервер, MPD (демон музыкального проигрывателя) и веб-сервер. Надстройка PiMusic Box предложит веб-сайт, на котором мы можем переходить и управлять Mopidy. Я подумал, что, поскольку он хорошо работает с множеством популярных сервисов, таких как Spotify или Google Play Music, он подойдет для этого руководства. Плюс это круто.
Ниже приведены инструкции, беззастенчиво скопированные с Mopidy для установки из командной строки:
1. Добавьте ключ GPG архива:
sudo wget -q -O - https://apt.mopidy.com/mopidy.gpg | sudo apt-key добавить -
2. Добавьте репозиторий APT в источники пакетов:
sudo wget -q -O /etc/apt/sources.list.d/mopidy.list
Наконец, установите mopidy:
sudo apt-get update
sudo apt-get install mopidy
Конец бессовестной копии.
Шаг 8. Используйте Python Pip для установки других… Установок (расширений)
Мы только что установили простой ванильный Mopidy, но это только начало. Расширения будут нашими строительными блоками для добавления настроек к нашей простой ванильной Mopidy. Поскольку большинство расширений, которые мы добавим к базовому mopidy, написаны на python, мы будем использовать эквивалент apt, специфичный для python.
Прежде чем мы начнем использовать pip, давайте сначала убедитесь, что у нас есть все плагины gstreamer, использующие apt:
sudo apt install
python3-gst-1.0 / gir1.2-gstreamer-1.0 / gir1.2-gst-plugins-base-1.0 / gstreamer1.0-plugins-good / gstreamer1.0-plugins-ugly / gstreamer1.0-plugins-bad / gstreamer1.0-инструменты
Установка может занять несколько минут. Без Gstreamer вы не сможете транслировать музыку.
И теперь мы можем установить python pip:
sudo apt установить необходимый для сборки python3-dev python3-pip
Теперь мы можем использовать pip, чтобы добавить больше самородков. Pip - это инструмент Python, похожий на apt, но я считаю, что он работает немного быстрее, чем apt. Немного медленнее уходит с блока, но срабатывает довольно быстро.
Ниже приведены четыре, с которых можно начать:
Веб-интерфейс. Давайте использовать Iris, но при желании вы можете попробовать вместо него mopidy-musicbox-webclient:
sudo python3 -m pip установить Mopidy-Iris
Хаб интернет-радиостанций с 30 каналами:
sudo python3 -m pip установить mopidy-somafm
Еще один центр интернет-радио с еще большим количеством каналов:
sudo python3 -m pip установить mopidy-TuneIn
И еще один интерфейс для мобильного устройства. Radio Stations и Iris плохо сочетаются друг с другом, но на мобильном телефоне есть все виды интернет-станций, которые можно слушать:
sudo python3 -m pip установить Mopidy-Mobile
После завершения вы сможете получить доступ к Music Box, используя:
myipaddress: 6680 / iris / -или- https:// localhost: 6680 / musicbox_webclient
У нас по-прежнему ничего не будет из динамиков, если вы попытаетесь воспроизвести музыку.
Список других функций и расширений: Помогите себе:
sudo pip поиск mopidy
Отсюда вы можете продолжить добавлять расширения по своему усмотрению.
У меня есть образец файла конфигурации mopidy. Не стесняйтесь использовать содержимое в /etc/mopidy/mopidy.conf
судо нано /etc/mopidy/mopidy.conf
Шаг 9. Настройте Mopidy как услугу
Поскольку мы захотим запустить mopidy при запуске, две команды позволят запускать mopidy при загрузке:
sudo systemctl включить mopidy
sudo dpkg-reconfigure mopidy
Перезагрузитесь, а затем запустите
sudo systemctl status mopidy - l
чтобы проверить свой статус. Вы должны увидеть зеленый индикатор. У Mopidy есть очень полезный сайт поддержки, на котором можно найти дополнительные параметры конфигурации. Посетите сайт документации Mopidy для получения более подробной информации.
Шаг 10: Добавьте свою музыку
По умолчанию mopidy хочет хранить локальную музыку в папке в / var / lib / mopidy / media. Скопируйте туда свою музыкальную коллекцию. Я считаю, что проще всего просто удалить sd-карту из pi (после безопасного выключения) и, используя адаптер micro sd-usb, подключить адаптер к вашему устройству хранения и скопировать / вставить туда. (это может занять некоторое время, в зависимости от размера вашей коллекции). После завершения верните SD-карту в пи, загрузите ее, подключите повторно и введите:
sudo mopidyctl локальное сканирование
Это добавит вашу музыку в локальную медиатеку в Music Box. Вы можете заметить, что файлы.wma не распознаются как аудио, а файлы.ogg пропускаются во время сканирования. Однако с файлами Mp3 не должно быть проблем.
Шаг 11: Файл конфигурации звуковой карты - Asound.conf
У вас еще не должно быть ничего в /etc/asound.conf, но если вы это сделаете, замените содержимое указанным ниже или создайте его, используя:
sudo nano /etc/asound.conf
и вставьте:
параметры snd_rpi_googlehat_soundcard index = 0
pcm.softvol {type softvol slave.pcm dmix control {name Master card 0}} pcm.! default {type asym plays.pcm "plug: softvol"} ctl.! default {type hw card 0}
ctrl-x и Y, чтобы сохранить вышеуказанное как новый файл asound.conf.
Шаг 12: Убедитесь, что мы используем правильный оверлей для Configure.txt в / boot
тип
судо нано /boot/config.txt
Последние несколько строк должны выглядеть примерно так, как показано ниже. Мы хотим убедиться, что стандартный звук закомментирован вместе с любым предыдущим оверлеем, таким как мой цап hifiberry, при реализации наложения шляпы Google Voice. Наконец, мы хотим проинструктировать pi использовать отображение i2s. Индикатор # указывает системе игнорировать линию.
# Включить аудио (загружает snd_bcm2835)
# dtparam = audio = on # dtoverlay = hifiberry-dac dtoverlay = googlevoicehat-soundcard dtoverlay = i2s-mmap
перезагрузитесь, если все выглядит так, как указано выше. Подождите несколько минут, откройте в браузере URL-адрес музыкальной шкатулки и включите музыку.
Шаг 13: наслаждайтесь музыкой
Если вы слушаете стерео добро, миссия выполнена!
Одна из замечательных особенностей использования Raspberry Pi в качестве автономного музыкального сервера, подключенного к Wi-Fi, заключается в том, что он работает, не занимая много ресурсов. Да, мы выкачиваем всего 3 Вт на канал, но этого, вероятно, достаточно для прослушивания с близкого расстояния. Аккумулятор вашего телефона скажет вам спасибо.
Также есть очень важный экологический фактор - мы потребляем всего 5,25 вольт энергии. И по сравнению с Bluetooth, мы можем настроить радиопоток и не быть привязанным к 30-футовому диапазону Bluetooth. Что касается нашего телефона, мы можем принимать вызовы, играть в игры и немного более свободно перемещаться, не прерывая поток музыки. Мы только поцарапали поверхность. Существует множество доступных расширений mopidy для изучения, и mopidy имеет растущую базу разработчиков, поскольку это открытый исходный код. Я позволю вам самостоятельно изучить интересующие вас функции.
Шаг 14: Заключение
Одна из самых выдающихся особенностей этого проекта заключается в том, что мы не ограничиваем наш пи, блокируя доступ к GPIO. Это позволяет нам получить доступ ко многим дополнительным опциям, потому что голосовая шляпа была спроектирована так хорошо. Например, моим следующим проектом будет добавление кнопочного переключателя мгновенного действия в качестве кнопки выключения. Это должно быть легко, и я уже знаю, где должны приземлиться штифты: им ничто не препятствует. Оттуда? Что ж, в этом проекте мы полностью проигнорировали микрофон - может быть, пи-караоке? Возможно, светодиодное световое шоу или добавление мотора для вращающегося музыкального автомата? Все пины по-прежнему доступны и доступны. Возникает вопрос: а почему бы и нет? И на всякий случай, если вы захотите вернуться к ИИ, просто вставьте старую SD-карту и пусть Google отвечает в стереорежиме.
Рекомендуемые:
Как сделать и протестировать лучший ЦАП с ESP32: 5 шагов
Как сделать и протестировать лучший ЦАП с ESP32: ESP32 имеет 2 8-битных цифро-аналоговых преобразователя (ЦАП). Эти ЦАП позволяют создавать произвольные напряжения в определенном диапазоне (0–3,3 В) с разрешением 8 бит. В этом руководстве я покажу вам, как построить ЦАП и охарактеризовать его параметры
ЦАП источника тока AD5420 и Arduino: 4 шага (с изображениями)
ЦАП с источником тока AD5420 и Arduino: Здравствуйте, в этой статье я хотел бы поделиться своим опытом работы с цифро-аналоговым преобразователем тока AD5420, который имеет следующие характеристики: разрешение и монотонность 16 бит. Диапазон выходного тока: от 4 мА до 20 мА. мА, от 0 мА до 20 мА или 0 мА t
ESP32: знаете ли вы, что такое ЦАП?: 7 шагов
ESP32: Знаете ли вы, что такое ЦАП? Сегодня мы поговорим о двух вопросах. Первый - это ЦАП (цифро-аналоговый преобразователь). Считаю это важным, потому что через него, например, мы делаем аудиовыход в ESP32. Вторая проблема, которую мы собираемся рассмотреть сегодня, - это осцил
Сделай сам: аудио ЦАП - DSD, MP3 и радио Volumio Player: 3 шага
Сделай сам: Аудио ЦАП - DSD, MP3 и радио Volumio Player: Тестирование DSD: DSD64, DSD128 & DSD256
Самодельный качественный ЦАП - это просто: 24 шага
Самодельный качественный ЦАП - это просто: все началось с того, что я решил улучшить свою аудиосистему