hvscodes.h
上传用户:dangjiwu
上传日期:2013-07-19
资源大小:42019k
文件大小:37k
源码类别:

Symbian

开发平台:

Visual C++

  1. /* ***** BEGIN LICENSE BLOCK *****
  2.  * Source last modified: $Id: hvscodes.h,v 1.1.1.1.42.1 2004/07/09 01:56:17 hubbe Exp $
  3.  * 
  4.  * Portions Copyright (c) 1995-2004 RealNetworks, Inc. All Rights Reserved.
  5.  * 
  6.  * The contents of this file, and the files included with this file,
  7.  * are subject to the current version of the RealNetworks Public
  8.  * Source License (the "RPSL") available at
  9.  * http://www.helixcommunity.org/content/rpsl unless you have licensed
  10.  * the file under the current version of the RealNetworks Community
  11.  * Source License (the "RCSL") available at
  12.  * http://www.helixcommunity.org/content/rcsl, in which case the RCSL
  13.  * will apply. You may also obtain the license terms directly from
  14.  * RealNetworks.  You may not use this file except in compliance with
  15.  * the RPSL or, if you have a valid RCSL with RealNetworks applicable
  16.  * to this file, the RCSL.  Please see the applicable RPSL or RCSL for
  17.  * the rights, obligations and limitations governing use of the
  18.  * contents of the file.
  19.  * 
  20.  * Alternatively, the contents of this file may be used under the
  21.  * terms of the GNU General Public License Version 2 or later (the
  22.  * "GPL") in which case the provisions of the GPL are applicable
  23.  * instead of those above. If you wish to allow use of your version of
  24.  * this file only under the terms of the GPL, and not to allow others
  25.  * to use your version of this file under the terms of either the RPSL
  26.  * or RCSL, indicate your decision by deleting the provisions above
  27.  * and replace them with the notice and other provisions required by
  28.  * the GPL. If you do not delete the provisions above, a recipient may
  29.  * use your version of this file under the terms of any one of the
  30.  * RPSL, the RCSL or the GPL.
  31.  * 
  32.  * This file is part of the Helix DNA Technology. RealNetworks is the
  33.  * developer of the Original Code and owns the copyrights in the
  34.  * portions it created.
  35.  * 
  36.  * This file, and the files included with this file, is distributed
  37.  * and made available on an 'AS IS' basis, WITHOUT WARRANTY OF ANY
  38.  * KIND, EITHER EXPRESS OR IMPLIED, AND REALNETWORKS HEREBY DISCLAIMS
  39.  * ALL SUCH WARRANTIES, INCLUDING WITHOUT LIMITATION, ANY WARRANTIES
  40.  * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE, QUIET
  41.  * ENJOYMENT OR NON-INFRINGEMENT.
  42.  * 
  43.  * Technology Compatibility Kit Test Suite(s) Location:
  44.  *    http://www.helixcommunity.org/content/tck
  45.  * 
  46.  * Contributor(s):
  47.  * 
  48.  * ***** END LICENSE BLOCK ***** */
  49. /*-----------------------------------------------------------------------------
  50.  *  hvscodes.h
  51.  *
  52.  *  NAME  
  53.  *    HVSCODES -- code symbols for streams.
  54.  *
  55.  *  SYNOPSIS
  56.  *    #include "hvscodes.h"
  57.  *     ...
  58.  *
  59.  *  DESCRIPTION:
  60.  *    This file holds the constants used throughout this project.
  61.  *    These constants include STREAM ID numbers, value codes (i.e., what
  62.  *    kind of picture, kind of camera, etc.), parameter ID numbers, and 
  63.  *    stream state values.  The following are rough breakdowns of the 
  64.  *    ranges for each:
  65.  *
  66.  -----------------------------------------------------------------------------*/ 
  67. #ifndef _HVSCODES_H_
  68. #define _HVSCODES_H_
  69. /* stream types (usable as WM_USER messages if need be) */
  70. #define VVS_BASE            0x7E00 
  71. #define VVS_FIRST_STREAM    (VVS_BASE + 1)
  72. #define VVS_VID_PREVIEW     (VVS_BASE + 1)
  73. #define VVS_VID_DISPLAY     (VVS_BASE + 2)
  74. #define VVS_VID_DECOMPRESS  (VVS_BASE + 3)
  75. #define VVS_VID_COMPRESS    (VVS_BASE + 4)
  76. #define VVS_VID_IN          (VVS_BASE + 5)
  77. #define VVS_AUD_OUT         (VVS_BASE + 6)
  78. #define VVS_AUD_IN          (VVS_BASE + 7)
  79. #define VVS_TIMER           (VVS_BASE + 8)
  80. #define VVS_MUX_XMIT        (VVS_BASE + 9)
  81. #define VVS_MUX_RECV        (VVS_BASE + 10) 
  82. #define VVS_COMPRESSED_BUF  (VVS_BASE + 11)
  83. #define VVS_RECEIVED_BUF    (VVS_BASE + 12) 
  84. /* Used to identify wave audio input and output stream */
  85. #define VVS_WAVE_IN       (VVS_BASE + 13)
  86. #define VVS_WAVE_OUT      (VVS_BASE + 14)
  87. /* Source and Sink Streams */
  88. #define VVS_SOURCE_STREAM   (VVS_BASE + 15)
  89. #define VVS_SINK_STREAM     (VVS_BASE + 16)
  90. /* SmartScreen Stream */
  91. #define VVS_SMTSCR          (VVS_BASE + 17)
  92. /* Session Manager Stream */
  93. #define VVS_SES_MNGR_STREAM (VVS_BASE + 18)
  94. /* Echo Cancellation Tx and Rx Streams */
  95. #define VVS_ECHO_TX (VVS_BASE + 19)
  96. #define VVS_ECHO_RX (VVS_BASE + 20)
  97. /* Communications Manager */
  98. #define VVS_COMM_MNGR_STREAM (VVS_BASE + 21)
  99. /* BMAC (ISDN B-channel media access) IO stream */
  100. #define VVS_BMAC_IO_STREAM   (VVS_BASE + 22)
  101. /* H.DLL Multiplexor and Demultiplexor streams */
  102. #define VVS_HDLL_MUX_STREAM   (VVS_BASE + 23)
  103. #define VVS_HDLL_DEMUX_STREAM (VVS_BASE + 24)  
  104. /* REMOTE VIEWER pseudo-display stream */
  105. #define VVS_REMOTE_STREAM    (VVS_BASE + 25) 
  106. #define VVS_AUD_SRC_STREAM   (VVS_BASE + 26)
  107. #define VVS_AUD_SINK_STREAM  (VVS_BASE + 27)
  108. /* audio encode and decode streams */
  109. #define VVS_AUDIO_ENC (VVS_BASE + 28)
  110. #define VVS_AUDIO_DEC (VVS_BASE + 29)
  111. /* NetLayer Client/Gateway streams */
  112. #define VVS_NET_CLIENT_STREAM   (VVS_BASE + 30)
  113. #define VVS_NET_GATEWAY_STREAM  (VVS_BASE + 31)
  114. /* Record and Playback */
  115. #define VVS_RECORD_STREAM       (VVS_BASE + 32)
  116. #define VVS_PLAYBACK_STREAM     (VVS_BASE + 33)
  117. /* Record and Playback */
  118. #define VVS_XMT_MLP_STREAM      (VVS_BASE + 34)
  119. #define VVS_RCV_MLP_STREAM      (VVS_BASE + 35)
  120. /* H.223 Adaptation Layer Streams (Xmit & Recv) */
  121. #define VVS_AL1X_STREAM         (VVS_BASE + 36)
  122. #define VVS_AL1R_STREAM         (VVS_BASE + 37)
  123. #define VVS_AL2X_STREAM         (VVS_BASE + 38)
  124. #define VVS_AL2R_STREAM         (VVS_BASE + 39)
  125. #define VVS_AL3X_STREAM         (VVS_BASE + 40)
  126. #define VVS_AL3R_STREAM         (VVS_BASE + 41)
  127. /* H.223 MUX streams */
  128. #define VVS_H223_MUX_XMIT       (VVS_BASE + 42)
  129. #define VVS_H223_MUX_RECV       (VVS_BASE + 43)
  130. /* H.245 Control Channel Streams */
  131. #define VVS_H245X_STREAM         (VVS_BASE + 44)
  132. #define VVS_H245R_STREAM         (VVS_BASE + 45)
  133. /* H.245 Protocol Manager Stream */
  134. #define VVS_PROTOCOL_MNGR_STREAM (VVS_BASE + 46)
  135. #define VVS_ESS1888_IN (VVS_BASE + 47)
  136. #define VVS_ESS1888_OUT (VVS_BASE + 48)
  137. #define VVS_ATT_IN (VVS_BASE + 49)
  138. #define VVS_ATT_OUT (VVS_BASE + 50)
  139. #define VVS_LAST_STREAM          (VVS_BASE + 50)
  140. /***** NO MORE THAN 47 STREAM TYPES (VVS_BASE + 47) *****/
  141. /* various value-code names */
  142. #define VVS_CODE_BASE       VVS_BASE + 0x30 
  143. /* data layouts (memory formats as captured) */
  144. #define VVS_LAYOUT_PICTURE  (VVS_CODE_BASE + 0)
  145. #define VVS_LAYOUT_S422     (VVS_CODE_BASE + 1)
  146. #define VVS_LAYOUT_YVU9     (VVS_CODE_BASE + 2)
  147. #define VVS_LAYOUT_LUMA     (VVS_CODE_BASE + 3)
  148. #define VVS_LAYOUT_TEE      (VVS_CODE_BASE + 4)
  149.     /* see below for additional layouts */
  150. /* source selections -- values of VVS_CAMERA */
  151. #define VVS_CAMERA_MAIN     (VVS_CODE_BASE + 5)
  152. #define VVS_CAMERA_DOC      (VVS_CODE_BASE + 6)
  153. #define VVS_CAMERA_AUX      (VVS_CODE_BASE + 7)
  154. #define VVS_CAMERA_SPLIT    (VVS_CODE_BASE + 8)
  155. #define VVS_VCR             (VVS_CODE_BASE + 9)
  156. /* resolutions */
  157. #define VVS_NORMALRES       (VVS_CODE_BASE + 10) 
  158. /* high resolution (Annex D to H.261) */
  159. #define VVS_HIRES           (VVS_CODE_BASE + 11)
  160. /* Layout for Captivator    */
  161. #define VVS_LAYOUT_VLV3     (VVS_CODE_BASE + 12)        // Color 4:1:1
  162. #define VVS_LAYOUT_VLV4     (VVS_CODE_BASE + 13)        // Monochrome
  163. /* Layout for SmartScreen    */
  164. #define VVS_LAYOUT_DIB     (VVS_CODE_BASE + 14)
  165. /* Layout for MovieMan    */
  166. #define VVS_LAYOUT_MOVMAN  (VVS_CODE_BASE + 15)
  167. /* Layout for BtV    */
  168. #define VVS_LAYOUT_BTV    (VVS_CODE_BASE + 16)
  169. #define VVS_LAYOUT_YUV12   (VVS_CODE_BASE + 17)
  170. #define VVS_LAYOUT_YUV9   (VVS_CODE_BASE + 18)
  171. #define VVS_LAYOUT_YUY2   (VVS_CODE_BASE + 19)
  172. #define VVS_WINDOW_HANDLE (VVS_CODE_BASE + 20)        // VidCap and VidDisp hwnd
  173. /* DIBs forming a video stream (WEB Producer)*/
  174. #define VVS_LAYOUT_DIB_VIDEO     (VVS_CODE_BASE + 21)
  175. /***** NO MORE THAN 47 VALUE-CODE NAMES (VVS_C5DE_BASE + 47) *****/
  176. /* stream parameter names */   
  177. #define VVS_PARAM_BASE      VVS_BASE + 0x60 
  178. #define VVS_LOAD_MWAVE_TIMER_TASK (VVS_PARAM_BASE + 0)
  179. /* the state of the stream (see VVS_STATE_BASE codes) */
  180. #define VVS_STATE           (VVS_PARAM_BASE + 1)
  181. /* the frame time in microseconds */ 
  182. #define VVS_FRAME_TIME      (VVS_PARAM_BASE + 2)
  183. /* the delay time in microseconds */
  184. #define VVS_DELAY_TIME      (VVS_PARAM_BASE + 3)
  185. /* the maximum processing time in microseconds  */
  186. #define VVS_PROC_TIME       (VVS_PARAM_BASE + 4)
  187. /* the total buffer time in microseconds */
  188. #define VVS_TOTAL_TIME      (VVS_PARAM_BASE + 5)
  189. /* format of stream: BAS_VICAP_CIF, BAS_VICAP_QCIF, BAS_AUCAP_ULAW...*/
  190. #define VVS_CAP             (VVS_PARAM_BASE + 6)
  191. /* number of rows in captured video or DIB */
  192. #define VVS_ROWS            (VVS_PARAM_BASE + 7)
  193. /* number of columns in captured video Or DIB */
  194. #define VVS_COLS            (VVS_PARAM_BASE + 8)
  195. /* buffer size in bytes */
  196. #define VVS_BUFSIZE         (VVS_PARAM_BASE + 9)
  197. /* buffer count */
  198. #define VVS_BUFCOUNT        (VVS_PARAM_BASE + 10)
  199. /* buffer count */
  200. #define VVS_FRAMECOUNT      (VVS_PARAM_BASE + 11)
  201. /* timestamp */
  202. #define VVS_TIMESTAMP       (VVS_PARAM_BASE + 12)
  203. /* frame loss */
  204. #define VVS_FRAMELOSS       (VVS_PARAM_BASE + 13)
  205. /* audio volume  -- range 0xffff to zero */
  206. #define VVS_VOLUME          (VVS_PARAM_BASE + 14)
  207. /* audio mute -- nonzero means muted */
  208. #define VVS_MUTE            (VVS_PARAM_BASE + 15)
  209. /* stream from which this stream gets its input */
  210. #define VVS_INPUTSTREAM     (VVS_PARAM_BASE + 16)
  211. /* stream to which this stream sends its output */
  212. #define VVS_OUTPUTSTREAM    (VVS_PARAM_BASE + 17)
  213. /* coder state */
  214. #define VVS_CODER_STATE     (VVS_PARAM_BASE + 18)
  215. /* frame layout (as captured off the video capture board) */
  216. #define VVS_LAYOUT          (VVS_PARAM_BASE + 19)
  217. /* nominal bit rate, bits per second */
  218. #define VVS_BITRATE         (VVS_PARAM_BASE + 20) 
  219. /* camera or other media source VVS_CAMERA_MAIN, VVS_CAMERA_DOC...*/
  220. #define VVS_SOURCE          (VVS_PARAM_BASE + 21) 
  221. /* parameters for video codec stream handlers */
  222. /* set FAST_UPDATE in video encoder stream to request intraframe */
  223. #define VVS_FAST_UPDATE     (VVS_PARAM_BASE + 22)
  224. /* set FREEZE_PICTURE_RELEASE in video encoder stream to send FPR to far end */
  225. #define VVS_FREEZE_PICTURE_RELEASE (VVS_PARAM_BASE + 23)
  226. /* set FREEZE_PICTURE in video decoder to freeze picture; reset when FPR arrives */
  227. #define VVS_FREEZE_PICTURE  (VVS_PARAM_BASE + 24)
  228. /* values: VVS_NORMALRES, VVS_HIRES (Annex D) */
  229. #define VVS_RES             (VVS_PARAM_BASE + 25)
  230. /* encoder max quantizer value (tuning parameter) */
  231. #define VVS_QUANTIZER_MAX   (VVS_PARAM_BASE + 26) 
  232. /* decoder number of start codes processed */
  233. #define VVS_STARTCODES      (VVS_PARAM_BASE + 27)
  234. /* decoder number of GOBs processed */
  235. #define VVS_GOBS            (VVS_PARAM_BASE + 28)
  236. /* decoder number of erroneous GOBs skipped */
  237. #define VVS_BADGOBS         (VVS_PARAM_BASE + 29)
  238. /* stream to which this stream sends its output */
  239. #define VVS_DISPLAYSTREAM   (VVS_PARAM_BASE + 30)
  240. /* bits processed */
  241. #define VVS_BITSPROCESSED   (VVS_PARAM_BASE + 31)
  242. /* bits-per-second (actual bitrate, derived from timestamp */
  243. #define VVS_BITSPERSECOND   (VVS_PARAM_BASE + 32)
  244. /* special-frame -- frame number to get special handling */
  245. #define VVS_SPECIALFRAME    (VVS_PARAM_BASE + 33) 
  246. /* timing-instrumentation parameters */
  247. #define VVS_TIME1           (VVS_PARAM_BASE + 34)
  248. #define VVS_TIME2           (VVS_PARAM_BASE + 35)
  249. /* bits-per-frame */
  250. #define VVS_BITSPERFRAME    (VVS_PARAM_BASE + 36)
  251. /* all streams / queue fullness indicators */
  252. #define VVS_RET_Q_COUNT     (VVS_PARAM_BASE + 37)
  253. #define VVS_OUT_Q_COUNT     (VVS_PARAM_BASE + 38)
  254. #define VVS_LOWRES          (VVS_PARAM_BASE + 39) 
  255. #define VVS_MONOCHROME      (VVS_PARAM_BASE + 40)
  256. /* Tell the driver to start the configure dialog box */
  257. /* This is a boolean.  If you set it, it invokes the config dlg. */
  258. #define VVS_CONFIGURE       (VVS_PARAM_BASE + 41)
  259. /* Parameters for manual exposure control*/
  260. #define VVS_CAMERA_AGC      (VVS_PARAM_BASE + 42)
  261. #define VVS_CAMERA_SHUTTER  (VVS_PARAM_BASE + 43)
  262. #define VVS_CAMERA_GAIN     (VVS_PARAM_BASE + 44)
  263. #define VVS_VIDEO_ENHANCER  (VVS_PARAM_BASE + 45)
  264. /* Enable and  disable holding bits in bistream arena until entire frame is decoded. */
  265. #define VVS_DECODER_ENABLE_BS_HOLD  (VVS_PARAM_BASE + 46)
  266. /* Set display state */
  267. #define VVS_DECODER_DISPLAY_STATE   (VVS_PARAM_BASE + 47)
  268. /* Byte offset to bitstream receive index */
  269. #define VVS_DECODER_RECV_BYTE (VVS_PARAM_BASE + 48)
  270. /* Left room for up to (VVS_PARAM_BASE + 49) general parameters */
  271. /* Audio Stream Parameters */
  272. #define VVS_AUD_PARAMETERS  (VVS_PARAM_BASE + 50)
  273. #define VVS_SILENT          (VVS_AUD_PARAMETERS + 0)
  274. #define VVS_LEVEL           (VVS_AUD_PARAMETERS + 1)
  275. #define VVS_CODING          (VVS_AUD_PARAMETERS + 2)
  276. #define VVS_BITS_PER_SAMPLE (VVS_AUD_PARAMETERS + 3)
  277. #define VVS_FREQ_RANGE      (VVS_AUD_PARAMETERS + 4)
  278. #define VVS_SINK            (VVS_AUD_PARAMETERS + 5)
  279. #define VVS_AUDIO_CAPS       (VVS_AUD_PARAMETERS + 6)
  280. #define VVS_AUDIO_DELAY_FLUFF (VVS_AUD_PARAMETERS + 7)
  281. #define VVS_AUDIO_PRIVACY   (VVS_AUD_PARAMETERS + 8)
  282. #define VVS_LIP_SYNC        (VVS_AUD_PARAMETERS + 9)
  283. #define VVS_GAIN            (VVS_AUD_PARAMETERS + 10)
  284. #define VVS_PRE_ECHO_GAIN   (VVS_AUD_PARAMETERS + 11)
  285. #define VVS_START_TIME      (VVS_AUD_PARAMETERS + 12)
  286. /* Left 15 spaces for audio stream parameters */
  287. /* Xmit stream */
  288. #define VVS_XMIT_PARAMETERS     (VVS_PARAM_BASE + 65)
  289. #define VVS_AUDIOSTREAM         (VVS_XMIT_PARAMETERS + 0)
  290. #define VVS_VIDEOSTREAM         (VVS_XMIT_PARAMETERS + 1)
  291. #define VVS_DATASTREAM          (VVS_XMIT_PARAMETERS + 2)
  292. #define VVS_AUDIO_BITRATE       (VVS_XMIT_PARAMETERS + 3)
  293. #define VVS_VIDEO_BITRATE       (VVS_XMIT_PARAMETERS + 4)
  294. #define VVS_DATA_BITRATE        (VVS_XMIT_PARAMETERS + 5)
  295. #define VVS_AUDIO_UNDERRUN      (VVS_XMIT_PARAMETERS + 6)
  296. #define VVS_VIDEO_UNDERRUN      (VVS_XMIT_PARAMETERS + 7)
  297. #define VVS_DATA_UNDERRUN       (VVS_XMIT_PARAMETERS + 8)
  298. #define VVS_MUX_XMIT_AUD_MODE_REQ   (VVS_XMIT_PARAMETERS + 9)
  299. #define VVS_MUX_XMIT_DATA_MODE_REQ  (VVS_XMIT_PARAMETERS + 10)
  300. #define VVS_MUX_XMIT_VID_MODE_REQ   (VVS_XMIT_PARAMETERS + 11)
  301. #define VVS_AUDIO_MODE          (VVS_XMIT_PARAMETERS + 12)
  302. #define VVS_VIDEO_MODE          (VVS_XMIT_PARAMETERS + 13)
  303. #define VVS_TRANSFER_MODE       (VVS_XMIT_PARAMETERS + 14)
  304. #define VVS_XMIT_MCU_MODE       (VVS_XMIT_PARAMETERS + 15)
  305. #define VVS_XMIT_CONN_CONFIRMS  (VVS_XMIT_PARAMETERS + 16)
  306. #define VVS_MLP_STREAM          (VVS_XMIT_PARAMETERS + 17)
  307. #define VVS_MUX_XMIT_HMLP_MODE_REQ   (VVS_XMIT_PARAMETERS + 18)
  308. #define VVS_MUX_XMIT_LMLP_MODE_REQ   (VVS_XMIT_PARAMETERS + 19)
  309. #define VVS_H_MLP_MODE          (VVS_XMIT_PARAMETERS + 20)
  310. #define VVS_L_MLP_MODE          (VVS_XMIT_PARAMETERS + 21)
  311. #define VVS_T120_MODE_REQ       (VVS_XMIT_PARAMETERS + 22)
  312. #define VVS_T120_MODE           (VVS_XMIT_PARAMETERS + 23)
  313. #define VVS_BACKLOG             (VVS_XMIT_PARAMETERS + 24)
  314. /* Left 30 spaces for XMIT stream parameters */
  315. /* Source stream parameters */
  316. #define VVS_SRC_PARAMETERS      (VVS_PARAM_BASE + 95)
  317. #define VVS_SRC_PATTERN_SIZE    (VVS_SRC_PARAMETERS + 0)
  318. #define VVS_SRC_PATTERN         (VVS_SRC_PARAMETERS + 1)
  319. #define VVS_SRC_COUNT           (VVS_SRC_PARAMETERS + 2)
  320. #define VVS_SRC_FILENAME        (VVS_SRC_PARAMETERS + 3)
  321. #define VVS_SRC_COMM_NAME       (VVS_SRC_PARAMETERS + 4)
  322. #define VVS_SRC_COMM_SETUP      (VVS_SRC_PARAMETERS + 5)
  323. #define VVS_SRC_OUT_Q_CNT       (VVS_SRC_PARAMETERS + 6)
  324. #define VVS_SRC_RET_Q_CNT       (VVS_SRC_PARAMETERS + 7)
  325. #define VVS_SRC_MSG_NUM         (VVS_SRC_PARAMETERS + 8)
  326. #define VVS_SRC_FLAGS           (VVS_SRC_PARAMETERS + 9)
  327. /* Left 15 parameter spaces for Source stream */
  328. /* Sink stream parameters */
  329. #define VVS_SINK_PARAMETERS     (VVS_PARAM_BASE + 110)
  330. #define VVS_SINK_PATTERN_SIZE   (VVS_SINK_PARAMETERS + 0)
  331. #define VVS_SINK_PATTERN        (VVS_SINK_PARAMETERS + 1)
  332. #define VVS_SINK_GOOD_COUNT     (VVS_SINK_PARAMETERS + 2)
  333. #define VVS_SINK_BAD_COUNT      (VVS_SINK_PARAMETERS + 3)
  334. #define VVS_SINK_FILENAME       (VVS_SINK_PARAMETERS + 4)
  335. #define VVS_SINK_COMM_NAME      (VVS_SINK_PARAMETERS + 5)
  336. #define VVS_SINK_COMM_SETUP     (VVS_SINK_PARAMETERS + 6)
  337. #define VVS_SINK_MSG_NUM        (VVS_SINK_PARAMETERS + 7)
  338. #define VVS_SINK_FLAGS          (VVS_SINK_PARAMETERS + 8)
  339. /* Left 15 parameter spaces for Sink stream */
  340. /* Parameters for CODER and ENCODER */
  341. #define VVS_CODER_PARAMETERS    (VVS_PARAM_BASE + 125)
  342. /* encoder min quantizer value (tuning parameter) */
  343. #define VVS_QUANTIZER_MIN       (VVS_CODER_PARAMETERS + 0)
  344. /* Coder streams misc */
  345. #define VVS_BITRATEK            (VVS_CODER_PARAMETERS + 1)
  346. #define VVS_MAX_BITS            (VVS_CODER_PARAMETERS + 2)
  347. #define VVS_TARGET_BITS         (VVS_CODER_PARAMETERS + 3)
  348. #define VVS_EFF_FACTOR          (VVS_CODER_PARAMETERS + 4)
  349. /* BitRate control*/
  350. #define VVS_RESERVE_BITS        (VVS_CODER_PARAMETERS + 5)
  351. #define VVS_QUANT_BITS          (VVS_CODER_PARAMETERS + 6)
  352. #define VVS_CAPTURE_BITS        (VVS_CODER_PARAMETERS + 7)
  353. #define VVS_BOTTOM_BITS         (VVS_CODER_PARAMETERS + 8)
  354. #define VVS_BUFFER_BITS         (VVS_CODER_PARAMETERS + 9)
  355. #define VVS_QTARGET_BITS        (VVS_CODER_PARAMETERS + 10)
  356. /* for Motion Estimation tuning maps */
  357. #define VVS_MEST_MAP            (VVS_CODER_PARAMETERS + 11)
  358.  
  359. /* far-end resolution capabilities */
  360. #define VVS_LOW_RES_CAP         (VVS_CODER_PARAMETERS + 12)
  361. #define VVS_MED_RES_CAP         (VVS_CODER_PARAMETERS + 13) 
  362. #define VVS_HIGH_RES_CAP        (VVS_CODER_PARAMETERS + 14)
  363. /* Controls for MahKeeNak DCT */ 
  364. #define VVS_K3                  (VVS_CODER_PARAMETERS + 15)
  365. #define VVS_KALL                (VVS_CODER_PARAMETERS + 16)
  366. #define VVS_MIN3                (VVS_CODER_PARAMETERS + 17)
  367. #define VVS_MINALL              (VVS_CODER_PARAMETERS + 18)
  368.  
  369. /* Left a total of 40 spaces for coder and decoder parameters */
  370. #define VVS_DISPLAY_FREEZE      (VVS_CODER_PARAMETERS + 19)
  371. #define VVS_DISPLAY_DIB         (VVS_CODER_PARAMETERS + 20)
  372. #define VVS_WGHT1               (VVS_CODER_PARAMETERS + 21)
  373. #define VVS_WGHT2               (VVS_CODER_PARAMETERS + 22)
  374. #define VVS_FRAMESDISPLAYED     (VVS_CODER_PARAMETERS + 23)
  375. #define VVS_ENCODE_BAL_DISPLAY  (VVS_CODER_PARAMETERS + 24)
  376. #define VVS_VIDEO_HOLD          (VVS_CODER_PARAMETERS + 25)
  377. #define VVS_FORMAT              (VVS_CODER_PARAMETERS + 26)
  378. #define VVS_GAMMA_PREDISTORTED  (VVS_CODER_PARAMETERS + 27)
  379. #define VVS_UPSIDE_DOWN         (VVS_CODER_PARAMETERS + 28)
  380. #define VVS_MIRROR              (VVS_CODER_PARAMETERS + 29)
  381. #define VVS_LIGHTING            (VVS_CODER_PARAMETERS + 30)
  382. #define VVS_INTENSITY_PERCENTILE (VVS_CODER_PARAMETERS + 31)
  383. #define VVS_DECODER_BCH         (VVS_CODER_PARAMETERS + 32)
  384. #define VVS_OUTDIB_FORMAT       (VVS_CODER_PARAMETERS + 33)
  385. #define VVS_WHITE_BALANCE       (VVS_CODER_PARAMETERS + 34)
  386. #define VVS_SOURCE_DIALOG       (VVS_CODER_PARAMETERS + 35)
  387. #define VVS_FORMAT_DIALOG       (VVS_CODER_PARAMETERS + 36)     
  388. #define VVS_DISPLAY_DIALOG      (VVS_CODER_PARAMETERS + 37) 
  389. #define VVS_CAPTURE_WINDOW    (VVS_CODER_PARAMETERS + 38)
  390. #define VVS_CAPTURE_SCALE     (VVS_CODER_PARAMETERS + 39)
  391. /* Smart Screen Source: 0 = file, 1 = screen, 2 = pattern */
  392. #define VVS_SMTSCR_PARAMETERS   (VVS_PARAM_BASE + 165)
  393. #define VVS_SMTSCR_SRC          (VVS_SMTSCR_PARAMETERS + 0)
  394. #define VVS_SMTSCR_DIB          (VVS_SMTSCR_PARAMETERS + 1)
  395. #define VVS_SMTSCR_HWND         (VVS_SMTSCR_PARAMETERS + 2)
  396. #define VVS_SMTSCR_GETDIB       (VVS_SMTSCR_PARAMETERS + 3)
  397. #define VVS_SMTSCR_USAGE        (VVS_SMTSCR_PARAMETERS + 4)  
  398. #define VVS_SMTSCR_CAPTURE_DIB_INTERVAL   (VVS_SMTSCR_PARAMETERS + 5)  
  399. #define VVS_SMTSCR_CAPTURE_CURSOR_INTERVAL   (VVS_SMTSCR_PARAMETERS + 6)   
  400. /* Steal some SmartScreen prarmeters for H.263 - md 2/24/96 */
  401. #define VVS_ADVANCED_PRED (VVS_SMTSCR_PARAMETERS + 7)
  402. #define VVS_URESTRICTED_MV (VVS_SMTSCR_PARAMETERS + 8)
  403. #define VVS_SEND_GOB_HEADERS    (VVS_SMTSCR_PARAMETERS + 9)
  404. // Echo Suppression Parameters
  405. #define VVS_ECHO_PARAMETERS     (VVS_PARAM_BASE + 175)
  406. //Overlap G723 w/ echo.  G723 used for audout, echo used for audin.
  407. #define VVS_G723_OK             (VVS_ECHO_PARAMETERS + 0)
  408. #define VVS_G723_CONCEAL        (VVS_ECHO_PARAMETERS + 1)
  409. #define VVS_G723_BAD_BITSTREAM  (VVS_ECHO_PARAMETERS + 2)                   
  410. #define VVS_G723_PACKBITS_ERROR (VVS_ECHO_PARAMETERS + 3)                
  411. #define VVS_G723_UNSUPPORTED_MODE (VVS_ECHO_PARAMETERS + 4)
  412.  
  413. #define VVS_FAST_INC            (VVS_ECHO_PARAMETERS + 0)
  414. #define VVS_SLOW_INC            (VVS_ECHO_PARAMETERS + 1)
  415. #define VVS_LEVEL_INC           (VVS_ECHO_PARAMETERS + 2)
  416. #define VVS_NOISE_INC           (VVS_ECHO_PARAMETERS + 3)
  417. #define VVS_THRESHOLD           (VVS_ECHO_PARAMETERS + 4)
  418. #define VVS_ECHO_VOLUME         (VVS_ECHO_PARAMETERS + 5)
  419. #define VVS_ECHO_GAIN           (VVS_ECHO_PARAMETERS + 6)
  420. #define VVS_ECHO_RANGE          (VVS_ECHO_PARAMETERS + 7)
  421. /* echo suppression--audin stream only!  */
  422. #define VVS_ECHO_INPUT_GAIN     (VVS_ECHO_PARAMETERS + 8)
  423. #define VVS_ECHO_LINE_GAIN      (VVS_ECHO_PARAMETERS + 9)
  424. #define VVS_ECHO_MIC_BIAS       (VVS_ECHO_PARAMETERS + 10)
  425. #define VVS_ECHO_XMIT_LEVEL     (VVS_ECHO_PARAMETERS + 11)
  426. #define VVS_ECHO_SPEAKER_LEVEL  (VVS_ECHO_PARAMETERS + 12)
  427. /* more echo suppression stuff  */
  428. #define VVS_ECHO_CENTER_CLIPPER (VVS_ECHO_PARAMETERS + 13)
  429. #define VVS_ECHO_TIME           (VVS_ECHO_PARAMETERS + 14)
  430. #define VVS_MWAVE_TIMER_FUZZ    (VVS_ECHO_PARAMETERS + 15)
  431. #define VVS_ECHO_ATTENUATION    (VVS_ECHO_PARAMETERS + 16)
  432. #define VVS_ECHO_ON             (VVS_ECHO_PARAMETERS + 17)
  433. #define VVS_MWAVE_TIMER         (VVS_ECHO_PARAMETERS + 18)
  434. #define VVS_ECHO_LINE_BIAS      (VVS_ECHO_PARAMETERS + 19)
  435. #define VVS_ECHO_OUTPUT_NOISE   (VVS_ECHO_PARAMETERS + 20)
  436. #define VVS_ECHO_INPUT_NOISE    (VVS_ECHO_PARAMETERS + 21)
  437. #define VVS_ECHO_OUTPUT_LEVEL   (VVS_ECHO_PARAMETERS + 22)
  438. #define VVS_ECHO_INPUT_LEVEL    (VVS_ECHO_PARAMETERS + 23)
  439. //#define VVS_ECHO_SYNC_ERRORS    (VVS_ECHO_PARAMETERS + 24)
  440. #define VVS_VA_SLEEP_COUNT          (VVS_ECHO_PARAMETERS + 24)
  441. //#define VVS_VA_MAG_PRED_COEFFS        (VVS_ECHO_PARAMETERS + 25)
  442. #define VVS_VA_FALL_TIME        (VVS_ECHO_PARAMETERS + 25)
  443. #define VVS_VA_MAG_SPEECH           (VVS_ECHO_PARAMETERS + 26)
  444. //#define VVS_VA_SLEEP_COEFF_THRESH (VVS_ECHO_PARAMETERS + 27)
  445. #define VVS_VA_RISE_TIME            (VVS_ECHO_PARAMETERS + 27)
  446. #define VVS_VA_SLEEP_SPEECH_THRESH  (VVS_ECHO_PARAMETERS + 28)
  447. #define VVS_VA_ACTIVE_SPEECH_THRESH (VVS_ECHO_PARAMETERS + 29)
  448. #define VVS_VA_STATE                (VVS_ECHO_PARAMETERS + 30)
  449. //#define VVS_VA_MAG_PRED_POLES     (VVS_ECHO_PARAMETERS + 30)
  450. //#define VVS_VA_MAG_PRED_ZEROS     (VVS_ECHO_PARAMETERS + 31)
  451. /* OK to go over 30 since overlap is w/ ses manager and */
  452. /* will never ask any other stream for VVS_VA_MAG_PRED_ZEROS*/ 
  453. /* Left 30 parameter spaces for echo suppression */
  454. /* Session Manager Stream Parameters */
  455. #define VVS_SESMNGR_PARAMETERS      (VVS_PARAM_BASE + 205)
  456. #define VVS_SES_MNGR_COMM_MNGR      (VVS_SESMNGR_PARAMETERS + 0)
  457. #define VVS_SES_MNGR_NEXT_ACTION    (VVS_SESMNGR_PARAMETERS + 1)
  458. #define VVS_SES_MNGR_CURR_STATE     (VVS_SESMNGR_PARAMETERS + 2)
  459. #define VVS_SES_MNGR_STREAMS        (VVS_SESMNGR_PARAMETERS + 3)
  460. #define VVS_SES_MNGR_STREAMS_MAX    (VVS_SESMNGR_PARAMETERS + 4)
  461. #define VVS_SES_MNGR_STREAMS_MIN    (VVS_SESMNGR_PARAMETERS + 5)
  462. #define VVS_SES_MNGR_DMINITED       (VVS_SESMNGR_PARAMETERS + 6)
  463. #define VVS_SES_MNGR_COMPRSRC       (VVS_SESMNGR_PARAMETERS + 7)
  464. #define VVS_SES_MNGR_LOOPBACK_LEVEL (VVS_SESMNGR_PARAMETERS + 8)
  465. #define VVS_SES_MNGR_SET_CUR_DIR    (VVS_SESMNGR_PARAMETERS + 9)
  466. #define VVS_SES_MNGR_INSTANCE       (VVS_SESMNGR_PARAMETERS + 10)
  467. #define VVS_SES_MNGR_CODEC_LOOP     (VVS_SESMNGR_PARAMETERS + 11)
  468. #define VVS_SES_MNGR_VIDEO_LOOP     (VVS_SESMNGR_PARAMETERS + 12)
  469. #define VVS_TOTAL_ALLOCS (VVS_SESMNGR_PARAMETERS + 13)
  470. #define VVS_TOTAL_LOCKED_ALLOCS     (VVS_SESMNGR_PARAMETERS + 14)
  471. /* Left 15 parameter spaces for Session Manager */
  472. /* Communication Manager Stream Parameters */
  473. #define VVS_COMMMNGR_PARAMETERS      (VVS_PARAM_BASE + 220)
  474. #define VVS_COMM_MNGR_CALL_STATE     (VVS_COMMMNGR_PARAMETERS + 0)
  475. #define VVS_COMM_MNGR_CALL_STATE_REQ (VVS_COMMMNGR_PARAMETERS + 1)
  476. #define VVS_COMM_MNGR_LOCAL_ADDR     (VVS_COMMMNGR_PARAMETERS + 2)
  477. #define VVS_COMM_MNGR_REMOTE_ADDR    (VVS_COMMMNGR_PARAMETERS + 3)
  478. #define VVS_COMM_MNGR_COMM_BW_REQ    (VVS_COMMMNGR_PARAMETERS + 4)
  479. #define VVS_COMM_MNGR_REMOTE_SYSTEM  (VVS_COMMMNGR_PARAMETERS + 5)
  480. #define VVS_COMM_MNGR_ISDN_DEBUG_56  (VVS_COMMMNGR_PARAMETERS + 6)
  481. #define VVS_COMM_MNGR_LCL_AUD_CAP    (VVS_COMMMNGR_PARAMETERS + 7)
  482. #define VVS_COMM_MNGR_LCL_DATA_CAP   (VVS_COMMMNGR_PARAMETERS + 8)
  483. #define VVS_COMM_MNGR_LCL_TRANS_CAP  (VVS_COMMMNGR_PARAMETERS + 9)
  484. #define VVS_COMM_MNGR_LCL_VID_CAP    (VVS_COMMMNGR_PARAMETERS + 10)
  485. #define VVS_COMM_MNGR_LCL_H230_CMD   (VVS_COMMMNGR_PARAMETERS + 11)
  486. #define VVS_COMM_MNGR_LCL_CMD        (VVS_COMM_MNGR_LCL_H230_CMD)
  487. #define VVS_COMM_MNGR_REM_AUD_CAP    (VVS_COMMMNGR_PARAMETERS + 12)
  488. #define VVS_COMM_MNGR_REM_DATA_CAP   (VVS_COMMMNGR_PARAMETERS + 13)
  489. #define VVS_COMM_MNGR_REM_TRANS_CAP  (VVS_COMMMNGR_PARAMETERS + 14)
  490. #define VVS_COMM_MNGR_REM_VID_CAP    (VVS_COMMMNGR_PARAMETERS + 15)
  491. #define VVS_COMM_MNGR_REM_H230_CMD   (VVS_COMMMNGR_PARAMETERS + 16)
  492. #define VVS_COMM_MNGR_REM_CMD        (VVS_COMM_MNGR_REM_H230_CMD)
  493. #define VVS_COMM_MNGR_RX_MODE_REQ    (VVS_COMMMNGR_PARAMETERS + 17)
  494. #define VVS_COMM_MNGR_RX_MODE        (VVS_COMMMNGR_PARAMETERS + 18)
  495. #define VVS_COMM_MNGR_TX_MODE_REQ    (VVS_COMMMNGR_PARAMETERS + 19)
  496. #define VVS_COMM_MNGR_TX_MODE        (VVS_COMMMNGR_PARAMETERS + 20)
  497. #define VVS_COMM_MNGR_LCL_NONSTD_CMD (VVS_COMMMNGR_PARAMETERS + 21)
  498. #define VVS_COMM_MNGR_REM_NONSTD_CMD (VVS_COMMMNGR_PARAMETERS + 22)
  499. #define VVS_COMM_MNGR_CAUSE_CODE     (VVS_COMMMNGR_PARAMETERS + 23)
  500. #define VVS_COMM_MNGR_INCOMING_CALL  (VVS_COMMMNGR_PARAMETERS + 24)
  501. #define VVS_COMM_MNGR_LINE_STATUS    (VVS_COMMMNGR_PARAMETERS + 25)
  502. #define VVS_COMM_MNGR_SPID_1         (VVS_COMMMNGR_PARAMETERS + 26)
  503. #define VVS_COMM_MNGR_SPID_2         (VVS_COMMMNGR_PARAMETERS + 27)
  504. #define VVS_COMM_MNGR_REASON_MSG     (VVS_COMMMNGR_PARAMETERS + 28)
  505. #define VVS_COMM_MNGR_VERSION_ID     (VVS_COMMMNGR_PARAMETERS + 29)
  506. #define VVS_COMM_MNGR_LCL_MLP_CAP    (VVS_COMMMNGR_PARAMETERS + 30)
  507. #define VVS_COMM_MNGR_LCL_HMLP_CAP   (VVS_COMMMNGR_PARAMETERS + 31)
  508. #define VVS_COMM_MNGR_LCL_DATAPP_CAP (VVS_COMMMNGR_PARAMETERS + 32)
  509. #define VVS_COMM_MNGR_REM_MLP_CAP    (VVS_COMMMNGR_PARAMETERS + 33)
  510. #define VVS_COMM_MNGR_REM_HMLP_CAP   (VVS_COMMMNGR_PARAMETERS + 34)
  511. #define VVS_COMM_MNGR_REM_DATAPP_CAP (VVS_COMMMNGR_PARAMETERS + 35)
  512. #define VVS_COMM_MNGR_REMOTE_COUNTRY (VVS_COMMMNGR_PARAMETERS + 36)
  513. #define VVS_COMM_MNGR_INQUEUE        (VVS_COMMMNGR_PARAMETERS + 37)
  514. #define VVS_COMM_MNGR_OUTQUEUE       (VVS_COMMMNGR_PARAMETERS + 38)
  515. #define VVS_COMM_MNGR_MODEM_OVERRUN  (VVS_COMMMNGR_PARAMETERS + 39)
  516. #define VVS_COMM_MNGR_MODEM_CTSTO    (VVS_COMMMNGR_PARAMETERS + 40)
  517. #define VVS_COMM_MNGR_MODEM_OTHER    (VVS_COMMMNGR_PARAMETERS + 41)
  518. #define VVS_COMM_MNGR_SOFT_LOOP      (VVS_COMMMNGR_PARAMETERS + 42)
  519. #define VVS_COMM_MNGR_HARD_LOOP      (VVS_COMMMNGR_PARAMETERS + 43)
  520. #define VVS_COMM_MNGR_DIALOG_STRING  (VVS_COMMMNGR_PARAMETERS + 44)
  521. #define VVS_MODEM_DIALOG_STRING      VVS_COMM_MNGR_DIALOG_STRING 
  522. #define VVS_COMM_MNGR_DIALOG_STRING  (VVS_COMMMNGR_PARAMETERS + 44)
  523. #define VVS_COMM_MNGR_BITCOUNT2      (VVS_COMMMNGR_PARAMETERS + 45)
  524. #define VVS_COMM_MNGR_PRECONFIG_LINE (VVS_COMMMNGR_PARAMETERS + 46)
  525. #define VVS_COMM_MNGR_GET_LINE_NAME  (VVS_COMMMNGR_PARAMETERS + 47)
  526. #define VVS_COMM_MNGR_GET_LINE_ICON  (VVS_COMMMNGR_PARAMETERS + 48)
  527. #define VVS_COMM_MNGR_UNDERRUNS      (VVS_COMMMNGR_PARAMETERS + 49)
  528. #define VVS_COMM_MNGR_TXPOLLS        (VVS_COMMMNGR_PARAMETERS + 50)
  529. #define VVS_COMM_MNGR_TAPI_HANDLE    (VVS_COMMMNGR_PARAMETERS + 51)
  530. #define VVS_COMM_MNGR_MODE      (VVS_COMMMNGR_PARAMETERS + 52)
  531.  
  532. /* Left 55 parameter spaces for Communication Manager */
  533. /* H.245 Protocol Manager Stream Parameters - mapped on top of Comm Mgr Params */
  534. #define VVS_STATE_CHANGE_REQ  VVS_COMM_MNGR_CALL_STATE_REQ
  535. #define VVS_H245_PROTOCOL_STATE      (VVS_STATE_CHANGE_REQ+1)
  536. #define VVS_H245_PROTOCOL_FAILED     (VVS_STATE_CHANGE_REQ+2)
  537. #define VVS_H245_LAST_ERROR          (VVS_STATE_CHANGE_REQ+3)
  538. #define VVS_SET_STRING_RECV_BUFFER  (VVS_STATE_CHANGE_REQ + 4)
  539. #define VVS_SEND_STRING  (VVS_STATE_CHANGE_REQ + 5)
  540. #define VVS_H245_PROTOCOL_LOOP_STATE (VVS_STATE_CHANGE_REQ + 6)
  541. #define VVS_GET_FILE_TRANSFER  (VVS_STATE_CHANGE_REQ + 7)
  542. #define VVS_PERFORM_FILE_TRANSFER  (VVS_STATE_CHANGE_REQ + 8)
  543.  
  544. /* H.DLL MUX/DEMUX stream parameters */
  545. #define VVS_HDLL_PARAMETERS          (VVS_PARAM_BASE + 275)
  546. #define VVS_HDLLMUX_BITRATE_REQ      (VVS_HDLL_PARAMETERS + 0)
  547. #define VVS_HDLLMUX_BLOCKBYTES       (VVS_HDLL_PARAMETERS + 1)
  548. #define VVS_HDLLMUX_FRAMEBYTES       (VVS_HDLL_PARAMETERS + 2)
  549. #define VVS_HDLLMUX_ERRORS           (VVS_HDLL_PARAMETERS + 3)
  550. #define VVS_HDLLDEMUX_BITRATE_REQ    (VVS_HDLL_PARAMETERS + 4)
  551. #define VVS_HDLLDEMUX_BLOCKBYTES     (VVS_HDLL_PARAMETERS + 5)
  552. #define VVS_HDLLDEMUX_FRAMEBYTES     (VVS_HDLL_PARAMETERS + 6)
  553. #define VVS_HDLLDEMUX_ERRORS         (VVS_HDLL_PARAMETERS + 7)
  554. #define VVS_HDLL_LAST_ERROR          (VVS_HDLL_PARAMETERS + 8)
  555. #define VVS_HDLL_COMPLEMENT_STREAM   (VVS_HDLL_PARAMETERS + 9)
  556. /* Left 15 parameter spaces for H.DLL MUX/DEMUX */
  557. /* REMOTE DISPLAY STREAM PARAMETERS */
  558. #define VVS_REMOTE_STREAM_PARAMETERS (VVS_PARAM_BASE + 290)
  559. #define VVS_REMOTE_STREAM_DIB_TIMECOUNT         (VVS_REMOTE_STREAM_PARAMETERS + 0)
  560. #define VVS_REMOTE_STREAM_DIB_TIMEDRAW          (VVS_REMOTE_STREAM_PARAMETERS + 1)
  561. #define VVS_REMOTE_STREAM_DIB_TIMEDECOMPRESS    (VVS_REMOTE_STREAM_PARAMETERS + 2) 
  562. #define VVS_REMOTE_STREAM_DIB_TIMEDITHER        (VVS_REMOTE_STREAM_PARAMETERS + 3)     
  563. #define VVS_REMOTE_STREAM_DIB_TIMESTRETCH       (VVS_REMOTE_STREAM_PARAMETERS + 4)
  564. #define VVS_REMOTE_STREAM_DIB_TIMEBLT           (VVS_REMOTE_STREAM_PARAMETERS + 5)    
  565. #define VVS_REMOTE_STREAM_DIB_TIMESETDIBITS     (VVS_REMOTE_STREAM_PARAMETERS + 6)   
  566. /* Left 15 parameter spaces for REMOTE DISPLAY */                
  567.                       
  568. /* REMOTE DISPLAY STREAM PARAMETERS */
  569. #define VVS_NET_LAYER_PARAMETERS (VVS_PARAM_BASE + 305)
  570. #define VVS_NET_LAYER_STATE                     (VVS_NET_LAYER_PARAMETERS + 0)
  571. /* Left 15 parameter spaces for NET_LAYER */                
  572.                       
  573. /* Record & Playback */
  574. #define VVS_RECORD_PARAMETERS   (VVS_PARAM_BASE + 320)
  575. #define VVS_AUD_FILENAME        (VVS_RECORD_PARAMETERS + 0)
  576. #define VVS_VID_FILENAME        (VVS_RECORD_PARAMETERS + 1)
  577. #define VVS_VID_OUTPUTSTREAM    (VVS_RECORD_PARAMETERS + 2)
  578. #define VVS_VID_INPUTSTREAM     (VVS_RECORD_PARAMETERS + 3)
  579. #define VVS_DECODER_BITSLEFT    (VVS_RECORD_PARAMETERS + 4)
  580. /* 10 spaces for RECORD */                
  581. /* OS/2 display stream window setup/switching */
  582. #define VVS_OS2_DISPLAY_PARAMETERS (VVS_PARAM_BASE + 330)
  583. /* v passed in is new display HWND, v==0 turns display into sink */
  584. #define VVS_OS2_DISPLAY_CLIENT_WND (VVS_OS2_DISPLAY_PARAMETERS + 0)
  585. /* v is window to receive DIVE messages */
  586. #define VVS_OS2_DISPLAY_FRAME_WND  (VVS_OS2_DISPLAY_PARAMETERS + 1)
  587. /* 2 spaces used for OS/2 display parameters */
  588. /* 18 spaces for H.223 Adaptation Layer (AL) parameters */
  589. #define VVS_AL_PARAMETERS           (VVS_PARAM_BASE     + 332)
  590. #define VVS_AL_HEADER_BYTES         (VVS_AL_PARAMETERS + 0) 
  591. #define VVS_AL_PERFORM_RETRANSMIT   (VVS_AL_PARAMETERS + 1)
  592. #define VVS_AL_REQUEST_RETRANSMIT   (VVS_AL_PARAMETERS + 2)
  593. #define VVS_AL_TOTAL_RCV_I_PDU      (VVS_AL_PARAMETERS + 3)
  594. #define VVS_AL_TOTAL_RCV_SREJ       (VVS_AL_PARAMETERS + 4)
  595. #define VVS_AL_TOTAL_RCV_DRTX       (VVS_AL_PARAMETERS + 5)
  596. #define VVS_AL_TOTAL_XMIT_SREJ      (VVS_AL_PARAMETERS + 6)
  597. #define VVS_AL_TOTAL_XMIT_DRTX      (VVS_AL_PARAMETERS + 7)
  598. #define VVS_AL_CURRENT_DELAY_BITS   (VVS_AL_PARAMETERS + 8)
  599. #define VVS_AL_CURRENT_HELD_FRAMES  (VVS_AL_PARAMETERS + 9)
  600. #define VVS_AL_MAX_RETRY_FRAMES     (VVS_AL_PARAMETERS + 10)
  601. #define VVS_AL_TOTAL_XMIT_PDU       (VVS_AL_PARAMETERS + 11)
  602. #define VVS_AL_AVE_TIME_SINCE_CAP   (VVS_AL_PARAMETERS + 12)
  603. #define VVS_AL_MAX_TIME_SINCE_CAP   (VVS_AL_PARAMETERS + 13)
  604. #define VVS_AL_MIN_TIME_SINCE_CAP   (VVS_AL_PARAMETERS + 14)
  605. #define VVS_AL_AVE_ROUND_TRIP       (VVS_AL_PARAMETERS + 15)
  606. #define VVS_AL_MAX_ROUND_TRIP       (VVS_AL_PARAMETERS + 16)
  607. #define VVS_AL_MIN_ROUND_TRIP       (VVS_AL_PARAMETERS + 17)
  608. #define VVS_NEXT_PARAMETER_BLOCK (VVS_PARAM_BASE + 350)
  609. /* Parameter defn's for AL2 stream - note overlap with RECORD 
  610.  * These belong in VSCODES as soon as they can be added there
  611.  */
  612. #define VVS_AL2_PARAMETERS            (VVS_PARAM_BASE + 325)
  613. #define VVS_AL2_USE_SEQ_NUM         (VVS_AL2_PARAMETERS + 0)
  614. #define VVS_AL2_TOTAL_RECV_PDU      (VVS_AL2_PARAMETERS + 1)
  615. #define VVS_AL2_TOTAL_XMIT_PDU      (VVS_AL2_PARAMETERS + 2)
  616. #define VVS_AL2_BAD_CRC_RECV        (VVS_AL2_PARAMETERS + 3)
  617. #define VVS_AL2_RECV_PEND_PDU       (VVS_AL2_PARAMETERS + 4)
  618. /***** NO MORE THAN 368 PARAMETERS (VVS_CODE_BASE + 368) *****/
  619. /***** (VVS_BASE + 0x1D0) - (VVS_BASE + 0x60) = 0x170 = 368 ****/
  620. /* Stream States */
  621. #define VVS_STATE_BASE         VVS_BASE + 0x1D0
  622. #define VVS_NULL               (VVS_STATE_BASE + 1)
  623. #define VVS_UNINITIALIZED      (VVS_STATE_BASE + 2)
  624. #define VVS_UNPREPARED         (VVS_STATE_BASE + 3)
  625. #define VVS_UNPREPARED_WAITING (VVS_STATE_BASE + 4)
  626. #define VVS_IDLE               (VVS_STATE_BASE + 5)
  627. #define VVS_ACTIVE             (VVS_STATE_BASE + 6)   
  628. /* messages for dynamic message allocator */
  629. #define VVS_MESSAGE_BASE     VVS_BASE + 0x1E0
  630. #define VVS_NO_MESSAGE       VVS_MESSAGE_BASE  
  631. #define VVS_WRDCH_MSG        (VVS_MESSAGE_BASE + 1)
  632. // GAM062595 - Add hooks for WinISDN messages
  633. #define VVS_WinISDN_MSG      (VVS_MESSAGE_BASE + 2)
  634. #define VVS_MESSAGE_COUNT   0x1F
  635. /* IDs for messages from Virtual COMM Port VxDs 
  636.  * (VVSERIAL.386 and VBUFF.386)
  637.  */
  638. #define WM_POSTED_BY_VFAST_VXD    (WM_USER + 1997)
  639. #define WM_POSTED_BY_VVCOMM       (WM_USER + 1998)
  640. /* H.223 MUX messages */
  641. #define VVS_H223MUX_MSG_BASE        (VVS_BASE + 0x280)
  642. #define VVS_H223MUX_AL1X_STREAM     (VVS_H223MUX_MSG_BASE + 1)
  643. #define VVS_H223MUX_AL1R_STREAM     (VVS_H223MUX_MSG_BASE + 2)
  644. #define VVS_H223MUX_AL2X_STREAM     (VVS_H223MUX_MSG_BASE + 3)
  645. #define VVS_H223MUX_AL2R_STREAM     (VVS_H223MUX_MSG_BASE + 4)
  646. #define VVS_H223MUX_AL3X_STREAM     (VVS_H223MUX_MSG_BASE + 5)
  647. #define VVS_H223MUX_AL3R_STREAM     (VVS_H223MUX_MSG_BASE + 6)
  648. #define VVS_H223MUX_H245X_STREAM    (VVS_H223MUX_MSG_BASE + 7)
  649. #define VVS_H223MUX_H245R_STREAM    (VVS_H223MUX_MSG_BASE + 8)
  650. #define VVS_H223MUX_START           (VVS_H223MUX_MSG_BASE + 9)
  651. #define VVS_H223_PDU_SIZE           (VVS_H223MUX_MSG_BASE +10)
  652. /* Left 15 spaces for H223 MUX parameters */
  653. /* Use these for parameters which are PRIVATE to a particular */
  654. #define VVS_PRIV32_MSG_BASE (VVS_BASE + 0x290)
  655. #define VVS_PRIV32_MSG_END (VVS_PRIV32_MSG_BASE + 100)
  656. /* Left 100 spaces for Private parameters */
  657. /* Audio Encode/Decode Stream Parameters */
  658. #define VVS_AUD_MSG_BASE (VVS_BASE + 0x2F5)
  659. #define VVS_AUDIO_CODING_MODE (VVS_PRIV32_MSG_BASE + 0)
  660. #define VVS_MPMLQ_COUNT (VVS_PRIV32_MSG_BASE + 1)
  661. #define VVS_ACELP_COUNT (VVS_PRIV32_MSG_BASE + 2)
  662. #define VVS_SID_COUNT (VVS_PRIV32_MSG_BASE + 3)
  663. #define VVS_DELAY_JITTER (VVS_PRIV32_MSG_BASE + 4)
  664. #define VVS_INPUT_UNDERRUN (VVS_AUD_MSG_BASE + 0)
  665. #define VVS_OUTPUT_OVERRUN (VVS_AUD_MSG_BASE + 1)
  666. /* left 49 locs for audio parameters */
  667. /* Audio Echo Cancellation */
  668. #define VVS_AUD_ENC_MSG_BASE (VVS_BASE + 0x327)
  669. //Some Private parameters for the video coder and decoder.
  670. #define VVS_AVE_FRAME_INTERVAL (VVS_PRIV32_MSG_BASE + 0)
  671. //Some Private parameters for the Timer Stream.
  672. #define VVS_OUTPUT_STREAM2 (VVS_PRIV32_MSG_BASE + 0)
  673. #define VVS_OUTPUT_STREAM3 (VVS_PRIV32_MSG_BASE + 1)
  674. #define VVS_OUTPUT_STREAM4 (VVS_PRIV32_MSG_BASE + 2)
  675. #define VVS_OUTPUT_STREAM5 (VVS_PRIV32_MSG_BASE + 3)
  676. #define VVS_OUTPUT_STREAM6 (VVS_PRIV32_MSG_BASE + 4)
  677. #define VVS_AVE_PERIOD (VVS_PRIV32_MSG_BASE + 5)
  678. //Some Private parameters for the ATT Audio I/O Stream.
  679. #define VVS_AUDDRV_FRAMES_CAPTURED (VVS_PRIV32_MSG_BASE + 0)
  680. #define VVS_AUDDRV_FRAMES_PLAYED (VVS_PRIV32_MSG_BASE + 1)
  681. #define VVS_AUDDRV_BUFSIZE (VVS_PRIV32_MSG_BASE + 2)
  682. #define VVS_AUDDRV_DMASIZE (VVS_PRIV32_MSG_BASE + 3)
  683. #define VVS_AUDDRV_OUT_FLUFF (VVS_PRIV32_MSG_BASE + 4)
  684. #define VVS_AUDDRV_OUT_GET (VVS_PRIV32_MSG_BASE + 5)
  685. #define VVS_AUDDRV_OUT_PUT (VVS_PRIV32_MSG_BASE + 6)
  686. #define VVS_AUDDRV_IN_GET (VVS_PRIV32_MSG_BASE + 7)
  687. #define VVS_AUDDRV_IN_PUT (VVS_PRIV32_MSG_BASE + 8)
  688. #endif