Koodeja aaltomuotojen (äänien) tuottamiseen?

Moi, osaatteko auttaa kun pitäisi löytää jostain koodeja tai esimerkkejä sellaiseen ohjelmaan että voisi ohjelmallisesti tuottaa erilaisia aaltomuotoja (erilaisilla taajuuksilla ja pituuksilla sekä voimakkuuksilla) ja tallentaa ne waveiksi kovolle.

Ja olen kyllä googlettanut vaan ei osunut juuri tuollaista silmiini, kaikenlaista muuta hieman sivuavaa kyllä mutta eivät sopineet tarkoitukseeni.

Eli jos joku ei pysyny kärryillä mitä tarkoitan niin esimerkki:
Loisin sillä ohjelmalla esim. saha-aaltoa (elikkäs ramppiaaltoa) joka kestää 3 sekuntia, on voimakkuudeltaan esim. 0,8 ja äänen korkeus on 110 Hz ja se tallennetaan levylle wave-tiedostona joka on 16-bit, 44100 kHz näytteenotolla ja stereo tai mono.

Ja tuon äänen pituus sekunteina, korkeus hertseinä ja voimakkuus olisi määritettävissä helposti antamalla vaan halutut muuttujat. Samoin myös haluttu aaltomuoto olisi valittavissa seuraavista : neliöaalto (eli kanttiaalto), kolmioaalto, siniaalto, saha-aalto, käänteinen saha-aalto ja pulssiaalto sekä pwm (pulse width modulation) sekä valkoinen kohina ja vaaleanpunainen kohina.

Ajattelin nimittäin tehdä komentoriviohjelman joka tuottaisi noita äänitiedostoja (tulevat "sämpleriin").

En oikein osaa muita kieliä kuin basic ( ja Visual Basic myös) ja hiukkasen C:tä joten koodiesimerkkien olisi hyvä olla basic, Visual basic tai C.

Kiitos avusta.
5391
Äänestä

Muut lukivat myös

Vastaukset 5

Vanhimmat

osaa myös noiden äänten luonnin eli imuta ja asenna ilmainen Audacity.

Ainakin tuossa linkissä oli ohjeet miten luoda ohjelmalla sahalaitaa tietyllä amplitudilla, kestolla ja hertseillä

http://www.pingmusic.com.au/tutorials/chirp/

Äänestä
  • mutta ei kaikkea. Tarkemmin sanottuna siitä löytyy saha-aalto, kantti ja siniaalto. Mutta esim. kolmioaalto, pulssi ja pwm puuttuu. Lisäksi audacityä ei voi käyttää komentoriviltä, siis kun mun tarkoitus olisi että ajaisin skriptillä softaa joka tuottaisi wavet eikä kaikkea tarvitse erikseen klikkailla kun parametrit voi sompailla suoraan skriptiin ja näin automatisoida homman.

    Ehdotuksesi oli sinänsä ok mutta ei ihan käypä mun tarkoitukseen.

    Muuten kyllä tuo audacity on mainio ohjelma, eikä mun tarvitse sitä imuttaa kun sellainen on jo koneellani.

    Äänestä

  • ap. kirjoitti:

    mutta ei kaikkea. Tarkemmin sanottuna siitä löytyy saha-aalto, kantti ja siniaalto. Mutta esim. kolmioaalto, pulssi ja pwm puuttuu. Lisäksi audacityä ei voi käyttää komentoriviltä, siis kun mun tarkoitus olisi että ajaisin skriptillä softaa joka tuottaisi wavet eikä kaikkea tarvitse erikseen klikkailla kun parametrit voi sompailla suoraan skriptiin ja näin automatisoida homman.

    Ehdotuksesi oli sinänsä ok mutta ei ihan käypä mun tarkoitukseen.

    Muuten kyllä tuo audacity on mainio ohjelma, eikä mun tarvitse sitä imuttaa kun sellainen on jo koneellani.

    Meinaan sillä on skriptaaminen aika helppoa ja ainakin löytyi tuollainen esimerkki jolla tehdä erilaisia .wav tiedostoja

    http://mail.python.org/pipermail/python-list/2007-August/093629.html

    Äänestä

sox-niminen softa, joka ainakin monissa linuxeissa tulee mukana (varmaan os x:ssäkin) on komentorivisofta, jolla onnistuu monenlaisten äänien tuottaminen:

http://sox.sourceforge.net/sox.html

Äänestä
  • Tuo SoX vois olla juuri se mitä etsin, kiitos neuvosta. Parametreja on todella paljon joten täytyy lukee toi sivu huolella (ja tulostaa omalle koneelle pdf:ksi).

    Äänestä

Kommentoi aloitusta


äänientuottaja kirjoitti:

Moi, osaatteko auttaa kun pitäisi löytää jostain koodeja tai esimerkkejä sellaiseen ohjelmaan että voisi ohjelmallisesti tuottaa erilaisia aaltomuotoja (erilaisilla taajuuksilla ja pituuksilla sekä voimakkuuksilla) ja tallentaa ne waveiksi kovolle.

Ja olen kyllä googlettanut vaan ei osunut juuri tuollaista silmiini, kaikenlaista muuta hieman sivuavaa kyllä mutta eivät sopineet tarkoitukseeni.

Eli jos joku ei pysyny kärryillä mitä tarkoitan niin esimerkki:
Loisin sillä ohjelmalla esim. saha-aaltoa (elikkäs ramppiaaltoa) joka kestää 3 sekuntia, on voimakkuudeltaan esim. 0,8 ja äänen korkeus on 110 Hz ja se tallennetaan levylle wave-tiedostona joka on 16-bit, 44100 kHz näytteenotolla ja stereo tai mono.

Ja tuon äänen pituus sekunteina, korkeus hertseinä ja voimakkuus olisi määritettävissä helposti antamalla vaan halutut muuttujat. Samoin myös haluttu aaltomuoto olisi valittavissa seuraavista : neliöaalto (eli kanttiaalto), kolmioaalto, siniaalto, saha-aalto, käänteinen saha-aalto ja pulssiaalto sekä pwm (pulse width modulation) sekä valkoinen kohina ja vaaleanpunainen kohina.

Ajattelin nimittäin tehdä komentoriviohjelman joka tuottaisi noita äänitiedostoja (tulevat "sämpleriin").

En oikein osaa muita kieliä kuin basic ( ja Visual Basic myös) ja hiukkasen C:tä joten koodiesimerkkien olisi hyvä olla basic, Visual basic tai C.

Kiitos avusta.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu