aboutsummaryrefslogtreecommitdiffstats
path: root/mediaplugin/src/media/UMedia_dummy.pas
diff options
context:
space:
mode:
authortobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-11-02 23:58:34 +0000
committertobigun <tobigun@b956fd51-792f-4845-bead-9b4dfca2ff2c>2010-11-02 23:58:34 +0000
commit20bf3c992909e83e5af53cf00d87b7cbaef0d1a6 (patch)
tree0120d448ed644678411423a38e02a42fa2b017ae /mediaplugin/src/media/UMedia_dummy.pas
parent5000060b04bed23cbbd88ba43ed546220c4b7c69 (diff)
downloadusdx-20bf3c992909e83e5af53cf00d87b7cbaef0d1a6.tar.gz
usdx-20bf3c992909e83e5af53cf00d87b7cbaef0d1a6.tar.xz
usdx-20bf3c992909e83e5af53cf00d87b7cbaef0d1a6.zip
- Support for media interface priorities
- all media interfaces classes have to explicitly implement IMediaInterface, otherwise access to the priority and name will fail git-svn-id: svn://svn.code.sf.net/p/ultrastardx/svn/branches/experimental@2707 b956fd51-792f-4845-bead-9b4dfca2ff2c
Diffstat (limited to 'mediaplugin/src/media/UMedia_dummy.pas')
-rw-r--r--mediaplugin/src/media/UMedia_dummy.pas46
1 files changed, 42 insertions, 4 deletions
diff --git a/mediaplugin/src/media/UMedia_dummy.pas b/mediaplugin/src/media/UMedia_dummy.pas
index 1ada6603..d5e99aa3 100644
--- a/mediaplugin/src/media/UMedia_dummy.pas
+++ b/mediaplugin/src/media/UMedia_dummy.pas
@@ -43,7 +43,7 @@ uses
UPath;
type
- TAudio_Dummy = class( TInterfacedObject, IAudioPlayback, IAudioInput )
+ TAudio_Dummy = class( TInterfacedObject, IMediaInterface, IAudioPlayback, IAudioInput )
private
DummyOutputDeviceList: TAudioOutputDeviceList;
public
@@ -99,7 +99,7 @@ type
procedure CloseVoiceStream(var VoiceStream: TAudioVoiceStream);
end;
- TVideo_Dummy = class( TInterfacedObject, IVideo )
+ TVideo_Dummy = class(TInterfacedObject, IVideo)
public
procedure Close;
@@ -154,7 +154,8 @@ type
property Position: real read GetPosition write SetPosition;
end;
- TVideoPlayback_Dummy = class( TInterfacedObject, IVideoPlayback, IVideoVisualization )
+ TVideoPlayback_Dummy = class(TInterfacedObject, IMediaInterface,
+ IVideoPlayback, IVideoVisualization)
public
constructor Create();
function GetName: string;
@@ -166,6 +167,16 @@ type
function Open(const FileName: IPath): IVideo;
end;
+ TVideoDecoder_Dummy = class(TInterfacedObject, IMediaInterface, IVideoDecoder)
+ public
+ function GetName: string;
+ function GetPriority: integer;
+
+ function InitializeDecoder(): boolean;
+ function FinalizeDecoder(): boolean;
+ function Open(const FileName: IPath): TVideoDecodeStream;
+ end;
+
function TAudio_Dummy.GetName: string;
begin
Result := 'AudioDummy';
@@ -473,7 +484,7 @@ end;
function TVideoPlayback_Dummy.GetName: string;
begin
- Result := 'VideoDummy';
+ Result := 'VideoPlaybackDummy';
end;
function TVideoPlayback_Dummy.GetPriority: integer;
@@ -496,9 +507,36 @@ begin
Result := TVideo_Dummy.Create;
end;
+{ TVideoDecoder_Dummy }
+
+function TVideoDecoder_Dummy.GetName: string;
+begin
+ Result := 'VideoDecoderDummy';
+end;
+
+function TVideoDecoder_Dummy.GetPriority: integer;
+begin
+ Result := -100;
+end;
+
+function TVideoDecoder_Dummy.InitializeDecoder(): boolean;
+begin
+ Result := true;
+end;
+
+function TVideoDecoder_Dummy.FinalizeDecoder(): boolean;
+begin
+ Result := true;
+end;
+
+function TVideoDecoder_Dummy.Open(const FileName: IPath): TVideoDecodeStream;
+begin
+ Result := nil;
+end;
initialization
MediaManager.Add(TAudio_Dummy.Create);
MediaManager.Add(TVideoPlayback_Dummy.Create);
+ MediaManager.Add(TVideoDecoder_Dummy.Create);
end.