Subversion Repositories spacemission

Rev

Rev 1 | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 1 Rev 4
Line 20... Line 20...
20
 
20
 
21
interface
21
interface
22
 
22
 
23
{$Z4}
23
{$Z4}
24
{$A+}
24
{$A+}
-
 
25
{$IfNDef D7UP}
25
{$WEAKPACKAGEUNIT}
26
{$WEAKPACKAGEUNIT}
-
 
27
{$EndIf}
26
 
28
 
27
uses Windows, ActiveX, DirectX, MMSystem;
29
uses Windows, ActiveX, DirectX, MMSystem;
28
 
30
 
29
(*==========================================================================;
31
(*==========================================================================;
30
 *
32
 *
Line 1885... Line 1887...
1885
type
1887
type
1886
  IDirectDrawStreamSample = interface;
1888
  IDirectDrawStreamSample = interface;
1887
 
1889
 
1888
  IDirectDrawMediaStream = interface(IMediaStream)
1890
  IDirectDrawMediaStream = interface(IMediaStream)
1889
    ['{F4104FCE-9A70-11d0-8FDE-00C04FD9189D}']
1891
    ['{F4104FCE-9A70-11d0-8FDE-00C04FD9189D}']
1890
    function GetFormat(var pDDSDCurrent: DDSURFACEDESC;
1892
    function GetFormat(var pDDSDCurrent: TDDSURFACEDESC;
1891
        out ppDirectDrawPalette: IDirectDrawPalette;
1893
        out ppDirectDrawPalette: IDirectDrawPalette;
1892
        var pDDSDDesired: DDSURFACEDESC; var pdwFlags: DWORD): HResult; stdcall;
1894
        var pDDSDDesired: TDDSURFACEDESC; var pdwFlags: DWORD): HResult; stdcall;
1893
    function SetFormat(const pDDSurfaceDesc: DDSURFACEDESC;
1895
    function SetFormat(const pDDSurfaceDesc: TDDSURFACEDESC;
1894
        pDirectDrawPalette: IDirectDrawPalette): HResult; stdcall;
1896
        pDirectDrawPalette: IDirectDrawPalette): HResult; stdcall;
1895
    function GetDirectDraw(out ppDirectDraw: IDirectDraw): HResult; stdcall;
1897
    function GetDirectDraw(out ppDirectDraw: IDirectDraw): HResult; stdcall;
1896
    function SetDirectDraw(pDirectDraw: IDirectDraw): HResult; stdcall;
1898
    function SetDirectDraw(pDirectDraw: IDirectDraw): HResult; stdcall;
1897
    function CreateSample(pSurface: IDirectDrawSurface; const pRect: TRect;
1899
    function CreateSample(pSurface: IDirectDrawSurface; const pRect: TRect;
1898
        dwFlags: DWORD; out ppSample: IDirectDrawStreamSample): HResult; stdcall;
1900
        dwFlags: DWORD; out ppSample: IDirectDrawStreamSample): HResult; stdcall;
Line 2618... Line 2620...
2618
  IDirectDrawVideo = interface(IUnknown)
2620
  IDirectDrawVideo = interface(IUnknown)
2619
    ['{36D39EB0-DD75-11CE-BF0E-00AA0055595A}']
2621
    ['{36D39EB0-DD75-11CE-BF0E-00AA0055595A}']
2620
    // IDirectDrawVideo methods
2622
    // IDirectDrawVideo methods
2621
    function GetSwitches(var pSwitches: DWORD): HResult; stdcall;
2623
    function GetSwitches(var pSwitches: DWORD): HResult; stdcall;
2622
    function SetSwitches(pSwitches: DWORD): HResult; stdcall;
2624
    function SetSwitches(pSwitches: DWORD): HResult; stdcall;
2623
    function GetCaps(var pCaps: DDCAPS): HResult; stdcall;
2625
    function GetCaps(var pCaps: TDDCAPS): HResult; stdcall;
2624
    function GetEmulatedCaps(var pCaps: DDCAPS): HResult; stdcall;
2626
    function GetEmulatedCaps(var pCaps: TDDCAPS): HResult; stdcall;
2625
    function GetSurfaceDesc(var pSurfaceDesc: DDSURFACEDESC): HResult; stdcall;
2627
    function GetSurfaceDesc(var pSurfaceDesc: TDDSURFACEDESC): HResult; stdcall;
2626
    function GetFourCCCodes(var pCount, pCodes: DWORD): HResult; stdcall;
2628
    function GetFourCCCodes(var pCount, pCodes: DWORD): HResult; stdcall;
2627
    function SetDirectDraw(pDirectDraw: IDirectDraw): HResult; stdcall;
2629
    function SetDirectDraw(pDirectDraw: IDirectDraw): HResult; stdcall;
2628
    function GetDirectDraw(out ppDirectDraw: IDirectDraw): HResult; stdcall;
2630
    function GetDirectDraw(out ppDirectDraw: IDirectDraw): HResult; stdcall;
2629
    function GetSurfaceType(var pSurfaceType: DWORD): HResult; stdcall;
2631
    function GetSurfaceType(var pSurfaceType: DWORD): HResult; stdcall;
2630
    function SetDefault: HResult; stdcall;
2632
    function SetDefault: HResult; stdcall;
Line 2999... Line 3001...
2999
 
3001
 
3000
    // gets the various formats supported by the decoder in an array
3002
    // gets the various formats supported by the decoder in an array
3001
    // of structures. If the pointer to the array is NULL, first parameter
3003
    // of structures. If the pointer to the array is NULL, first parameter
3002
    // returns the total number of formats supported.
3004
    // returns the total number of formats supported.
3003
    function GetVideoFormats(var lpNumFormats: DWORD;
3005
    function GetVideoFormats(var lpNumFormats: DWORD;
3004
        const lpddpfFormats: DDPIXELFORMAT): HResult; stdcall;
3006
        const lpddpfFormats: TDDPIXELFORMAT): HResult; stdcall;
3005
 
3007
 
3006
    // retrives maximum pixels per second rate expected for a given
3008
    // retrives maximum pixels per second rate expected for a given
3007
    // format and a given scaling factor. If decoder does not support
3009
    // format and a given scaling factor. If decoder does not support
3008
    // those scaling factors, then it gives the rate and the nearest
3010
    // those scaling factors, then it gives the rate and the nearest
3009
    // scaling factors.
3011
    // scaling factors.
3010
    function GetMaxPixelRate(const ddpfFormat: DDPIXELFORMAT;
3012
    function GetMaxPixelRate(const ddpfFormat: TDDPIXELFORMAT;
3011
        lpdwZoomHeight, lpdwZoomWidth: DWORD;
3013
        lpdwZoomHeight, lpdwZoomWidth: DWORD;
3012
        var lpdwMaxPixelsPerSecond: DWORD): HResult; stdcall;
3014
        var lpdwMaxPixelsPerSecond: DWORD): HResult; stdcall;
3013
 
3015
 
3014
    // retrives various properties of the decoder for a given format
3016
    // retrives various properties of the decoder for a given format
3015
    function GetVideoSignalInfo(const ddpfFormat: DDPIXELFORMAT;
3017
    function GetVideoSignalInfo(const ddpfFormat: TDDPIXELFORMAT;
3016
        var lpAMVideoSignalInfo: TAMVideoSignalInfo): HResult; stdcall;
3018
        var lpAMVideoSignalInfo: TAMVideoSignalInfo): HResult; stdcall;
3017
 
3019
 
3018
    // asks the decoder to ouput in this format. Return value should give
3020
    // asks the decoder to ouput in this format. Return value should give
3019
    // appropriate error code
3021
    // appropriate error code
3020
    function SetVideoFormat(const ddpfFormat: DDPIXELFORMAT): HResult; stdcall;
3022
    function SetVideoFormat(const ddpfFormat: TDDPIXELFORMAT): HResult; stdcall;
3021
 
3023
 
3022
    // asks the decoder to treat even fields like odd fields and visa versa
3024
    // asks the decoder to treat even fields like odd fields and visa versa
3023
    function SetInvertPolarity: HResult; stdcall;
3025
    function SetInvertPolarity: HResult; stdcall;
3024
 
3026
 
3025
    // sets the scaling factors. If decoder does not support these,
3027
    // sets the scaling factors. If decoder does not support these,
Line 3183... Line 3185...
3183
    function GetMaxPixelRate(var pamvpSize: TAMVPSize;
3185
    function GetMaxPixelRate(var pamvpSize: TAMVPSize;
3184
      var pdwMaxPixelsPerSecond: DWORD): HResult; stdcall;
3186
      var pdwMaxPixelsPerSecond: DWORD): HResult; stdcall;
3185
 
3187
 
3186
    // informs the callee of the videoformats supported by the videoport
3188
    // informs the callee of the videoformats supported by the videoport
3187
    function InformVPInputFormats(dwNumFormats: DWORD;
3189
    function InformVPInputFormats(dwNumFormats: DWORD;
3188
      const  pDDPixelFormats: DDPIXELFORMAT): HResult; stdcall;
3190
      const  pDDPixelFormats: TDDPIXELFORMAT): HResult; stdcall;
3189
 
3191
 
3190
    // gets the various formats supported by the decoder in an array
3192
    // gets the various formats supported by the decoder in an array
3191
    // of structures. If the pointer to the array is NULL, first parameter
3193
    // of structures. If the pointer to the array is NULL, first parameter
3192
    // returns the total number of formats supported.
3194
    // returns the total number of formats supported.
3193
    function GetVideoFormats(var pdwNumFormats: DWORD;
3195
    function GetVideoFormats(var pdwNumFormats: DWORD;
3194
      var pddPixelFormats: DDPIXELFORMAT): HResult; stdcall;
3196
      var pddPixelFormats: TDDPIXELFORMAT): HResult; stdcall;
3195
 
3197
 
3196
    // sets the format entry chosen (0, 1, .. ,(dwNumProposedEntries-1))
3198
    // sets the format entry chosen (0, 1, .. ,(dwNumProposedEntries-1))
3197
    function SetVideoFormat(dwChosenEntry: DWORD): HResult; stdcall;
3199
    function SetVideoFormat(dwChosenEntry: DWORD): HResult; stdcall;
3198
 
3200
 
3199
    // asks the decoder to treat even fields like odd fields and visa versa
3201
    // asks the decoder to treat even fields like odd fields and visa versa
Line 3267... Line 3269...
3267
    // this function sets the overlay surface that the mixer is supposed to use.
3269
    // this function sets the overlay surface that the mixer is supposed to use.
3268
    function SetOverlaySurface(pOverlaySurface: IDirectDrawSurface): HResult; stdcall;
3270
    function SetOverlaySurface(pOverlaySurface: IDirectDrawSurface): HResult; stdcall;
3269
    // this function gets the overlay surface that the mixer is using
3271
    // this function gets the overlay surface that the mixer is using
3270
    function GetOverlaySurface(out ppOverlaySurface: IDirectDrawSurface): HResult; stdcall;
3272
    function GetOverlaySurface(out ppOverlaySurface: IDirectDrawSurface): HResult; stdcall;
3271
    // this functions sets the color-controls, if the chip supports it.
3273
    // this functions sets the color-controls, if the chip supports it.
3272
    function SetColorControls(const pColorControl: DDCOLORCONTROL): HResult; stdcall;
3274
    function SetColorControls(const pColorControl: TDDCOLORCONTROL): HResult; stdcall;
3273
    // this functions also returns the capability of the hardware in the dwFlags
3275
    // this functions also returns the capability of the hardware in the dwFlags
3274
    // value of the struct.
3276
    // value of the struct.
3275
    function GetColorControls(var pColorControl: DDCOLORCONTROL): HResult; stdcall;
3277
    function GetColorControls(var pColorControl: TDDCOLORCONTROL): HResult; stdcall;
3276
  end;
3278
  end;
3277
 
3279
 
3278
// interface IVPVBINotify
3280
// interface IVPVBINotify
3279
  IVPVBINotify = interface(IVPBaseNotify)
3281
  IVPVBINotify = interface(IVPBaseNotify)
3280
    ['{EC529B01-1A1F-11D1-BAD9-00609744111A}']
3282
    ['{EC529B01-1A1F-11D1-BAD9-00609744111A}']