UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
IMediaModule.h
Go to the documentation of this file.
1// Copyright Epic Games, Inc. All Rights Reserved.
2
3#pragma once
4
5#include "Containers/Array.h"
7#include "Misc/Timespan.h"
10
11class FName;
13class IMediaClock;
15class IMediaTicker;
18
34 : public IModuleInterface
35{
36public:
37
38 //~ Platform management
39
40 /*
41 * Get a nice platform name from a GUID
42 */
43 virtual FName GetPlatformName(const FGuid& PlatformGuid) const = 0;
44
45 /*
46 * Get a GUID from a nice platform name
47 */
48 virtual FGuid GetPlatformGuid(const FName & PlatformName) const = 0;
49
50 //~ Capture devices
51
59
66 virtual void RegisterCaptureSupport(IMediaCaptureSupport& Support) = 0;
67
75
76public:
77
78 //~ Player factories
79
87
95 virtual IMediaPlayerFactory* GetPlayerFactory(const FName& FactoryName) const = 0;
96
105
112 virtual void RegisterPlayerFactory(IMediaPlayerFactory& Factory) = 0;
113
121
127
132
137
138public:
139
140 //~ Time management
141
148 virtual IMediaClock& GetClock() = 0;
149
156 virtual IMediaTicker& GetTicker() = 0;
157
161 virtual double GetFrameStartTime() const = 0;
162
169
178 virtual void LockToTimecode(bool Locked) = 0;
179
186
187
194
200 virtual void TickPostEngine() = 0;
201
207 virtual void TickPostRender() = 0;
208
214 virtual void TickPreEngine() = 0;
215
221 virtual void TickPreSlate() = 0;
222
223public:
224
226 virtual ~IMediaModule() { }
227};
FPlatformTypes::uint64 uint64
A 64-bit unsigned integer.
Definition Platform.h:1117
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
Definition NameTypes.h:617
Definition IMediaCaptureSupport.h:77
Definition IMediaClock.h:15
Definition IMediaModule.h:35
virtual void RegisterCaptureSupport(IMediaCaptureSupport &Support)=0
virtual void LockToTimecode(bool Locked)=0
virtual void TickPostRender()=0
virtual double GetFrameStartTime() const =0
virtual IMediaClock & GetClock()=0
virtual TSharedPtr< IMediaTimeSource, ESPMode::ThreadSafe > GetTimeSource()=0
virtual IMediaPlayerFactory * GetPlayerFactory(const FGuid &PlayerPluginGuid) const =0
virtual FName GetPlatformName(const FGuid &PlatformGuid) const =0
virtual void TickPreEngine()=0
virtual void SetPlayerLifecycleManagerDelegate(IMediaPlayerLifecycleManagerDelegate *Delegate)=0
virtual const TArray< IMediaCaptureSupport * > & GetCaptureSupports() const =0
virtual FGuid GetPlatformGuid(const FName &PlatformName) const =0
virtual IMediaPlayerLifecycleManagerDelegate * GetPlayerLifecycleManagerDelegate()=0
virtual void SetTimeSource(const TSharedPtr< IMediaTimeSource, ESPMode::ThreadSafe > &NewTimeSource)=0
virtual void TickPreSlate()=0
virtual IMediaTicker & GetTicker()=0
virtual uint64 CreateMediaPlayerInstanceID()=0
virtual IMediaPlayerFactory * GetPlayerFactory(const FName &FactoryName) const =0
virtual ~IMediaModule()
Definition IMediaModule.h:226
virtual FSimpleMulticastDelegate & GetOnTickPreEngineCompleted()=0
virtual const TArray< IMediaPlayerFactory * > & GetPlayerFactories() const =0
virtual void UnregisterPlayerFactory(IMediaPlayerFactory &Factory)=0
virtual void UnregisterCaptureSupport(IMediaCaptureSupport &Support)=0
virtual void RegisterPlayerFactory(IMediaPlayerFactory &Factory)=0
virtual void TickPostEngine()=0
Definition IMediaPlayerFactory.h:67
Interface to receive global player lifetime events from media framework.
Definition IMediaPlayerLifecycleManager.h:74
Definition IMediaTicker.h:14
Definition IMediaTimeSource.h:213
Definition ModuleInterface.h:14
Definition Array.h:670
Definition SharedPointer.h:692
Definition Guid.h:109