aboutsummaryrefslogtreecommitdiffstats
path: root/src/base/URecord.pas (unfollow)
Commit message (Collapse)AuthorFilesLines
2010-04-27- device input latency is now configurable via config.initobigun1-0/+1
- latency[i] determines the latency for device i in milliseconds or -1 for autodetection (default) - this is necessary as mic capturing with portaudio (on linux) gets stuck if latency is too low. Either because portaudio's latency autodetection does not work or because the mic capture callback takes too long before it returns. In both cases the user should set the latency to a value of 100 (ms). - better input device test, it should not remove working devices anymore. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@2313 b956fd51-792f-4845-bead-9b4dfca2ff2c
2010-04-19bugfix for crash with portaudio (all platforms):tobigun1-7/+9
- UAudioInput_Portaudio: UnifyDeviceNames was called with the wrong index further changes: - BASS input source-names seem to be encoded with local encoding and are converted to UTF8 - Portaudio source and device names encoding is auto-detected and converted to UTF8 - some clean-up git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@2252 b956fd51-792f-4845-bead-9b4dfca2ff2c
2010-04-13- save input device names as UTF8Stringswhiteshark01-3/+3
- device names of basslib are assumed to be in local encoding - device names of portaudio are assumed to be in utf-8 fixes: display of device names w/ special characters w/ basslib ('ä' for me) to-do: proof encoding of device names for basslib and portaudio git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@2234 b956fd51-792f-4845-bead-9b4dfca2ff2c
2010-03-12fix bug report ID: 2969613. Thanks to Mike greywindk-m_schindler1-5/+6
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@2191 b956fd51-792f-4845-bead-9b4dfca2ff2c
2009-04-09Warnings and Notes cleanupk-m_schindler1-6/+4
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1663 b956fd51-792f-4845-bead-9b4dfca2ff2c
2009-03-07final cleanup of Umain. Creation of UNotek-m_schindler1-1/+1
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1627 b956fd51-792f-4845-bead-9b4dfca2ff2c
2009-02-22formattingk-m_schindler1-68/+59
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1599 b956fd51-792f-4845-bead-9b4dfca2ff2c
2009-02-04- PChar replaced by PByteArray (for byte buffers) or PAnsiString (for ↵tobigun1-9/+9
zero-terminated strings) - TRingBuffer.Size()/.Available() added git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1584 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-10-25Software boost enabled again. TODO: boost per device, not for all.tobigun1-5/+1
Note: do not use software boost if possible. Always adjust the the mixer options (volume, mic boost) there first. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1472 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-09-23indentation unified, no code change.k-m_schindler1-7/+8
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1406 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-09-23gpl header added and property svn:header set to "HeadURL Id"k-m_schindler1-0/+25
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1403 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-09-02Moved: The folder classes has been renamed to basemogguh1-0/+0
Updated: ultrastardx.dpr has been changed accordingly git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1339 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-27rename Classes part2k-m_schindler1-0/+0
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1308 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-27rename Classes part1k-m_schindler1-0/+0
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1307 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-27Reordering of the directories[1]: moving Game/Code to srck-m_schindler1-0/+0
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1302 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-15Race-Conditions fixed in recording stuff.tobigun1-54/+89
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1267 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-15Removed now unneeded define for VoicePassthrough, added a begin and a endmogguh1-8/+6
git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1264 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-08-15VoicePassthrough is now available at the options, turns playback from the ↵mogguh1-3/+3
microphone on/off git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1261 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-07-02Audio/Video engine update:tobigun1-101/+158
- 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
2008-05-10Volumes are floating point values (single) now. The range changed from [0 .. ↵tobigun1-5/+5
100] to [0.0 .. 1.0] git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1081 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-05-09- input-source selection works now (with bass or portaudio with portmixer)tobigun1-51/+116
- audio-effects (DSP) interface for audio-playback plus a simple voice removal example (does not sound that good) - FFMpeg support for BASS - audio-clock for FFMpeg for GetPosition and synchronisation - more compatible seeking in FFMpeg - clean termination of the audio interfaces/streams (especially ffmpeg) - Audio output device enumeration (selection will be added later to the sounds option screen) - display of threshold and volume in the record-options screen - threshold and volume can be changed with the 'T' (threshold) and '+'/'-' (source volume) keys - added a FadeIn() method to the IAudioPlayback interface - some minor changes to the audio classes/screens - new base-class for audio-playback classes (used by bass, portaudio and sdl) git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1078 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-05-08added "inherited ..." to all constructors to assure that the base-class ↵tobigun1-0/+1
constructor is called. Different to C or Java, the constructor or destructor of the base class (except that of TObject) is not called by default if "inherited ..." is not given (very strange). This is no problem with classes inherited directly from TObject, because the TObject constructor is always called (and sets the values of the fields to 0-values) but i added inherited to these constructors too because the base class may change from TObject to something different and the "inherited" will probably not added in this case and causing problems. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@1070 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-03-10auto removed a bunch of unused local variablesjaybinks1-610/+610
( removed with a script parsing compiler output ) git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@950 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-03-03- Input now supports multiple SampleRates (not fixed to 44100Hz anymore)tobigun1-159/+234
- Input is not restricted to stereo input-devices anymore (mono and multi-channel devices work too) - Some improvements on the input-device detection - Retrieves native capture sample-rate on Vista and MacOSX with BASS (maybe this solves some problems with wrong sample-rates) - Capture-volume preview: a little modification to jay's approach. Now there are volume bars and pitch-displays. It needs some fine-tuning, maybe mog can do this if he likes. - Some indentation/clean-up/translations git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@900 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-02-05General:tobigun1-320/+530
- cleanup and adaption of SingDrawOscilloscope Portaudio/SDL audio output: - stuttering in portaudio output has been fixed (SDL_MixBuffers cannot be used without initializing the SDL audio stuff first, so it is not usable with portaudio. Now SDL is used for audio-output instead of portaudio (although the file-name is UAudioPlayback_Portaudio.pas at the moment). - cleaner file closing - volume adjustment UMusic: - cleanup of the audio-interfaces - introduced TNoteType = (ntFreestyle, ntNormal, ntGolden) - some bug-fixes - introduced TSoundLibrary. This is library for all in-game sounds used by USDX. Instead of calling AudioPlayer.PlaySwoosh you should call AudioPlayer.PlaySound(SoundLib.Swoosh) now. You might call SoundLib.Swoosh.Play too, but this is not recommended at the moment because SoundLib.Swoosh could be nil if the file was not found. The SoundLibrary approach is much cleaner than the previous one. The AudioPlayer does not have to specify a Play... and Stop... method for every available sound anymore. In addition it is not an AudioPlayers responsibility to init the in-game sounds. URecord: - polish to english translation of some variables - CaptureSoundLeft/Right is CaptureChannel[0/1] now - TSoundCardInput -> TAudioInputDeviceSource - TGenericSoundCard.Input -> TGenericSoundCard.Source - autocorrelation algorithm more readable now - Clean-up of the audio-input interface - moved cloned code of the input-classes to one base class (TAudioInputBase) - Cleaner finalization - Start-/StopCapture will not crash anymore in the recording-options menu - Fixed several bugs in the autocorrelation stuff (e.g. wrong usage of $10000) - SzczytJest (now ToneValid) was not used correctly. ToneValid is set to true if a valid tone was found (= the sound was louder than the threshold -> no background noise). If i remember correctly the sound was accepted although the tone was invalid. So the old data was used although noone was singing. This resulted in some sort of ghost-singer effect. UIni: - moved TIni.Card to TScreenOptionsRecord.Card because it is not stored in the ini-file and will not be in the future. - TIni.CardList ist now TIni.InputDeviceConfig. The name cardlist was misleading because it just specifies input- but no output-devices. In addition a soundcard can have multiple input-devices (at least in linux). - bugfix on InputDeviceConfig (formerly CardList) usage. USDX expected that the indices of the corresponding elements in TIni.InputDeviceConfig[] and TAudioInputProcessor.Device[] were the same. This is wrong. If device 2 was defined at first place in the ini and device 1 at the second, the indices of the two arrays didn't match (they were swapped) erroneously. To fix this and to support the item listed below the index to TIni.InputDeviceConfig[] is now stored in TAudioInputDevice.CfgIndex. NOTE: InputDeviceConfig[] contains configurations of non-available (unplugged) devices. Iterate over TAudioInputProcessor.Device[] for available devices. - configurations of external devices that are not plugged in will not be deleted anymore. - multiple definitions of one device in the ini-file will not crash USDX anymore - CardList[I].ChannelL/R now are InputDeviceConfig[I].ChannelToPlayerMap[0/1]. I think the new name is more intuitive because it maps a channel to a player number. Now the both vars are joint to one array. Now it is possible to use loops to process them and we might support more than two input channels on one device in the future (if such devices exist) git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@827 b956fd51-792f-4845-bead-9b4dfca2ff2c
2008-01-12bunch of smaller changes...jaybinks1-22/+59
some changes to song loading... Record global changed to singleton object started implementing mic volume display in Settings-Record hope this dosnt break anything.. :P git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@789 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-12-05- Removed all BASS stuff. BASS initialization is now done in UAudio_bass (or ↵tobigun1-134/+52
UAudio_portaudio). - Sound moved to Recording.Sound - Removed duplicated unreferenced global Soundcard-array var (which was moved to the TRecord-Class previously but has not been deleted) git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@666 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-11-08Mac OS X: Added PseudoThread for debugging, because debugging of threaded ↵eddie-08151-0/+10
code causes problems with Xcode and FreePascal. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@594 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-11-01fixed failed buildsjaybinks1-0/+4
build:USDX-LAZLIN-75 build:USDX-LAZLIN-76 for some reason we can not use {$MODE Delphi} in an included file. ( Probably because of the way the compier scopes this switch to each pas file ) ive had to revert this part of eddies changes. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@548 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-11-01Mac OS X version compiles and links. I hope I didn't break too many files on ↵eddie-08151-4/+0
windows/linux. Added switches.inc to all files. Changed many IFDEFs. For Windows-only code please use MSWINDOWS instead of WIN32 now. WIN32 is also used by the Mac port. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@546 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-10-08fixed bad build build#USDX-DELPHI-31jaybinks1-1/+2
oops... git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@473 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-09-20Ultrastar-DX now compiles in linux jaybinks1-347/+359
(using lazarus) Bass etc is commented out.. but it compiles, and im working through the runtime errors. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@408 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-09-18changes in order to compile in lazarus...jaybinks1-67/+50
minor tidy ups and removal of big old comment blocks.. git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@394 b956fd51-792f-4845-bead-9b4dfca2ff2c
2007-09-02Some Cleanup in URecordwhiteshark01-25/+18
Some Cleanup in UMusic Some Cleanup in ProjectFile Upgrade from Bass 2.1 to Bass 2.3 git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/trunk@361 b956fd51-792f-4845-bead-9b4dfca2ff2c