tarttisin äänen

Voit pyytää apua ohjelmointiongelmiin täältä.
Post Reply
jaahas
Advanced Member
Posts: 307
Joined: Sat Feb 06, 2010 12:36 am
Location: Tornio

tarttisin äänen

Post by jaahas » Sun Feb 21, 2010 12:31 am

tarttisin semmösen tööt äänen joka kestää 1 sekan

User avatar
Knoy
Active Member
Posts: 187
Joined: Fri Feb 12, 2010 11:50 pm

Re: tarttisin äänen

Post by Knoy » Sun Feb 21, 2010 12:46 am

Ääniö köytyy yleensä helposti netistä.

Tällein löytyy

jaahas
Advanced Member
Posts: 307
Joined: Sat Feb 06, 2010 12:36 am
Location: Tornio

Re: tarttisin äänen

Post by jaahas » Sun Feb 21, 2010 11:00 am

ei löydy

User avatar
otto90x
Advanced Member
Posts: 349
Joined: Mon Aug 27, 2007 9:00 pm
Location: Lapinjärvi, Finland
Contact:

Re: tarttisin äänen

Post by otto90x » Sun Feb 21, 2010 11:17 am

Jaahas, tämänhän voi tehdä vaikka Valtzun upealla siniaaltofunktiolla. Mikäli haluat tallentaa äänen pysyvästi tietokoneelle niin poistat funktion loppupuolelta komennon deletefile.

Code: Select all

// --- Äänifunktioita by Valtzu (2007) --- //


/////////////////
//            //
//  Esimerkki  //
//            //
/////////////////


sndTMP = SinWave(150,1,90)
// Luodaan ja ladataan ääni muuttujaan.
// Taajuus = 150, äänen kesto = 1s, volyymi = 90

PlaySound sndTMP  // Soitetaan ääni
WaitKey
DeleteSound sndTMP // Ääni pois muistista



// --- Funktio --- //

// Ääni tietyltä taajuudelta
Function SinWave(taajuus#, pituus#, voimakkuus#=100)
    fq=44100
    length=pituus*fq
    f=OpenToWrite("tmpwav.tmp")
    WriteInt f,$52494646
    WriteInt f,0
    WriteInt f,$57415645
    WriteInt f,$666d7420
    WriteInt f,16
    WriteShort f,1
    WriteShort f,1
    WriteInt f,fq
    WriteInt f,fq*2
    WriteShort f,2
    WriteShort f,16
    WriteInt f,$64617461
    WriteInt f,length*2
    vokke = voimakkuus/100*32767
    For i = 0 To length-1
        WriteShort f,Sin(360.0*taajuus/fq*(i Mod fq))*vokke
    Next i
    fs=FileOffset(f)-8
    SeekFile f,4
    WriteInt f,fs
    CloseFile f
    tmpsnd=LoadSound("tmpwav.tmp")
    DeleteFile "tmpwav.tmp"
    Return tmpsnd
End Function
Otto Martikainen a.k.a. MetalRain, otto90x, kAATOSade.
Runoblogi, vuodatusta ja sekoiluja.

jaahas
Advanced Member
Posts: 307
Joined: Sat Feb 06, 2010 12:36 am
Location: Tornio

Re: tarttisin äänen

Post by jaahas » Sun Feb 21, 2010 11:31 am

otto90x wrote:Jaahas, tämänhän voi tehdä vaikka Valtzun upealla siniaaltofunktiolla. Mikäli haluat tallentaa äänen pysyvästi tietokoneelle niin poistat funktion loppupuolelta komennon deletefile.

Code: Select all

// --- Äänifunktioita by Valtzu (2007) --- //


/////////////////
//            //
//  Esimerkki  //
//            //
/////////////////


sndTMP = SinWave(150,1,90)
// Luodaan ja ladataan ääni muuttujaan.
// Taajuus = 150, äänen kesto = 1s, volyymi = 90

PlaySound sndTMP  // Soitetaan ääni
WaitKey
DeleteSound sndTMP // Ääni pois muistista



// --- Funktio --- //

// Ääni tietyltä taajuudelta
Function SinWave(taajuus#, pituus#, voimakkuus#=100)
    fq=44100
    length=pituus*fq
    f=OpenToWrite("tmpwav.tmp")
    WriteInt f,$52494646
    WriteInt f,0
    WriteInt f,$57415645
    WriteInt f,$666d7420
    WriteInt f,16
    WriteShort f,1
    WriteShort f,1
    WriteInt f,fq
    WriteInt f,fq*2
    WriteShort f,2
    WriteShort f,16
    WriteInt f,$64617461
    WriteInt f,length*2
    vokke = voimakkuus/100*32767
    For i = 0 To length-1
        WriteShort f,Sin(360.0*taajuus/fq*(i Mod fq))*vokke
    Next i
    fs=FileOffset(f)-8
    SeekFile f,4
    WriteInt f,fs
    CloseFile f
    tmpsnd=LoadSound("tmpwav.tmp")
    DeleteFile "tmpwav.tmp"
    Return tmpsnd
End Function
ei kuulu mitään
edit: nyt kuulu laitoin äänet täysille :D
edit2:se pitäis kuulua kovempana että äänet ei pidä olla täysillä et sen kuulee kunnolla
edit3:ai joo noin sen saa lujemmalle

Post Reply