Re: Tamriel Mixdown
Posted: Tue Oct 16, 2018 1:05 am
You've adjusted the gain (-eadb) on a whole heap of them. Was that intentional?
Code: Select all
(Run DaggerSoundExtract.exe under Wine)
$ for i in *.wav; do mv "$i" "${i%.wav}.raw"; done
$ for i in *.raw; do sox -r 11k -e unsigned -b 8 -c 1 "$i" "wav11k8b/${i%.raw}.wav"; done
$ for i in *.wav; do echo -e "$i\t$(sox "$i" -n stats 2>&1 | sed -ne 's@^RMS lev dB *\(.*\)@\1@p')"; done > rms.lst
Code: Select all
$ ls *.wav|perl -ne '$fn = $_; chomp $fn; $n = $fn; $n =~ s@^0{0,2}(\d+)_\d+\.wav$@\1@; $map = `grep "= $n," ~/src/daggerfall-unity/Assets/Scripts/SoundClips.cs | tail -n1`; chomp $map; $map =~ s@^\s*(\w*).*@\1@; if ($map eq "") { $map = $n } print "$fn\t$map\n"' > dfu_names.lst
Code: Select all
$ join -t " " rms.lst ../../mixdown/wav11k8b/rms.lst|join -t" " - dfu_names.lst|perl -ne 'chomp; @args = split(/\t/); $gain = $args[2] - $args[1]; print "ecasound ".($gain != 0 ? "-eadb:$gain " : "")."-i resample-hq,11025,$args[0] -f:16,1,44100 -o ../wav44k16b-mixdown/$args[3].wav\n"'
Ah, I see, I thought you converted directly from my files. Good thinkingpango wrote: ↑Tue Oct 16, 2018 5:33 am Hi,
I used the RMS levels adjustments in your mixdown as reference, assuming you modified the volume of whole samples; Those conversion instructions should be run on original DAGGER.SND
What I did (mostly Unix command lines):
Create the table of RMS levels from original DAGGER.SND:Do the same on your mixdown DAGGER.SND to create a second table of RMS levels.Code: Select all
(Run DaggerSoundExtract.exe under Wine) $ for i in *.wav; do mv "$i" "${i%.wav}.raw"; done $ for i in *.raw; do sox -r 11k -e unsigned -b 8 -c 1 "$i" "wav11k8b/${i%.raw}.wav"; done $ for i in *.wav; do echo -e "$i\t$(sox "$i" -n stats 2>&1 | sed -ne 's@^RMS lev dB *\(.*\)@\1@p')"; done > rms.lst
Create the table of output names from Daggerfall Unity's SoundClips.cs:Join all tables and create conversion instructions (spaces in -t" " are tabs):Code: Select all
$ ls *.wav|perl -ne '$fn = $_; chomp $fn; $n = $fn; $n =~ s@^0{0,2}(\d+)_\d+\.wav$@\1@; $map = `grep "= $n," ~/src/daggerfall-unity/Assets/Scripts/SoundClips.cs | tail -n1`; chomp $map; $map =~ s@^\s*(\w*).*@\1@; if ($map eq "") { $map = $n } print "$fn\t$map\n"' > dfu_names.lst
Code: Select all
$ join -t " " rms.lst ../../mixdown/wav11k8b/rms.lst|join -t" " - dfu_names.lst|perl -ne 'chomp; @args = split(/\t/); $gain = $args[2] - $args[1]; print "ecasound ".($gain != 0 ? "-eadb:$gain " : "")."-i resample-hq,11025,$args[0] -f:16,1,44100 -o ../wav44k16b-mixdown/$args[3].wav\n"'
The patch (re-)sets the volume in several places, I assume in some cases it didn't (say, sounds triggered by quest events, stuff like that). Also, that ensures that if you modify the volume slider, it will immediately take effect (or a close approximation).
Code: Select all
AmbiantPeople1.wav
AmbiantPeople2.wav
AmbiantPeople3.wav
AmbiantPeople6.wav
EnemyFrostDaedraAttack.wav
EnemyIceAtronachAttack.wav
EnemyIronAtronachAttack.wav
Spooky2.wav
SpookyHigh2.wav