You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1098 lines
46 KiB

1 month ago
  1. <?xml version="1.0"?>
  2. <doc>
  3. <assembly>
  4. <name>AForge.Video.VFW</name>
  5. </assembly>
  6. <members>
  7. <member name="T:AForge.Video.VFW.AVIFileVideoSource">
  8. <summary>
  9. AVI file video source.
  10. </summary>
  11. <remarks><para>The video source reads AVI files using Video for Windows.</para>
  12. <para>Sample usage:</para>
  13. <code>
  14. // create AVI file video source
  15. AVIFileVideoSource source = new AVIFileVideoSource( "some file" );
  16. // set event handlers
  17. source.NewFrame += new NewFrameEventHandler( video_NewFrame );
  18. // start the video source
  19. source.Start( );
  20. // ...
  21. // signal to stop
  22. source.SignalToStop( );
  23. // New frame event handler, which is invoked on each new available video frame
  24. private void video_NewFrame( object sender, NewFrameEventArgs eventArgs )
  25. {
  26. // get new frame
  27. Bitmap bitmap = eventArgs.Frame;
  28. // process the frame
  29. }
  30. </code>
  31. </remarks>
  32. </member>
  33. <member name="E:AForge.Video.VFW.AVIFileVideoSource.NewFrame">
  34. <summary>
  35. New frame event.
  36. </summary>
  37. <remarks><para>Notifies clients about new available frame from video source.</para>
  38. <para><note>Since video source may have multiple clients, each client is responsible for
  39. making a copy (cloning) of the passed video frame, because the video source disposes its
  40. own original copy after notifying of clients.</note></para>
  41. </remarks>
  42. </member>
  43. <member name="E:AForge.Video.VFW.AVIFileVideoSource.VideoSourceError">
  44. <summary>
  45. Video source error event.
  46. </summary>
  47. <remarks>This event is used to notify clients about any type of errors occurred in
  48. video source object, for example internal exceptions.</remarks>
  49. </member>
  50. <member name="E:AForge.Video.VFW.AVIFileVideoSource.PlayingFinished">
  51. <summary>
  52. Video playing finished event.
  53. </summary>
  54. <remarks><para>This event is used to notify clients that the video playing has finished.</para>
  55. </remarks>
  56. </member>
  57. <member name="P:AForge.Video.VFW.AVIFileVideoSource.FrameInterval">
  58. <summary>
  59. Frame interval.
  60. </summary>
  61. <remarks><para>The property sets the interval in milliseconds between frames. If the property is
  62. set to 100, then the desired frame rate will be 10 frames per second.</para>
  63. <para><note>Setting this property to 0 leads to no delay between video frames - frames
  64. are read as fast as possible.</note></para>
  65. <para>Default value is set to <b>0</b>.</para>
  66. </remarks>
  67. </member>
  68. <member name="P:AForge.Video.VFW.AVIFileVideoSource.FrameIntervalFromSource">
  69. <summary>
  70. Get frame interval from source or use manually specified.
  71. </summary>
  72. <remarks><para>The property specifies which frame rate to use for video playing.
  73. If the property is set to <see langword="true"/>, then video is played
  74. with original frame rate, which is set in source AVI file. If the property is
  75. set to <see langword="false"/>, then custom frame rate is used, which is
  76. calculated based on the manually specified <see cref="P:AForge.Video.VFW.AVIFileVideoSource.FrameInterval">frame interval</see>.</para>
  77. <para>Default value is set to <see langword="true"/>.</para>
  78. </remarks>
  79. </member>
  80. <member name="P:AForge.Video.VFW.AVIFileVideoSource.Source">
  81. <summary>
  82. Video source.
  83. </summary>
  84. <remarks><para>Video file name to play.</para></remarks>
  85. </member>
  86. <member name="P:AForge.Video.VFW.AVIFileVideoSource.FramesReceived">
  87. <summary>
  88. Received frames count.
  89. </summary>
  90. <remarks>Number of frames the video source provided from the moment of the last
  91. access to the property.
  92. </remarks>
  93. </member>
  94. <member name="P:AForge.Video.VFW.AVIFileVideoSource.BytesReceived">
  95. <summary>
  96. Received bytes count.
  97. </summary>
  98. <remarks>Number of bytes the video source provided from the moment of the last
  99. access to the property.
  100. </remarks>
  101. </member>
  102. <member name="P:AForge.Video.VFW.AVIFileVideoSource.IsRunning">
  103. <summary>
  104. State of the video source.
  105. </summary>
  106. <remarks>Current state of video source object - running or not.</remarks>
  107. </member>
  108. <member name="M:AForge.Video.VFW.AVIFileVideoSource.#ctor">
  109. <summary>
  110. Initializes a new instance of the <see cref="T:AForge.Video.VFW.AVIFileVideoSource"/> class.
  111. </summary>
  112. </member>
  113. <member name="M:AForge.Video.VFW.AVIFileVideoSource.#ctor(System.String)">
  114. <summary>
  115. Initializes a new instance of the <see cref="T:AForge.Video.VFW.AVIFileVideoSource"/> class.
  116. </summary>
  117. <param name="source">Video file name.</param>
  118. </member>
  119. <member name="M:AForge.Video.VFW.AVIFileVideoSource.Start">
  120. <summary>
  121. Start video source.
  122. </summary>
  123. <remarks>Starts video source and return execution to caller. Video source
  124. object creates background thread and notifies about new frames with the
  125. help of <see cref="E:AForge.Video.VFW.AVIFileVideoSource.NewFrame"/> event.</remarks>
  126. <exception cref="T:System.ArgumentException">Video source is not specified.</exception>
  127. </member>
  128. <member name="M:AForge.Video.VFW.AVIFileVideoSource.SignalToStop">
  129. <summary>
  130. Signal video source to stop its work.
  131. </summary>
  132. <remarks>Signals video source to stop its background thread, stop to
  133. provide new frames and free resources.</remarks>
  134. </member>
  135. <member name="M:AForge.Video.VFW.AVIFileVideoSource.WaitForStop">
  136. <summary>
  137. Wait for video source has stopped.
  138. </summary>
  139. <remarks>Waits for source stopping after it was signalled to stop using
  140. <see cref="M:AForge.Video.VFW.AVIFileVideoSource.SignalToStop"/> method.</remarks>
  141. </member>
  142. <member name="M:AForge.Video.VFW.AVIFileVideoSource.Stop">
  143. <summary>
  144. Stop video source.
  145. </summary>
  146. <remarks><para>Stops video source aborting its thread.</para>
  147. <para><note>Since the method aborts background thread, its usage is highly not preferred
  148. and should be done only if there are no other options. The correct way of stopping camera
  149. is <see cref="M:AForge.Video.VFW.AVIFileVideoSource.SignalToStop">signaling it stop</see> and then
  150. <see cref="M:AForge.Video.VFW.AVIFileVideoSource.WaitForStop">waiting</see> for background thread's completion.</note></para>
  151. </remarks>
  152. </member>
  153. <member name="M:AForge.Video.VFW.AVIFileVideoSource.Free">
  154. <summary>
  155. Free resource.
  156. </summary>
  157. </member>
  158. <member name="M:AForge.Video.VFW.AVIFileVideoSource.WorkerThread">
  159. <summary>
  160. Worker thread.
  161. </summary>
  162. </member>
  163. <member name="T:AForge.Video.VFW.AVIReader">
  164. <summary>
  165. AVI files reading using Video for Windows.
  166. </summary>
  167. <remarks><para>The class allows to read AVI files using Video for Windows API.</para>
  168. <para>Sample usage:</para>
  169. <code>
  170. // instantiate AVI reader
  171. AVIReader reader = new AVIReader( );
  172. // open video file
  173. reader.Open( "test.avi" );
  174. // read the video file
  175. while ( reader.Position - reader.Start &lt; reader.Length )
  176. {
  177. // get next frame
  178. Bitmap image = reader.GetNextFrame( );
  179. // .. process the frame somehow or display it
  180. }
  181. reader.Close( );
  182. </code>
  183. </remarks>
  184. </member>
  185. <member name="P:AForge.Video.VFW.AVIReader.Width">
  186. <summary>
  187. Width of video frames.
  188. </summary>
  189. <remarks><para>The property specifies the width of video frames within the opened video
  190. file.</para></remarks>
  191. </member>
  192. <member name="P:AForge.Video.VFW.AVIReader.Height">
  193. <summary>
  194. Height of video frames.
  195. </summary>
  196. <remarks><para>The property specifies the height of video frames within the opened video
  197. file.</para></remarks>
  198. </member>
  199. <member name="P:AForge.Video.VFW.AVIReader.Position">
  200. <summary>
  201. Current position in video stream.
  202. </summary>
  203. <remarks>Setting position outside of video range, will lead to reseting position to the start.</remarks>
  204. </member>
  205. <member name="P:AForge.Video.VFW.AVIReader.Start">
  206. <summary>
  207. Starting position of video stream.
  208. </summary>
  209. </member>
  210. <member name="P:AForge.Video.VFW.AVIReader.Length">
  211. <summary>
  212. Video stream length.
  213. </summary>
  214. </member>
  215. <member name="P:AForge.Video.VFW.AVIReader.FrameRate">
  216. <summary>
  217. Desired playing frame rate.
  218. </summary>
  219. <remarks><para>The property specifies the frame rate, which should be used to play the opened video
  220. file.</para></remarks>
  221. </member>
  222. <member name="P:AForge.Video.VFW.AVIReader.Codec">
  223. <summary>
  224. Codec used for video compression.
  225. </summary>
  226. <remarks><para>The property tells about which codec was used to encode the opened video file.</para></remarks>
  227. </member>
  228. <member name="M:AForge.Video.VFW.AVIReader.#ctor">
  229. <summary>
  230. Initializes a new instance of the <see cref="T:AForge.Video.VFW.AVIReader"/> class.
  231. </summary>
  232. <remarks>Initializes Video for Windows library.</remarks>
  233. </member>
  234. <member name="M:AForge.Video.VFW.AVIReader.Finalize">
  235. <summary>
  236. Destroys the instance of the <see cref="T:AForge.Video.VFW.AVIReader"/> class.
  237. </summary>
  238. </member>
  239. <member name="M:AForge.Video.VFW.AVIReader.Dispose">
  240. <summary>
  241. Dispose the object.
  242. </summary>
  243. <remarks>Frees unmanaged resources used by the object. The object becomes unusable
  244. after that.</remarks>
  245. </member>
  246. <member name="M:AForge.Video.VFW.AVIReader.Dispose(System.Boolean)">
  247. <summary>
  248. Dispose the object.
  249. </summary>
  250. <param name="disposing">Indicates if disposing was initiated manually.</param>
  251. </member>
  252. <member name="M:AForge.Video.VFW.AVIReader.Open(System.String)">
  253. <summary>
  254. Open AVI file.
  255. </summary>
  256. <param name="fileName">AVI file name to open.</param>
  257. <remarks><para>The method opens a video file and prepares the stream and decoder for
  258. reading video frames with the help of <see cref="M:AForge.Video.VFW.AVIReader.GetNextFrame"/> method.</para>
  259. </remarks>
  260. <exception cref="T:System.IO.IOException">Failed opening the specified file.</exception>
  261. <exception cref="T:AForge.Video.VideoException">A error occurred while opening the video file. See exception message.</exception>
  262. </member>
  263. <member name="M:AForge.Video.VFW.AVIReader.Close">
  264. <summary>
  265. Close video file.
  266. </summary>
  267. </member>
  268. <member name="M:AForge.Video.VFW.AVIReader.GetNextFrame">
  269. <summary>
  270. Get next frame of opened video stream.
  271. </summary>
  272. <returns>Returns next frame as a bitmap.</returns>
  273. <remarks><para>The method reads and returns the next video frame in the opened video stream
  274. at the position, which is set in <see cref="P:AForge.Video.VFW.AVIReader.Position"/> property.</para></remarks>
  275. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  276. <exception cref="T:AForge.Video.VideoException">A error occurred while reading next video frame. See exception message.</exception>
  277. </member>
  278. <member name="T:AForge.Video.VFW.AVIWriter">
  279. <summary>
  280. AVI files writing using Video for Windows interface.
  281. </summary>
  282. <remarks><para>The class allows to write AVI files using Video for Windows API.</para>
  283. <para>Sample usage:</para>
  284. <code>
  285. // instantiate AVI writer, use WMV3 codec
  286. AVIWriter writer = new AVIWriter( "wmv3" );
  287. // create new AVI file and open it
  288. writer.Open( "test.avi", 320, 240 );
  289. // create frame image
  290. Bitmap image = new Bitmap( 320, 240 );
  291. for ( int i = 0; i &lt; 240; i++ )
  292. {
  293. // update image
  294. image.SetPixel( i, i, Color.Red );
  295. // add the image as a new frame of video file
  296. writer.AddFrame( image );
  297. }
  298. writer.Close( );
  299. </code>
  300. </remarks>
  301. </member>
  302. <member name="P:AForge.Video.VFW.AVIWriter.Width">
  303. <summary>
  304. Width of video frames.
  305. </summary>
  306. <remarks><para>The property specifies the width of video frames, which are acceptable
  307. by <see cref="M:AForge.Video.VFW.AVIWriter.AddFrame(System.Drawing.Bitmap)"/> method for saving, which is set in <see cref="M:AForge.Video.VFW.AVIWriter.Open(System.String,System.Int32,System.Int32)"/>
  308. method.</para></remarks>
  309. </member>
  310. <member name="P:AForge.Video.VFW.AVIWriter.Height">
  311. <summary>
  312. Height of video frames.
  313. </summary>
  314. <remarks><para>The property specifies the height of video frames, which are acceptable
  315. by <see cref="M:AForge.Video.VFW.AVIWriter.AddFrame(System.Drawing.Bitmap)"/> method for saving, which is set in <see cref="M:AForge.Video.VFW.AVIWriter.Open(System.String,System.Int32,System.Int32)"/>
  316. method.</para></remarks>
  317. </member>
  318. <member name="P:AForge.Video.VFW.AVIWriter.Position">
  319. <summary>
  320. Current position in video stream.
  321. </summary>
  322. <remarks><para>The property tell current position in video stream, which actually equals
  323. to the amount of frames added using <see cref="M:AForge.Video.VFW.AVIWriter.AddFrame(System.Drawing.Bitmap)"/> method.</para></remarks>
  324. </member>
  325. <member name="P:AForge.Video.VFW.AVIWriter.FrameRate">
  326. <summary>
  327. Desired playing frame rate.
  328. </summary>
  329. <remarks><para>The property sets the video frame rate, which should be use during playing
  330. of the video to be saved.</para>
  331. <para><note>The property should be set befor opening new file to take effect.</note></para>
  332. <para>Default frame rate is set to <b>25</b>.</para></remarks>
  333. </member>
  334. <member name="P:AForge.Video.VFW.AVIWriter.Codec">
  335. <summary>
  336. Codec used for video compression.
  337. </summary>
  338. <remarks><para>The property sets the FOURCC code of video compression codec, which needs to
  339. be used for video encoding.</para>
  340. <para><note>The property should be set befor opening new file to take effect.</note></para>
  341. <para>Default video codec is set <b>"DIB "</b>, which means no compression.</para></remarks>
  342. </member>
  343. <member name="P:AForge.Video.VFW.AVIWriter.Quality">
  344. <summary>
  345. Compression video quality.
  346. </summary>
  347. <remarks><para>The property sets video quality used by codec in order to balance compression rate
  348. and image quality. The quality is measured usually in the [0, 100] range.</para>
  349. <para><note>The property should be set befor opening new file to take effect.</note></para>
  350. <para>Default value is set to <b>-1</b> - default compression quality of the codec.</para></remarks>
  351. </member>
  352. <member name="M:AForge.Video.VFW.AVIWriter.#ctor">
  353. <summary>
  354. Initializes a new instance of the <see cref="T:AForge.Video.VFW.AVIWriter"/> class.
  355. </summary>
  356. <remarks>Initializes Video for Windows library.</remarks>
  357. </member>
  358. <member name="M:AForge.Video.VFW.AVIWriter.#ctor(System.String)">
  359. <summary>
  360. Initializes a new instance of the <see cref="T:AForge.Video.VFW.AVIWriter"/> class.
  361. </summary>
  362. <param name="codec">Codec to use for compression.</param>
  363. <remarks>Initializes Video for Windows library.</remarks>
  364. </member>
  365. <member name="M:AForge.Video.VFW.AVIWriter.Finalize">
  366. <summary>
  367. Destroys the instance of the <see cref="T:AForge.Video.VFW.AVIWriter"/> class.
  368. </summary>
  369. </member>
  370. <member name="M:AForge.Video.VFW.AVIWriter.Dispose">
  371. <summary>
  372. Dispose the object.
  373. </summary>
  374. <remarks>Frees unmanaged resources used by the object. The object becomes unusable
  375. after that.</remarks>
  376. </member>
  377. <member name="M:AForge.Video.VFW.AVIWriter.Dispose(System.Boolean)">
  378. <summary>
  379. Dispose the object.
  380. </summary>
  381. <param name="disposing">Indicates if disposing was initiated manually.</param>
  382. </member>
  383. <member name="M:AForge.Video.VFW.AVIWriter.Open(System.String,System.Int32,System.Int32)">
  384. <summary>
  385. Create new AVI file and open it for writing.
  386. </summary>
  387. <param name="fileName">AVI file name to create.</param>
  388. <param name="width">Video width.</param>
  389. <param name="height">Video height.</param>
  390. <remarks><para>The method opens (creates) a video files, configure video codec and prepares
  391. the stream for saving video frames with a help of <see cref="M:AForge.Video.VFW.AVIWriter.AddFrame(System.Drawing.Bitmap)"/> method.</para></remarks>
  392. <exception cref="T:System.IO.IOException">Failed opening the specified file.</exception>
  393. <exception cref="T:AForge.Video.VideoException">A error occurred while creating new video file. See exception message.</exception>
  394. <exception cref="T:System.OutOfMemoryException">Insufficient memory for internal buffer.</exception>
  395. <exception cref="T:System.ArgumentException">Video file resolution must be a multiple of two.</exception>
  396. </member>
  397. <member name="M:AForge.Video.VFW.AVIWriter.Close">
  398. <summary>
  399. Close video file.
  400. </summary>
  401. </member>
  402. <member name="M:AForge.Video.VFW.AVIWriter.AddFrame(System.Drawing.Bitmap)">
  403. <summary>
  404. Add new frame to the AVI file.
  405. </summary>
  406. <param name="frameImage">New frame image.</param>
  407. <remarks><para>The method adds new video frame to an opened video file. The width and heights
  408. of the frame should be the same as it was specified in <see cref="M:AForge.Video.VFW.AVIWriter.Open(System.String,System.Int32,System.Int32)"/> method
  409. (see <see cref="P:AForge.Video.VFW.AVIWriter.Width"/> and <see cref="P:AForge.Video.VFW.AVIWriter.Height"/> properties).</para></remarks>
  410. <exception cref="T:System.IO.IOException">Thrown if no video file was open.</exception>
  411. <exception cref="T:System.ArgumentException">Bitmap size must be of the same as video size, which was specified on opening video file.</exception>
  412. <exception cref="T:AForge.Video.VideoException">A error occurred while writing new video frame. See exception message.</exception>
  413. </member>
  414. <member name="T:AForge.Video.VFW.Win32">
  415. <summary>
  416. Windows API functions and structures.
  417. </summary>
  418. <remarks>The class provides Video for Windows and some other Win32 functions and structurs.</remarks>
  419. </member>
  420. <member name="M:AForge.Video.VFW.Win32.memcpy(System.Int32,System.Int32,System.Int32)">
  421. <summary>
  422. Copy a block of memory.
  423. </summary>
  424. <param name="dst">Destination pointer.</param>
  425. <param name="src">Source pointer.</param>
  426. <param name="count">Memory block's length to copy.</param>
  427. <returns>Return's the value of <b>dst</b> - pointer to destination.</returns>
  428. </member>
  429. <member name="M:AForge.Video.VFW.Win32.AVIFileInit">
  430. <summary>
  431. Initialize the AVIFile library.
  432. </summary>
  433. </member>
  434. <member name="M:AForge.Video.VFW.Win32.AVIFileExit">
  435. <summary>
  436. Exit the AVIFile library.
  437. </summary>
  438. </member>
  439. <member name="M:AForge.Video.VFW.Win32.AVIFileOpen(System.IntPtr@,System.String,AForge.Video.VFW.Win32.OpenFileMode,System.IntPtr)">
  440. <summary>
  441. Open an AVI file.
  442. </summary>
  443. <param name="aviHandler">Opened AVI file interface.</param>
  444. <param name="fileName">AVI file name.</param>
  445. <param name="mode">Opening mode (see <see cref="T:AForge.Video.VFW.Win32.OpenFileMode"/>).</param>
  446. <param name="handler">Handler to use (<b>null</b> to use default).</param>
  447. <returns>Returns zero on success or error code otherwise.</returns>
  448. </member>
  449. <member name="M:AForge.Video.VFW.Win32.AVIFileRelease(System.IntPtr)">
  450. <summary>
  451. Release an open AVI stream.
  452. </summary>
  453. <param name="aviHandler">Open AVI file interface.</param>
  454. <returns>Returns the reference count of the file.</returns>
  455. </member>
  456. <member name="M:AForge.Video.VFW.Win32.AVIFileGetStream(System.IntPtr,System.IntPtr@,System.Int32,System.Int32)">
  457. <summary>
  458. Get stream interface that is associated with a specified AVI file
  459. </summary>
  460. <param name="aviHandler">Handler to an open AVI file.</param>
  461. <param name="streamHandler">Stream interface.</param>
  462. <param name="streamType">Stream type to open.</param>
  463. <param name="streamNumner">Count of the stream type. Identifies which occurrence of the specified stream type to access. </param>
  464. <returns></returns>
  465. </member>
  466. <member name="M:AForge.Video.VFW.Win32.AVIFileCreateStream(System.IntPtr,System.IntPtr@,AForge.Video.VFW.Win32.AVISTREAMINFO@)">
  467. <summary>
  468. Create a new stream in an existing file and creates an interface to the new stream.
  469. </summary>
  470. <param name="aviHandler">Handler to an open AVI file.</param>
  471. <param name="streamHandler">Stream interface.</param>
  472. <param name="streamInfo">Pointer to a structure containing information about the new stream.</param>
  473. <returns>Returns zero if successful or an error otherwise.</returns>
  474. </member>
  475. <member name="M:AForge.Video.VFW.Win32.AVIStreamRelease(System.IntPtr)">
  476. <summary>
  477. Release an open AVI stream.
  478. </summary>
  479. <param name="streamHandler">Handle to an open stream.</param>
  480. <returns>Returns the current reference count of the stream.</returns>
  481. </member>
  482. <member name="M:AForge.Video.VFW.Win32.AVIStreamSetFormat(System.IntPtr,System.Int32,AForge.Video.VFW.Win32.BITMAPINFOHEADER@,System.Int32)">
  483. <summary>
  484. Set the format of a stream at the specified position.
  485. </summary>
  486. <param name="streamHandler">Handle to an open stream.</param>
  487. <param name="position">Position in the stream to receive the format.</param>
  488. <param name="format">Pointer to a structure containing the new format.</param>
  489. <param name="formatSize">Size, in bytes, of the block of memory referenced by <b>format</b>.</param>
  490. <returns>Returns zero if successful or an error otherwise.</returns>
  491. </member>
  492. <member name="M:AForge.Video.VFW.Win32.AVIStreamStart(System.IntPtr)">
  493. <summary>
  494. Get the starting sample number for the stream.
  495. </summary>
  496. <param name="streamHandler">Handle to an open stream.</param>
  497. <returns>Returns the number if successful or ?1 otherwise.</returns>
  498. </member>
  499. <member name="M:AForge.Video.VFW.Win32.AVIStreamLength(System.IntPtr)">
  500. <summary>
  501. Get the length of the stream.
  502. </summary>
  503. <param name="streamHandler">Handle to an open stream.</param>
  504. <returns>Returns the stream's length, in samples, if successful or -1 otherwise. </returns>
  505. </member>
  506. <member name="M:AForge.Video.VFW.Win32.AVIStreamInfo(System.IntPtr,AForge.Video.VFW.Win32.AVISTREAMINFO@,System.Int32)">
  507. <summary>
  508. Obtain stream header information.
  509. </summary>
  510. <param name="streamHandler">Handle to an open stream.</param>
  511. <param name="streamInfo">Pointer to a structure to contain the stream information.</param>
  512. <param name="infoSize">Size, in bytes, of the structure used for <b>streamInfo</b>.</param>
  513. <returns>Returns zero if successful or an error otherwise.</returns>
  514. </member>
  515. <member name="M:AForge.Video.VFW.Win32.AVIStreamGetFrameOpen(System.IntPtr,AForge.Video.VFW.Win32.BITMAPINFOHEADER@)">
  516. <summary>
  517. Prepare to decompress video frames from the specified video stream
  518. </summary>
  519. <param name="streamHandler">Pointer to the video stream used as the video source.</param>
  520. <param name="wantedFormat">Pointer to a structure that defines the desired video format. Specify NULL to use a default format.</param>
  521. <returns>Returns an object that can be used with the <see cref="M:AForge.Video.VFW.Win32.AVIStreamGetFrame(System.IntPtr,System.Int32)"/> function.</returns>
  522. </member>
  523. <member name="M:AForge.Video.VFW.Win32.AVIStreamGetFrameOpen(System.IntPtr,System.Int32)">
  524. <summary>
  525. Prepare to decompress video frames from the specified video stream.
  526. </summary>
  527. <param name="streamHandler">Pointer to the video stream used as the video source.</param>
  528. <param name="wantedFormat">Pointer to a structure that defines the desired video format. Specify NULL to use a default format.</param>
  529. <returns>Returns a <b>GetFrame</b> object that can be used with the <see cref="M:AForge.Video.VFW.Win32.AVIStreamGetFrame(System.IntPtr,System.Int32)"/> function.</returns>
  530. </member>
  531. <member name="M:AForge.Video.VFW.Win32.AVIStreamGetFrameClose(System.IntPtr)">
  532. <summary>
  533. Releases resources used to decompress video frames.
  534. </summary>
  535. <param name="getFrameObject">Handle returned from the <see cref="M:AForge.Video.VFW.Win32.AVIStreamGetFrameOpen(System.IntPtr,System.Int32)"/> function.</param>
  536. <returns>Returns zero if successful or an error otherwise.</returns>
  537. </member>
  538. <member name="M:AForge.Video.VFW.Win32.AVIStreamGetFrame(System.IntPtr,System.Int32)">
  539. <summary>
  540. Return the address of a decompressed video frame.
  541. </summary>
  542. <param name="getFrameObject">Pointer to a GetFrame object.</param>
  543. <param name="position">Position, in samples, within the stream of the desired frame.</param>
  544. <returns>Returns a pointer to the frame data if successful or NULL otherwise.</returns>
  545. </member>
  546. <member name="M:AForge.Video.VFW.Win32.AVIStreamWrite(System.IntPtr,System.Int32,System.Int32,System.IntPtr,System.Int32,System.Int32,System.IntPtr,System.IntPtr)">
  547. <summary>
  548. Write data to a stream.
  549. </summary>
  550. <param name="streamHandler">Handle to an open stream.</param>
  551. <param name="start">First sample to write.</param>
  552. <param name="samples">Number of samples to write.</param>
  553. <param name="buffer">Pointer to a buffer containing the data to write. </param>
  554. <param name="bufferSize">Size of the buffer referenced by <b>buffer</b>.</param>
  555. <param name="flags">Flag associated with this data.</param>
  556. <param name="samplesWritten">Pointer to a buffer that receives the number of samples written. This can be set to NULL.</param>
  557. <param name="bytesWritten">Pointer to a buffer that receives the number of bytes written. This can be set to NULL.</param>
  558. <returns>Returns zero if successful or an error otherwise.</returns>
  559. </member>
  560. <member name="M:AForge.Video.VFW.Win32.AVISaveOptions(System.IntPtr,System.Int32,System.Int32,System.IntPtr[],System.IntPtr[])">
  561. <summary>
  562. Retrieve the save options for a file and returns them in a buffer.
  563. </summary>
  564. <param name="window">Handle to the parent window for the Compression Options dialog box.</param>
  565. <param name="flags">Flags for displaying the Compression Options dialog box.</param>
  566. <param name="streams">Number of streams that have their options set by the dialog box.</param>
  567. <param name="streamInterfaces">Pointer to an array of stream interface pointers.</param>
  568. <param name="options">Pointer to an array of pointers to AVICOMPRESSOPTIONS structures.</param>
  569. <returns>Returns TRUE if the user pressed OK, FALSE for CANCEL, or an error otherwise.</returns>
  570. </member>
  571. <member name="M:AForge.Video.VFW.Win32.AVISaveOptionsFree(System.Int32,System.IntPtr[])">
  572. <summary>
  573. Free the resources allocated by the AVISaveOptions function.
  574. </summary>
  575. <param name="streams">Count of the AVICOMPRESSOPTIONS structures referenced in <b>options</b>.</param>
  576. <param name="options">Pointer to an array of pointers to AVICOMPRESSOPTIONS structures.</param>
  577. <returns>Returns 0.</returns>
  578. </member>
  579. <member name="M:AForge.Video.VFW.Win32.AVIMakeCompressedStream(System.IntPtr@,System.IntPtr,AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS@,System.IntPtr)">
  580. <summary>
  581. Create a compressed stream from an uncompressed stream and a
  582. compression filter, and returns the address of a pointer to
  583. the compressed stream.
  584. </summary>
  585. <param name="compressedStream">Pointer to a buffer that receives the compressed stream pointer.</param>
  586. <param name="sourceStream">Pointer to the stream to be compressed.</param>
  587. <param name="options">Pointer to a structure that identifies the type of compression to use and the options to apply.</param>
  588. <param name="clsidHandler">Pointer to a class identifier used to create the stream.</param>
  589. <returns>Returns 0 if successful or an error otherwise.</returns>
  590. </member>
  591. <member name="T:AForge.Video.VFW.Win32.RECT">
  592. <summary>
  593. Structure to define the coordinates of the upper-left and
  594. lower-right corners of a rectangle.
  595. </summary>
  596. </member>
  597. <member name="F:AForge.Video.VFW.Win32.RECT.left">
  598. <summary>
  599. x-coordinate of the upper-left corner of the rectangle.
  600. </summary>
  601. </member>
  602. <member name="F:AForge.Video.VFW.Win32.RECT.top">
  603. <summary>
  604. y-coordinate of the upper-left corner of the rectangle.
  605. </summary>
  606. </member>
  607. <member name="F:AForge.Video.VFW.Win32.RECT.right">
  608. <summary>
  609. x-coordinate of the bottom-right corner of the rectangle.
  610. </summary>
  611. </member>
  612. <member name="F:AForge.Video.VFW.Win32.RECT.bottom">
  613. <summary>
  614. y-coordinate of the bottom-right corner of the rectangle.
  615. </summary>
  616. </member>
  617. <member name="T:AForge.Video.VFW.Win32.AVISTREAMINFO">
  618. <summary>
  619. Structure, which contains information for a single stream .
  620. </summary>
  621. </member>
  622. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.type">
  623. <summary>
  624. Four-character code indicating the stream type.
  625. </summary>
  626. </member>
  627. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.handler">
  628. <summary>
  629. Four-character code of the compressor handler that will compress this video stream when it is saved.
  630. </summary>
  631. </member>
  632. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.flags">
  633. <summary>
  634. Applicable flags for the stream.
  635. </summary>
  636. </member>
  637. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.Capabilities">
  638. <summary>
  639. Capability flags; currently unused.
  640. </summary>
  641. </member>
  642. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.priority">
  643. <summary>
  644. Priority of the stream.
  645. </summary>
  646. </member>
  647. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.language">
  648. <summary>
  649. Language of the stream.
  650. </summary>
  651. </member>
  652. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.scale">
  653. <summary>
  654. Time scale applicable for the stream.
  655. </summary>
  656. <remarks>Dividing <b>rate</b> by <b>scale</b> gives the playback rate in number of samples per second.</remarks>
  657. </member>
  658. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.rate">
  659. <summary>
  660. Rate in an integer format.
  661. </summary>
  662. </member>
  663. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.start">
  664. <summary>
  665. Sample number of the first frame of the AVI file.
  666. </summary>
  667. </member>
  668. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.length">
  669. <summary>
  670. Length of this stream.
  671. </summary>
  672. <remarks>The units are defined by <b>rate</b> and <b>scale</b>.</remarks>
  673. </member>
  674. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.initialFrames">
  675. <summary>
  676. Audio skew. This member specifies how much to skew the audio data ahead of the video frames in interleaved files.
  677. </summary>
  678. </member>
  679. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.suggestedBufferSize">
  680. <summary>
  681. Recommended buffer size, in bytes, for the stream.
  682. </summary>
  683. </member>
  684. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.quality">
  685. <summary>
  686. Quality indicator of the video data in the stream.
  687. </summary>
  688. <remarks>Quality is represented as a number between 0 and 10,000.</remarks>
  689. </member>
  690. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.sampleSize">
  691. <summary>
  692. Size, in bytes, of a single data sample.
  693. </summary>
  694. </member>
  695. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.rectFrame">
  696. <summary>
  697. Dimensions of the video destination rectangle.
  698. </summary>
  699. </member>
  700. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.editCount">
  701. <summary>
  702. Number of times the stream has been edited.
  703. </summary>
  704. </member>
  705. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.formatChangeCount">
  706. <summary>
  707. Number of times the stream format has changed.
  708. </summary>
  709. </member>
  710. <member name="F:AForge.Video.VFW.Win32.AVISTREAMINFO.name">
  711. <summary>
  712. Description of the stream.
  713. </summary>
  714. </member>
  715. <member name="T:AForge.Video.VFW.Win32.BITMAPINFOHEADER">
  716. <summary>
  717. Structure, which contains information about the dimensions and color format of a DIB.
  718. </summary>
  719. </member>
  720. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.size">
  721. <summary>
  722. Specifies the number of bytes required by the structure.
  723. </summary>
  724. </member>
  725. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.width">
  726. <summary>
  727. Specifies the width of the bitmap, in pixels.
  728. </summary>
  729. </member>
  730. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.height">
  731. <summary>
  732. Specifies the height of the bitmap, in pixels.
  733. </summary>
  734. <remarks>If <b>heigh</b>t is positive, the bitmap is a bottom-up DIB and its origin is
  735. the lower-left corner. If <b>height</b> is negative, the bitmap is a top-down DIB and its
  736. origin is the upper-left corner.</remarks>
  737. </member>
  738. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.planes">
  739. <summary>
  740. Specifies the number of planes for the target device. This value must be set to 1.
  741. </summary>
  742. </member>
  743. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.bitCount">
  744. <summary>
  745. Specifies the number of bits-per-pixel.
  746. </summary>
  747. </member>
  748. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.compression">
  749. <summary>
  750. Specifies the type of compression for a compressed bottom-up bitmap (top-down DIBs cannot be compressed).
  751. </summary>
  752. </member>
  753. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.sizeImage">
  754. <summary>
  755. Specifies the size, in bytes, of the image.
  756. </summary>
  757. </member>
  758. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.xPelsPerMeter">
  759. <summary>
  760. Specifies the horizontal resolution, in pixels-per-meter, of the target device for the bitmap.
  761. </summary>
  762. </member>
  763. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.yPelsPerMeter">
  764. <summary>
  765. Specifies the vertical resolution, in pixels-per-meter, of the target device for the bitmap.
  766. </summary>
  767. </member>
  768. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.colorsUsed">
  769. <summary>
  770. Specifies the number of color indexes in the color table that are actually used by the bitmap.
  771. </summary>
  772. </member>
  773. <member name="F:AForge.Video.VFW.Win32.BITMAPINFOHEADER.colorsImportant">
  774. <summary>
  775. Specifies the number of color indexes that are required for displaying the bitmap.
  776. </summary>
  777. </member>
  778. <member name="T:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS">
  779. <summary>
  780. Structure, which contains information about a stream and how it is compressed and saved.
  781. </summary>
  782. </member>
  783. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.type">
  784. <summary>
  785. Four-character code indicating the stream type.
  786. </summary>
  787. </member>
  788. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.handler">
  789. <summary>
  790. Four-character code for the compressor handler that will compress this video stream when it is saved.
  791. </summary>
  792. </member>
  793. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.keyFrameEvery">
  794. <summary>
  795. Maximum period between video key frames.
  796. </summary>
  797. </member>
  798. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.quality">
  799. <summary>
  800. Quality value passed to a video compressor.
  801. </summary>
  802. </member>
  803. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.bytesPerSecond">
  804. <summary>
  805. Video compressor data rate.
  806. </summary>
  807. </member>
  808. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.flags">
  809. <summary>
  810. Flags used for compression.
  811. </summary>
  812. </member>
  813. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.format">
  814. <summary>
  815. Pointer to a structure defining the data format.
  816. </summary>
  817. </member>
  818. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.formatSize">
  819. <summary>
  820. Size, in bytes, of the data referenced by <b>format</b>.
  821. </summary>
  822. </member>
  823. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.parameters">
  824. <summary>
  825. Video-compressor-specific data; used internally.
  826. </summary>
  827. </member>
  828. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.parametersSize">
  829. <summary>
  830. Size, in bytes, of the data referenced by <b>parameters</b>.
  831. </summary>
  832. </member>
  833. <member name="F:AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS.interleaveEvery">
  834. <summary>
  835. Interleave factor for interspersing stream data with data from the first stream.
  836. </summary>
  837. </member>
  838. <member name="T:AForge.Video.VFW.Win32.OpenFileMode">
  839. <summary>
  840. File access modes.
  841. </summary>
  842. </member>
  843. <member name="M:AForge.Video.VFW.Win32.mmioFOURCC(System.String)">
  844. <summary>
  845. .NET replacement of mmioFOURCC macros. Converts four characters to code.
  846. </summary>
  847. <param name="str">Four characters string.</param>
  848. <returns>Returns the code created from provided characters.</returns>
  849. </member>
  850. <member name="M:AForge.Video.VFW.Win32.decode_mmioFOURCC(System.Int32)">
  851. <summary>
  852. Inverse to <see cref="M:AForge.Video.VFW.Win32.mmioFOURCC(System.String)"/>. Converts code to fout characters string.
  853. </summary>
  854. <param name="code">Code to convert.</param>
  855. <returns>Returns four characters string.</returns>
  856. </member>
  857. <member name="M:AForge.Video.VFW.Win32.AVISaveOptions(System.IntPtr,AForge.Video.VFW.Win32.AVICOMPRESSOPTIONS@)">
  858. <summary>
  859. Version of <see cref="M:AForge.Video.VFW.Win32.AVISaveOptions(System.IntPtr,System.Int32,System.Int32,System.IntPtr[],System.IntPtr[])"/> for one stream only.
  860. </summary>
  861. <param name="stream">Stream to configure.</param>
  862. <param name="options">Stream options.</param>
  863. <returns>Returns TRUE if the user pressed OK, FALSE for CANCEL, or an error otherwise.</returns>
  864. </member>
  865. </members>
  866. </doc>