MP_CURVE_TYPE enumeration (medparam.h)

[The feature associated with this page, DirectShow, is a legacy feature. It has been superseded by MediaPlayer, IMFMediaEngine, and Audio/Video Capture in Media Foundation. Those features have been optimized for Windows 10 and Windows 11. Microsoft strongly recommends that new code use MediaPlayer, IMFMediaEngine and Audio/Video Capture in Media Foundation instead of DirectShow, when possible. Microsoft suggests that existing code that uses the legacy APIs be rewritten to use the new APIs if possible.]

The MP_CURVE_TYPE enumeration defines the curve that a media parameter follows within an envelope segment.

Syntax

typedef enum _MP_CURVE_TYPE {
  MP_CURVE_JUMP = 0x1,
  MP_CURVE_LINEAR = 0x2,
  MP_CURVE_SQUARE = 0x4,
  MP_CURVE_INVSQUARE = 0x8,
  MP_CURVE_SINE = 0x10
} MP_CURVE_TYPE;

Constants

 
MP_CURVE_JUMP
Value: 0x1
No interpolation. Jump to the next point.
MP_CURVE_LINEAR
Value: 0x2
Linear interpolation.
MP_CURVE_SQUARE
Value: 0x4
Parabolic curve.
MP_CURVE_INVSQUARE
Value: 0x8
Inverse square curve.
MP_CURVE_SINE
Value: 0x10
Sine curve.

Remarks

The following table lists the defined curves and their mathematical equivalents.

Value Curve to Fit Range
MP_CURVE_LINEAR y = x 0.0 – 1.0
MP_CURVE_SQUARE y = x^2 0.0 – 1.0
MP_CURVE_INVSQUARE y = 1 –x^2 0.0 – 1.0
MP_CURVE_SINE y = sin(x) –π/2 – π/2
 

For Boolean and enumeration parameters, only MP_CURVE_JUMP is valid.

Requirements

   
Header medparam.h

See also

DMO Enumerated Types

MP_ENVELOPE_SEGMENT