[PL] DSP 2017 – Ocean dźwięku

Czy kiedykolwiek zastanawialiście się jaki kolor ma Twoja ulubiona piosenka? Jak wygląda Twój głos kiedy ją sobie nucisz pod nosem? Z lekcji fizyki możecie pamiętać, że dźwięk jest falą, która rozchodzi się w powietrzu, a że takich fal jest wokół nas sporo, możemy powiedzieć, że jesteśmy zanurzeni w oceanie – oceanie dźwięku.

Okej, dość tego enigmatycznego wstępu, przejdźmy do konkretów! Ocean dźwięku to mój pomysł na tegoroczną edycję konkursu Daj się poznać. O co w tym wszystkim chodzi? Przez najbliższe 10 tygodni, będę tu opisywać swoją pracę nad projektem (minimum dwa posty tygodniowo), więc będzie się działo! Na tym blogu znajdziecie również projekt Pawła – Aggregator. W skrócie: ekipa Polarbits zamienia się w full time blogerów i przejmuje internet 😉

Kim jestem?

Cześć! Z tej strony Maciek Korsan i jeśli wierzyć mojej biografii na twitterze to jestem 29-letnim frontend developerem z głową pełną pomysłów oraz właścicielem Sokoła Millenium (na razie z Lego…). Na codzień współtworzę białostocką firmę polarbits (na której to blogu jesteś właśnie gościem), po godzinach udzielam się w lokalnych społecznościach programistycznych jako fotograf oraz czasem występuję w roli prelegenta.

Czym jest Ocean dźwięku?

Mój projekt będzie analizować w czasie rzeczywistym dźwięk z mikrofonu i wyświetlać odpowiednią wizualizację za pomocą projektora. Oprócz analizy wysokości dźwięku chciałbym w swoim programie wykorzystać algorytm wykrywania emocji, dzięki czemu otrzymany wynik będzie bardziej atrakcyjny. Możliwe, że brzmi to dość banalnie, jednak moje przeczucie i pierwszy research podpowiadają mi, że szykuję się niezła przeprawa. Całość mam zamiar oprzeć na początku o Pythona oraz OpenGL. Maszyną docelową ma być Raspberry Pi, ale na ten moment nie wiem, czy wystarczy mojej płytce wystarczająco mocy obliczeniowej, więc zacznę budowanie na swoim sześcioletnim macbooku pro 😉

Plan działania

Wychodzę z założenia, że każdy projekt warto dobrze zaplanować. Poniżej znajdziecie mój wstępny plan działania na najbliższe tygodnie.

  1. Szkielet aplikacji
  2. Wyświetlanie obrazu za pomocą OpenGL (kolory)
  3. Dynamiczne generowanie brył w OpenGL
  4. Analiza dźwięku w Pythonie
  5. Połączenie dźwięku z obrazem
  6. Implementacja algorytmu wykrywającego emocję (np. EmoVoice)
  7. Stworzenie atrakcyjnej wizualizacji
  8. Próba przeniesienia programu na Raspberry Pi
  9. Serwo-generator fal *
  10. Budowa namiotu oraz stworzenie wideo *

Trzymajcie kciuki – będzie się działo!




Having a nice project to code?

pawel@polarbits.co // +48 606 115 330