RTV forum PL | NewsGroups PL

Aliasing przy 16kHz próbkowania - dlaczego nie pojawia się w moim programie?

Aliasing - dlaczego nie występuje?

NOWY TEMAT

elektroda NewsGroups Forum Index - Elektronika Polska - Aliasing przy 16kHz próbkowania - dlaczego nie pojawia się w moim programie?

pbartosz
Guest

Mon Jan 02, 2012 11:37 pm   



Stworzyłem prosty program wyświetlający w czasie rzeczywistym widmo
sygnału odbieranego w mikrofonie.
Sygnał próbkuję z częstotliwością 16kHz i przepuszczam przez 16-
punktową FFT.
Ponieważ transformata jest tylko 16 punktowa, dlatego oczywiście
następuje efekt wycieku widma, ale to nieistotne.
Jeśli na mikrofon podaję sygnały 1kHz, 2kHz, ..., 7kHz, kolejne prążki
górują nad pozostałymi i widmo jest wyświetlane poprawnie.
Natomiast jeśli na mikrofon podaję częstotliwości z przedziału
9kHz, ..., 15kHz, powinno następować zjawisko aliasingu i np. dla
częstotliwości sygnału 10kHz powinien górować prążek 6kHz, a tak nie
jest. Amplitudy oscylują w okolicach zera.
Dlaczego aliasing tutaj nie występuje?

Mariusz Dabrowski
Guest

Tue Jan 03, 2012 12:44 am   



Dnia 02.01.2012 pbartosz <bartoszpop@gmail.com> napisał/a:
Quote:
Sygnał próbkuję z częstotliwością 16kHz i przepuszczam przez 16-
punktową FFT.
Ponieważ transformata jest tylko 16 punktowa, dlatego oczywiście
następuje efekt wycieku widma, ale to nieistotne.
Tak gwoli ścisłości, wyciek występuje nie dlatego, że transformata jest

tylko 16-punktowa. Taki już "urok" DFT.

Quote:
Jeśli na mikrofon podaję sygnały 1kHz, 2kHz, ..., 7kHz, kolejne prążki
górują nad pozostałymi i widmo jest wyświetlane poprawnie.
Natomiast jeśli na mikrofon podaję częstotliwości z przedziału
9kHz, ..., 15kHz, powinno następować zjawisko aliasingu i np. dla
częstotliwości sygnału 10kHz powinien górować prążek 6kHz, a tak nie
jest. Amplitudy oscylują w okolicach zera.
Dlaczego aliasing tutaj nie występuje?

Jak próbkujesz sygnał? Może gdzieś przed próbkowaniem jest filtr,
który tłumi składowe powyżej połowy częstotliwości próbkowania.

--
Pozdrawiam,
Mariusz Dąbrowski

pbartosz
Guest

Tue Jan 03, 2012 1:37 am   



On 2 Sty, 23:44, Mariusz Dabrowski <m...@poczta.onet.pl> wrote:
Quote:
Dnia 02.01.2012 pbartosz <bartosz...@gmail.com> napisał/a:> Sygnał próbkuję z częstotliwością 16kHz i przepuszczam przez 16-
punktową FFT.
Ponieważ transformata jest tylko 16 punktowa, dlatego oczywiście
następuje efekt wycieku widma, ale to nieistotne.

Tak gwoli ścisłości, wyciek występuje nie dlatego, że transformata jest
tylko 16-punktowa. Taki już "urok" DFT.

Jeśli na mikrofon podaję sygnały 1kHz, 2kHz, ..., 7kHz, kolejne prążki
górują nad pozostałymi i widmo jest wyświetlane poprawnie.
Natomiast jeśli na mikrofon podaję częstotliwości z przedziału
9kHz, ..., 15kHz, powinno następować zjawisko aliasingu i np. dla
częstotliwości sygnału 10kHz powinien górować prążek 6kHz, a tak nie
jest. Amplitudy oscylują w okolicach zera.
Dlaczego aliasing tutaj nie występuje?

Jak próbkujesz sygnał? Może gdzieś przed próbkowaniem jest filtr,
który tłumi składowe powyżej połowy częstotliwości próbkowania.

--
Pozdrawiam,
Mariusz Dąbrowski

Korzystam z Java Sound API - http://docs.oracle.com/javase/1.5.0/docs/api/javax/sound/sampled/AudioFormat.html
Kodowanie PCM_SIGNED, sampleRate 16000.
Dźwięk pobieram z mikrofonu wbudowanego w laptop.

Portal
Guest

Tue Jan 03, 2012 7:29 am   



Quote:
Jak próbkujesz sygnał? Może gdzieś przed próbkowaniem jest filtr,
który tłumi składowe powyżej połowy częstotliwości próbkowania.

Korzystam z Java Sound API - http://docs.oracle.com/javase/1.5.0/docs/api/javax/sound/sampled/AudioFormat.html
Kodowanie PCM_SIGNED, sampleRate 16000.
Dźwięk pobieram z mikrofonu wbudowanego w laptop.

Mikrofon wbudowany w lapie (lub wzmacniacz mikrofonowy za nim) może mieć
dosyć wąskie pasmo w celu uniknięcia niepożądanych sprzężeń z
głośnikami. To ma służyć do wiernego zapisu mowy ludzkiej, gdzie
potrzeba raptem kilku kHz pasma, a nie do jakiegoś high-end audio.
Jeżeli chcesz się przekonać na pewno to nagraj odtwarzaną z głośników
sinusoidę z przemiataniem częstotliwości od kilku do kilkunastu kHz i
sprawdź, w którym punkcie następuje spadek o 3 dB.

Pozdr
Portal

WP
Guest

Tue Jan 03, 2012 11:59 am   



On 3 Sty, 07:29, Portal <macp...@poczta.onet.usun.to.pl> wrote:
Quote:
Jak próbkujesz sygnał? Może gdzieś przed próbkowaniem jest filtr,
który tłumi składowe powyżej połowy częstotliwości próbkowania.

Korzystam z Java Sound API -http://docs.oracle.com/javase/1.5.0/docs/api/javax/sound/sampled/Audi...
Kodowanie PCM_SIGNED, sampleRate 16000.
Dźwięk pobieram z mikrofonu wbudowanego w laptop.

Mikrofon wbudowany w lapie (lub wzmacniacz mikrofonowy za nim) może mieć
dosyć wąskie pasmo w celu uniknięcia niepożądanych sprzężeń z
głośnikami. To ma służyć do wiernego zapisu mowy ludzkiej, gdzie
potrzeba raptem kilku kHz pasma, a nie do jakiegoś high-end audio.
Jeżeli chcesz się przekonać na pewno to nagraj odtwarzaną z głośników
sinusoidę z przemiataniem częstotliwości od kilku do kilkunastu kHz i
sprawdź, w którym punkcie następuje spadek o 3 dB.

Pozdr
Portal

Już kodek audio w kompie pilnuje aliasów, jak go ustawiasz na 16k, to
nieco przed 8k przestaje przenosić. Raczej tego nie wyłączysz. Jak
koniecznie chcesz te aliasy zobaczyć, to włącz np. 32k próbkowania i w
programie wywal co drugą próbkę.
WP

Mariusz Dabrowski
Guest

Tue Jan 03, 2012 12:41 pm   



Dnia 02.01.2012 pbartosz <bartoszpop@gmail.com> napisał/a:
Quote:
Jak próbkujesz sygnał? Może gdzieś przed próbkowaniem jest filtr,
który tłumi składowe powyżej połowy częstotliwości próbkowania.
Korzystam z Java Sound API - http://docs.oracle.com/javase/1.5.0/docs/api/javax/sound/sampled/AudioFormat.html
Kodowanie PCM_SIGNED, sampleRate 16000.
Dźwięk pobieram z mikrofonu wbudowanego w laptop.

Przetwornik A/C w laptopie ma z pewnością wbudowany dolnoprzepustowy
filtr antyaliasingowy, który skutecznie wycina wszystko powyżej fs/2.

Częstotliwość graniczna tego filtru zmienia się gdy zmieniasz fs
więc raczej nie uda Ci się tutaj zaobserwować aliasingu.

--
Pozdrawiam,
Mariusz Dąbrowski

pbartosz
Guest

Tue Jan 03, 2012 1:49 pm   



Dziękuję za jasne odpowiedzi. Smile

elektroda NewsGroups Forum Index - Elektronika Polska - Aliasing przy 16kHz próbkowania - dlaczego nie pojawia się w moim programie?

NOWY TEMAT

Regulamin - Zasady uzytkowania Polityka prywatnosci Kontakt RTV map News map