diff options
-rw-r--r-- | src/base/UMusic.pas | 21 |
1 files changed, 17 insertions, 4 deletions
diff --git a/src/base/UMusic.pas b/src/base/UMusic.pas index d37c4458..d6ff05a9 100644 --- a/src/base/UMusic.pas +++ b/src/base/UMusic.pas @@ -43,6 +43,12 @@ uses type TNoteType = (ntFreestyle, ntNormal, ntGolden); + TPos = record + CP: integer; + line: integer; + note: integer; + end; + {** * acoStretch: Stretch to screen width and height * - ignores aspect @@ -86,6 +92,10 @@ type Tone: integer; // full range tone Text: UTF8String; // text assigned to this fragment (a syllable, word, etc.) NoteType: TNoteType; // note-type: golden-note/freestyle etc. + + IsMedley: boolean; //just for editor + IsStartPreview: boolean; //just for editor + end; (** @@ -98,7 +108,7 @@ type Lyric: UTF8String; //LyricWidth: real; // @deprecated: width of the line in pixels. // Do not use this as the width is not correct. - // Use TLyricsEngine.GetUpperLine().Width instead. + // Use TLyricsEngine.GetUpperLine().Width instead. End_: integer; BaseNote: integer; HighNote: integer; // index of last note in line (= High(Note)?) @@ -110,7 +120,7 @@ type (** * TLines stores sets of lyric lines and information on them. * Normally just one set is defined but in duet mode it might for example - * contain two sets. + * contain two sets. *) TLines = record Current: integer; // for drawing of current line @@ -286,7 +296,7 @@ type * free the SourceStream after the Playback-Stream is closed. * You may use an OnClose-handler to achieve this. GetSourceStream() * guarantees to deliver this method's SourceStream parameter to - * the OnClose-handler. Freeing SourceStream at OnClose is allowed. + * the OnClose-handler. Freeing SourceStream at OnClose is allowed. *) function Open(SourceStream: TAudioSourceStream): boolean; virtual; abstract; @@ -421,7 +431,7 @@ type ['{E4AE0B40-3C21-4DC5-847C-20A87E0DFB96}'] function InitializePlayback: boolean; function FinalizePlayback: boolean; - + function GetOutputDeviceList(): TAudioOutputDeviceList; procedure SetAppVolume(Volume: single); @@ -899,6 +909,7 @@ begin // stop, close and free sounds SoundLib.Free; + // stop and close music stream if (AudioPlayback <> nil) then AudioPlayback.Close; @@ -1091,7 +1102,9 @@ end; function TAudioPlaybackStream.Synchronize(BufferSize: integer; FormatInfo: TAudioFormatInfo): integer; var TimeDiff: double; + FrameDiff: double; FrameSkip: integer; + ReqFrames: integer; MasterClock: real; CurPosition: real; const |