⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 hxrtsp2.h

📁 linux下的一款播放器
💻 H
📖 第 1 页 / 共 2 页
字号:
    STDMETHOD_(UINT32,GetSize)      (THIS) PURE;    STDMETHOD_(UINT32,Write)        (THIS_ BYTE* pbuf) PURE;    STDMETHOD(GetKey)               (THIS_ REF(IHXBuffer*)pbufKey) PURE;    STDMETHOD(SetKey)               (THIS_ IHXBuffer* pbufKey) PURE;    STDMETHOD(GetFirstField)        (THIS_ REF(IHXMIMEField*) pField) PURE;    STDMETHOD(GetFieldList)         (THIS_ REF(IHXList*) plistFields) PURE;    STDMETHOD(GetFieldListConst)    (THIS_ REF(IHXList*) plistFields) PURE;    STDMETHOD(GetValueAsInt)        (THIS_ REF(INT32) val) PURE;    STDMETHOD(SetValueFromInt)      (THIS_ INT32 val) PURE;    STDMETHOD(GetValueAsUint)       (THIS_ REF(UINT32) val) PURE;    STDMETHOD(SetValueFromUint)     (THIS_ UINT32 val) PURE;    STDMETHOD(GetValueAsBuffer)     (THIS_ REF(IHXBuffer*)pbufVal) PURE;    STDMETHOD(SetValueFromBuffer)   (THIS_ IHXBuffer* pbufVal) PURE;    //XXXTDM: added these for convenience when writing client code.    //        we should come up with a clean, standardized interface.    STDMETHOD(SetFromString)        (THIS_ const char* szKey,                                           const char* szVal) PURE;    STDMETHOD(SetFromBuffer)        (THIS_ const char* szKey,                                           IHXBuffer* pbufVal) PURE;};// IHXRTSPMessage: 1bff98ab-e5c9-459d-80ee-b80d20e4f30eDEFINE_GUID(IID_IHXRTSPMessage, 0x1bff98ab, 0xe5c9, 0x459d,            0x80, 0xee, 0xb8, 0x0d, 0x20, 0xe4, 0xf3, 0x0e);#undef  INTERFACE#define INTERFACE   IHXRTSPMessageDECLARE_INTERFACE_(IHXRTSPMessage, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPMessage    STDMETHOD_(UINT16,GetVersion)   (THIS) PURE;    STDMETHOD(SetVersion)           (THIS_ UINT16 ver) PURE;    STDMETHOD_(int,GetMajorVersion) (THIS) PURE;    STDMETHOD(SetMajorVersion)      (THIS_ int uMajorVer) PURE;    STDMETHOD_(int,GetMinorVersion) (THIS) PURE;    STDMETHOD(SetMinorVersion)      (THIS_ int uMinorVer) PURE;    STDMETHOD_(UINT32,GetCSeq)      (THIS) PURE;    STDMETHOD(SetCSeq)              (THIS_ UINT32 cseq) PURE;    STDMETHOD(GetContent)           (THIS_ REF(IHXBuffer*) pbufContent) PURE;    STDMETHOD(SetContent)           (THIS_ IHXBuffer* pbuf) PURE;    STDMETHOD(GetHeader)            (THIS_ const char* key,                                           REF(IHXMIMEHeader*)pHeader) PURE;    STDMETHOD(AddHeader)            (THIS_ IHXMIMEHeader* pHeader) PURE;    STDMETHOD(SetHeader)            (THIS_ IHXMIMEHeader* pHeader) PURE;    STDMETHOD(RemoveHeader)         (THIS_ const char* key) PURE;    STDMETHOD(GetHeaderList)        (THIS_ REF(IHXList*) plistHeaders) PURE;    STDMETHOD(GetHeaderListConst)   (THIS_ REF(IHXList*) plistHeaders) PURE;    STDMETHOD_(void,ReplaceDelimiters)(THIS_     				    BOOL bReplaceDelimiters,				    int nReplacementDelimiter) PURE;};// IHXRTSPRequestMessage: ddb0e73f-0d5a-4fd1-bdc8-957f0d872a33DEFINE_GUID(IID_IHXRTSPRequestMessage, 0xddb0e73f, 0x0d5a, 0x4fd1,            0xbd, 0xc8, 0x95, 0x7f, 0x0d, 0x87, 0x2a, 0x33);#undef  INTERFACE#define INTERFACE   IHXRTSPRequestMessageDECLARE_INTERFACE_(IHXRTSPRequestMessage, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPRequestMessage    STDMETHOD_(UINT32,GetSize)      (THIS) PURE;    STDMETHOD_(UINT32,Write)        (THIS_                                    BYTE* pBuf) PURE;    STDMETHOD_(RTSPMethod,GetMethod)(THIS) PURE;    STDMETHOD_(UINT32,GetVerb)      (THIS) PURE;    STDMETHOD(SetVerb)              (THIS_                                    UINT32 verb) PURE;    STDMETHOD(GetVerbEx)            (THIS_                                    REF(IHXBuffer*) pBufVerb) PURE;    STDMETHOD(SetVerbEx)            (THIS_                                    IHXBuffer* pBufVerb) PURE;    STDMETHOD(GetUrl)               (THIS_                                    REF(IHXBuffer*) pBufUrl) PURE;    STDMETHOD(SetUrl)               (THIS_                                    IHXBuffer* pBufUrl) PURE;};// IHXRTSPResponseMessage: 876baec2-ec9e-41dc-8cb6-e874b60fbad6DEFINE_GUID(IID_IHXRTSPResponseMessage, 0x876baec2, 0xec9e, 0x41dc,            0x8c, 0xb6, 0xe8, 0x74, 0xb6, 0x0f, 0xba, 0xd6);#undef  INTERFACE#define INTERFACE   IHXRTSPResponseMessageDECLARE_INTERFACE_(IHXRTSPResponseMessage, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPResponseMessage    STDMETHOD_(UINT32,GetSize)      (THIS) PURE;    STDMETHOD_(UINT32,Write)        (THIS_ BYTE* pbuf) PURE;    STDMETHOD(GetStatusCode)        (THIS_ REF(UINT32) status) PURE;    STDMETHOD(SetStatusCode)        (THIS_ UINT32 status) PURE;};// IHXRTSPInterleavedPacket: 4d737eff-8218-4762-ace3-fcf27c08f916DEFINE_GUID(IID_IHXRTSPInterleavedPacket, 0x4d737eff, 0x8218, 0x4762,            0xac, 0xe3, 0xfc, 0xf2, 0x7c, 0x08, 0xf9, 0x16);#undef  INTERFACE#define INTERFACE   IHXRTSPInterleavedPacketDECLARE_INTERFACE_(IHXRTSPInterleavedPacket, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPInterleavedPacket    STDMETHOD(Get)                  (THIS_ REF(BYTE) byChan,                                           REF(IHXBuffer*) pbufData) PURE;    STDMETHOD(Set)                  (THIS_ BYTE byChan,                                           IHXBuffer* pbufData) PURE;};/* * The consumer is an abstract object that the protocol pumps data into. * It can be interleaved data, a request message, or a response message. * The return value from ReadDone() is one of: *   - RTSP_RES_AGAIN  : Data was processed, object is not complete. *   - RTSP_RES_DONE   : Data was processed, object is complete. *   - RTSP_RES_PARTIAL: Not enough data is available to process. *   - RTSP_RES_INVALID: Data was processed, not a valid rtsp message. * * As the consumer receives data, it creates static buffers that AddRef() * the protocol's buffer and refer to chunks within it.  When the consumer * is destroyed, it Release()'s the static buffers which in turn Release() * the protocol buffer. (see CHXStaticBuffer) */// IHXRTSPConsumer: da62eb99-2120-410a-9866-90f7ec9cc15dDEFINE_GUID(IID_IHXRTSPConsumer, 0xda62eb99, 0x2120, 0x410a,            0x98, 0x66, 0x90, 0xf7, 0xec, 0x9c, 0xc1, 0x5d);#undef  INTERFACE#define INTERFACE   IHXRTSPConsumerDECLARE_INTERFACE_(IHXRTSPConsumer, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPConsumer    STDMETHOD(ReadDone)             (THIS_ IHXBuffer* pbufPacket,                                           UINT32* ppos) PURE;    STDMETHOD_(UINT32,GetSize)      (THIS) PURE;    STDMETHOD_(UINT32,Write)        (THIS_ BYTE* pbuf) PURE;    STDMETHOD_(UINT32,AsBuffer)     (THIS_ REF(IHXBuffer*) pbuf) PURE;};// IHXRTSPProtocolResponse: bf646cd4-922c-4b9c-ac92-96e774de5639DEFINE_GUID(IID_IHXRTSPProtocolResponse, 0xbf646cd4, 0x922c, 0x4b9c,            0xac, 0x92, 0x96, 0xe7, 0x74, 0xde, 0x56, 0x39);#undef  INTERFACE#define INTERFACE   IHXRTSPProtocolResponseDECLARE_INTERFACE_(IHXRTSPProtocolResponse, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPProtocolResponse    STDMETHOD(OnClosed)             (THIS_ HX_RESULT status) PURE;    STDMETHOD(OnError)              (THIS_ HX_RESULT status) PURE;    STDMETHOD(OnConnectDone)        (THIS_ HX_RESULT status) PURE;    STDMETHOD(OnPacket)             (THIS_ IHXRTSPInterleavedPacket* pPkt) PURE;    STDMETHOD(OnOptionsRequest)     (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnDescribeRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnSetupRequest)       (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnPlayRequest)        (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnPauseRequest)       (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnAnnounceRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnRecordRequest)      (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnTeardownRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnGetParamRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnSetParamRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnRedirectRequest)    (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnExtensionRequest)   (THIS_ IHXRTSPRequestMessage* pMsg) PURE;    STDMETHOD(OnOptionsResponse)    (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnDescribeResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnSetupResponse)      (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnPlayResponse)       (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnPauseResponse)      (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnAnnounceResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnRecordResponse)     (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnTeardownResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnGetParamResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnSetParamResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnRedirectResponse)   (THIS_ IHXRTSPResponseMessage* pMsg) PURE;    STDMETHOD(OnExtensionResponse)  (THIS_ IHXRTSPResponseMessage* pMsg) PURE;};// IHXRTSPProtocol: 29d8eebf-5597-410b-a290-8181be1e2430DEFINE_GUID(IID_IHXRTSPProtocol, 0x29d8eebf, 0x5597, 0x410b,            0xa2, 0x90, 0x81, 0x81, 0xbe, 0x1e, 0x24, 0x30);#undef  INTERFACE#define INTERFACE   IHXRTSPProtocolDECLARE_INTERFACE_(IHXRTSPProtocol, IUnknown){    // IUnknown    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    // IHXRTSPProtocol    STDMETHOD(Init)                 (THIS_ IHXRTSPProtocolResponse* presp,                                           IUnknown* punkContext) PURE;    //XXXTDM: The following two methods are for using an RTSPTransport object.    //        Note that RTSPTransport is not a public class!!!    STDMETHOD(GetSocket)            (THIS_ REF(IHXTCPSocket*) pSock) PURE;    STDMETHOD(SetTransport)         (THIS_ BYTE byChan, RTSPTransport* pTran)                                                                          PURE;    STDMETHOD(Connect)              (THIS_ const char* szHost,                                           UINT16 port) PURE;    STDMETHOD(Accept)               (THIS_ IHXTCPSocket* psock) PURE;    STDMETHOD(Close)                (THIS) PURE;    STDMETHOD(SendRequest)          (THIS_ IHXRTSPRequestMessage* pReq) PURE;    STDMETHOD(SendResponse)         (THIS_ IHXRTSPResponseMessage* pRsp) PURE;    STDMETHOD(SendPacket)           (THIS_ IHXRTSPInterleavedPacket* pPkt)                                                                          PURE;};#undef  INTERFACE#define INTERFACE   IHXRTSPAggregateEventStatsDECLARE_INTERFACE_(IHXRTSPAggregateEventStats, IUnknown){    /*     * IUknown methods     */    STDMETHOD(QueryInterface)       (THIS_ REFIID riid, void** ppvObj) PURE;    STDMETHOD_(ULONG32,AddRef)      (THIS) PURE;    STDMETHOD_(ULONG32,Release)     (THIS) PURE;    /*     * IHXRTSPAggregateEventStats methods     */    STDMETHOD(Init)                         (THIS_ IUnknown* pContext) PURE;    STDMETHOD_(BOOL,IsInitDone)             (THIS) PURE;    STDMETHOD(UpdateClientRequestCount)     (THIS_ INT32 lCount,                                                    RTSPMethod ulMethodId) PURE;    STDMETHOD(UpdateServerRequestCount)     (THIS_ INT32 lCount,                                                    RTSPMethod ulMethodId) PURE;    STDMETHOD(UpdateClientResponseCount)    (THIS_ INT32 lCount,                                                    RTSPMethod ulMethodId,                                                   UINT32 ulStatusCode) PURE;    STDMETHOD(UpdateServerResponseCount)    (THIS_ INT32 lCount,                                                    RTSPMethod ulMethodId,                                                   UINT32 ulStatusCode) PURE;    STDMETHOD(GetLicense)                   (THIS_ REF(BOOL) bIsLicensed) PURE;    STDMETHOD(GetStatsEventMask)            (THIS_ REF(UINT32) ulEventMask) PURE;};        #endif /* _HXRTSP2_H_ */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -