فهرست منبع

Fix audio quality issues on JS target (#432)

Pavel Alexandrov 7 سال پیش
والد
کامیت
2f5440bfa8
2فایلهای تغییر یافته به همراه8 افزوده شده و 0 حذف شده
  1. 4 0
      hxd/snd/Manager.hx
  2. 4 0
      hxd/snd/openal/Driver.hx

+ 4 - 0
hxd/snd/Manager.hx

@@ -612,7 +612,11 @@ class Manager {
 		targetFormat   = switch (dat.sampleFormat) {
 			case UI8 : UI8;
 			case I16 : I16;
+			#if js
+			case F32 : F32;
+			#else 
 			case F32 : I16;
+			#end
 		}
 		return targetChannels == dat.channels && targetFormat == dat.sampleFormat && targetRate == dat.samplingRate;
 	}

+ 4 - 0
hxd/snd/openal/Driver.hx

@@ -115,7 +115,11 @@ class Driver implements hxd.snd.Driver {
 		var alFormat = switch (format) {
 			case UI8 : channelCount == 1 ? AL.FORMAT_MONO8  : AL.FORMAT_STEREO8;
 			case I16 : channelCount == 1 ? AL.FORMAT_MONO16 : AL.FORMAT_STEREO16;
+			#if (js)
+			case F32 : channelCount == 1 ? AL.FORMAT_MONOF32 : AL.FORMAT_STEREOF32;
+			#else
 			case F32 : channelCount == 1 ? AL.FORMAT_MONO16 : AL.FORMAT_STEREO16;
+			#end
 		}
 		AL.bufferData(buffer.inst, alFormat, data, size, samplingRate);
 	}