Funktio audioksi

Anonyymi

Millähän sovelluksella tai tavalla saisi matemaattisen funktion rykäistyä kuunneltavaan muotoon? Yksinkertaisimmillaan esimerkiksi sin(x) tuottaisi siniaaltoa ääniulostuloon jne.

14

247

    Vastaukset 14

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
      • Anonyymi

        Tutkitaan. Python-pohjaista tuossa jo haeskelin.


      • Anonyymi

        Ehkä tuolle aplaylle putkittamalla saa tämän toteutettua.


    • Anonyymi

      Olen itse käyttänyt 'audacity' -sovellusta onnistuneesti erilaisten tallenteiden kanssa joissa on ollut mm. epäselvyys formaatista ja taajuudesta.

      Eli tässä tapauksessasi kun kyse lähtökohtaisesti ei ole kysymys mistään edes lähellekään äänisignaaliin liittyvästä, niin suosittelisin että kirjoitat tuön matemaattisen datan ensin tiedostoon ja sitten luet sen raakadatana (jollaista se onkin) 'audacity' -sovellukseen ja leikit eri asetuksilla ja kuuntelet lopputulosta.

      Aikanaan me leikittiin commodore 64 juuri tällaisten kanssa, ja mm. ihan RND() -funktiolla otettiin satunnaislukuja ja puskettiin äänigeneraattoriin. Tulokset olivat yllättävän hauskoja...

      Netistä löytynee ohjeita ja lähdekoodia äänen toistoon Linuxissa, johon sinun tarvitsee vain liittää oma funktiosi...

      • Anonyymi

        Audacity on jostain yhteyksistä tuttu. Tiedostoon kirjoitus olisi yksi mahdollisuus, mutta haluttaisiin silti "lennosta" soittava tapa.


      • Anonyymi

        Commorojullahan tungettiin yleensä kanttiaaltoa, saha-aaltoa, kohinaa jne. kanaville.

        Saihan sillä paljon muutakin kikkailtua, kuten rengasmodulaation https://en.wikipedia.org/wiki/Ring_modulation

        Esimerkiksi Jeroen Tellin "Kinetixissä" rapiat 3 minuutin kohdalla on tuo rengasmodulaatio. Googlaa youtubesata kinetix oscilloscope view, niin näkee miltä käppyrä näyttää.


    • malaire

      WAV-äänitiedoston tekeminen funktion pohjalta on niin yksinkertaista että olettaisin siihen olevan valmiita ohjelmia, mutta nyt en kyllä sellaista onnistunut löytämään.

      Onko sinulla ohjelmointikokemusta? Tässä on C-kielellä tehty esimerkki miten tuo onnistuu: https://www3.nd.edu/~dthain/courses/cse20211/fall2013/wavfile/

      • Anonyymi

      • Anonyymi kirjoitti:

        Kyllä koodi taipuu. Ensisijaisesti etsitään kuitenkin suoraan audioon kirjoittavaa tapaa.

        Raspberrylle (?) näyttäisi olevan CircuitPython Audio Out palikka, mutta haluttaisiin käyttää kuitenkin ihan normaali pc:n äänilähtöä.

        https://learn.adafruit.com/circuitpython-essentials/circuitpython-audio-out

        Näyttää siltä että aiemmin Linuxissa on ollut /dev/dsp johon voi kirjoittaa audiodataa suoraan, mutta nykyisin tuo onnistuu esim. aplay:n kautta:
        https://unix.stackexchange.com/questions/587002/how-to-pipe-anything-to-the-audio-output


    • Anonyymi
    • Anonyymi

      En osaa sanoa onko olemassa jokin avoimen lähdekoodin softa tai ylipäätänsä ilmainen softa, joka tuon osaa tehdä. Ehkä on, mutta en tosiaan osaa sanoa tuohon mitään.

      Kaupallisista sotista tulee ekana mieleen Matlab, mutta se on ihan hävyttömän törkeän kallis. Matlab on saatavissa sisi Linuxillekin ja jos en muista väärin niin siinä taisi olla mahdollisuus muuttaa funktio äänitiedostoksi. Ihan täysin varma en siitä ole, koska siitä on aikaa kun olen Matlabilla matemaattisia hommia vääntänyt.

      Mutta kukaan tuskin on valmis maksamaan itseään kipeäksi Matlabin takia vain muuttaakseen jonkun satunnaisen funktion äänitiedostoksi :-)

      T. miksuh

      • Anonyymi

        Korkeakouluopiskelijat yleensä saa opiskelupaikasta Matlabin opiskelijalisenssin. Mutta joo tosiaan Matlab on varmaankin aivan liian järeä softa siihen nähden mitä ketjun aloittaja haki :-) Mutta tuo nyt tuli ekana mieleen.

        T. miksuh


      • Anonyymi
        Anonyymi kirjoitti:

        Korkeakouluopiskelijat yleensä saa opiskelupaikasta Matlabin opiskelijalisenssin. Mutta joo tosiaan Matlab on varmaankin aivan liian järeä softa siihen nähden mitä ketjun aloittaja haki :-) Mutta tuo nyt tuli ekana mieleen.

        T. miksuh

        Ainakin Debianissa on matikkasofta nimeltä GNU Octave, joka on pitkälti yhteensopiva Matlabin kanssa. En osaa sanoa onko Octavessa mahdollisuutta tuottaa audiotiedostoja funktioista.

        T. miksuh


    • Anonyymi

      Audacityllä se onnistuu: Siihen löytyy Expression Generator -plugini:
      https://forum.audacityteam.org/viewtopic.php?t=95291
      Tuon avulla hetken haahuilemalla sain puhdasta siniä, sivulta löytyvä plugini pitää siirtää ainakin Ubuntu:ssa kansioon:
      $ mv ExpressionGenerator.ny /usr/share/audacity/plug-ins/

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mikä Yllätti

      Kaivatussasi?
      Ikävä
      185
      1711
    2. Se katse...

      Täynnä rakkautta. Kunpa olisin tajunnut.
      Ikävä
      81
      906
    3. Ei enää ulkoteltta ruokaa.

      Se oli sitten viimmeinen kerta kun tuonne teltalle menen.Laatu heikkenee joka vuosi ja annokset pienenee.Ei enää kiitos,
      Kuhmo
      39
      872
    4. En ole hetkeen sinulle kirjoittanut nainen

      Vieläkin ajattelen sinua, jos voit uskoa. Tunteet minussa huutavat toivoa ja rakkautta, kun kylmä loogisuus taas pistää
      Ikävä
      56
      801
    5. 60
      658
    6. Mitä eroavaisuuksia sinulla on

      kaivattusi kanssa? Esim. luonteessa. Haittaavatko erot vai ovatko vain rikkaus?
      Ikävä
      69
      620
    7. Olet niin tärkeä

      Et edes tiedä sitä, tai ehkä tunnet sen… Sinussa on jotakin pysyvää, tuttua, turvallista, kodikasta.
      Ikävä
      19
      561
    8. Mä olen tosi

      Ylpeä sinusta 🫂 Ajatuksissani pyydän sulle paljon suojelusta ja varjelusta. Sinua rakastettaan ja susta välitetään. Mui
      Ikävä
      38
      536
    9. Jos sussa toisessa on yhtään miestä

      Ja kadut tekemisiäsi niin menet poliisin puheille, paljastat kaiken oman osuutesi ja kerrot mitä kaikkea se toinen on te
      Ikävä
      36
      531
    10. Onnettomuus

      Olivatko paikkakuntalaisia, jotka menehtyivät?
      Virrat
      19
      521
    Aihe