Explanation of environment/sound-source preset - *.prs files
#1

Hi all

this is a just small "give back" from me to this awesome community.

Each ".prs" file contains a collection of properties, a property set. According to their location they have a different function
  • a file located in ..\presets\acoustics\ contains a property set, called the listener property set. This describes the listener’s
    surrounding environment (the “room” in which the player (listener) listens ).(for example: if you are in the cockpit, or
    outside the plane )
  • a file located in ..\presets\sounds\ contains the second set, called the sound-source property set. This describes the way an
    individual source sounds within the surrounding environment. (for example: a plane´s engine , a gun shooting ...)
This first part is about the files in ..presets\acoustics
Landscape.prs defines the acoustic environment if you are outside of the plane.
All other .prs files define an basic acoustic environment, according to the construction of the pilot/gunner cockpit.
Look at the filenames and you can guess for which cockpit type they are responsible,
(note that a plane, that has a similar cockpit construction like the plane in the filename uses that file.
that´s the reason why there isn´t a file for each plane.)
for example:
  • bf109.prs sets the properties if you are in a closed fighter cockpit with front and middle section made out of glass and a solid metal rear section.
    (this is not only used by bf109)
  • i16.prs set the properties if you are in a fighter cockpit with an open middle section.
  • he_111.prs set the properties if you are big bomber cockpit.
While playing il2 the program determines in wich environment you currently are and sets the acoustics according to the environment settings that were made in these files.
I will try to explain the functions and meanings of each property by a closer look to a few example files. (look at later posts)
Be aware that i could be wrong in some cases.

English is not my native language, so please don´t worry about my "blue" english.

Rookie
Reply
#2

********** example file : he111_gunner.prs

[common]

envnum 2

[eax1]

type PADDEDCELL
room 0.3
decay 0.8
decayhf 0.5

[eax2]

type PADDEDCELL
room -4
roomhf -20
decay 0.8
decayhf 0.1
early 4
earlydelay 0.05
reverb 0
reverbdelay 0.1
size 3.0
diffusion 1.0
absorption -5


********************* end of file

Explanation:

[common]
Reply
#3

**************** example file: Landscape.prs

[common]

envnum 0
hcontrol 1

[eax1]
Type MOUNTAINS
Room 0.2
Decay 3.9
DecayHf 0.16

[hcontrol.eax1]
min 0.5
bound 500


[eax2]

type MOUNTAINS
room 0
roomhf -36
decay 3.2
decayhf 0.15
early -15
earlydelay 0.3
reverb -8
reverbdelay 0.1
size 100.0
diffusion 0.9
absorption -5

[hcontrol.eax1]
min 0.5
bound 500


********************** end of file



for most properties see earlier posting

new Property: hcontrol

please note that hcontrol is only used in this file - outside view mode (landscape environment).

Explanation:

hcontrol 1
Reply
#4

**************** example file bf109.prs

[common]


envnum 8
EAXMix 0.6
occlusion -8
occllf 0.66
eaxroom 0.66
obstruction -8
obstrlf 0.66


[eax1]

type PADDEDCELL
room 0.25
decay 0.26
decayhf 0.8

[eax2]

type PADDEDCELL
room -4
roomhf -24
decay 3.8
decayhf 0.1
early 6
earlydelay 0.05
reverb 6
reverbdelay 0.05
size 1.0
diffusion 1.0
absorption -5

************** end of file

for most properties see earlier posting

Explanation of new ones:


EAXMix 0.6
Reply
#5

Rookie67,

Thank you very much for posting this information!!! I have always wondered what these settings control. Your post will make it much easier for those of us who make sound mods or for folks who just like to tweak their sounds. Well done!

This needs to be a sticky! Big Grin
Reply
#6

^ +1 what this guy said ^^
Reply
#7

I have busting my chops on this, through the internet and trial and lots of error
Thank you
Moxy
Reply
#8

Yeah, good move rookie, thanks for your time on this Smile
Reply
#9

Hi all again

starting part 2 now.

as allready said files located in ..\presets\sounds\ contain the second set, called the sound-source property set.

This describes the way an individual source sounds within the surrounding environment. (for example: a plane´s engine , a gun shooting ...)

Look at the filenames and you can guess for which sound they are responsible, for example:
  • aircraft.common.prs - general sound settings for engine driven plane
  • aircraft.common_w.prs - sound settings saling plane
  • aircraft.door.prs - sound settings for door open/close
  • chrash.*.prs - sounds property settings for the last sound you can hear
  • exlode.*.prs - sounds property settings for explosion sounds
  • hit.air.prs - sounds property settings for an "impact to your plane shell" sound
  • models.*.prs - sound settings for static object like cars, trucks, ...
  • motor.*.prs - sounds property settings for plane engines
  • weapon.*.prs - sounds property settings for tak, tak, tak Smile
Please note that i´m now talking about sound-sources not environments.

I will try to explain the functions and meanings of the properties not mentioned before by a closer look to a few example files. (look at later posts)

Rookie
Reply
#10

************** example file: motor.Allison.prs

[common]
mode relobj pos
type mixer
infinite 1

EAXMix 0
occlusion -200
occllf 0.25
eaxroom 10
obstruction -200
obstrlf 0.25

mutable 1

[spl]
107


[samples]
Merlin_XX_Starter.wav
Allison_1000.wav
Allison_1500.wav
Allison_2000.wav
Allison_2700.wav
Allison_2701.wav
xAllison_1000.wav
xAllison_1001.wav
xAllison_1500.wav
xAllison_2000.wav
xAllison_2700.wav
xAllison_2701.wav
dmg_86_0m.wav


[sample.Merlin_XX_Starter.wav]
infinite 1
controls rpm start

[sample.Merlin_XX_Starter.wav.rpm]
minlo 20
minhi 30
maxlo 150
maxhi 250
value 0.5
pmin 0.6
pmax 1.8

[sample.Merlin_XX_Starter.wav.start]
minlo 0
minhi 0.5
maxlo 1.5
maxhi 2.0
value 1.0
pmin 1.0
pmax 1.0

[sample.Allison_1000.wav]
infinite 1
env 8
controls rpm

[sample.Allison_1000.wav.rpm]
minlo 0
minhi 700
maxlo 1300
maxhi 1900
value 3.0
pmin -1.0
pmax 1000

[sample.Allison_1000.wav.start]
minlo 0
minhi 0.5
maxlo 1.5
maxhi 2.0
value 3.0
pmin 1.0
pmax 1.0

[sample.Allison_1500.wav]
infinite 1
env 8
controls rpm

[sample.Allison_1500.wav.rpm]
minlo 600
minhi 1200
maxlo 1500
maxhi 2500
value 4.0
pmin -1.0
pmax 1500

[sample.Allison_2000.wav]
infinite 1
env 8
controls rpm

[sample.Allison_2000.wav.rpm]
minlo 800
minhi 1800
maxlo 2200
maxhi 3200
value 5.0
pmin -1.0
pmax 2000

[sample.Allison_2700.wav]
infinite 1
env 8
controls rpm

[sample.Allison_2700.wav.rpm]
minlo 1400
minhi 2400
maxlo 6000
maxhi 6500
value 6.0
pmin -1.0
pmax 2700

[sample.Allison_2701.wav]
infinite 1
env 8
controls rpm

[sample.Allison_2701.wav.rpm]
minlo 1400
minhi 2400
maxlo 6000
maxhi 6500
value 6.0
pmin -1.0
pmax 2700


[sample.xAllison_1000.wav]
infinite 1
env 0 2
controls rpm

[sample.xAllison_1000.wav.rpm]
minlo 100
minhi 700
maxlo 1300
maxhi 1900
value 3.0
pmin -1.0
pmax 1000

[sample.xAllison_1000.wav.start]
minlo 0
minhi 0.5
maxlo 1.5
maxhi 2.0
value 3.0
pmin 1.0
pmax 1.0

[sample.Allison_1001.wav]
infinite 1
env 0 2
controls rpm

[sample.Allison_1001.wav.rpm]
minlo 100
minhi 700
maxlo 1300
maxhi 1900
value 3.0
pmin -1.0
pmax 1000

[sample.xAllison_1500.wav]
infinite 1
env 0 2
controls rpm

[sample.xAllison_1500.wav.rpm]
minlo 600
minhi 1200
maxlo 1700
maxhi 2600
value 3.0
pmin -1.0
pmax 1500

[sample.xAllison_2000.wav]
infinite 1
env 0 2
controls rpm

[sample.xAllison_2000.wav.rpm]
minlo 500
minhi 1200
maxlo 1400
maxhi 2200
value 3.0
pmin -1.0
pmax 2000

[sample.xAllison_2700.wav]
infinite 1
env 0 2
controls rpm

[sample.xAllison_2700.wav.rpm]
minlo 1200
minhi 2200
maxlo 6000
maxhi 6500
value 4.5
pmin -1.0
pmax 2700

[sample.xAllison_2701.wav]
infinite 1
env 0 2
controls rpm

[sample.xAllison_2701.wav.rpm]
minlo 1000
minhi 2400
maxlo 6000
maxhi 6500
value 7.0
pmin -1.0
pmax 2700


[sample.dmg_86_0m.wav]
infinite 1
controls rpm damage

[sample.dmg_86_0m.wav.rpm]
minlo 500
minhi 2000
maxlo 4000
maxhi 6000
value 2.0
pmin 0.4
pmax 2.2

[sample.dmg_86_0m.wav.damage]
minlo 0.1
minhi 0.6
maxlo 1.0
maxhi 2.0
value 2.0
pmin 1.0
pmax 1.0

[emit]
start

[emit.start]
speed 5
srand 0.15
vrand 0.1
prand 0.06
spl 85

num 3

sample0 an2_cyl_00.wav
sample1 an2_cyl_01.wav
sample2 an2_cyl_02.wav

*********************** end of file

Explanation:

for the explanation EAXMix, occlusion, occllf, obstruction and obstrlf see earlier posts.

EAXRoom
Reply
#11

It seems to me, that there is an additional settings feature for the [spl] section in the preset files.

May be this features gets lost because it´s not used any more or i haven´t found a preset file that uses this feature this way.

normal usage of this section is (as mentioned in earlier post):
[spl]
Reply
#12

Thanks Rookie
This is a mine of gold information for those who want to customize their sound environment.
Waiting for your next update :wink:
Reply
#13

Thank you mates

Doing this is a pleasure to me, allthough sometimes:
  • my engine gets overheaten - (Head)
  • i have runing out of fuel (coffee) and ammunition (cigarettes)
Smile
Rookie
Reply
#14

******************* example file aircraft.cockpit.prs

[common]
mode relobj pos
pmax 1
Reply
#15

Within the section [common] you often find the property mode, example:

mode relobj pos

First parameter of the property mode determines how the settings of this preset file should be "interpreted" by the program.

possible values for the first parameter:
  • no3d - no 3 dimensional sound/environment
    (voices of crew members, the menu interface of the game it self don´t have 3rd dimension sound, for example)
  • normal always occur with second parameter(see below)
  • relobj - this always occurs with second parameter set to pos (positon)
    and means relative position of/to the object in the surrounding environment.
  • relist - as relobj second parameter is always pos meaning:
    relative pos of/to the listener? i´m not sure
if the first parameter of mode is set to normal, possible second parameters are:
  • pos - position of sound source
  • vel - velocity of sound source
  • or - orientation of sound source is frontal (a buzzer is frontal sound, you can´t locate him)
  • all - selects all values above (position and velocity and orientation)
    orientation is now set to frontal+top - i think this means it stays on top above the other sounds, like a top window does.

please note that i didn´t find a .prs file using the values "vel" and "or".

There is a special case for the value "seq":
if seq occurs in the same line as mode the sounds of this preset file are handled by a sequenzer or as a sequenzed file, voices.prs for example use this, the result is: voices are not played in a mixture, they are played one after one.

Rookie
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)