80 lines
1.5 KiB
C
80 lines
1.5 KiB
C
|
// Copyright 1998-2018 Epic Games, Inc. All Rights Reserved.
|
||
|
|
||
|
#pragma once
|
||
|
|
||
|
#include "UObject/Object.h"
|
||
|
#include "UObject/ObjectMacros.h"
|
||
|
|
||
|
#include "FFMPEGMediaSettings.generated.h"
|
||
|
|
||
|
|
||
|
UENUM()
|
||
|
enum class ESynchronizationType : uint8 {
|
||
|
AudioMaster = 0,
|
||
|
VideoMaster,
|
||
|
ExternalClock
|
||
|
};
|
||
|
|
||
|
UENUM()
|
||
|
enum class ERTSPTransport : uint8 {
|
||
|
Default = 0,
|
||
|
Udp,
|
||
|
UdpMulticast,
|
||
|
Tcp,
|
||
|
Http,
|
||
|
Https
|
||
|
};
|
||
|
|
||
|
|
||
|
|
||
|
/**
|
||
|
* Settings for the WmfMedia plug-in.
|
||
|
*/
|
||
|
UCLASS(config=Engine)
|
||
|
class FFMPEGMEDIAFACTORY_API UFFMPEGMediaSettings
|
||
|
: public UObject
|
||
|
{
|
||
|
GENERATED_BODY()
|
||
|
|
||
|
public:
|
||
|
|
||
|
/** Default constructor. */
|
||
|
UFFMPEGMediaSettings();
|
||
|
|
||
|
|
||
|
public:
|
||
|
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category=Media)
|
||
|
bool UseInfiniteBuffer;
|
||
|
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
bool AllowFrameDrop;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
bool UseHardwareAcceleratedCodecs;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
bool DisableAudio;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category=Media)
|
||
|
bool ZeroLatencyStreaming;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
ERTSPTransport RtspTransport;
|
||
|
|
||
|
//Allow non spec compliant speedup tricks.
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
bool SpeedUpTricks;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media, meta = (UIMin=0, UIMax = 16))
|
||
|
int AudioThreads;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media, meta = (UIMin=0, UIMax = 16))
|
||
|
int VideoThreads;
|
||
|
|
||
|
UPROPERTY(config, EditAnywhere, Category = Media)
|
||
|
ESynchronizationType SyncType;
|
||
|
};
|