📄 sbe.h
字号:
/* interface IStreamBufferConfigure */
/* [unique][uuid][object] */
EXTERN_C const IID IID_IStreamBufferConfigure;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("ce14dfae-4098-4af7-bbf7-d6511f835414")
IStreamBufferConfigure : public IUnknown
{
public:
virtual HRESULT STDMETHODCALLTYPE SetDirectory(
/* [in] */ LPCWSTR pszDirectoryName) = 0;
virtual HRESULT STDMETHODCALLTYPE GetDirectory(
/* [out] */ LPWSTR *ppszDirectoryName) = 0;
virtual HRESULT STDMETHODCALLTYPE SetBackingFileCount(
/* [in] */ DWORD dwMin,
/* [in] */ DWORD dwMax) = 0;
virtual HRESULT STDMETHODCALLTYPE GetBackingFileCount(
/* [out] */ DWORD *pdwMin,
/* [out] */ DWORD *pdwMax) = 0;
virtual HRESULT STDMETHODCALLTYPE SetBackingFileDuration(
/* [in] */ DWORD dwSeconds) = 0;
virtual HRESULT STDMETHODCALLTYPE GetBackingFileDuration(
/* [out] */ DWORD *pdwSeconds) = 0;
};
#else /* C style interface */
typedef struct IStreamBufferConfigureVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IStreamBufferConfigure * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IStreamBufferConfigure * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IStreamBufferConfigure * This);
HRESULT ( STDMETHODCALLTYPE *SetDirectory )(
IStreamBufferConfigure * This,
/* [in] */ LPCWSTR pszDirectoryName);
HRESULT ( STDMETHODCALLTYPE *GetDirectory )(
IStreamBufferConfigure * This,
/* [out] */ LPWSTR *ppszDirectoryName);
HRESULT ( STDMETHODCALLTYPE *SetBackingFileCount )(
IStreamBufferConfigure * This,
/* [in] */ DWORD dwMin,
/* [in] */ DWORD dwMax);
HRESULT ( STDMETHODCALLTYPE *GetBackingFileCount )(
IStreamBufferConfigure * This,
/* [out] */ DWORD *pdwMin,
/* [out] */ DWORD *pdwMax);
HRESULT ( STDMETHODCALLTYPE *SetBackingFileDuration )(
IStreamBufferConfigure * This,
/* [in] */ DWORD dwSeconds);
HRESULT ( STDMETHODCALLTYPE *GetBackingFileDuration )(
IStreamBufferConfigure * This,
/* [out] */ DWORD *pdwSeconds);
END_INTERFACE
} IStreamBufferConfigureVtbl;
interface IStreamBufferConfigure
{
CONST_VTBL struct IStreamBufferConfigureVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamBufferConfigure_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IStreamBufferConfigure_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IStreamBufferConfigure_Release(This) \
(This)->lpVtbl -> Release(This)
#define IStreamBufferConfigure_SetDirectory(This,pszDirectoryName) \
(This)->lpVtbl -> SetDirectory(This,pszDirectoryName)
#define IStreamBufferConfigure_GetDirectory(This,ppszDirectoryName) \
(This)->lpVtbl -> GetDirectory(This,ppszDirectoryName)
#define IStreamBufferConfigure_SetBackingFileCount(This,dwMin,dwMax) \
(This)->lpVtbl -> SetBackingFileCount(This,dwMin,dwMax)
#define IStreamBufferConfigure_GetBackingFileCount(This,pdwMin,pdwMax) \
(This)->lpVtbl -> GetBackingFileCount(This,pdwMin,pdwMax)
#define IStreamBufferConfigure_SetBackingFileDuration(This,dwSeconds) \
(This)->lpVtbl -> SetBackingFileDuration(This,dwSeconds)
#define IStreamBufferConfigure_GetBackingFileDuration(This,pdwSeconds) \
(This)->lpVtbl -> GetBackingFileDuration(This,pdwSeconds)
#endif /* COBJMACROS */
#endif /* C style interface */
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_SetDirectory_Proxy(
IStreamBufferConfigure * This,
/* [in] */ LPCWSTR pszDirectoryName);
void __RPC_STUB IStreamBufferConfigure_SetDirectory_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_GetDirectory_Proxy(
IStreamBufferConfigure * This,
/* [out] */ LPWSTR *ppszDirectoryName);
void __RPC_STUB IStreamBufferConfigure_GetDirectory_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_SetBackingFileCount_Proxy(
IStreamBufferConfigure * This,
/* [in] */ DWORD dwMin,
/* [in] */ DWORD dwMax);
void __RPC_STUB IStreamBufferConfigure_SetBackingFileCount_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_GetBackingFileCount_Proxy(
IStreamBufferConfigure * This,
/* [out] */ DWORD *pdwMin,
/* [out] */ DWORD *pdwMax);
void __RPC_STUB IStreamBufferConfigure_GetBackingFileCount_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_SetBackingFileDuration_Proxy(
IStreamBufferConfigure * This,
/* [in] */ DWORD dwSeconds);
void __RPC_STUB IStreamBufferConfigure_SetBackingFileDuration_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
HRESULT STDMETHODCALLTYPE IStreamBufferConfigure_GetBackingFileDuration_Proxy(
IStreamBufferConfigure * This,
/* [out] */ DWORD *pdwSeconds);
void __RPC_STUB IStreamBufferConfigure_GetBackingFileDuration_Stub(
IRpcStubBuffer *This,
IRpcChannelBuffer *_pRpcChannelBuffer,
PRPC_MESSAGE _pRpcMessage,
DWORD *_pdwStubPhase);
#endif /* __IStreamBufferConfigure_INTERFACE_DEFINED__ */
#ifndef __IStreamBufferMediaSeeking_INTERFACE_DEFINED__
#define __IStreamBufferMediaSeeking_INTERFACE_DEFINED__
/* interface IStreamBufferMediaSeeking */
/* [unique][uuid][object] */
EXTERN_C const IID IID_IStreamBufferMediaSeeking;
#if defined(__cplusplus) && !defined(CINTERFACE)
MIDL_INTERFACE("f61f5c26-863d-4afa-b0ba-2f81dc978596")
IStreamBufferMediaSeeking : public IMediaSeeking
{
public:
};
#else /* C style interface */
typedef struct IStreamBufferMediaSeekingVtbl
{
BEGIN_INTERFACE
HRESULT ( STDMETHODCALLTYPE *QueryInterface )(
IStreamBufferMediaSeeking * This,
/* [in] */ REFIID riid,
/* [iid_is][out] */ void **ppvObject);
ULONG ( STDMETHODCALLTYPE *AddRef )(
IStreamBufferMediaSeeking * This);
ULONG ( STDMETHODCALLTYPE *Release )(
IStreamBufferMediaSeeking * This);
HRESULT ( STDMETHODCALLTYPE *GetCapabilities )(
IStreamBufferMediaSeeking * This,
/* [out] */ DWORD *pCapabilities);
HRESULT ( STDMETHODCALLTYPE *CheckCapabilities )(
IStreamBufferMediaSeeking * This,
/* [out][in] */ DWORD *pCapabilities);
HRESULT ( STDMETHODCALLTYPE *IsFormatSupported )(
IStreamBufferMediaSeeking * This,
/* [in] */ const GUID *pFormat);
HRESULT ( STDMETHODCALLTYPE *QueryPreferredFormat )(
IStreamBufferMediaSeeking * This,
/* [out] */ GUID *pFormat);
HRESULT ( STDMETHODCALLTYPE *GetTimeFormat )(
IStreamBufferMediaSeeking * This,
/* [out] */ GUID *pFormat);
HRESULT ( STDMETHODCALLTYPE *IsUsingTimeFormat )(
IStreamBufferMediaSeeking * This,
/* [in] */ const GUID *pFormat);
HRESULT ( STDMETHODCALLTYPE *SetTimeFormat )(
IStreamBufferMediaSeeking * This,
/* [in] */ const GUID *pFormat);
HRESULT ( STDMETHODCALLTYPE *GetDuration )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pDuration);
HRESULT ( STDMETHODCALLTYPE *GetStopPosition )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pStop);
HRESULT ( STDMETHODCALLTYPE *GetCurrentPosition )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pCurrent);
HRESULT ( STDMETHODCALLTYPE *ConvertTimeFormat )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pTarget,
/* [in] */ const GUID *pTargetFormat,
/* [in] */ LONGLONG Source,
/* [in] */ const GUID *pSourceFormat);
HRESULT ( STDMETHODCALLTYPE *SetPositions )(
IStreamBufferMediaSeeking * This,
/* [out][in] */ LONGLONG *pCurrent,
/* [in] */ DWORD dwCurrentFlags,
/* [out][in] */ LONGLONG *pStop,
/* [in] */ DWORD dwStopFlags);
HRESULT ( STDMETHODCALLTYPE *GetPositions )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pCurrent,
/* [out] */ LONGLONG *pStop);
HRESULT ( STDMETHODCALLTYPE *GetAvailable )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pEarliest,
/* [out] */ LONGLONG *pLatest);
HRESULT ( STDMETHODCALLTYPE *SetRate )(
IStreamBufferMediaSeeking * This,
/* [in] */ double dRate);
HRESULT ( STDMETHODCALLTYPE *GetRate )(
IStreamBufferMediaSeeking * This,
/* [out] */ double *pdRate);
HRESULT ( STDMETHODCALLTYPE *GetPreroll )(
IStreamBufferMediaSeeking * This,
/* [out] */ LONGLONG *pllPreroll);
END_INTERFACE
} IStreamBufferMediaSeekingVtbl;
interface IStreamBufferMediaSeeking
{
CONST_VTBL struct IStreamBufferMediaSeekingVtbl *lpVtbl;
};
#ifdef COBJMACROS
#define IStreamBufferMediaSeeking_QueryInterface(This,riid,ppvObject) \
(This)->lpVtbl -> QueryInterface(This,riid,ppvObject)
#define IStreamBufferMediaSeeking_AddRef(This) \
(This)->lpVtbl -> AddRef(This)
#define IStreamBufferMediaSeeking_Release(This) \
(This)->lpVtbl -> Release(This)
#define IStreamBufferMediaSeeking_GetCapabilities(This,pCapabilities) \
(This)->lpVtbl -> GetCapabilities(This,pCapabilities)
#define IStreamBufferMediaSeeking_CheckCapabilities(This,pCapabilities) \
(This)->lpVtbl -> CheckCapabilities(This,pCapabilities)
#define IStreamBufferMediaSeeking_IsFormatSupported(This,pFormat) \
(This)->lpVtbl -> IsFormatSupported(This,pFormat)
#define IStreamBufferMediaSeeking_QueryPreferredFormat(This,pFormat) \
(This)->lpVtbl -> QueryPreferredFormat(This,pFormat)
#define IStreamBufferMediaSeeking_GetTimeFormat(This,pFormat) \
(This)->lpVtbl -> GetTimeFormat(This,pFormat)
#define IStreamBufferMediaSeeking_IsUsingTimeFormat(This,pFormat) \
(This)->lpVtbl -> IsUsingTimeFormat(This,pFormat)
#define IStreamBufferMediaSeeking_SetTimeFormat(This,pFormat) \
(This)->lpVtbl -> SetTimeFormat(This,pFormat)
#define IStreamBufferMediaSeeking_GetDuration(This,pDuration) \
(This)->lpVtbl -> GetDuration(This,pDuration)
#define IStreamBufferMediaSeeking_GetStopPosition(This,pStop) \
(This)->lpVtbl -> GetStopPosition(This,pStop)
#define IStreamBufferMediaSeeking_GetCurrentPosition(This,pCurrent) \
(This)->lpVtbl -> GetCurrentPosition(This,pCurrent)
#define IStreamBufferMediaSeeking_ConvertTimeFormat(This,pTarget,pTargetFormat,Source,pSourceFormat) \
(This)->lpVtbl -> ConvertTimeFormat(This,pTarget,pTargetFormat,Source,pSourceFormat)
#define IStreamBufferMediaSeeking_SetPositions(This,pCurrent,dwCurrentFlags,pStop,dwStopFlags) \
(This)->lpVtbl -> SetPositions(This,pCurrent,dwCurrentFlags,pStop,dwStopFlags)
#define IStreamBufferMediaSeeking_GetPositions(This,pCurrent,pStop) \
(This)->lpVtbl -> GetPositions(This,pCurrent,pStop)
#define IStreamBufferMediaSeeking_GetAvailable(This,pEarliest,pLatest) \
(This)->lpVtbl -> GetAvailable(This,pEarliest,pLatest)
#define IStreamBufferMediaSeeking_SetRate(This,dRate) \
(This)->lpVtbl -> SetRate(This,dRate)
#define IStreamBufferMediaSeeking_GetRate(This,pdRate) \
(This)->lpVtbl -> GetRate(This,pdRate)
#define IStreamBufferMediaSeeking_GetPreroll(This,pllPreroll) \
(This)->lpVtbl -> GetPreroll(This,pllPreroll)
#endif /* COBJMACROS */
#endif /* C style interface */
#endif /* __IStreamBufferMediaSeeking_INTERFACE_DEFINED__ */
/* interface __MIDL_itf_sbe_0416 */
/* [local] */
#define STREAMBUFFER_EC_BASE 0x0326
enum {
// timehole event
// param1 = timehole stream offset ms
// param1 = timehole size ms
STREAMBUFFER_EC_TIMEHOLE = STREAMBUFFER_EC_BASE,
STREAMBUFFER_EC_STALE_DATA_READ,
STREAMBUFFER_EC_STALE_FILE_DELETED,
STREAMBUFFER_EC_CONTENT_BECOMING_STALE,
STREAMBUFFER_EC_WRITE_FAILURE,
//
// unexpected read failure
// param1 = HRESULT failure
// param2 = undefined
STREAMBUFFER_EC_READ_FAILURE,
//
// playback rate change
// param1 = old_playback_rate * 10000 e.g. 2x is 20000
// param2 = new_playback_rate * 10000
STREAMBUFFER_EC_RATE_CHANGED,
} ;
extern RPC_IF_HANDLE __MIDL_itf_sbe_0416_v0_0_c_ifspec;
extern RPC_IF_HANDLE __MIDL_itf_sbe_0416_v0_0_s_ifspec;
/* Additional Prototypes for ALL interfaces */
/* end of Additional Prototypes */
#ifdef __cplusplus
}
#endif
#endif
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -