Home | AGI Documentation | AGI Tutorials | AGI Tools | AGI Wiki | Community

AGI Sound Tutorial v1.0

by Nick Sonneveld
Last Updated 4th March, 2002

Page: 1 2 3 4 5 [ 6 ] 7 8 9 10 11 12 13

6. Scripting

Originally with the AGI sound files there was no way to manually edit a particular part of a song or change the length without having to convert to a MIDI file to edit it.  One tool to do this now is the "agi2scr" and "scr2agi" tools by um.. me (Nick Sonneveld).  These two tools are used to decompile agi sound objects into user-editable scripts and then recompiled again. Handy to have if you want to edit an agi sound file, but don't want to fiddle around with hex editors. You can also increase, decrease the length of songs, add a silence at the end.. whatever you want really.

compiling a script:

scr2agi -i larry-edited.ass -o larry-edited.aso

decompiling a sound object:

agi2scr -i original_snd.aso -o original_snd.ass

options:

Script format: The script format used these tools is fairly simple. Comments start with a '#' and are subsequently ignored by the compiler. Each channel starts with either "tone" or "noise, allocation of the actually channel number is automatic at the moment. After the definition of a channel, it will continue reading note information until it reaches another "tone"/"noise".

Notes are defined in the two following formats:

  1. type, frequency_count, attenuation, duration
  2. frequency_count, attenuation, duration

Typically, you should define the type in the first note, so the following notes will be in the same format. If the type isn't defined, it will assume it's AGI's freq count format.  Notes are read in as a floating point number.  So you could enter notes with several decimal points if you wanted to.

Attenuation is the volume subtracted from the maximum volume. If you can wrap your head around that, 0 means the max volume and 15 means absolute silence.

Duration, for agi sounds is defined as 1 equals 1/60 of a second. So if you set the duration of a note to 60, it will play for 1 second.

If you want to define a note that is silent, you can either set the attentuation of it to 15 or define the freq_count to 0. Both is good too.

Page: 1 2 3 4 5 [ 6 ] 7 8 9 10 11 12 13


by helping to defray some of the costs of hosting this site. If it has been of help to you, please consider contributing to help keep it online.
Thank you.
pixe
Top

© 2013 to present The Sierra Help Pages. All rights reserved. All Sierra games, artwork and music © Sierra.

 �