diff options
author | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-07-02 07:50:39 +0000 |
---|---|---|
committer | tobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c> | 2008-07-02 07:50:39 +0000 |
commit | faf4c13bf41a17ce920a2194fc396f8bf7b44331 (patch) | |
tree | 0049a0dacad82a08b934167660bfabd6c8ea47a8 /Game/Code/Classes/UAudioCore_Bass.pas | |
parent | 67d0be6741c5466c786d8d389e34c83e1be7e3c0 (diff) | |
download | usdx-faf4c13bf41a17ce920a2194fc396f8bf7b44331.tar.gz usdx-faf4c13bf41a17ce920a2194fc396f8bf7b44331.tar.xz usdx-faf4c13bf41a17ce920a2194fc396f8bf7b44331.zip |
Audio/Video engine update:
- lyrics<->audio synchronisation (TSyncSource)
- better resampling (optional support for libsamplerate)
- cleaner termination of audio/video streams/devices
- improved decoders and decoder infrastructure
- many other improvements/cleanups
Currently just for testing (not enabled by default):
- Background music
- Voice-Passthrough (hear what you sing)
- Video VSync
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1157 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'Game/Code/Classes/UAudioCore_Bass.pas')
-rw-r--r-- | Game/Code/Classes/UAudioCore_Bass.pas | 18 |
1 files changed, 15 insertions, 3 deletions
diff --git a/Game/Code/Classes/UAudioCore_Bass.pas b/Game/Code/Classes/UAudioCore_Bass.pas index 1f754be2..beb2db16 100644 --- a/Game/Code/Classes/UAudioCore_Bass.pas +++ b/Game/Code/Classes/UAudioCore_Bass.pas @@ -16,13 +16,13 @@ uses type TAudioCore_Bass = class - private - constructor Create(); public + constructor Create(); class function GetInstance(): TAudioCore_Bass; function ErrorGetString(): string; overload; function ErrorGetString(errCode: integer): string; overload; function ConvertAudioFormatToBASSFlags(Format: TAudioSampleFormat; out Flags: DWORD): boolean; + function ConvertBASSFlagsToAudioFormat(Flags: DWORD; out Format: TAudioSampleFormat): boolean; end; implementation @@ -41,7 +41,7 @@ end; class function TAudioCore_Bass.GetInstance(): TAudioCore_Bass; begin - if not assigned(Instance) then + if (not Assigned(Instance)) then Instance := TAudioCore_Bass.Create(); Result := Instance; end; @@ -108,4 +108,16 @@ begin Result := true; end; +function TAudioCore_Bass.ConvertBASSFlagsToAudioFormat(Flags: DWORD; out Format: TAudioSampleFormat): boolean; +begin + if ((Flags and BASS_SAMPLE_FLOAT) <> 0) then + Format := asfFloat + else if ((Flags and BASS_SAMPLE_8BITS) <> 0) then + Format := asfU8 + else + Format := asfS16; + + Result := true; +end; + end. |