diff options
-rw-r--r-- | src/base/UMusic.pas | 12 | ||||
-rw-r--r-- | src/media/UAudioPlaybackBase.pas | 4 | ||||
-rw-r--r-- | src/media/UMedia_dummy.pas | 4 | ||||
-rw-r--r-- | src/screens/UScreenSing.pas | 4 |
4 files changed, 12 insertions, 12 deletions
diff --git a/src/base/UMusic.pas b/src/base/UMusic.pas index 5d816c9a..e1184da8 100644 --- a/src/base/UMusic.pas +++ b/src/base/UMusic.pas @@ -188,8 +188,8 @@ type end; type - TSyncSource = class - function GetClock(): real; virtual; abstract; + ISyncSource = interface + function GetClock(): real; end; TAudioProcessingStream = class; @@ -250,7 +250,7 @@ type TAudioPlaybackStream = class(TAudioProcessingStream) protected - SyncSource: TSyncSource; + SyncSource: ISyncSource; AvgSyncDiff: double; SourceStream: TAudioSourceStream; @@ -282,7 +282,7 @@ type procedure AddSoundEffect(Effect: TSoundEffect); virtual; abstract; procedure RemoveSoundEffect(Effect: TSoundEffect); virtual; abstract; - procedure SetSyncSource(SyncSource: TSyncSource); + procedure SetSyncSource(SyncSource: ISyncSource); function GetSourceStream(): TAudioSourceStream; property Status: TStreamStatus read GetStatus; @@ -364,7 +364,7 @@ type procedure SetLoop(Enabled: boolean); procedure FadeIn(Time: real; TargetVolume: single); - procedure SetSyncSource(SyncSource: TSyncSource); + procedure SetSyncSource(SyncSource: ISyncSource); procedure Rewind; function Finished: boolean; @@ -978,7 +978,7 @@ begin Result := SourceStream; end; -procedure TAudioPlaybackStream.SetSyncSource(SyncSource: TSyncSource); +procedure TAudioPlaybackStream.SetSyncSource(SyncSource: ISyncSource); begin Self.SyncSource := SyncSource; AvgSyncDiff := -1; diff --git a/src/media/UAudioPlaybackBase.pas b/src/media/UAudioPlaybackBase.pas index de2d5563..228a438f 100644 --- a/src/media/UAudioPlaybackBase.pas +++ b/src/media/UAudioPlaybackBase.pas @@ -60,7 +60,7 @@ type procedure Stop; procedure FadeIn(Time: real; TargetVolume: single); - procedure SetSyncSource(SyncSource: TSyncSource); + procedure SetSyncSource(SyncSource: ISyncSource); procedure SetPosition(Time: real); function GetPosition: real; @@ -228,7 +228,7 @@ begin MusicStream.Position := Time; end; -procedure TAudioPlaybackBase.SetSyncSource(SyncSource: TSyncSource); +procedure TAudioPlaybackBase.SetSyncSource(SyncSource: ISyncSource); begin if assigned(MusicStream) then MusicStream.SetSyncSource(SyncSource); diff --git a/src/media/UMedia_dummy.pas b/src/media/UMedia_dummy.pas index 25e94724..c38a8e60 100644 --- a/src/media/UMedia_dummy.pas +++ b/src/media/UMedia_dummy.pas @@ -62,7 +62,7 @@ type procedure SetPosition(Time: real); function GetPosition: real; - procedure SetSyncSource(SyncSource: TSyncSource); + procedure SetSyncSource(SyncSource: ISyncSource); procedure GetFrame(Time: Extended); procedure DrawGL(Screen: integer); @@ -156,7 +156,7 @@ begin Result := 0; end; -procedure TMedia_dummy.SetSyncSource(SyncSource: TSyncSource); +procedure TMedia_dummy.SetSyncSource(SyncSource: ISyncSource); begin end; diff --git a/src/screens/UScreenSing.pas b/src/screens/UScreenSing.pas index 20f3b15e..0b7dfba4 100644 --- a/src/screens/UScreenSing.pas +++ b/src/screens/UScreenSing.pas @@ -53,8 +53,8 @@ uses UTime; type - TLyricsSyncSource = class(TSyncSource) - function GetClock(): real; override; + TLyricsSyncSource = class(TInterfacedObject,ISyncSource) + function GetClock(): real; end; type |