REKLAMA

Symfonia kodu

Pewną ciekawą prawidłowością, którą kiedyś zauważyłem, jest fakt, iż programiści-pasjonaci wyjątkowo często przejawiają również uzdolnienia muzyczne. Wielu spośród moich znajomych po fachu gra na jakimś instrumencie, współtworzy zespół muzyczny lub – na przykład – zajmuje się restaurowaniem starych gitar. Na pierwszy rzut oka mogłoby się wydawać, że programowanie i muzyka to dziedziny bardzo odległe, a jednak okazuje się, że pięciolinią rządzą wyjątkowo ścisłe prawa i również w tym świecie programista może kreatywnie skorzystać ze swoich umiejętności. To nie będzie kolejny artykuł przekazujący suchą, teoretyczną wiedzę. Chcę opowiedzieć o pewnej przygodzie, której akcja rozegrała się zarówno wewnątrz środowiska programistycznego, jak i na pięciolinii.

(...)Każdy utwór muzyczny jest – z perspektywy programisty – dźwiękiem. Aby móc go przetwarzać, musimy go wczytać i przechować w postaci dla nas zrozumiałej. Wróćmy na chwilę pamięcią do lat licealnych i przypomnijmy sobie trochę wiedzy z zakresu fizyki. Dźwięk jest falą akustyczną rozchodzącą się w ośrodku (na przykład w powietrzu, ale również w wodzie lub nawet w ciele stałym) w postaci lokalnych, krótkotrwałych zmian gęstości lub ciśnienia. Gdybyśmy umieścili na drodze tej fali czujnik ciśnienia, moglibyśmy zmierzyć i zapisać te zmiany w postaci wartości liczbowych(...).

Zagadnienia poruszane w tym artykule:

  • Generator tonów;
  • Rozpoznawanie wzorca;
  • Częstotliwości tonów;
  • Analiza częstotliwości;
  • Transformata Fouriera;
  • Rozpoznawanie tonów;

Artykuł pochodzi z miesięcznika "Programista" nr 06/2015 (37). Spis treści całego wydania: http://programistamag.pl/programista-6-2015-37/

Autorem artykułu jest Wojciech Sura, który programuje od przeszło dziesięciu lat w Delphi, C++ i C#, prowadząc również prywatne projekty. Obecnie pracuje w polskiej firmie PGS Software S.A., zajmującej się tworzeniem oprogramowania i aplikacji mobilnych dla klientów z całego świata.

Zamów w prenumeracie: >>formularze zamówienia<<

symonia