-
Data: 2010-12-06 21:40:07
Temat: Re: Generacja N-kana?owego dzwi?ku na 1-bicie.
Od: Bronek Kozicki <b...@s...net> szukaj wiadomości tego autora
[ pokaż wszystkie nagłówki ]On 05/12/2010 22:12, Sebastian Biały wrote:
> On 2010-12-05 21:49, A.L. wrote:
>> Nie wiem co to jest "dzwiek dwukanalowy"
>
> Np. "niezależne" generowanie f1=500Hz i f2=650Hz w posób, który pozwala
> je rozróżnić słuchem.
W dzieciństwie bawiłem się w programowanie dzwięku w ZX Spectrum w
asemblerze. To było jakieś 25 lat temu :)
Teraz zacząłbym tak:
1. przygotować tablicę częstotliwości (np stąd
http://www.phy.mtu.edu/~suits/notefreqs.html, albo wyliczyć
http://www.phy.mtu.edu/~suits/scales.html )
2. przygotować pętle "nieskończoną" dla częstotliwości bazowej (w
czasach Z80 robiłem to liczeniem cykli procesora), 100kHz albo więcej,
obsługującą wiele liczników. Im pętla bazowa szybsza i więcej liczników,
tym większe możliwości i dokładność dźwięku.
3. wyliczyć stosunek pożądanych częstotliwości do bazowej i w pętli
resetować jeden licznik dla tej częstotliwości, na każdy reset wysyłając
sygnał.
3. większa głośność - wysyłać sygnał wielokrotnie, ale bez zmiany
częstości (czyli nie tylko na reset, ale również na 2, 4, itd.) - nie
przesadzić bo powstanie brzęczenie.
4. łączenie częstotliwości - wykorzystać więcej liczników. Każdy
resetowany do wartości odpowiedniej do częstotliwości. Np jeżeli
częstotliwość bazowa to 100kHz, to dla A4 resetujesz l1 co
100000/440=227 , dla F4 grany w tym samym czasie resetuje licznik l2 co
286 itd.
5. spróbować dodać częstotliwości harmoniczne (overtones) dla
poprawienia jakości.
Czy to zadziała - nie wiem :)
B.
Następne wpisy z tego wątku
- 07.12.10 00:36 Grzegorz Plywacz
- 08.12.10 08:43 slamazar
- 08.12.10 15:18 Kicer
- 08.12.10 15:26 Grzegorz Plywacz
- 08.12.10 15:43 Grzegorz Plywacz
Najnowsze wątki z tej grupy
- 7. Raport Totaliztyczny: Sprawa Qt Group wer. 424
- TCL - problem z escape ostatniego \ w nawiasach {}
- Nauka i Praca Programisty C++ w III Rzeczy (pospolitej)
- testy-wyd-sort - Podsumowanie
- Tworzenie Programów Nieuprzywilejowanych Opartych Na Wtyczkach
- Do czego nadaje się QDockWidget z bibl. Qt?
- Bibl. Qt jest sztucznie ograniczona - jest nieprzydatna do celów komercyjnych
- Co sciaga kretynow
- AEiC 2024 - Ada-Europe conference - Deadlines Approaching
- Jakie są dobre zasady programowania programów opartych na wtyczkach?
- sprawdzanie słów kluczowych dot. zła
- Re: W czym sie teraz pisze programy??
- Re: (PDF) Surgical Pathology of Non-neoplastic Gastrointestinal Diseases by Lizhi Zhang
- CfC 28th Ada-Europe Int. Conf. Reliable Software Technologies
- Młodzi programiści i tajna policja
Najnowsze wątki
- 2024-11-29 Dławik CM
- 2024-11-29 [OT] Lewe oprogramowanie
- 2024-11-29 Błonie => Sales Specialist <=
- 2024-11-29 Warszawa => IT Expert (Network Systems area) <=
- 2024-11-29 Warszawa => Ekspert IT (obszar systemów sieciowych) <=
- 2024-11-29 Warszawa => Head of International Freight Forwarding Department <=
- 2024-11-29 Białystok => Inżynier Serwisu Sprzętu Medycznego <=
- 2024-11-29 Pómpy ciepła darmo rozdajoo
- 2024-11-29 Białystok => Application Security Engineer <=
- 2024-11-29 Białystok => Programista Full Stack (.Net Core) <=
- 2024-11-29 Gdańsk => Software .Net Developer <=
- 2024-11-29 Wrocław => Key Account Manager <=
- 2024-11-29 Gdańsk => Specjalista ds. Sprzedaży <=
- 2024-11-29 Chrzanów => Specjalista ds. public relations <=
- 2024-11-27 Re: UseGalileo -- PRODUKTY I APLIKACJE UŻYWAJĄ JUŻ DZIŚ SYSTEMU GALILEO