mirror of
https://gitlab.com/2009scape/rt4-client.git
synced 2025-12-09 16:45:46 -07:00
Improved client sample rate for audio from 22050 -> 44100
This commit is contained in:
parent
0537679514
commit
6ae6b19e44
7 changed files with 15 additions and 13 deletions
|
|
@ -71,7 +71,7 @@ public class AudioChannel {
|
|||
public static void init(@OriginalArg(3) boolean stereo) {
|
||||
threadPriority = 2;
|
||||
AudioChannel.stereo = stereo;
|
||||
sampleRate = 22050;
|
||||
sampleRate = GlobalConfig.AUDIO_SAMPLE_RATE;
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!id", name = "a", descriptor = "(ILsignlink!ll;Ljava/awt/Component;II)Lclient!vh;")
|
||||
|
|
|
|||
|
|
@ -45,7 +45,7 @@ public class GlobalConfig {
|
|||
|
||||
// default distance is 28
|
||||
public static int TILE_DISTANCE = 56;
|
||||
public static int VIEW_DISTANCE = TILE_DISTANCE * 128;
|
||||
public static int VIEW_DISTANCE = TILE_DISTANCE * 256;
|
||||
public static float VIEW_FADE_DISTANCE = ((float) TILE_DISTANCE / 28.0f) * 256.0f;
|
||||
|
||||
public static boolean USE_SHIFT_CLICK = true;
|
||||
|
|
@ -55,4 +55,6 @@ public class GlobalConfig {
|
|||
|
||||
public static int JS5_RESPONSE_TIMEOUT = 5000;
|
||||
|
||||
public static int AUDIO_SAMPLE_RATE = 44100; //default is 22050
|
||||
|
||||
}
|
||||
|
|
|
|||
|
|
@ -111,7 +111,7 @@ public final class MidiPcmStream extends PcmStream {
|
|||
public final synchronized boolean isSongReady(@OriginalArg(0) Song arg0, @OriginalArg(2) Js5 arg1, @OriginalArg(3) SoundBank arg2) {
|
||||
arg0.createPrograms();
|
||||
@Pc(5) boolean local5 = true;
|
||||
@Pc(20) int[] local20 = new int[]{22050};
|
||||
@Pc(20) int[] local20 = new int[]{GlobalConfig.AUDIO_SAMPLE_RATE};
|
||||
for (@Pc(34) ByteArrayNode local34 = (ByteArrayNode) arg0.programs.head(); local34 != null; local34 = (ByteArrayNode) arg0.programs.next()) {
|
||||
@Pc(40) int local40 = (int) local34.key;
|
||||
@Pc(48) MidiInstrument local48 = (MidiInstrument) this.aClass133_23.get(local40);
|
||||
|
|
|
|||
|
|
@ -54,9 +54,9 @@ public final class PcmResampler {
|
|||
|
||||
@OriginalMember(owner = "client!og", name = "a", descriptor = "(III)I")
|
||||
public static int gcd(@OriginalArg(1) int arg0, @OriginalArg(2) int arg1) {
|
||||
if (arg0 > 22050) {
|
||||
if (arg0 > GlobalConfig.AUDIO_SAMPLE_RATE) {
|
||||
arg1 = arg0;
|
||||
arg0 = 22050;
|
||||
arg0 = GlobalConfig.AUDIO_SAMPLE_RATE;
|
||||
}
|
||||
while (arg0 != 0) {
|
||||
@Pc(21) int local21 = arg1 % arg0;
|
||||
|
|
|
|||
|
|
@ -11,7 +11,7 @@ import java.util.Random;
|
|||
public final class SynthInstrument {
|
||||
|
||||
@OriginalMember(owner = "client!pj", name = "o", descriptor = "[I")
|
||||
public static final int[] samples = new int[220500];
|
||||
public static final int[] samples = new int[GlobalConfig.AUDIO_SAMPLE_RATE * 10];
|
||||
@OriginalMember(owner = "client!pj", name = "p", descriptor = "[I")
|
||||
public static final int[] oscillatorIntervalRanges = new int[5];
|
||||
@OriginalMember(owner = "client!pj", name = "q", descriptor = "[I")
|
||||
|
|
|
|||
|
|
@ -49,12 +49,12 @@ public final class SynthSound {
|
|||
if (local1 == 0) {
|
||||
return new byte[0];
|
||||
}
|
||||
local3 = local1 * 22050 / 1000;
|
||||
local3 = local1 * GlobalConfig.AUDIO_SAMPLE_RATE / 1000;
|
||||
@Pc(52) byte[] local52 = new byte[local3];
|
||||
for (@Pc(54) int local54 = 0; local54 < 10; local54++) {
|
||||
if (this.instruments[local54] != null) {
|
||||
@Pc(72) int local72 = this.instruments[local54].length * 22050 / 1000;
|
||||
@Pc(82) int local82 = this.instruments[local54].start * 22050 / 1000;
|
||||
@Pc(72) int local72 = this.instruments[local54].length * GlobalConfig.AUDIO_SAMPLE_RATE / 1000;
|
||||
@Pc(82) int local82 = this.instruments[local54].start * GlobalConfig.AUDIO_SAMPLE_RATE / 1000;
|
||||
@Pc(94) int[] local94 = this.instruments[local54].getSamples(local72, this.instruments[local54].length);
|
||||
for (@Pc(96) int local96 = 0; local96 < local72; local96++) {
|
||||
@Pc(111) int local111 = local52[local96 + local82] + (local94[local96] >> 8);
|
||||
|
|
@ -71,7 +71,7 @@ public final class SynthSound {
|
|||
@OriginalMember(owner = "client!sl", name = "b", descriptor = "()Lclient!kj;")
|
||||
public final PcmSound toPcmSound() {
|
||||
@Pc(2) byte[] local2 = this.getSamples();
|
||||
return new PcmSound(22050, local2, this.start * 22050 / 1000, this.end * 22050 / 1000);
|
||||
return new PcmSound(GlobalConfig.AUDIO_SAMPLE_RATE, local2, this.start * GlobalConfig.AUDIO_SAMPLE_RATE / 1000, this.end * GlobalConfig.AUDIO_SAMPLE_RATE / 1000);
|
||||
}
|
||||
|
||||
@OriginalMember(owner = "client!sl", name = "c", descriptor = "()I")
|
||||
|
|
|
|||
|
|
@ -664,7 +664,7 @@ public final class client extends GameShell {
|
|||
soundChannel.quit();
|
||||
}
|
||||
AudioChannel.init(Preferences.stereo);
|
||||
musicChannel = AudioChannel.create(22050, signLink, canvas, 0);
|
||||
musicChannel = AudioChannel.create(GlobalConfig.AUDIO_SAMPLE_RATE, signLink, canvas, 0);
|
||||
musicChannel.setStream(musicStream);
|
||||
soundChannel = AudioChannel.create(2048, signLink, canvas, 1);
|
||||
soundChannel.setStream(soundStream);
|
||||
|
|
@ -1364,13 +1364,13 @@ public final class client extends GameShell {
|
|||
AudioChannel.init(Preferences.stereo);
|
||||
musicStream = new MidiPcmStream();
|
||||
musicStream.init();
|
||||
musicChannel = AudioChannel.create(22050, GameShell.signLink, GameShell.canvas, 0);
|
||||
musicChannel = AudioChannel.create(GlobalConfig.AUDIO_SAMPLE_RATE, GameShell.signLink, GameShell.canvas, 0);
|
||||
musicChannel.setStream(musicStream);
|
||||
MidiPlayer.init(musicStream, js5Archive15, js5Archive14, js5Archive4);
|
||||
soundChannel = AudioChannel.create(2048, GameShell.signLink, GameShell.canvas, 1);
|
||||
soundStream = new MixerPcmStream();
|
||||
soundChannel.setStream(soundStream);
|
||||
resampler = new PcmResampler(22050, AudioChannel.sampleRate);
|
||||
resampler = new PcmResampler(GlobalConfig.AUDIO_SAMPLE_RATE, AudioChannel.sampleRate);
|
||||
MusicPlayer.titleSong = js5Archive6.getGroupId(TITLE_SONG);
|
||||
mainLoadPercentage = 30;
|
||||
mainLoadState = 50;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue