Sign in to follow this  
Followers 0
RazerM

Sound UDF

60 posts in this topic

#1 ·  Posted (edited)

I have made a Sound UDF because AutoIt's built in SoundPlay isn't enough for me. It uses MCI.

UDF:

;===============================================================================
;
; Function Name:   _SoundOpen
; Description::    Opens a sound file for use with other _Sound functions
; Parameter(s):    $hFile - The sound file, $sAlias[optianal] - a name such as sound1,
;       if you do not specify one it is randomly generated
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): string(the sound id) - Success, 0 - Failure
;       @extended <> 0 - open failed, @error = 2 - File doesn't exist,
;       @error = 3 - alias contains whitespace
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundOpen($hFile, $sAlias = "")
 ;Declare variables
 Local $sSnd_id, $iCurrentPos, $iRet
 ;check for file
 If Not FileExists($hFile) Then Return SetError(2, 0, 0)
 ;search for whitespace by character
 For $iCurrentPos = 1 To StringLen($sAlias)
  If StringIsSpace(StringMid($sAlias, $iCurrentPos, 1)) Then Return SetError(3, 0, 0)
 Next
 ;create random alias if one is not supplied
 If $sAlias = "" Then
  $sSnd_id = RandomStr(10)
 Else
  $sSnd_id = $sAlias
 EndIf
 ;open file
 $iRet = mciSendString("open " & FileGetShortName($hFile) & " alias " & $sSnd_id)
 Return SetError(0, $iRet, $sSnd_id)
EndFunc   ;==>_SoundOpen

;===============================================================================
;
; Function Name:   _SoundClose
; Description::    Closes a sound
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 and @error = 1 - Failure
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundClose($sSnd_id)
 If mciSendString("close " & $sSnd_id) = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundClose

;===============================================================================
;
; Function Name:   _SoundPlay
; Description::    Plays a sound from the current position (beginning is the default)
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file
;       $fWait - If set to 1 the script will wait for the sound to finish before continuing
;       - If set to 0 the script will continue while the sound is playing
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 - Failure
;       @error = 2 - $fWait is invalid, @error = 1 - play failed
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundPlay($sSnd_id, $fWait = 0)
 ;Declare variables
 Local $iRet
 ;validate $fWait
 If $fWait <> 0 And $fWait <> 1 Then Return SetError(2, 0, 0)
 ;if sound has finished, seek to start
 If _SoundPos($sSnd_id, 2) = _SoundLength($sSnd_id, 2) Then mciSendString("seek " & $sSnd_id & " to start")
 ;If $fWait = 1 then pass wait to mci
 If $fWait = 1 Then
  $iRet = mciSendString("play " & $sSnd_id & " wait")
 Else
  $iRet = mciSendString("play " & $sSnd_id)
 EndIf
 ;return
 If $iRet = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundPlay

;===============================================================================
;
; Function Name: _SoundStop
; Description::    Stops the sound
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 and @error = 1 - Failure,
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundStop($sSnd_id)
 ;Declare variables
 Local $iRet, $iRet2
 ;seek to start
 $iRet = mciSendString("seek " & $sSnd_id & " to start")
 ;stop
 $iRet2 = mciSendString("stop " & $sSnd_id)
 ;return
 If $iRet = 0 And $iRet2 = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundStop

;===============================================================================
;
; Function Name:   _SoundPause
; Description::    Pauses the sound
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 and @error = 1 - Failure,
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundPause($sSnd_id)
 ;Declare variables
 Local $iRet
 ;pause sound
 $iRet = mciSendString("pause " & $sSnd_id)
 ;return
 If $iRet = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundPause

;===============================================================================
;
; Function Name:   _SoundResume
; Description::    Resumes the sound after being paused
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 and @error = 1 - Failure,
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundResume($sSnd_id)
 ;Declare variables
 Local $iRet
 ;resume sound
 $iRet = mciSendString("resume " & $sSnd_id)
 ;return
 If $iRet = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundResume

;===============================================================================
;
; Function Name:   _SoundLength
; Description::    Returns the length of the sound in the format hh:mm:ss
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file,
;       $iMode = 1 - hh:mm:ss, $iMode = 2 - milliseconds
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): Length of the sound - Success, 0 and @error = 1 - $iMode is invalid
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundLength($sSnd_id, $iMode = 1)
 ;Declare variables
 Local $iSnd_len_ms, $iSnd_len_min, $iSnd_len_hour, $iSnd_len_sec, $sSnd_len_format
 ;validate $iMode
 If $iMode <> 1 And $iMode <> 2 Then Return SetError(1, 0, 0)
 ;tell mci to use time in milliseconds
 mciSendString("set time format miliseconds")
 ;recieve length of sound
 $iSnd_len_ms = mciSendString("status " & $sSnd_id & " length")
 ;assign modified data to variables
 $iSnd_len_min = Int($iSnd_len_ms/60000)
 $iSnd_len_hour = Int($iSnd_len_min/60)
 $iSnd_len_sec = Int(Int($iSnd_len_ms/1000)-($iSnd_len_min*60))
 ;assign formatted data to $sSnd_len_format
 $sSnd_len_format = StringFormat("%02i:%02i:%02i", $iSnd_len_hour, $iSnd_len_min, $iSnd_len_sec)
 ;return correct variable
 If $iMode = 1 Then Return $sSnd_len_format
 If $iMode = 2 Then Return $iSnd_len_ms
EndFunc   ;==>_SoundLength

;===============================================================================
;
; Function Name:   _SoundSeek
; Description::    Seeks the sound to a specified time
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen (must NOT be a file), $iHour, $iMin, $iSec
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): 1 - Success, 0 and @error = 1 - Failure,
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundSeek($sSnd_id, $iHour, $iMin, $iSec)
 ;Declare variables
 Local $iMs = 0
 ;prepare mci to recieve time in milliseconds
 mciSendString("set time format miliseconds")
 ;modify the $iHour, $iMin and $iSec parameters to be in milliseconds
 ;and add to $iMs
 $iMs += $iSec*1000
 $iMs += $iMin*60*1000
 $iMs += $iHour*60*60*1000
 ; seek sound to time ($iMs)
 $iRet = mciSendString("seek " & $sSnd_id & " to " & $iMs)
 ;return
 If $iRet = 0 Then
  Return 1
 Else
  Return SetError(1, 0, 0)
 EndIf
EndFunc   ;==>_SoundSeek

;===============================================================================
;
; Function Name:   _SoundStatus
; Description::    All devices can return the "not ready", "paused", "playing", and "stopped" values.
;       Some devices can return the additional "open", "parked", "recording", and "seeking" values.(MSDN)
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): Sound Status
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundStatus($sSnd_id)
 ;return status
 Return mciSendString("status " & $sSnd_id & " mode")
EndFunc   ;==>_SoundStatus

;===============================================================================
;
; Function Name:   _SoundPos
; Description::    Returns the current position of the song
; Parameter(s):    $sSnd_id - Sound ID returned by _SoundOpen or sound file,
;       $iMode = 1 - hh:mm:ss, $iMode = 2 - milliseconds
; Requirement(s):  AutoIt 3.2 ++
; Return Value(s): Current Position - Success, @error = 1 - $iMode is invalid
; Author(s):       RazerM
;
;===============================================================================
;
Func _SoundPos($sSnd_id, $iMode = 1)
 ;Declare variables
 Local $iSnd_pos_ms, $iSnd_pos_min, $iSnd_pos_hour, $iSnd_pos_sec, $sSnd_pos_format
 ;validate $iMode
 If $iMode <> 1 And $iMode <> 2 Then Return SetError(1, 0, 0)
 ;tell mci to use time in milliseconds
 mciSendString("set time format miliseconds")
 ;receive position of sound
 $iSnd_pos_ms = mciSendString("status " & $sSnd_id & " position")
 ;modify data and assign to variables
 $iSnd_pos_min = Int($iSnd_pos_ms/60000)
 $iSnd_pos_hour = Int($iSnd_pos_min/60)
 $iSnd_pos_sec = Int(Int($iSnd_pos_ms/1000)-($iSnd_pos_min*60))
 ;assign formatted data to $sSnd_pos_format
 $sSnd_pos_format = StringFormat("%02i:%02i:%02i",$iSnd_pos_hour, $iSnd_pos_min, $iSnd_pos_sec)
 ;return correct variable
 If $iMode = 1 Then Return $sSnd_pos_format
 If $iMode = 2 Then Return $iSnd_pos_ms
EndFunc   ;==>_SoundPos

;internal functions
Func mciSendString($string)
 Local $iRet
 $iRet = DllCall("winmm.dll", "int", "mciSendStringA", "str", $string, "str", "", "int", 65534, "hwnd", 0)
 If Not @error Then Return $iRet[2]
EndFunc   ;==>mciSendString

Func RandomStr($len)
 Local $string
 For $iCurrentPos = 1 To $len
  $string &= Chr(Random(97, 122, 1))
 Next
 Return $string
EndFunc   ;==>RandomStroÝ÷ ØLZ^jëh×6 



$sound = _SoundOpen("C:\test2.mp3", "test")

If @error = 2 Then
 MsgBox(0, "Error", "The file does not exist")
 Exit
ElseIf @error = 3 Then
 MsgBox(0, "Error", "The alias was invalid")
 Exit
EndIf

MsgBox(0, "Length", "The sound has a length of " & _Soundlength($sound))
_SoundPlay($sound)
Sleep(2000)
MsgBox(0, "Pause", "The sound will now be paused for 2 seconds")
_SoundPause($sound)
Sleep(2000)

MsgBox(0, "Resume", "The sound will be resumed")
_SoundResume($sound)
Sleep(2000)
MsgBox(0, "Seek", "We will seek the song to 1 minute 48 seconds and display the position with _SoundPos")
_SoundSeek($sound, 0, 0, 35)
MsgBox(0, "Position", "The current position is " & _SoundPos($sound) & @CRLF & "We need to play the sound after using _SoundSeek")
_SoundPlay($sound)
MsgBox(0, "Status", "The status of the sound is '" & _SoundStatus($sound) & "'" & @CRLF & "The song will be stopped in 5 seconds")
Sleep(5000)
_SoundStop($sound)
MsgBox(0, "Stop", "The song will be played to show the effect of _SoundStop")
_SoundPlay($sound)
Sleep(3000)
_SoundClose($sound)
MsgBox(0, "Bye", "Goodbye")
Exit

No Longer Any Attachment; Download Latest Beta

Update: Added support for the MustDeclareVars option

Update2: Added repeat option to _SoundPlay

Update3: Commented all functions

Update4: Removed Repeat option for technical reasons

This UDF now comes with AutoIt Beta 3.2.1.2+

Edited by RazerM

My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites



nice going razer :whistle:

Share this post


Link to post
Share on other sites

Thanks, One thing i noted when making this is that _SoundSeek only works if an alias is used for the sound file. Any ideas?


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

why can i only play the sound once

even if i use then _soundopen again

the same sound do not play

??

do i something wrong? :whistle:

i want to play a sound en check when the sound has stopped then play it again

a sort of loop function

Recards jpam

Share this post


Link to post
Share on other sites

Download the new UDF(updated)

you only need to open a sound once

#include <Sound.au3>
$sound = _SoundOpen("C:\test2.mp3", "loop")
While 1
    _SoundPlay($sound, 1)
WEnd

My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

Nice RazerM... :whistle:

This will be incredibly useful for a media player I'm working on.


F@m!ly Guy Fr33k! - Avatar speaks for itself__________________________________________________________________________________________ite quotes... - Is your refrigerator running? If it is, It probably runs like you...very homosexually - Christians don't believe in gravity - Geeze Brian where do you think you are, Payless?- Show me potato Salad!__________________________________________________________________________________________Programs available - Shutdown timer[indent][/indent]

Share this post


Link to post
Share on other sites

Yeh that's what i thought. Good for media players


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

#include <Sound.au3>

$sound = _SoundOpen("C:\test2.mp3", "loop")

_SoundPlay($sound, 0)

While 1

If _SoundPos($sound, 2) = _SoundLength($sound, 2) Then _SoundPlay($sound)

;do stuff

WEnd

very nice ideas

Share this post


Link to post
Share on other sites

@RazerM

thanks RazerM

i try it again with your example

very usefull for my new game

jpam

Share this post


Link to post
Share on other sites

Thank you a lot for sharing these functions !

Is it possible to record from the microphone ??? It would be so good !


Olivier, from France.Free Wake On LAN script

Share this post


Link to post
Share on other sites

@Manadar

Yes, more than one sound can be played at once.

@Olish

This isn't a UDF for mci commands, however some mci commands are used. I have no intention to implement recording.


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

I have updated the udf, put FileGetShortName() in _SoundOpen for compatibility with paths that have spaces.


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

This isn't a UDF for mci commands, however some mci commands are used. I have no intention to implement recording.

Is it possible to use MCI Commands ? Which DLL may I use to implement recording myself ?

Thank you for your help.


Olivier, from France.Free Wake On LAN script

Share this post


Link to post
Share on other sites

#15 ·  Posted (edited)

In the udf is the function mciSendString

Func mciSendString($string)
    Local $ret
    $ret = DllCall("winmm.dll","int","mciSendString","str",$string,"str","","int",65534,"hwnd",0)
    If Not @error Then Return $ret[2]
EndFunc   ;==>mciSendString oÝ÷ Úêå

Edited by RazerM

My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

your sound udf works super !!!

thanks RazerM for this very usefull udf

jpam

Share this post


Link to post
Share on other sites

:whistle: It is PERFECT!!!!!!! Thanks God, something for MP3 Player!

@eynstyne: Media Player aleardy done: by me

i542


I can do signature me.

Share this post


Link to post
Share on other sites

Thanks for the feedback


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

I have updated the first page with improvements.

You can now set a sound to loop automatically by setting the 2nd parameter in _SoundPlay to 1


My Programs:AInstall - Create a standalone installer for your programUnit Converter - Converts Length, Area, Volume, Weight, Temperature and Pressure to different unitsBinary Clock - Hours, minutes and seconds have 10 columns each to display timeAutoIt Editor - Code Editor with Syntax Highlighting.Laserix Editor & Player - Create, Edit and Play Laserix LevelsLyric Syncer - Create and use Synchronised Lyrics.Connect 4 - 2 Player Connect 4 Game (Local or Online!, Formatted Chat!!)MD5, SHA-1, SHA-256, Tiger and Whirlpool Hash Finder - Dictionary and Brute Force FindCool Text Client - Create Rendered ImageMy UDF's:GUI Enhance - Enhance your GUIs visually.IDEA File Encryption - Encrypt and decrypt files easily! File Rename - Rename files easilyRC4 Text Encryption - Encrypt text using the RC4 AlgorithmPrime Number - Check if a number is primeString Remove - remove lots of strings at onceProgress Bar - made easySound UDF - Play, Pause, Resume, Seek and Stop.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0