W czym napisac?

Witam!

Musze stworzyc program, ktory bedzie wysylal na karte dzwiekowa 2 sygnaly audio: jeden niski ok. 400 Hz oraz wysoki ok. 900 Hz. Sygnaly te sa dalej potrzebne do sterowania, ale to juz nie jest takie istotne. Interesuje mnie glownie w miare prosty interfejs dla przyszlego uzytkownika tejze aplikacji. Nie ukrywam, ze nie jestem asem programowania, ale musze to zrobic :) W czym polecacie pisac? Otarlem sie o C, ale musialbym sporo sie doksztalcic, a czasu malo. Moze Delphi, a najlepiej Visual Basic. Problem polega na tym, ze musi to byc jezyk programowania, ktory ma funkcje generowania sygnalow audio na karte muzyczna (nie na speakera), z okresleniem czestotliwosci. Wiem, ze w C jest funkcja 'playsound', no ale to jest c, a z tego jak pisalem korzystac bede w ostatecznej ostatecznosci :)

Dziekuje z gory za wskazowki

Aquarius

Reply to
Aquarius
Loading thread data ...

Ile masz na to czasu, bo z tego co piszesz wynika ze bedzie to twoj pierwszy program. Jezeli to jednorazowe zadanie to moze zlec to komus kto zrobi to w 2 godziny i po sprawie. Chyba najprosciej nagrac sobie pliki z probkami dzwiekowymi i odtwarzac je za pomoca funkcji Windowsa. Program mozesz napisac w Deplphi albo C Buildrze i z jego poziomu wywolac te funkcje systemowe. Poszukaj tez na stronach z komponentami do Delphi/Buildera, na pewno sa jakies gotowe do odtwarzania probek czy generowania dzwiekow.

Sebasto

Reply to
Sebasto

a po co aż program? Weź Cooledit i wygeneruj odpowiednie pliki.

Reply to
Jarek Andrzejewski

Dziekuje za wskazowki, programik ok :)

Uzytkownik "Tomasz Sliwa" snipped-for-privacy@wp.pl napisal w wiadomosci news:bt6d6f$5ia$ snipped-for-privacy@atlantis.news.tpi.pl...

Reply to
Aquarius

formatting link
w dziale Polskie programy program "generator" mojego autorstwa. Generuje przebied sinusoidalny, trojkatny, prostokat i szum na wyjsciu karty dzwiekowej. Pozdrawiam Tomek

formatting link

Reply to
Tomasz Sliwa

a co za problem wygenerować pliki 10-sekundowe?

Reply to
Jarek Andrzejewski

On Behalf Of Jarek Andrzejewski

Być może problem jest w systemie. Tak do końca w windzie to nie wiadomo kiedy sygnał zostanie wysłany i (w przypadku karty dźwiękowej) kiedy zostanie zakończony.

Do autora wątku. Obawiam się, że takie rozwiązanie nie sprawdzi się w praktyce.

pzdr Artur

Reply to
ziel

ziel napisal(a):

No wlasnie... Kiedys probowalem przy pomocy MSVC wyslac _synchronicznie_ 8 kanalow na karte dzwiekowa i sie poddalem. Faktem jest, ze w windzianym programowaniu cienias jestem, ale nie znalazlem sladu informacji by cos takiego bylo mozliwe.

Reply to
Marcin E. Hamerla

Tzn dokladniej prosze, o jakie kanaly chodzi ? Bo wiecie .. fonia w avi sie nie rozjezdza z obrazem :-)

J.

Reply to
J.F.

On Behalf Of J.F.

Nie bedę się spierał, bo nie pamiętam, czy dobrze pamiętam ;-), ale coś mi się kołacze, że na jednej płycie zdażało się rozjechać obraz z dzwiękiem. A może to chodziło o napisy? :-( Nieważne.

Mnie chodzi o obsługę portów, czyli czytając np. port LPT co

1 sek. tolerancja czasu zawsze jest ze względu na zadania o wyższym priorytecie. Podobnie jest przy wysyłaniu komend do karty dźwiękowej, może wyłączyć dźwięk natychmiast, a przy jakiejś robótce na HDD przez system może wyłaczyć nawet za kilka sekund.

pzdr Artur PS Piszę o wyłaczeniu z poziomu aplikacji, bo (zawsze?) można wpisać do bufora karty dźwiękowej sampla ograniczonego w czasie i wtedy wyłaczy się automatycznie ;-)

Reply to
ziel

J.F. napisal(a):

Ja mowie _synchronicznie_, czyli wysylam 8 kanalow na karte dzwiekowa i wszystkie 8 wychodzi rownolegle co fo probki. Potrzebowalem cos takiego zrobic do testowania kodera MRX. W koncu to inaczej zrobilem.

Tutaj nie musi byc synchronicznie. Moze sie przeciez rozjechac jak nic o 100ms, nie?

Reply to
Marcin E. Hamerla

Mowimy o normalnych 8 czy 16-bit samplach do DAC ?

Biorac pod uwage ze karta ma 2 kanaly, a winda sample dodaje .. faktycznie moze to byc trudne. Ale przeciez mozesz sam dodac ?

No chyba ze czegos nie rozumiem ...

No .. 50 byloby lepiej, 100 moze byc juz zauwazalna. Ale fakt - jak ci na probce zalezy, to inna rozmowa ..

J.

Reply to
J.F.

J.F. napisal(a):

Coooo? Moja ma przynajmniej 26. A nie, teraz nie mam drugiego sledzia wiec tylko 18.

Nie rozumiem o co chodzi z tym dodawaniem.

Tak swoja droga, na paru listach zadawalem to pytanie, ale bez efektu. Ciekaw jestem jak to jest zrealizowane w softach, ktore maja mozliwosc wywalania wielu kanalow na raz. Bo to przesuwanie moze byc, w pewnych warunkach, problemem.

Reply to
Marcin E. Hamerla

A to pogratulowac karty. Naprawde ma 18 wyjsc ?

Od pewnego czasu winda potrafi wspoldzielic karte - tzn moze rownolegle dzialac wiele programow, kazdy wyprowadzajacy dane do karty. Oczywiscie winda to udaje i gdzies tam w srodku probki sa po prostu dodawane i dopiero wypychane do karty ..

J.

Reply to
J.F.

Moze za posrednictwem DirectX? Tam chyba jest cos do dzwieku.

Reply to
jerry1111

J.F. napisal(a):

26, ale nie dodalem, ze to karta cyfrowa RME Hammerfall. 2 wyjscia ADAT po 8 kanalow kazdy na glownym sledziu i jedno wyjscie ADAT na dodatkowym sledziu. Do tego dochodzi wyjscie SPDIF. Byc moze jest jeszcze jeden SPDIF na drugim sledziu, ale nie chce mi sie sprawdzac. Wejsc jest tyle samo.

Aha, no tak, nie zalapalem, ze o to chodzi. Mozna by i tak, ale nei zauwazylem zadnej metody synchronizacji czasowej procesow. Tak czy siak sprawa jest nieaktualna.

Reply to
Marcin E. Hamerla

jerry1111 napisal(a):

Chyba ogladalem to, ale to za wysokie progi dla mnie, wiec olalem sprawe i zrobilem prosciej i wolniej, ale skutecznie ;--).

Reply to
Marcin E. Hamerla

ElectronDepot website is not affiliated with any of the manufacturers or service providers discussed here. All logos and trade names are the property of their respective owners.