#ifndef __MPVIDEO_H__
#define __MPVIDEO_H__

VOID VideoEnableInterrupts(IN PVOID);
VOID VideoTimerCallBack(PHW_STREAM_OBJECT pstrm);
ULONG miniPortVideoStop (PHW_STREAM_REQUEST_BLOCK, PHW_DEVICE_EXTENSION);
VOID miniPortVideoPacket(PHW_STREAM_REQUEST_BLOCK);
ULONG miniPortVideoReset(PHW_STREAM_REQUEST_BLOCK, PHW_DEVICE_EXTENSION);
VOID miniPortSetState(PHW_STREAM_REQUEST_BLOCK pSrb);
VOID miniPortGetState(PHW_STREAM_REQUEST_BLOCK pSrb);
VOID mpstCtrlCommandComplete(PHW_STREAM_REQUEST_BLOCK pSrb);
void VideoPacketStub(PHW_STREAM_OBJECT pstrm);

VOID miniPortGetProperty(PHW_STREAM_REQUEST_BLOCK pSrb);
VOID miniPortSetProperty(PHW_STREAM_REQUEST_BLOCK pSrb);

void ProcessVideoFormat(PKSDATAFORMAT pfmt, PHW_DEVICE_EXTENSION pdevex);
void VideoQueryAccept(PHW_STREAM_REQUEST_BLOCK pSrb);

//new for rate change stuff
void InitVideoRate(PHW_DEVICE_EXTENSION pHwDevExt);
void VideoRateChangeGetProp(PHW_STREAM_REQUEST_BLOCK pSrb);
void VideoRateChangeSetProp(PHW_STREAM_REQUEST_BLOCK pSrb);

//new for Closed Caption Processing
void UserDataEvents(PHW_DEVICE_EXTENSION pdevex);
#endif //__MPVIDEO_H__
