eGospodarka.pl
eGospodarka.pl poleca

eGospodarka.plGrupypl.comp.programmingGeneracja N-kanałowego dzwięku na 1-bicie.Re: Generacja N-kanałowego dzwięku na 1-bicie.
  • Path: news-archive.icm.edu.pl!news.gazeta.pl!newsfeed.pionier.net.pl!news.internetia.
    pl!newsfeed.neostrada.pl!unt-exc-02.news.neostrada.pl!unt-spo-b-01.news.neostra
    da.pl!news.neostrada.pl.POSTED!not-for-mail
    From: "Grzegorz Plywacz" <b...@o...pl>
    Newsgroups: pl.comp.programming
    References: <idgrev$ce0$1@news.onet.pl>
    Subject: Re: Generacja N-kanałowego dzwięku na 1-bicie.
    Date: Tue, 7 Dec 2010 01:36:26 +0100
    X-Priority: 3
    X-MSMail-Priority: Normal
    X-Newsreader: Microsoft Outlook Express 6.00.2900.3138
    X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2900.3350
    X-RFC2646: Format=Flowed; Response
    Lines: 87
    Message-ID: <4cfd8185$0$27035$65785112@news.neostrada.pl>
    Organization: Telekomunikacja Polska
    NNTP-Posting-Host: 83.27.7.190
    X-Trace: 1291682181 unt-rea-a-02.news.neostrada.pl 27035 83.27.7.190:2349
    X-Complaints-To: a...@n...neostrada.pl
    Xref: news-archive.icm.edu.pl pl.comp.programming:187496
    [ ukryj nagłówki ]


    Użytkownik "Sebastian Biały" <h...@p...onet.pl> napisał w wiadomości
    news:idgrev$ce0$1@news.onet.pl...
    > Tak, to nie pomyłka, powrót do ZXSpectrum i PCSpeakera.
    >
    > Mam do dyzpozycji jeden bit którym mogę sterować blaszką piezo.
    >
    > Dzieki które dobywam mogą być raczej tylko jednobitowe - włącz/wyłącz.
    >
    > Czy ktoś może *pamięta* czy istniały jakieś algorytmy mieszania dwóch fali
    > prostokątnych o róznych częstotoliwościach aby uzyskac złudzenie dzwieku
    > dwukanałowego na tym jednym bicie? Wydaje mi się że produkcje na
    > ZXSpectrum potrafiły osiągać coś podobnego. Doskonale sobie zdaje sprawę z
    > nikłej jakości dzwieku, nie chodzi o jego podnoszenie (w szczególnosci nie
    > chodzi mi np. o filtr + pwm w celu osiągnięcia lepszych rozdzielczości).
    > Interesuje mnie jak na 1 bicie zmieszać dwie fale prostokątne w sposób
    > przyjemny dla ucha w stopniu w jakim przyjemne sa 2 fale prostokątne.
    > Zakładam ze 2 kanaly dadzą radę się przeskalowac na N.

    Zaciekawiło mnie ...

    To z czym masz do czynienia, to mniej więcej mieszanie dwóch (lub więcej
    sygnalow)
    na nieliniowym elemencie. W tym przypadku nieliniowośc polega na tym, że
    występuje
    obcięcie (0 albo 1). O ile generując jedną częstotliwość w wyniku dostaniemy
    mniej
    więcej to co nadalismy, to już w przypadku dwóch fal o częstotliwościach
    odpowiednio
    f1 i f2, dostaniemy f1 + f2, f1 - f2 plus cały szereg harmonicznych 2f1 +
    f2, etc...
    Harmonicznymi bym sie nie przejmowal :) Cała zabawa polega na tym, aby mając
    żadane dwie czestotliwości, które mają sie pojawić w widmie, dobrać te,
    który
    wygenerujemy. Np. chcąc zagrać 440 Hz i 1000 Hz nadamy np 720 i 280 Hz.
    Acha i jeszcze jedno, zrobiłem kilka eksperymentów i wychodzi mi, że
    najlepiej
    wygenerować poszczególne sygnały a potem przed wysłanie do piezo zrobić ich
    sumę modulo 2.
    Oczywiście w przypadku większej ilości fal sytuacja ma tendencje do
    komplikowania
    się w tempie geometrycznym :)

    A jakby kogoś interesowało, krótki kod w Matlabie dla zobrazowania:

    clear all;

    fs = 40000; % próbkowanie

    len = 5; % 5 sekund

    freqs = [720, 280];

    T = freqs .^ -1;

    s = zeros(len * fs, 1);


    for n = 1 : length(s)

    t = n/fs;

    s(n) = 0;

    for i = 1 : length(freqs)

    if mod(t, T(i)) < (T(i)/2)

    s(n) = not(s(n));

    end

    end

    end

    s = s - mean(s);

    plot(linspace(0, fs, length(s)), (abs(fft(s))));

    --

    G.Pływacz




Podziel się

Poleć ten post znajomemu poleć

Wydrukuj ten post drukuj


Następne wpisy z tego wątku

Najnowsze wątki z tej grupy


Najnowsze wątki

Szukaj w grupach

Eksperci egospodarka.pl

1 1 1

Wpisz nazwę miasta, dla którego chcesz znaleźć jednostkę ZUS.

Wzory dokumentów

Bezpłatne wzory dokumentów i formularzy.
Wyszukaj i pobierz za darmo: