wmcodecconst.h
上传用户:liguizhu
上传日期:2015-11-01
资源大小:2422k
文件大小:17k
源码类别:

P2P编程

开发平台:

Visual C++

  1. /*
  2.  *  Openmysee
  3.  *
  4.  *  This program is free software; you can redistribute it and/or modify
  5.  *  it under the terms of the GNU General Public License as published by
  6.  *  the Free Software Foundation; either version 2 of the License, or
  7.  *  (at your option) any later version.
  8.  *
  9.  *  This program is distributed in the hope that it will be useful,
  10.  *  but WITHOUT ANY WARRANTY; without even the implied warranty of
  11.  *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  12.  *  GNU General Public License for more details.
  13.  *
  14.  *  You should have received a copy of the GNU General Public License
  15.  *  along with this program; if not, write to the Free Software
  16.  *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  17.  *
  18.  */
  19. //+-------------------------------------------------------------------------
  20. //
  21. //  Microsoft Windows Media
  22. //
  23. //  Copyright (C) Microsoft Corporation. All rights reserved.
  24. //
  25. //  File:        wmcodecs.h
  26. //
  27. //  Description: Consolidated source for the definitions needed to use
  28. //               the Windows Media codec DMO class identifiers. These values are all defined elsewhere, but
  29. //               are given different names here to avoid ambiguity.
  30. //
  31. //--------------------------------------------------------------------------
  32. #ifndef __WMCODECS_H_
  33. #define __WMCODECS_H_
  34. #if _MSC_VER > 1000
  35. #pragma once
  36. #endif // _MSC_VER > 1000
  37. ////////////////////////////////////////////////////////////////////////////
  38. // Definitions of the Windows Media Audio and Video 
  39. // codec DMO class identifiers.
  40. ////////////////////////////////////////////////////////////////////////////
  41. //////////////////////////////////////////////////////
  42. // Windows Media Audio encoder and decoder.
  43. // Support for the following codecs:
  44. // * Windows Media Audio 7 |
  45. // * Windows Media Audio 8 |-> These three use the same format tag and
  46. // * Windows Media Audio 9 |   subtype GUID.
  47. // * Windows Media Audio 9 Professional
  48. // * Windows Media Audio 9 Lossless
  49. EXTERN_GUID(CLSID_CWMAEncMediaObject,     
  50.     0x70f598e9, 0xf4ab, 0x495a, 0x99, 0xe2, 0xa7, 0xc4, 0xd3, 0xd8, 0x9a, 0xbf);
  51. EXTERN_GUID(CLSID_CWMADecMediaObject,     
  52.     0x2eeb4adf, 0x4578, 0x4d10, 0xbc, 0xa7, 0xbb, 0x95, 0x5f, 0x56, 0x32, 0x0a);
  53. //////////////////////////////////////////////////////
  54. // Windows Media Video encoder and decoder.
  55. // Support for the following codecs:
  56. // * Windows Media Video 7 (WMV1)
  57. // * Windows Media Video 8 (WMV2)
  58. // * Windows Media Video 9 (WMV3)
  59. // * Windows Media Video 9 Image (WMVP)
  60. EXTERN_GUID(CLSID_CWMVEncMediaObject2,
  61.     0x96b57cdd, 0x8966, 0x410c, 0xbb, 0x1f, 0xc9, 0x7e, 0xea, 0x76, 0x5c, 0x04);
  62. EXTERN_GUID(CLSID_CWMVDecMediaObject,     
  63.     0x82d353df, 0x90bd, 0x4382, 0x8b, 0xc2, 0x3f, 0x61, 0x92, 0xb7, 0x6e, 0x34);
  64. //////////////////////////////////////////////////////
  65. // Windows Media Video Screen encoder and decoder.
  66. EXTERN_GUID(CLSID_CMSSCEncMediaObject2,   
  67.     0xf7ffe0a0, 0xa4f5, 0x44b5, 0x94, 0x9e, 0x15, 0xed, 0x2b, 0xc6, 0x6f, 0x9d);
  68. EXTERN_GUID(CLSID_CMSSCDecMediaObject,    
  69.     0x7bafb3b1, 0xd8f4, 0x4279, 0x92, 0x53, 0x27, 0xda, 0x42, 0x31, 0x08, 0xde);
  70. //////////////////////////////////////////////////////
  71. // Windows Media Audio Voice encoder and decoder.
  72. EXTERN_GUID(CLSID_CWMSPEncMediaObject,    
  73.     0x67841b03, 0xc689, 0x4188, 0xad, 0x3f, 0x4c, 0x9e, 0xbe, 0xec, 0x71, 0xb);
  74. EXTERN_GUID(CLSID_CWMSPDecMediaObject,    
  75.     0x874131cb, 0x4ecc, 0x443b, 0x89, 0x48, 0x74, 0x6b, 0x89, 0x59, 0x5d, 0x20);
  76. ////////////////////////////////////////////////////////////////////////////
  77. // Definitions of media type GUIDs. The GUIDs in question are identical
  78. // to those defined elsewhere (in the DirectX or Windows Media Format SDK). The
  79. // names are different to avoid ambiguity with other potentially included
  80. // header files.
  81. ////////////////////////////////////////////////////////////////////////////
  82. //////////////////////////////////////////////////////
  83. // Major media types.
  84. //
  85. // Video (FOURCC 'vids') 73646976-0000-0010-8000-00AA00389B71  
  86. EXTERN_GUID(WMCMEDIATYPE_Video, 
  87. 0x73646976, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
  88. // Audio (FOURCC 'auds') 73647561-0000-0010-8000-00AA00389B71 
  89. EXTERN_GUID(WMCMEDIATYPE_Audio, 
  90. 0x73647561, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  91. //////////////////////////////////////////////////////
  92. // Media format specifiers.
  93. // 
  94. // These values are used for the formattype member of DMO_MEDIA_TYPE to 
  95. //  identify the type of structure pointed to by the pbFormat member.
  96. //
  97. // VIDEOINFOHEADER
  98. // Format type: 05589f80-c356-11ce-bf01-00aa0055595a        
  99. EXTERN_GUID(WMCFORMAT_VideoInfo, 
  100. 0x05589f80, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a); 
  101. // WAVEFORMATEX
  102. // Format type: 05589f81-c356-11ce-bf01-00aa0055595a 
  103. EXTERN_GUID(WMCFORMAT_WaveFormatEx, 
  104. 0x05589f81, 0xc356, 0x11ce, 0xbf, 0x01, 0x00, 0xaa, 0x00, 0x55, 0x59, 0x5a); 
  105. //////////////////////////////////////////////////////
  106. // Compressed Windows Media subtypes.
  107. //
  108. // Windows Media Video 7
  109. // FOURCC: 'WMV1' Subtype: 31564D57-0000-0010-8000-00AA00389B71
  110. EXTERN_GUID(WMCMEDIASUBTYPE_WMV1, 
  111. 0x31564D57, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
  112. // Windows Media Video 8
  113. // FOURCC: 'WMV2' Subtype: 32564D57-0000-0010-8000-00AA00389B71  
  114. EXTERN_GUID(WMCMEDIASUBTYPE_WMV2, 
  115. 0x32564D57, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  116. // Windows Media Video 9
  117. // FOURCC: 'WMV3' Subtype: 33564D57-0000-0010-8000-00AA00389B71
  118. EXTERN_GUID(WMCMEDIASUBTYPE_WMV3, 
  119. 0x33564D57, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  120. // Windows Media Video 7 Screen
  121. // FOURCC: 'MSS1' Subtype: 3153534D-0000-0010-8000-00AA00389B71     
  122. EXTERN_GUID(WMCMEDIASUBTYPE_MSS1, 
  123. 0x3153534D, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
  124. // Windows Media Video 9 Screen
  125. // FOURCC: 'MSS2' Subtype: 3253534D-0000-0010-8000-00AA00389B71 
  126. EXTERN_GUID(WMCMEDIASUBTYPE_MSS2, 
  127. 0x3253534D, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  128. // Windows Media Video 9 Image
  129. // FOURCC: 'WMVP' Subtype: 50564D57-0000-0010-8000-00AA00389B71 
  130. EXTERN_GUID(WMCMEDIASUBTYPE_WMVP, 
  131. 0x50564D57, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  132. // Microsoft Audio
  133. EXTERN_GUID(WMCMEDIASUBTYPE_MSA1, 
  134. 0x00000160, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  135. // Windows Media Audio 9 and previous compatible versions
  136. // Format tag: 0x161 Subtype: 00000161-0000-0010-8000-00AA00389B71
  137. EXTERN_GUID(WMCMEDIASUBTYPE_WMA9, 
  138. 0x00000161, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  139. // Windows Media Audio 9 Professional 
  140. // Format tag: 0x162 Subtype: 00000162-0000-0010-8000-00AA00389B71            
  141. EXTERN_GUID(WMCMEDIASUBTYPE_WMA9Pro, 
  142. 0x00000162, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71);
  143. // Windows Media Audio 9 Lossless
  144. // Format tag: 0x163 Subtype: 00000163-0000-0010-8000-00AA00389B71
  145. EXTERN_GUID(WMCMEDIASUBTYPE_WMA9Lossless, 
  146. 0x00000163, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  147. // Windows Media Audio 9 Voice
  148. // Format tag: 0x00A Subtype: 0000000A-0000-0010-8000-00AA00389B71
  149. EXTERN_GUID(WMCMEDIASUBTYPE_WMA9Voice, 
  150. 0x0000000A,0x0000,0x0010,0x80,0x00,0x00,0xAA,0x00,0x38,0x9B,0x71); 
  151. //////////////////////////////////////////////////////
  152. // Uncompressed video subtypes.
  153. //
  154. // Note: Unlike the other video formats, RGB video does not use a FOURCC
  155. // as the first four bytes of the subtype GUID.
  156. //
  157. // RGB 8 bits per pixel (palettized) 
  158. // Subtype: e436eb7a-524f-11ce-9f53-0020af0ba770       
  159. EXTERN_GUID(WMCMEDIASUBTYPE_RGB8, 
  160. 0xe436eb7a, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  161. // RGB 16 bits per pixel (5 red bits, 6 green bits, 5 blue bits)
  162. // Subtype: e436eb7b-524f-11ce-9f53-0020af0ba770      
  163. EXTERN_GUID(WMCMEDIASUBTYPE_RGB565, 
  164. 0xe436eb7b, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  165. // RGB 16 bits per pixel (5 red bits, 4 green bits, 5 blue bits)
  166. // Subtype: e436eb7c-524f-11ce-9f53-0020af0ba770    
  167. EXTERN_GUID(WMCMEDIASUBTYPE_RGB555, 
  168. 0xe436eb7c, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  169. // RGB 24 bits per pixel
  170. // Subtype: e436eb7d-524f-11ce-9f53-0020af0ba770  
  171. EXTERN_GUID(WMCMEDIASUBTYPE_RGB24, 
  172. 0xe436eb7d, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70);
  173. // RGB 32 bits per pixel
  174. // Subtype: e436eb7e-524f-11ce-9f53-0020af0ba770          
  175. EXTERN_GUID(WMCMEDIASUBTYPE_RGB32, 
  176. 0xe436eb7e, 0x524f, 0x11ce, 0x9f, 0x53, 0x00, 0x20, 0xaf, 0x0b, 0xa7, 0x70); 
  177. // I420 Subtype: 30323449-0000-0010-8000-00AA00389B71
  178. EXTERN_GUID(WMCMEDIASUBTYPE_I420, 
  179. 0x30323449, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  180. // IYUV Subtype: 56555949-0000-0010-8000-00AA00389B71 
  181. EXTERN_GUID(WMCMEDIASUBTYPE_IYUV, 
  182. 0x56555949, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  183. // YV12 Subtype: 32315659-0000-0010-8000-00AA00389B71  
  184. EXTERN_GUID(WMCMEDIASUBTYPE_YV12, 
  185. 0x32315659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  186. // YUY2 Subtype: 32595559-0000-0010-8000-00AA00389B71   
  187. EXTERN_GUID(WMCMEDIASUBTYPE_YUY2, 
  188. 0x32595559, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  189. // UYVY Subtype: 59565955-0000-0010-8000-00AA00389B71  
  190. EXTERN_GUID(WMCMEDIASUBTYPE_UYVY, 
  191. 0x59565955, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
  192. // YUYV Subtype: 56595559-0000-0010-8000-00AA00389B71  
  193. EXTERN_GUID(WMCMEDIASUBTYPE_YUYV, 
  194. 0x56595559, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71);
  195. // YVYU Subtype: 55595659-0000-0010-8000-00AA00389B71  
  196. EXTERN_GUID(WMCMEDIASUBTYPE_YVYU, 
  197. 0x55595659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  198. // YVU9 Subtype: 39555659-0000-0010-8000-00AA00389B71 
  199. EXTERN_GUID(WMCMEDIASUBTYPE_YVU9, 
  200. 0x39555659, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xaa, 0x00, 0x38, 0x9b, 0x71); 
  201. // Special input type for Windows Media Video 9 Image.
  202. // Consists of structured transform data with occasional RGB images on which
  203. // the transforms are executed. This first DWORD of this subtype does not
  204. // translate to a legible FOURCC.
  205. // Subtype: 1d4a45f2-e5f6-4b44-8388-f0ae5c0e0c37      
  206. EXTERN_GUID(WMCMEDIASUBTYPE_VIDEOIMAGE,  
  207. 0x1d4a45f2, 0xe5f6, 0x4b44, 0x83, 0x88, 0xf0, 0xae, 0x5c, 0x0e, 0x0c, 0x37);
  208. //////////////////////////////////////////////////////
  209. // Uncompressed audio subtype (only PCM is accepted).
  210. //
  211. // PCM audio.
  212. // Format tag 0x001 Subtype: 00000001-0000-0010-8000-00AA00389B71
  213. EXTERN_GUID(WMCMEDIASUBTYPE_PCM, 
  214. 0x00000001, 0x0000, 0x0010, 0x80, 0x00, 0x00, 0xAA, 0x00, 0x38, 0x9B, 0x71); 
  215. ////////////////////////////////////////////////////////////////////////////
  216. // Definitions of the FOURCC values that are commonly used by the codec
  217. // DMOs. Each FOURCC identifies a video format subtype. The FOURCC value
  218. // for a format is also contained in the first DWORD in the subtype
  219. // GUID (with the exception of RGB formats, which don't need FOURCCs).
  220. ////////////////////////////////////////////////////////////////////////////
  221. // Macro that makes a FOURCC from four characters.
  222. #define wmcFOURCC( ch0, ch1, ch2, ch3 )
  223. ( (DWORD)(BYTE)(ch0) | ( (DWORD)(BYTE)(ch1) << 8 ) |
  224. ( (DWORD)(BYTE)(ch2) << 16 ) | ( (DWORD)(BYTE)(ch3) << 24 ) )
  225. // YUV formats.
  226. #define WMCFOURCC_UYVY 0x59565955
  227. #define WMCFOURCC_YUY2 0x32595559
  228. #define WMCFOURCC_YVYU 0x55595659
  229. #define WMCFOURCC_YVU9 0x39555659
  230. #define WMCFOURCC_YV12 0x32315659
  231. #define WMCFOURCC_I420 0x30323449
  232. #define WMCFOURCC_IYUV 0x56555949
  233. // Windows Media Video formats.
  234. #define WMCFOURCC_WMV1     wmcFOURCC('W','M','V','1')
  235. #define WMCFOURCC_WMV2     wmcFOURCC('W','M','V','2')
  236. #define WMCFOURCC_WMV3     wmcFOURCC('W','M','V','3')
  237. #define WMCFOURCC_WMVP     wmcFOURCC('W','M','V','P')
  238. #define WMCFOURCC_MSS1     wmcFOURCC('M','S','S','1')
  239. #define WMCFOURCC_MSS2     wmcFOURCC('M','S','S','2')
  240. ////////////////////////////////////////////////////////////////////////////
  241. // Definitions of the audio format tags for the Windows Media Audio types.
  242. ////////////////////////////////////////////////////////////////////////////
  243. #define WMC_WAVE_MSA       0x160 // Old Microsoft audio format (pre WMA7)
  244. #define WMC_WAVE_WMA       0x161 // Windows Media Audio (7,8,9)
  245. #define WMC_WAVE_WMAPRO    0x162 // Windows Media Audio 9 Professional
  246. #define WMC_WAVE_WMALOSLS  0x163 // Windows Media Audio 9 Lossless
  247. #define WMC_WAVE_WMAVOICE  0x00A // Windows Media Audio 9 Voice
  248. ////////////////////////////////////////////////////////////////////////////
  249. // Definitions of the name strings used for properties accessed using
  250. // IPropertyBag. These constants should be used to avoid potentially
  251. // difficult errors due to misspelling the names (the compiler will catch
  252. // a misspelled constant).
  253. ////////////////////////////////////////////////////////////////////////////
  254. static const WCHAR *g_wszWMACAvgBytesPerSec = L"AvgBytesPerSec";
  255. static const WCHAR *g_wszWMACAvgPCMValue = L"AverageLevel";
  256. static const WCHAR *g_wszWMACDXVAEnabled = L"DXVAEnabled";
  257. static const WCHAR *g_wszWMACFoldDownXToYChannels = L"FoldDown%dTo%dChannels";
  258. static const WCHAR *g_wszWMACFoldXToYChannelsZ = L"Fold%uTo%uChannels%u";
  259. static const WCHAR *g_wszWMACHiResOutput = L"_HIRESOUTPUT";
  260. static const WCHAR *g_wszWMACIncludeNumPasses = L"_INCLUDENUMPASSES";
  261. static const WCHAR *g_wszWMACInputFormatName = L"_INPUTFORMATNAME";
  262. static const WCHAR *g_wszWMACMixTable = L"MixTable";
  263. static const WCHAR *g_wszWMACMusicSpeechClassMode = L"MusicSpeechClassMode";
  264. static const WCHAR *g_wszWMACOriginalWaveFormat = L"_ORIGINALWAVEFORMAT";
  265. static const WCHAR *g_wszWMACPeakPCMValue = L"PeakValue";
  266. static const WCHAR *g_wszWMACSourceFormatTag = L"_SOURCEFORMATTAG";
  267. static const WCHAR *g_wszWMACSpeakerConfig = L"SpeakerConfig";
  268. static const WCHAR *g_wszWMACVoiceBuffer = L"BufferWindow";
  269. static const WCHAR *g_wszWMACVoiceEDL = L"_EDL";
  270. static const WCHAR *g_wszWMADRCAverageReference = L"WMADRCAverageReference";
  271. static const WCHAR *g_wszWMADRCAverageTarget = L"WMADRCAverageTarget";
  272. static const WCHAR *g_wszWMADRCPeakReference = L"WMADRCPeakReference";
  273. static const WCHAR *g_wszWMADRCPeakTarget = L"WMADRCPeakTarget";
  274. static const WCHAR *g_wszWMACDRCSetting = L"DynamicRangeControl";
  275. static const WCHAR *g_wszWMVCAvgBitrate = L"_RAVG";
  276. static const WCHAR *g_wszWMVCAvgFrameRate = L"_AVGFRAMERATE";
  277. static const WCHAR *g_wszWMVCBAvg = L"_BAVG";
  278. static const WCHAR *g_wszWMVCBMax = L"_BMAX";
  279. static const WCHAR *g_wszWMVCBufferFullnessInFirstByte = L"_BUFFERFULLNESSINFIRSTBYTE";
  280. static const WCHAR *g_wszWMVCCodedFrames = L"_CODEDFRAMES";
  281. static const WCHAR *g_wszWMVCComplexityEx = L"_COMPLEXITYEX";
  282. static const WCHAR *g_wszWMVCComplexityExLive = L"_COMPLEXITYEXLIVE";
  283. static const WCHAR *g_wszWMVCComplexityExMax = L"_COMPLEXITYEXMAX";
  284. static const WCHAR *g_wszWMVCComplexityExOffline = L"_COMPLEXITYEXOFFLINE";
  285. static const WCHAR *g_wszWMVCComplexityMode = L"_COMPLEXITY";
  286. static const WCHAR *g_wszWMVCCrisp = L"_CRISP";
  287. static const WCHAR *g_wszWMVCDatarate = L"_DATARATE";
  288. static const WCHAR *g_wszWMVCDecoderComplexityRequested = L"_DECODERCOMPLEXITYREQUESTED";
  289. static const WCHAR *g_wszWMVCDecoderComplexityProfile = L"_DECODERCOMPLEXITYPROFILE";
  290. static const WCHAR *g_wszWMVCDecoderDeinterlacing = L"_DECODERDEINTERLACING";
  291. static const WCHAR *g_wszWMVCDefaultCrisp = L"_DEFAULTCRISP";
  292. static const WCHAR *g_wszWMVCEndOfPass = L"_ENDOFPASS";
  293. static const WCHAR *g_wszWMVCFOURCC = L"_FOURCC";
  294. static const WCHAR *g_wszWMVCFrameCount = L"_FRAMECOUNT";
  295. static const WCHAR *g_wszWMVCFrameInterpolationEnabled = L"_FRAMEINTERPOLATIONENABLED";
  296. static const WCHAR *g_wszWMVCFrameInterpolationSupported = L"_FRAMEINTERPOLATIONSUPPORTED";
  297. static const WCHAR *g_wszWMVCInterlacedCodingEnabled = L"_INTERLACEDCODINGENABLED";
  298. static const WCHAR *g_wszWMVCKeyframeDistance = L"_KEYDIST";
  299. static const WCHAR *g_wszWMVCLiveEncode = L"_LIVEENCODE";
  300. static const WCHAR *g_wszWMVCMaxBitrate = L"_RMAX";
  301. static const WCHAR *g_wszWMVCPacketOverhead = L"_ASFOVERHEADPERFRAME";
  302. static const WCHAR *g_wszWMVCPassesRecommended = L"_PASSESRECOMMENDED";
  303. static const WCHAR *g_wszWMVCPassesUsed = L"_PASSESUSED";
  304. static const WCHAR *g_wszWMVCProduceDummyFrames = L"_PRODUCEDUMMYFRAMES";
  305. static const WCHAR *g_wszWMVCTotalFrames = L"_TOTALFRAMES";
  306. static const WCHAR *g_wszWMVCTotalWindow = L"_TOTALWINDOW";
  307. static const WCHAR *g_wszWMVCVBREnabled = L"_VBRENABLED";
  308. static const WCHAR *g_wszWMVCVBRQuality = L"_VBRQUALITY";
  309. static const WCHAR *g_wszWMVCVideoWindow = L"_VIDEOWINDOW";
  310. static const WCHAR *g_wszWMVCZeroByteFrames = L"_ZEROBYTEFRAMES";
  311. static const WCHAR *g_wszSpeechFormatCaps = L"SpeechFormatCap";
  312. static const WCHAR *g_wszWMCPCodecName = L"_CODECNAME";
  313. static const WCHAR *g_wszWMCPSupportedVBRModes = L"_SUPPORTEDVBRMODES";
  314. // Constants used with g_wszWMCSupportedVBRModes
  315. #define WM_CODEC_ONEPASS_CBR 1
  316. #define WM_CODEC_ONEPASS_VBR 2
  317. #define WM_CODEC_TWOPASS_CBR 4
  318. #define WM_CODEC_TWOPASS_VBR_UNCONSTRAINED   8
  319. #define WM_CODEC_TWOPASS_VBR_PEAKCONSTRAINED 16
  320. #endif  // !defined(__WMCODECS_H_)
  321.