亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? msacm.pas

?? 變易工作室制作 AMC錄音控件TACMWaveIn和TACMWaveOut 更新日期:2004-12-11 VER 2.0 增加了錄音過濾雜音功能 QQ:41426277 EM:4142627
?? PAS
?? 第 1 頁 / 共 4 頁
字號:
{******************************************************************}
{                                                       	   }
{       Borland Delphi Runtime Library                  	   }
{       Microsoft Audio Compression Manager interface unit         }
{ 								   }
{ Portions created by Microsoft are 				   }
{ Copyright (C) 1995-1999 Microsoft Corporation. 		   }
{ All Rights Reserved. 						   }
{ 								   }
{ The original file is: msacm.h, released 9 March 1999.            }
{ The original Pascal code is: MSAcm.pas, released 21 July 1999.   }
{ The initial developer of the Pascal code is Francois Piette      }
{ francois.piette@swing.be, http://www.rtfm.be/fpiette/indexuk.htm }
{ rue de Grady 24, 4053 Embourg, Belgium                           }
{ 								   }
{ Portions created by Francois Piette are			   }
{ Copyright (C) 1999 Francois Piette.    		           }
{ 								   }
{ Contributor(s): Marcel van Brakel (brakelm@bart.nl)              }
{ 								   }
{ Obtained through:                               	           }
{ Joint Endeavour of Delphi Innovators (Project JEDI)              }
{								   }
{ You may retrieve the latest version of this file at the Project  }
{ JEDI home page, located at http://delphi-jedi.org                }
{								   }
{ The contents of this file are used with permission, subject to   }
{ the Mozilla Public License Version 1.1 (the "License"); you may  }
{ not use this file except in compliance with the License. You may }
{ obtain a copy of the License at                                  }
{ http://www.mozilla.org/MPL/MPL-1.1.html	                   }
{                                                                  }
{ Software distributed under the License is distributed on an 	   }
{ "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or   }
{ implied. See the License for the specific language governing     }
{ rights and limitations under the License. 			   }
{ 								   }
{******************************************************************}

unit MSAcm;

{$WEAKPACKAGEUNIT}

interface

{$HPPEMIT ''}
{$HPPEMIT '#include "MSAcm.h"'}
{$HPPEMIT ''}

uses
  Windows, MMSystem;

type
  PWaveFilter = ^TWaveFilter;
  // Defined in mmreg.h
  WAVEFILTER = packed record
    cbStruct: DWORD;                    // Size of the filter in bytes
    dwFilterTag: DWORD;                 // filter type
    fdwFilter: DWORD;                   // Flags for the filter (Universal Dfns)
    dwReserved: array [0..4] of DWORD;  // Reserved for system use
  end;
  TWaveFilter = WAVEFILTER;

const
  DRV_MAPPER_PREFERRED_INPUT_GET  = DRV_USER + 0;
  {$EXTERNALSYM DRV_MAPPER_PREFERRED_INPUT_GET}
  DRV_MAPPER_PREFERRED_OUTPUT_GET = DRV_USER + 2;
  {$EXTERNALSYM DRV_MAPPER_PREFERRED_OUTPUT_GET}
  DRVM_MAPPER_STATUS              = $2000;
  {$EXTERNALSYM DRVM_MAPPER_STATUS}
  WIDM_MAPPER_STATUS              = DRVM_MAPPER_STATUS + 0;
  {$EXTERNALSYM WIDM_MAPPER_STATUS}
  WAVEIN_MAPPER_STATUS_DEVICE     = 0;
  {$EXTERNALSYM WAVEIN_MAPPER_STATUS_DEVICE}
  WAVEIN_MAPPER_STATUS_MAPPED     = 1;
  {$EXTERNALSYM WAVEIN_MAPPER_STATUS_MAPPED}
  WAVEIN_MAPPER_STATUS_FORMAT     = 2;
  {$EXTERNALSYM WAVEIN_MAPPER_STATUS_FORMAT}
  WODM_MAPPER_STATUS              = DRVM_MAPPER_STATUS + 0;
  {$EXTERNALSYM WODM_MAPPER_STATUS}
  WAVEOUT_MAPPER_STATUS_DEVICE    = 0;
  {$EXTERNALSYM WAVEOUT_MAPPER_STATUS_DEVICE}
  WAVEOUT_MAPPER_STATUS_MAPPED    = 1;
  {$EXTERNALSYM WAVEOUT_MAPPER_STATUS_MAPPED}
  WAVEOUT_MAPPER_STATUS_FORMAT    = 2;
  {$EXTERNALSYM WAVEOUT_MAPPER_STATUS_FORMAT}

//--------------------------------------------------------------------------
//
//  ACM General API's and Defines
//
//--------------------------------------------------------------------------

//  there are four types of 'handles' used by the ACM. the first three
//  are unique types that define specific objects:
//
//  HACMDRIVERID: used to _identify_ an ACM driver. this identifier can be
//  used to _open_ the driver for querying details, etc about the driver.
//
//  HACMDRIVER: used to manage a driver (codec, filter, etc). this handle
//  is much like a handle to other media drivers--you use it to send
//  messages to the converter, query for capabilities, etc.
//
//  HACMSTREAM: used to manage a 'stream' (conversion channel) with the
//  ACM. you use a stream handle to convert data from one format/type
//  to another--much like dealing with a file handle.
//
//
//  the fourth handle type is a generic type used on ACM functions that
//  can accept two or more of the above handle types (for example the
//  acmMetrics and acmDriverID functions).
//
//  HACMOBJ: used to identify ACM objects. this handle is used on functions
//  that can accept two or more ACM handle types.

type
  HACMDRIVERID__ = record
    Unused: Integer;
  end;
  {$EXTERNALSYM HACMDRIVERID__}
  HACMDRIVERID = ^HACMDRIVERID__;
  {$EXTERNALSYM HACMDRIVERID}
  PHACMDRIVERID = ^HACMDRIVERID;
  {$EXTERNALSYM PHACMDRIVERID}
  LPHACMDRIVERID = ^HACMDRIVERID;
  {$EXTERNALSYM LPHACMDRIVERID}

  HACMDRIVER__ = record
    Unused: Integer;
  end;
  {$EXTERNALSYM HACMDRIVER__}
  HACMDRIVER = ^HACMDRIVER__;
  {$EXTERNALSYM HACMDRIVER}
  PHACMDRIVER = ^HACMDRIVER;
  {$EXTERNALSYM PHACMDRIVER}
  LPHACMDRIVER = ^HACMDRIVER;
  {$EXTERNALSYM LPHACMDRIVER}

  HACMSTREAM__ = record
    Unused: Integer;
  end;
  {$EXTERNALSYM HACMSTREAM__}
  HACMSTREAM = ^HACMSTREAM__;
  {$EXTERNALSYM HACMSTREAM}
  PHACMSTREAM = ^HACMSTREAM;
  {$EXTERNALSYM PHACMSTREAM}
  LPHACMSTREAM = ^HACMSTREAM;
  {$EXTERNALSYM LPHACMSTREAM}

  HACMOBJ__ = record
    Unused: Integer;
  end;
  {$EXTERNALSYM HACMOBJ__}
  HACMOBJ = ^HACMOBJ__;
  {$EXTERNALSYM HACMOBJ}
  PHACMOBJ = ^HACMOBJ;
  {$EXTERNALSYM PHACMOBJ}
  LPHACMOBJ = ^HACMOBJ;
  {$EXTERNALSYM LPHACMOBJ}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
//
//  ACM Error Codes
//
//  Note that these error codes are specific errors that apply to the ACM
//  directly--general errors are defined as MMSYSERR_*.
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

type
  MMRESULT = UINT;
  {$EXTERNALSYM MMRESULT}

const
  ACMERR_BASE        = 512;
  {$EXTERNALSYM ACMERR_BASE}
  ACMERR_NOTPOSSIBLE = (ACMERR_BASE + 0);
  {$EXTERNALSYM ACMERR_NOTPOSSIBLE}
  ACMERR_BUSY        = (ACMERR_BASE + 1);
  {$EXTERNALSYM ACMERR_BUSY}
  ACMERR_UNPREPARED  = (ACMERR_BASE + 2);
  {$EXTERNALSYM ACMERR_UNPREPARED}
  ACMERR_CANCELED    = (ACMERR_BASE + 3);
  {$EXTERNALSYM ACMERR_CANCELED}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
//
//  ACM Window Messages
//
//  These window messages are sent by the ACM or ACM drivers to notify
//  applications of events.
//
//  Note that these window message numbers will also be defined in
//  mmsystem.
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

const
  MM_ACM_OPEN  = MM_STREAM_OPEN;     // conversion callback messages
  {$EXTERNALSYM MM_ACM_OPEN}
  MM_ACM_CLOSE = MM_STREAM_CLOSE;
  {$EXTERNALSYM MM_ACM_CLOSE}
  MM_ACM_DONE  = MM_STREAM_DONE;
  {$EXTERNALSYM MM_ACM_DONE}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
//
//  acmGetVersion()
//
//  the ACM version is a 32 bit number that is broken into three parts as
//  follows:
//
//      bits 24 - 31:   8 bit _major_ version number
//      bits 16 - 23:   8 bit _minor_ version number
//      bits  0 - 15:   16 bit build number
//
//  this is then displayed as follows:
//
//      bMajor = (BYTE)(dwVersion >> 24)
//      bMinor = (BYTE)(dwVersion >> 16) &
//      wBuild = LOWORD(dwVersion)
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -

function acmGetVersion: DWORD; stdcall;
{$EXTERNALSYM acmGetVersion}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
//
//  acmMetrics()
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;

function acmMetrics(hao: HACMOBJ; uMetric: UINT; var pMetric): MMRESULT; stdcall;
{$EXTERNALSYM acmMetrics}

const
  ACM_METRIC_COUNT_DRIVERS          = 1;
  {$EXTERNALSYM ACM_METRIC_COUNT_DRIVERS}
  ACM_METRIC_COUNT_CODECS           = 2;
  {$EXTERNALSYM ACM_METRIC_COUNT_CODECS}
  ACM_METRIC_COUNT_CONVERTERS       = 3;
  {$EXTERNALSYM ACM_METRIC_COUNT_CONVERTERS}
  ACM_METRIC_COUNT_FILTERS          = 4;
  {$EXTERNALSYM ACM_METRIC_COUNT_FILTERS}
  ACM_METRIC_COUNT_DISABLED         = 5;
  {$EXTERNALSYM ACM_METRIC_COUNT_DISABLED}
  ACM_METRIC_COUNT_HARDWARE         = 6;
  {$EXTERNALSYM ACM_METRIC_COUNT_HARDWARE}
  ACM_METRIC_COUNT_LOCAL_DRIVERS    = 20;
  {$EXTERNALSYM ACM_METRIC_COUNT_LOCAL_DRIVERS}
  ACM_METRIC_COUNT_LOCAL_CODECS     = 21;
  {$EXTERNALSYM ACM_METRIC_COUNT_LOCAL_CODECS}
  ACM_METRIC_COUNT_LOCAL_CONVERTERS = 22;
  {$EXTERNALSYM ACM_METRIC_COUNT_LOCAL_CONVERTERS}
  ACM_METRIC_COUNT_LOCAL_FILTERS    = 23;
  {$EXTERNALSYM ACM_METRIC_COUNT_LOCAL_FILTERS}
  ACM_METRIC_COUNT_LOCAL_DISABLED   = 24;
  {$EXTERNALSYM ACM_METRIC_COUNT_LOCAL_DISABLED}
  ACM_METRIC_HARDWARE_WAVE_INPUT    = 30;
  {$EXTERNALSYM ACM_METRIC_HARDWARE_WAVE_INPUT}
  ACM_METRIC_HARDWARE_WAVE_OUTPUT   = 31;
  {$EXTERNALSYM ACM_METRIC_HARDWARE_WAVE_OUTPUT}
  ACM_METRIC_MAX_SIZE_FORMAT        = 50;
  {$EXTERNALSYM ACM_METRIC_MAX_SIZE_FORMAT}
  ACM_METRIC_MAX_SIZE_FILTER        = 51;
  {$EXTERNALSYM ACM_METRIC_MAX_SIZE_FILTER}
  ACM_METRIC_DRIVER_SUPPORT         = 100;
  {$EXTERNALSYM ACM_METRIC_DRIVER_SUPPORT}
  ACM_METRIC_DRIVER_PRIORITY        = 101;
  {$EXTERNALSYM ACM_METRIC_DRIVER_PRIORITY}

//--------------------------------------------------------------------------;
//
//  ACM Drivers
//
//--------------------------------------------------------------------------;

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
//
//  acmDriverEnum()
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;

type
  ACMDRIVERENUMCB = function (hadif: HACMDRIVERID; dwInstance, fdwSupport: DWORD): BOOL; stdcall;
  {$EXTERNALSYM ACMDRIVERENUMCB}

function acmDriverEnum(fnCallback: ACMDRIVERENUMCB; dwInstance: DWORD;
  fdwEnum: DWORD): MMRESULT; stdcall;
{$EXTERNALSYM acmDriverEnum}

const
  ACM_DRIVERENUMF_NOLOCAL  = $40000000;
  {$EXTERNALSYM ACM_DRIVERENUMF_NOLOCAL}
  ACM_DRIVERENUMF_DISABLED = $80000000;
  {$EXTERNALSYM ACM_DRIVERENUMF_DISABLED}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
//
//  acmDriverID()
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;

function acmDriverID(hao: HACMOBJ; var phadid: HACMDRIVERID; fdwDriverID: DWORD): MMRESULT; stdcall;
{$EXTERNALSYM acmDriverID}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
//
//  acmDriverAdd()
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;

function acmDriverAddA(var phadid: HACMDRIVERID; hinstModule: HINST; Param: LPARAM;
  dwPriority: DWORD; fdwAdd: DWORD): MMRESULT; stdcall;
{$EXTERNALSYM acmDriverAddA}
function acmDriverAddW(var phadid: HACMDRIVERID; hinstModule: HINST; Param: LPARAM;
  dwPriority: DWORD; fdwAdd: DWORD): MMRESULT; stdcall;
{$EXTERNALSYM acmDriverAddW}
function acmDriverAdd(var phadid: HACMDRIVERID; hinstModule: HINST; Param: LPARAM;
  dwPriority: DWORD; fdwAdd: DWORD): MMRESULT; stdcall;
{$EXTERNALSYM acmDriverAdd}

const
  ACM_DRIVERADDF_FUNCTION   = $00000003; // lParam is a procedure
  {$EXTERNALSYM ACM_DRIVERADDF_FUNCTION}
  ACM_DRIVERADDF_NOTIFYHWND = $00000004; // lParam is notify hwnd
  {$EXTERNALSYM ACM_DRIVERADDF_NOTIFYHWND}
  ACM_DRIVERADDF_TYPEMASK   = $00000007; // driver type mask
  {$EXTERNALSYM ACM_DRIVERADDF_TYPEMASK}
  ACM_DRIVERADDF_LOCAL      = $00000000; // is local to current task
  {$EXTERNALSYM ACM_DRIVERADDF_LOCAL}
  ACM_DRIVERADDF_GLOBAL     = $00000008; // is global
  {$EXTERNALSYM ACM_DRIVERADDF_GLOBAL}

//
//  prototype for ACM driver procedures that are installed as _functions_
//  or _notifations_ instead of as a standalone installable driver.
//
type
  ACMDRIVERPROC = function (dwID: DWORD; hdrvr: HACMDRIVERID; uMsg: UINT;
    lParam1: LPARAM; lParam2: LPARAM) : LRESULT; stdcall;
  {$EXTERNALSYM ACMDRIVERPROC}
  LPACMDRIVERPROC = ^ACMDRIVERPROC;
  {$EXTERNALSYM LPACMDRIVERPROC}

//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;
//
//  acmDriverRemove()
//
//- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ;

function acmDriverRemove(hadid: HACMDRIVERID; fdwRemove: DWORD): MMRESULT; stdcall;

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
欧美国产一区二区在线观看| 国产69精品久久久久毛片| 日本欧美一区二区三区| 国产传媒日韩欧美成人| 欧美日韩在线不卡| 国产日韩av一区| 天堂蜜桃91精品| 99国产精品国产精品久久| 日韩欧美国产麻豆| 亚洲小说欧美激情另类| 国产**成人网毛片九色| 日韩精品资源二区在线| 亚洲一区二区av在线| 丁香天五香天堂综合| 日韩欧美一二三区| 日韩中文欧美在线| 欧美日韩综合一区| 最好看的中文字幕久久| 成人综合婷婷国产精品久久| 日韩一卡二卡三卡四卡| 天堂影院一区二区| 欧美在线色视频| 自拍av一区二区三区| 国产成人在线电影| 337p粉嫩大胆色噜噜噜噜亚洲 | 大尺度一区二区| 日韩美女视频一区二区在线观看| 亚洲自拍偷拍图区| 在线亚洲一区二区| 亚洲精品免费电影| 一本到三区不卡视频| 中文字幕亚洲一区二区va在线| 国产成人午夜电影网| 久久美女艺术照精彩视频福利播放 | 欧美成人aa大片| 日本伊人色综合网| 日韩免费视频线观看| 蜜臀久久99精品久久久久宅男 | 国产精品77777竹菊影视小说| 日韩视频免费直播| 日本不卡一二三| 日韩免费高清av| 国产中文一区二区三区| 久久久精品2019中文字幕之3| 国产成人自拍网| 国产精品视频一二三区| 99久久久精品免费观看国产蜜| 中文字幕视频一区二区三区久| 99精品黄色片免费大全| 亚洲制服丝袜av| 欧美一区二区在线免费播放| 精品一区二区免费看| 久久久国产精品麻豆| 99国产精品一区| 午夜精品一区二区三区免费视频 | 久久久久久久久久久99999| 国产91高潮流白浆在线麻豆| 亚洲色图欧美偷拍| 欧美高清你懂得| 国产精品一区二区三区网站| 国产精品女主播在线观看| 91黄色在线观看| 黄色日韩三级电影| 日韩伦理av电影| 欧美肥妇bbw| 国产电影精品久久禁18| 亚洲精品五月天| 欧美成人vps| 一本久久a久久免费精品不卡| 日韩高清不卡一区二区| 国产精品理论在线观看| 欧美日韩一卡二卡三卡| 国产福利一区二区三区| 亚洲国产成人av网| 国产亚洲欧美激情| 欧美制服丝袜第一页| 精品在线亚洲视频| 亚洲激情自拍偷拍| 国产午夜精品一区二区三区嫩草| 色狠狠一区二区三区香蕉| 精品一区二区在线播放| 一区二区三区日韩精品| 亚洲国产精品高清| 91麻豆精品国产91久久久久久 | 精品一区二区成人精品| 亚洲乱码国产乱码精品精小说| 日韩欧美中文一区二区| 一本久久a久久免费精品不卡| 国内欧美视频一区二区| 一区二区在线观看不卡| 国产情人综合久久777777| 欧美高清精品3d| 色嗨嗨av一区二区三区| 成人午夜av电影| 国内精品视频一区二区三区八戒| 亚洲一区二区精品久久av| 成人免费在线播放视频| 久久久久成人黄色影片| 精品理论电影在线| 91精品久久久久久久91蜜桃| 色综合久久综合网97色综合| 成人av在线播放网址| 国精产品一区一区三区mba桃花| 五月天一区二区三区| 中文字幕一区av| 国产精品国产a| 中文字幕不卡一区| 亚洲国产精华液网站w| 久久蜜桃av一区二区天堂| 久久综合久久久久88| 欧美不卡一二三| 精品久久久三级丝袜| 精品国产乱码久久久久久夜甘婷婷| 欧美一区中文字幕| 欧美一区二区日韩| 日韩视频123| 欧美成人精精品一区二区频| 欧美成人精品二区三区99精品| 欧美一区二区三区影视| 日韩欧美国产系列| 精品91自产拍在线观看一区| 精品动漫一区二区三区在线观看| 精品日韩在线观看| 久久久久久**毛片大全| 欧美国产日产图区| 亚洲视频你懂的| 一区二区三区电影在线播| 亚洲网友自拍偷拍| 日韩av一区二区在线影视| 欧美aaaaaa午夜精品| 久久精品国产在热久久| 国产高清在线精品| 成人91在线观看| 欧美三级电影一区| 欧美不卡视频一区| 国产精品国产三级国产aⅴ入口 | 青青草国产精品97视觉盛宴 | 亚洲第一综合色| 视频一区在线播放| 国产精品主播直播| 97se亚洲国产综合自在线观| 欧美日韩精品二区第二页| 日韩精品一区二区三区在线观看 | 成人手机在线视频| 97精品视频在线观看自产线路二 | 91老师片黄在线观看| 欧美精品tushy高清| 久久久一区二区三区| 亚洲免费毛片网站| 琪琪一区二区三区| 懂色一区二区三区免费观看| 日本精品一区二区三区四区的功能| 欧美二区三区的天堂| 久久精品一区二区三区不卡牛牛| 亚洲天天做日日做天天谢日日欢| 肉丝袜脚交视频一区二区| 国产成人自拍高清视频在线免费播放 | 欧美日韩视频不卡| 国产日产欧美一区| 日韩精品一级二级| www.亚洲在线| 欧美一二三区在线观看| 成人欧美一区二区三区1314 | 懂色av一区二区在线播放| 欧美日韩一区视频| 国产女同性恋一区二区| 午夜精彩视频在线观看不卡| 国产不卡在线播放| 日韩一区二区三区电影| 亚洲精品国产高清久久伦理二区| 久久不见久久见免费视频7| 欧洲精品在线观看| 日本一区二区不卡视频| 精品一区二区三区免费观看| 欧美剧情片在线观看| 1000部国产精品成人观看| 国产露脸91国语对白| 日韩一区二区在线看| 亚洲欧美日韩国产手机在线| 国产激情视频一区二区在线观看| 91精品国产综合久久香蕉的特点| 亚洲精品网站在线观看| 成人av高清在线| 久久精品欧美一区二区三区不卡 | 亚洲影院久久精品| 国产91精品在线观看| 国产女人18毛片水真多成人如厕| 丝袜美腿亚洲综合| 欧美日韩免费电影| 亚洲欧美一区二区三区极速播放| 成人免费看黄yyy456| 久久精品这里都是精品| 国产一区三区三区| 精品久久久久久无| 久久精品久久精品| 欧美www视频| 激情综合亚洲精品| 久久久久成人黄色影片| 国产精品自拍一区| 国产日韩欧美精品一区|