Class CaptureBase
Base class wrapping common capture functionality
Inheritance
System.Object
CaptureBase
Assembly: cs.temp.dll.dll
public class CaptureBase : MonoBehaviour
Fields
Declaration
protected bool _androidUpdateMediaGallery
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool _capturing
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected FileInfo _fileInfo
Field Value
| Type |
Description |
| FileInfo |
|
Declaration
protected string _filePath
Field Value
| Type |
Description |
| System.String |
|
Declaration
protected string _finalFilePath
Field Value
| Type |
Description |
| System.String |
|
Declaration
Field Value
| Type |
Description |
| System.Int32 |
|
Declaration
protected bool _isDirectX11
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool _isTopDown
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected MotionBlur _motionBlur
Field Value
Declaration
protected Camera[] _motionBlurCameras
Field Value
| Type |
Description |
| Camera[] |
|
Declaration
protected int _motionBlurSamples
Field Value
| Type |
Description |
| System.Int32 |
|
Declaration
protected OutputTarget _outputTarget
Field Value
Declaration
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected NativePlugin.PixelFormat _pixelFormat
Field Value
Declaration
protected int _renderAntiAliasing
Field Value
| Type |
Description |
| System.Int32 |
|
Declaration
protected CaptureBase.Resolution _renderResolution
Field Value
Declaration
protected Vector2 _renderSize
Field Value
Declaration
protected Material _sideBySideMaterial
Field Value
| Type |
Description |
| Material |
|
_sideBySideTexture
Declaration
protected RenderTexture _sideBySideTexture
Field Value
| Type |
Description |
| RenderTexture |
|
Declaration
protected int _sourceHeight
Field Value
| Type |
Description |
| System.Int32 |
|
Declaration
protected int _sourceWidth
Field Value
| Type |
Description |
| System.Int32 |
|
_supportTextureRecreate
Declaration
protected bool _supportTextureRecreate
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected int _targetHeight
Field Value
| Type |
Description |
| System.Int32 |
|
Declaration
protected int _targetWidth
Field Value
| Type |
Description |
| System.Int32 |
|
_texture
Declaration
protected Texture2D _texture
Field Value
| Type |
Description |
| Texture2D |
|
Declaration
protected Transparency _Transparency
Field Value
Declaration
protected bool _useMotionBlur
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool _useWaitForEndOfFrame
Field Value
| Type |
Description |
| System.Boolean |
|
Declaration
protected YieldInstruction _waitForEndOfFrame
Field Value
| Type |
Description |
| YieldInstruction |
|
Declaration
public static readonly string[] DefaultAudioCaptureDevicePriorityAndroid
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCaptureDevicePriorityIOS
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCaptureDevicePriorityMacOS
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCaptureDevicePriorityWindow
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCodecPriorityAndroid
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCodecPriorityIOS
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCodecPriorityMacOS
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultAudioCodecPriorityWindows
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public const CaptureBase.OutputPath DefaultOutputFolderType = CaptureBase.OutputPath.RelativeToProject
Field Value
Declaration
public static readonly string[] DefaultVideoCodecPriorityAndroid
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultVideoCodecPriorityMacOS
Field Value
| Type |
Description |
| System.String[] |
|
Declaration
public static readonly string[] DefaultVideoCodecPriorityWindows
Field Value
| Type |
Description |
| System.String[] |
|
Properties
Declaration
public static HashSet<string> ActiveFilePaths { get; }
Property Value
| Type |
Description |
| HashSet<System.String> |
|
Declaration
public bool AllowManualFileExtension { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public bool AllowOfflineVSyncDisable { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public bool AppendFilenameTimestamp { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public AudioCaptureSource AudioCaptureSource { get; set; }
Property Value
Declaration
public string[] AudioCodecPriorityMacOS { get; set; }
Property Value
| Type |
Description |
| System.String[] |
|
Declaration
public string[] AudioCodecPriorityWindows { get; set; }
Property Value
| Type |
Description |
| System.String[] |
|
Declaration
public Action<FileWritingHandler> BeginFinalFileWritingAction { get; set; }
Property Value
Declaration
public int CameraRenderAntiAliasing { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public Vector2 CameraRenderCustomResolution { get; set; }
Property Value
Declaration
public CaptureBase.Resolution CameraRenderResolution { get; set; }
Property Value
Declaration
public CaptureStats CaptureStats { get; }
Property Value
Declaration
public Action<FileWritingHandler> CompletedFileWritingAction { get; set; }
Property Value
Declaration
public string FilenameExtension { get; set; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public string FilenamePrefix { get; set; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public bool FlipVertically { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public int ForceAudioInputDeviceIndex { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public float FrameRate { get; set; }
Property Value
| Type |
Description |
| System.Single |
|
Declaration
public CaptureBase.FrameUpdateMode FrameUpdate { get; set; }
Property Value
Declaration
public int ImageSequenceStartFrame { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public int ImageSequenceZeroDigits { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public bool IsRealTime { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public string LastFilePath { get; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public static string LastFileSaved { get; set; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public bool LogCaptureStartStop { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public int ManualAudioChannelCount { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public int ManualAudioSampleRate { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public MotionBlur MotionBlur { get; set; }
Property Value
Declaration
public Camera[] MotionBlurCameras { get; set; }
Property Value
| Type |
Description |
| Camera[] |
|
Declaration
public int MotionBlurSamples { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public string NamedPipePath { get; set; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public int NativeForceAudioCodecIndex { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public int NativeForceVideoCodecIndex { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public ImageSequenceFormat NativeImageSequenceFormat { get; set; }
Property Value
Declaration
public UnityEvent OnCaptureStart { get; }
Property Value
| Type |
Description |
| UnityEvent |
|
Declaration
public CaptureBase.OutputPath OutputFolder { get; set; }
Property Value
Declaration
public string OutputFolderPath { get; set; }
Property Value
| Type |
Description |
| System.String |
|
Declaration
public OutputTarget OutputTarget { get; set; }
Property Value
Declaration
public bool PauseCaptureOnAppPause { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public bool PersistAcrossSceneLoads { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public CaptureBase.DownScale ResolutionDownScale { get; set; }
Property Value
Declaration
public Vector2 ResolutionDownscaleCustom { get; set; }
Property Value
Declaration
public Codec SelectedAudioCodec { get; }
Property Value
Declaration
public Device SelectedAudioInputDevice { get; }
Property Value
Declaration
public Codec SelectedVideoCodec { get; }
Property Value
Declaration
public StartDelayMode StartDelay { get; set; }
Property Value
Declaration
public float StartDelaySeconds { get; set; }
Property Value
| Type |
Description |
| System.Single |
|
Declaration
public StartTriggerMode StartTrigger { get; set; }
Property Value
Declaration
public int StopAfterFramesElapsed { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public float StopAfterSecondsElapsed { get; set; }
Property Value
| Type |
Description |
| System.Single |
|
Declaration
public StopMode StopMode { get; set; }
Property Value
SupportTextureRecreate
Declaration
public bool SupportTextureRecreate { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public int TimelapseScale { get; set; }
Property Value
| Type |
Description |
| System.Int32 |
|
Declaration
public Transparency Transparency { get; }
Property Value
Declaration
public UnityAudioCapture UnityAudioCapture { get; set; }
Property Value
Declaration
public bool UseMotionBlur { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public bool UseWaitForEndOfFrame { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Declaration
public string[] VideoCodecPriorityMacOS { get; set; }
Property Value
| Type |
Description |
| System.String[] |
|
Declaration
public string[] VideoCodecPriorityWindows { get; set; }
Property Value
| Type |
Description |
| System.String[] |
|
Declaration
public bool WriteOrientationMetadata { get; set; }
Property Value
| Type |
Description |
| System.Boolean |
|
Methods
ApplyPostOperations(String, VideoEncoderHints, String)
Declaration
protected void ApplyPostOperations(string filePath, VideoEncoderHints hints, string finalFilePath)
Parameters
| Type |
Name |
Description |
| System.String |
filePath |
|
| VideoEncoderHints |
hints |
|
| System.String |
finalFilePath |
|
Declaration
protected virtual void Awake()
Declaration
public void CancelCapture()
Declaration
protected bool CanContinue()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool CanOutputFrame()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public static void DeleteCapture(OutputTarget outputTarget, string path)
Parameters
| Type |
Name |
Description |
| OutputTarget |
outputTarget |
|
| System.String |
path |
|
Declaration
public void EncodeAudio(NativeArray<float> audioData)
Parameters
| Type |
Name |
Description |
| NativeArray<System.Single> |
audioData |
|
Declaration
public void EncodeAudio(float[] audioData)
Parameters
| Type |
Name |
Description |
| System.Single[] |
audioData |
|
Declaration
public virtual void EncodePointer(IntPtr ptr)
Parameters
| Type |
Name |
Description |
| System.IntPtr |
ptr |
|
EncodeTexture(Texture2D)
Declaration
protected void EncodeTexture(Texture2D texture)
Parameters
| Type |
Name |
Description |
| Texture2D |
texture |
|
Declaration
protected void EncodeUnityAudio()
Declaration
public UnityAudioCapture FindOrCreateUnityAudioCapture(bool logWarnings)
Parameters
| Type |
Name |
Description |
| System.Boolean |
logWarnings |
|
Returns
Declaration
protected void GenerateFilename()
Declaration
protected virtual string GenerateTimestampedFilename(string filenamePrefix, string filenameExtension)
Parameters
| Type |
Name |
Description |
| System.String |
filenamePrefix |
|
| System.String |
filenameExtension |
|
Returns
| Type |
Description |
| System.String |
|
Declaration
protected int GetCameraAntiAliasingLevel(Camera camera)
Parameters
| Type |
Name |
Description |
| Camera |
camera |
|
Returns
| Type |
Description |
| System.Int32 |
|
Declaration
public long GetCaptureFileSize()
Returns
| Type |
Description |
| System.Int64 |
|
Declaration
protected static NativePlugin.Platform GetCurrentPlatform()
Returns
Declaration
public EncoderHints GetEncoderHints(NativePlugin.Platform platform = NativePlugin.Platform.Current)
Parameters
Returns
GetPreviewTexture()
Declaration
public virtual Texture GetPreviewTexture()
Returns
Declaration
public float GetProgress()
Returns
| Type |
Description |
| System.Single |
|
Declaration
public int GetRecordingHeight()
Returns
| Type |
Description |
| System.Int32 |
|
Declaration
public static Vector2 GetRecordingResolution(int width, int height, CaptureBase.DownScale downscale, Vector2 maxVideoSize)
Parameters
| Type |
Name |
Description |
| System.Int32 |
width |
|
| System.Int32 |
height |
|
| CaptureBase.DownScale |
downscale |
|
| Vector2 |
maxVideoSize |
|
Returns
Declaration
public int GetRecordingWidth()
Returns
| Type |
Description |
| System.Int32 |
|
Declaration
public static void GetResolution(CaptureBase.Resolution res, ref int width, ref int height)
Parameters
Declaration
protected float GetSecondsPerCaptureFrame()
Returns
| Type |
Description |
| System.Single |
|
GetSideBySideTexture()
Declaration
public virtual Texture GetSideBySideTexture()
Returns
Declaration
protected static bool HasExtension(string path, string extension)
Parameters
| Type |
Name |
Description |
| System.String |
path |
|
| System.String |
extension |
|
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool InitialiseSideBySideTransparency(int width, int height, bool screenFlip = false, int antiAliasing = 1)
Parameters
| Type |
Name |
Description |
| System.Int32 |
width |
|
| System.Int32 |
height |
|
| System.Boolean |
screenFlip |
|
| System.Int32 |
antiAliasing |
|
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public bool IsCapturing()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public bool IsStartCaptureQueued()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool IsStartDelayComplete()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool IsStopTimeReached()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool IsUsingMotionBlur()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected bool IsUsingUnityAudioComponent()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
protected static int NextMultipleOf4(int value)
Parameters
| Type |
Name |
Description |
| System.Int32 |
value |
|
Returns
| Type |
Description |
| System.Int32 |
|
Declaration
public virtual void OnDestroy()
Declaration
public void PauseCapture()
Declaration
public virtual bool PrepareCapture()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public virtual void PreUpdateFrame()
Declaration
public void QueueStartCapture()
Declaration
protected void RenderThreadEvent(NativePlugin.PluginEvent renderEvent)
Parameters
Declaration
protected void RenormTimer()
Declaration
protected void ResetFPS()
Declaration
public void ResumeCapture()
Declaration
public Codec SelectAudioCodec()
Returns
Declaration
public Device SelectAudioInputDevice()
Returns
Declaration
public void SelectRecordingResolution(int width, int height)
Parameters
| Type |
Name |
Description |
| System.Int32 |
width |
|
| System.Int32 |
height |
|
Declaration
public Codec SelectVideoCodec(bool isStartingCapture = false)
Parameters
| Type |
Name |
Description |
| System.Boolean |
isStartingCapture |
|
Returns
Declaration
public void SetEncoderHints(EncoderHints hints, NativePlugin.Platform platform = NativePlugin.Platform.Current)
Parameters
Hints to the system that we want to capture audio from the microphone.
iOS
Call this with enabled = true before you begin recording to prevent any unwanted stalls or pops when
the recording begins due to changing the audio session. Call with enabled = false to restore the
audio session.
Declaration
public void SetMicrophoneRecordingHint(bool enabled, MicrophoneRecordingOptions options = MicrophoneRecordingOptions.Defaults)
Parameters
| Type |
Name |
Description |
| System.Boolean |
enabled |
Enables or disables audio recording from the microphone
|
| MicrophoneRecordingOptions |
options |
Options to apply when enabling or disabling audio recording
|
Declaration
public virtual void Start()
Declaration
public bool StartCapture()
Returns
| Type |
Description |
| System.Boolean |
|
Declaration
public virtual void StopCapture(bool skipPendingFrames = false, bool ignorePendingFileWrites = false, bool deleteCapture = false)
Parameters
| Type |
Name |
Description |
| System.Boolean |
skipPendingFrames |
|
| System.Boolean |
ignorePendingFileWrites |
|
| System.Boolean |
deleteCapture |
|
Declaration
protected void TickFrameTimer()
Declaration
public virtual void UnprepareCapture()
UpdateForSideBySideTransparency(Texture, Boolean, Int32)
Declaration
protected RenderTexture UpdateForSideBySideTransparency(Texture sourceTexture, bool screenFlip = false, int antiAliasing = 1)
Parameters
| Type |
Name |
Description |
| Texture |
sourceTexture |
|
| System.Boolean |
screenFlip |
|
| System.Int32 |
antiAliasing |
|
Returns
| Type |
Description |
| RenderTexture |
|
Declaration
Declaration
public virtual void UpdateFrame()
Declaration
protected void UpdateInjectionOptions(StereoPacking stereoPacking, SphericalVideoLayout sphericalVideoLayout)
Parameters
Declaration
public static void UpdateMediaGallery(string videoFilePath)
Parameters
| Type |
Name |
Description |
| System.String |
videoFilePath |
|