extern static CMSampleBufferError CMAudioSampleBufferCreateWithPacketDescriptions ( IntPtr allocator, IntPtr dataBuffer, bool dataReady, IntPtr makeDataReadyCallback, IntPtr makeDataReadyRefcon, IntPtr formatDescription, int numSamples, CMTime sbufPTS, AudioStreamPacketDescription[] packetDescriptions, out IntPtr sBufOut);
public static CMSampleBuffer CreateWithPacketDescriptions (CMBlockBuffer dataBuffer, CMFormatDescription formatDescription, int samplesCount, CMTime sampleTimestamp, AudioStreamPacketDescription[] packetDescriptions, out CMSampleBufferError error) { if (formatDescription == null) throw new ArgumentNullException ("formatDescription"); if (samplesCount <= 0) throw new ArgumentOutOfRangeException ("samplesCount"); IntPtr buffer; error = CMAudioSampleBufferCreateWithPacketDescriptions (IntPtr.Zero, dataBuffer == null ? IntPtr.Zero : dataBuffer.Handle, true, IntPtr.Zero, IntPtr.Zero, formatDescription.Handle, samplesCount, sampleTimestamp, packetDescriptions, out buffer); if (error != CMSampleBufferError.None) return null; return new CMSampleBuffer (buffer, true); }
public static CMTime GetMinimum (CMTime time1, CMTime time2) { return CMTimeMinimum (time1, time2); }
public static CMTime Multiply (CMTime time, double multiplier) { return CMTimeMultiplyByFloat64 (time, multiplier); }
public static CMTime Subtract (CMTime minuend, CMTime subtraend) { return CMTimeSubtract (minuend, subtraend); }
public static int Compare (CMTime time1, CMTime time2) { return CMTimeCompare (time1, time2); }
extern static CMSampleBufferError CMSampleBufferSetOutputPresentationTimeStamp (IntPtr handle, CMTime outputPresentationTimeStamp);
extern static IntPtr CMTimeCopyAsDictionary(CMTime time, IntPtr allocator);
extern static CMTimebaseError CMTimebaseGetTimeAndRate(IntPtr timebase, out CMTime time, out double rate);
public extern static ulong ConvertHostTimeToSystemUnits (CMTime hostTime);
public CMClockError GetAnchorTime (out CMTime clockTime, out CMTime referenceClockTime) { return CMClockGetAnchorTime (Handle, out clockTime, out referenceClockTime); }
extern static CMClockError CMClockGetAnchorTime (IntPtr clock, out CMTime outClockTime, out CMTime outReferenceClockTime);
public static CMTime ConvertTime (CMTime time, CMClockOrTimebase from, CMClockOrTimebase to) { if (from == null) throw new ArgumentNullException ("from"); if (to == null) throw new ArgumentNullException ("to"); return CMSyncConvertTime (time, from.Handle, to.Handle); }
extern static CMTime CMSyncConvertTime (CMTime time, IntPtr fromClockOrTimebase, IntPtr toClockOrTimebase);
public static CMSyncError GetRelativeRateAndAnchorTime (CMClockOrTimebase clockOrTimebaseA, CMClockOrTimebase clockOrTimebaseB, out double relativeRate, out CMTime timeA, out CMTime timeB) { if (clockOrTimebaseA == null) throw new ArgumentNullException ("clockOrTimebaseA"); if (clockOrTimebaseB == null) throw new ArgumentNullException ("clockOrTimebaseB"); return CMSyncGetRelativeRateAndAnchorTime (clockOrTimebaseA.Handle, clockOrTimebaseB.handle, out relativeRate, out timeA, out timeB); }
extern static CMTime CMTimeConvertScale(CMTime time, int newScale, CMTimeRoundingMethod method);
extern static CMTime CMTimeMinimum(CMTime time1, CMTime time2);
public CMTimebaseError GetTimeAndRate(out CMTime time, out double rate) { return(CMTimebaseGetTimeAndRate(Handle, out time, out rate)); }
public int SetOutputPresentationTimeStamp(CMTime outputPresentationTimeStamp) { return CMSampleBufferSetOutputPresentationTimeStamp (handle, outputPresentationTimeStamp); }
extern static CMTimebaseError CMTimebaseSetRateAndAnchorTime(IntPtr timebase, double rate, CMTime timebaseTime, CMTime immediateMasterTime);
static extern CMTime CMTimeMaximum(CMTime time1, CMTime time2);
public CMTimebaseError SetRateAndAnchorTime(double rate, CMTime timebaseTime, CMTime immediateMasterTime) { return(CMTimebaseSetRateAndAnchorTime(Handle, rate, timebaseTime, immediateMasterTime)); }
public static CMTime Add (CMTime time1, CMTime time2) { return CMTimeAdd (time1, time2); }
extern static CMTimebaseError CMTimebaseSetTimerNextFireTime(IntPtr timebase, /*CFRunLoopTimerRef*/ IntPtr timer, CMTime fireTime, uint flags);
public static CMTime Multiply (CMTime time, int multiplier) { return CMTimeMultiply (time, multiplier); }
extern static CMSyncError CMSyncGetRelativeRateAndAnchorTime(IntPtr ofClockOrTimebase, IntPtr relativeToClockOrTimebase, out double outRelativeRate, out CMTime outOfClockOrTimebaseAnchorTime, out CMTime outRelativeToClockOrTimebaseAnchorTime);
extern static double CMTimeGetSeconds (CMTime time);
public static CMSyncError GetRelativeRateAndAnchorTime(CMClockOrTimebase clockOrTimebaseA, CMClockOrTimebase clockOrTimebaseB, out double relativeRate, out CMTime timeA, out CMTime timeB) { if (clockOrTimebaseA == null) { throw new ArgumentNullException("clockOrTimebaseA"); } if (clockOrTimebaseB == null) { throw new ArgumentNullException("clockOrTimebaseB"); } return(CMSyncGetRelativeRateAndAnchorTime(clockOrTimebaseA.Handle, clockOrTimebaseB.handle, out relativeRate, out timeA, out timeB)); }
extern static IntPtr CMTimeCopyDescription (IntPtr allocator, CMTime time);
extern static CMTime CMSyncConvertTime(CMTime time, IntPtr fromClockOrTimebase, IntPtr toClockOrTimebase);
public static CMTime Multiply(CMTime time, double multiplier) { return(CMTimeMultiplyByFloat64(time, multiplier)); }
extern static CMClockError CMClockGetAnchorTime(IntPtr clock, out CMTime outClockTime, out CMTime outReferenceClockTime);
extern static double CMTimeGetSeconds(CMTime time);
public CMClockError GetAnchorTime(out CMTime clockTime, out CMTime referenceClockTime) { return(CMClockGetAnchorTime(Handle, out clockTime, out referenceClockTime)); }
public static CMTime GetMinimum(CMTime time1, CMTime time2) { return(CMTimeMinimum(time1, time2)); }
public extern static ulong ConvertHostTimeToSystemUnits(CMTime hostTime);
extern static IntPtr CMTimeCopyDescription(IntPtr allocator, CMTime time);
extern static CMSampleBufferError CMSampleBufferSetOutputPresentationTimeStamp(IntPtr handle, CMTime outputPresentationTimeStamp);
static extern int CMSampleBufferSetOutputPresentationTimeStamp(IntPtr handle, CMTime outputPresentationTimeStamp);
public int /*CMSampleBufferError*/ SetOutputPresentationTimeStamp(CMTime outputPresentationTimeStamp) { return((int)CMSampleBufferSetOutputPresentationTimeStamp(handle, outputPresentationTimeStamp)); }
public int /*CMSampleBufferError*/ SetOutputPresentationTimeStamp (CMTime outputPresentationTimeStamp) { return (int)CMSampleBufferSetOutputPresentationTimeStamp (handle, outputPresentationTimeStamp); }
extern static CMTime CMTimeAbsoluteValue(CMTime time);
extern static int CMTimeCompare (CMTime time1, CMTime time2);
extern static int CMTimeCompare(CMTime time1, CMTime time2);
extern static CMTime CMTimeAdd (CMTime addend1, CMTime addend2);
public static int Compare(CMTime time1, CMTime time2) { return(CMTimeCompare(time1, time2)); }
extern static CMTime CMTimeSubtract (CMTime minuend, CMTime subtraend);
extern static CMTime CMTimeAdd(CMTime addend1, CMTime addend2);
extern static CMTime CMTimeMultiply (CMTime time, int multiplier);
public static CMTime Add(CMTime time1, CMTime time2) { return(CMTimeAdd(time1, time2)); }
extern static CMTime CMTimeMultiplyByFloat64 (CMTime time, double multiplier);
extern static CMTime CMTimeSubtract(CMTime minuend, CMTime subtraend);
extern static CMTime CMTimeConvertScale (CMTime time, int newScale, CMTimeRoundingMethod method);
public static CMTime Subtract(CMTime minuend, CMTime subtraend) { return(CMTimeSubtract(minuend, subtraend)); }
extern static CMTime CMTimeMinimum (CMTime time1, CMTime time2);
extern static CMTime CMTimeMultiply(CMTime time, int multiplier);
extern static IntPtr CMTimeCopyAsDictionary (CMTime time, IntPtr allocator);
public static CMTime Multiply(CMTime time, int multiplier) { return(CMTimeMultiply(time, multiplier)); }
extern static CMTime CMTimeAbsoluteValue (CMTime time);
extern static CMTime CMTimeMultiplyByFloat64(CMTime time, double multiplier);