- merge v0.01 --> Añadido fileselector - Añadidas fuentes de Gem y Pure Data - pix2jpg incluído en Gem. Archivos de construcción de Gem modificados. - Añadido fichero ompiling.txt con instrucciones de compilación
		
			
				
	
	
		
			78 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
			
		
		
	
	
			78 lines
		
	
	
	
		
			2.1 KiB
		
	
	
	
		
			C++
		
	
	
	
	
	
| /*-----------------------------------------------------------------
 | |
| 
 | |
| GEM - Graphics Environment for Multimedia
 | |
| 
 | |
| Load an video into a pix block: VideoForWindows backend
 | |
| 
 | |
| Copyright (c) 1997-1999 Mark Danks. mark@danks.org
 | |
| Copyright (c) Günther Geiger. geiger@epy.co.at
 | |
| Copyright (c) 2001-2011 IOhannes m zmölnig. forum::für::umläute. IEM. zmoelnig@iem.at
 | |
| For information on usage and redistribution, and for a DISCLAIMER OF ALL
 | |
| WARRANTIES, see the file, "GEM.LICENSE.TERMS" in this distribution.
 | |
| 
 | |
| -----------------------------------------------------------------*/
 | |
| 
 | |
| #ifndef _INCLUDE_GEMPLUGIN__VIDEOVFW_VIDEOVFW_H_
 | |
| #define _INCLUDE_GEMPLUGIN__VIDEOVFW_VIDEOVFW_H_
 | |
| 
 | |
| #include "plugins/videoBase.h"
 | |
| 
 | |
| #include <vfw.h>
 | |
| 
 | |
| /*-----------------------------------------------------------------
 | |
|   -------------------------------------------------------------------
 | |
|   CLASS
 | |
| 	pix_video
 | |
| 
 | |
|   captures a video on NT machines
 | |
| 
 | |
|   KEYWORDS
 | |
|   pix
 | |
| 
 | |
|   -----------------------------------------------------------------*/
 | |
| namespace gem { namespace plugins {
 | |
|  class GEM_EXPORT videoVFW : public videoBase {
 | |
|   public:
 | |
|     //////////
 | |
|     // Constructor
 | |
|     videoVFW(void);
 | |
| 
 | |
|     //////////
 | |
|     // Destructor
 | |
|     virtual ~videoVFW(void);
 | |
| 
 | |
|     ////////
 | |
|     // open the video-device
 | |
|     virtual bool           openDevice(gem::Properties&);
 | |
|     virtual void          closeDevice(void);
 | |
| 
 | |
|     //////////
 | |
|     // Start up the video device
 | |
|     // [out] int - returns 0 if bad
 | |
|     bool startTransfer(void);
 | |
|     //////////
 | |
|     // Stop the video device
 | |
|     // [out] int - returns 0 if bad
 | |
|     bool stopTransfer(void);
 | |
| 
 | |
|     //////////
 | |
|     // get the next frame
 | |
|     bool grabFrame(void);
 | |
| 
 | |
|     //////////
 | |
|     // Set the video dimensions
 | |
|     virtual bool	    	setColor(int);
 | |
| 
 | |
|     virtual bool enumProperties(gem::Properties&readable, gem::Properties&writeable);
 | |
|     virtual void setProperties(gem::Properties&);
 | |
|     virtual void getProperties(gem::Properties&);
 | |
| 
 | |
|   protected:
 | |
|     HWND		m_hWndC;
 | |
|     void		videoFrame(LPVIDEOHDR lpVHdr);
 | |
|   private:
 | |
|     static void videoFrameCallback(HWND hWnd, LPVIDEOHDR lpVHdr);
 | |
|   };
 | |
| };};
 | |
| 
 | |
| #endif	// for header file
 |