📄 definitions.pas
字号:
unit Definitions;
interface
uses
Classes, ActiveX;
const
FilterID = 'AsyncEx';
PinID = 'StreamOut';
// GUIDS
CLSID_AsyncEx: TGUID = '{3E0FA044-926C-42d9-BA12-EF16E980913B}';
// Interface ID'S
IID_IAsyncExControl: TGUID = '{3E0FA056-926C-43d9-BA18-EF16E980913B}';
IID_IAsyncExCallBack: TGUID = '{3E0FB667-956C-43d9-BA18-EF16E980913B}';
// Mpeg1 splitter
CLSID_Mpeg1Split: TGUID = '{336475D0-942A-11CE-A870-00AA002FEAB5}';
type
IAsyncExCallBack = interface(IUnknown)
['{3E0FB667-956C-43d9-BA18-EF16E980913B}']
function AsyncExFilterState(Buffering: LongBool; PreBuffering: LongBool;
Connecting: LongBool; Playing: LongBool;
BufferState: integer): HRESULT; stdcall;
function AsyncExICYNotice(IcyItemName: PChar;
ICYItem: PChar): HRESULT; stdcall;
function AsyncExMetaData(Title: PChar; URL: PChar): HRESULT; stdcall;
function AsyncExSockError(ErrString: PChar): HRESULT; stdcall;
end;
type
IAsyncExControl = interface(IUnknown)
['{3E0FA056-926C-43d9-BA18-EF16E980913B}']
function SetLoadFromStream(Stream: IStream; Length: int64): HRESULT;
stdcall;
function SetConnectToIp(Host: PChar; Port: PChar; Location: PChar;
PreBuffersize: integer; MetaData: LongBool): HRESULT; stdcall;
function SetConnectToURL(URL: PChar; PreBuffersize: integer;
MetaData: LongBool): HRESULT; stdcall;
function SetBuffersize(BufferSize: integer): HRESULT; stdcall;
function GetBuffersize(out BufferSize: integer): HRESULT; stdcall;
function SetRipStream(Ripstream: LongBool; Path: PChar;
Filename: PChar): HRESULT; stdcall;
function GetRipStream(out Ripstream: LongBool;
out FileO: PChar): HRESULT; stdcall;
function SetCallBack(CallBack: IAsyncExCallBack): HRESULT; stdcall;
function FreeCallback(): HRESULT; stdcall;
function ExitAllLoops(): HRESULT; stdcall;
end;
implementation
end.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -