Wpis z mikrobloga

@Ostah: zapisuje 44100 floatów na sekunde (z przedziału -1 do 1) w paczkach po 2048 (bufor). Jeśli fala A w pozycji 1234 ma wartosc 0.902134234, a fala B w tym samym czasie ma 0.666666666 to daje mi sume ponad 1?
  • Odpowiedz
@denwood: hmm tak strzelam ale gdyby to znormalizować? Tzn jeśli ich maksymalne wartości wynoszą 1 to podzielić wynik przez 2? ale to może popsuć różnice w amplitudach fal, nie ogarniam ;P
  • Odpowiedz
@Ostah: znormalizować ok, ale w przedziale bufora? fazy? Jeśli mam kilka fal do zsumowania to taka normalizacja 'reczna' troche chyba zajmie.. I od tego jest chyba FFT :?
  • Odpowiedz
@denwood: zawsze myślałem że ona tylko rozdziela fale złożoną na składowe ale teraz czytam że działa też w drugą stronę, poza wynikiem działania wiele o niej nie wiem więc Ci nie pomogę.
  • Odpowiedz
@Ostah: Nie do końca. Dyskretna transformata Fouriera to coś jakby policzenie współczynników wielomianu, znając jego wartości w pewnych punktach, albo policzenie wartości w punktach mając współczynniki. Obie operacje są do siebie podobne i wzajemnie odwrotne. Mając takie narzędzie można rozdzielić sygnał na częstotliwości. Sumowanie nie wymaga udziału transformaty, chociaż jakbyś się uparł to można i tak, tylko po co?
  • Odpowiedz
@Analityk: Hej. dzieki za analize. Z trzecim sie zgodzę (nie odróżniam), z tym pierwszym – nie (A – nazwa solmizacyjna: la – dźwięk, którego częstotliwość dla a¹ wynosi 440 Hz.). Co do drugiego, to zapytam: czemu?
  • Odpowiedz
Jeśli fala A w pozycji 1234 ma wartosc 0.902134234, a fala B w tym samym czasie ma 0.666666666 to daje mi sume ponad 1


@denwood: No i bardzo dobrze. Jak dodajesz kilogram do kilograma to masz dwa kilogramy. Float i tak ma zakres powyżej jeden więc musisz zrobić sumy, wybrać największą, znormalizować (czyli podzielić wszystko przez tą maksymalną wartość) i tą maksymalną wartość gdzieś zapamiętać, bo pewnie dla różnych ramek dostaniesz
  • Odpowiedz
@extern-int: @Analityk: O dziwo, w miarę rozumiem co do mnie piszecie :D Dzięki. Postaram się to zaimplementować wkrótce, tylko obawiam się o wydajność tego procesu. już w tej chwili, cztery fale, bez sumowania i normalizowania cpu jest wysoko (wszak generuje 44100 liczb * 4 i wykonuje na nich kilka operacji. przeciez to jest 176400 * kilka. Dorzucic do tego jeszcze kilka i kap gotowy. Tak czy inaczej, dzięki bardzo za
  • Odpowiedz