public void Dispose() { if (this.m_Ptr != IntPtr.Zero) { MediaEncoder.Internal_Release(this.m_Ptr); this.m_Ptr = IntPtr.Zero; } GC.SuppressFinalize(this); }
private IntPtr Create(string filePath, VideoTrackAttributes[] videoAttrs, AudioTrackAttributes[] audioAttrs) { IntPtr intPtr = MediaEncoder.Internal_Create(filePath, videoAttrs, audioAttrs); if (intPtr == IntPtr.Zero) { throw new InvalidOperationException("MediaEncoder: Output file creation failed for " + filePath); } return(intPtr); }
public bool AddSamples(ushort trackIndex, NativeArray <float> interleavedSamples) { return(MediaEncoder.Internal_AddSamples(this.m_Ptr, trackIndex, interleavedSamples.GetUnsafeReadOnlyPtr <float>(), interleavedSamples.Length)); }
public bool AddFrame(Texture2D texture) { return(MediaEncoder.Internal_AddFrame(this.m_Ptr, texture)); }