UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
VideoEncoderFactory.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 "HAL/Platform.h"
11#include "Templates/UniquePtr.h"
12#include "VideoCommon.h"
13#include "VideoEncoder.h"
14
16
17namespace AVEncoder
18{
19 class FVideoEncoderInput;
20
21 class UE_DEPRECATED(5.4, "AVEncoder has been deprecated. Please use the AVCodecs plugin family instead.") FVideoEncoderFactory
22 {
23 public:
25 static AVENCODER_API void Shutdown();
27
28 bool IsSetup() const { return bWasSetup; }
29
30 // --- encoder registry
31
32 // the callback type used to create a registered encoder
35
36 // register an encoder so that it can be iterated and created
38
39 // get a list of registered encoders
40 const TArray<FVideoEncoderInfo>& GetAvailable() const { return AvailableEncoders; }
41 AVENCODER_API bool GetInfo(uint32 InID, FVideoEncoderInfo& OutInfo) const;
42 AVENCODER_API bool HasEncoderForCodec(ECodecType CodecType) const;
43
44 // --- encoder creation
45
46 AVENCODER_API TUniquePtr<FVideoEncoder> Create(uint32 InID, const FVideoEncoder::FLayerConfig& config);
49 private:
50 FVideoEncoderFactory() = default;
51 ~FVideoEncoderFactory() = default;
53 FVideoEncoderFactory& operator=(const FVideoEncoderFactory&) = delete;
54
56
58 static AVENCODER_API FVideoEncoderFactory Singleton;
63
65 TArray<FVideoEncoderInfo> AvailableEncoders;
67 };
68
69} /* namespace AVEncoder */
#define UE_DEPRECATED(Version, Message)
Definition CoreMiscDefines.h:302
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
UE::FPlatformRecursiveMutex FCriticalSection
Definition CriticalSection.h:53
#define PRAGMA_ENABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:12
#define PRAGMA_DISABLE_DEPRECATION_WARNINGS
Definition GenericPlatformCompilerPreSetup.h:8
uint32_t uint32
Definition binka_ue_file_header.h:6
Definition ThreadSafeBool.h:17
Definition ThreadSafeCounter.h:14
Definition Array.h:670
Definition SharedPointer.h:692
Definition UniquePtr.h:107
Definition AudioEncoder.cpp:7
FORCEINLINE T * Get(const FObjectPtr &ObjectPtr)
Definition ObjectPtr.h:426