1 /************************************************************************
2 *
3 * win.h, display routines for Win32 for tmndecode (H.263 decoder)
4 *
5 ************************************************************************/
6
7 /*
8 * Disclaimer of Warranty
9 *
10 * These software programs are available to the user without any
11 * license fee or royalty on an "as is" basis. The University of
12 * British Columbia disclaims any and all warranties, whether
13 * express, implied, or statuary, including any implied warranties
14 * or merchantability or of fitness for a particular purpose. In no
15 * event shall the copyright-holder be liable for any incidental,
16 * punitive, or consequential damages of any kind whatsoever arising
17 * from the use of these programs.
18 *
19 * This disclaimer of warranty extends to the user of these programs
20 * and user's customers, employees, agents, transferees, successors,
21 * and assigns.
22 *
23 * The University of British Columbia does not represent or warrant
24 * that the programs furnished hereunder are free of infringement of
25 * any third-party patents.
26 *
27 * Commercial implementations of H.263, including shareware, are
28 * subject to royalty fees to patent holders. Many of these patents
29 * are general enough such that they are unavoidable regardless of
30 * implementation design.
31 *
32 */
33
34
35
36
37 /* Copyright ¨ 1996 Intel Corporation All Rights Reserved
38
39 Permission is granted to use, copy and distribute the software in this
40 file for any purpose and without fee, provided, that the above
41 copyright notice and this statement appear in all copies. Intel makes
42 no representations about the suitability of this software for any
43 purpose. This software is provided "AS IS."
44
45 Intel specifically disclaims all warranties, express or implied, and
46 all liability, including consequential and other indirect damages, for
47 the use of this software, including liability for infringement of any
48 proprietary rights, and including the warranties of merchantability
49 and fitness for a particular purpose. Intel does not assume any
50 responsibility for any errors which may appear in this software nor
51 any responsibility to update it. */
52
53 #ifdef WINDOWS
54
55 #include <windows.h>
56 #include <process.h>
57 #include <vfw.h>
58 #include <memory.h>
59
60
61 typedef struct
62 {
63 HANDLE hThread;
64 HANDLE hEvent;
65 HWND hWnd;
66 MSG msg;
67 WNDCLASS wc;
68 HDRAWDIB hDrawDib;
69 HDC hDC;
70 BITMAPINFOHEADER biHeader;
71 char lpszAppName[15];
72 DWORD dwThreadID;
73 BOOL imageIsReady;
74 unsigned char *bufRGB;
75 RECT rect;
76 unsigned char *src[3];
77
78 int width, height;
79 int zoom, oldzoom;
80 int windowDismissed;
81
82 } T_VDWINDOW;
83
84
85 #define VIDEO_BEGIN (WM_USER + 0)
86 #define VIDEO_DRAW_FRAME (WM_USER + 1)
87 #define VIDEO_REDRAW_FRAME (WM_USER + 2)
88 #define VIDEO_END (WM_USER + 3)
89
90
91 int initDisplay (int pels, int lines);
92 int displayImage (unsigned char *lum, unsigned char *Cr, unsigned char *Cb);
93 int closeDisplay ();
94
95 void DisplayWinMain (void *);
96 LONG APIENTRY MainWndProc (HWND, UINT, UINT, LONG);
97 int DrawDIB ();
98 void init_dither_tab();
99 void ConvertYUVtoRGB(
100 unsigned char *src0,
101 unsigned char *src1,
102 unsigned char *src2,
103 unsigned char *dst_ori,
104 int width,
105 int height
106 );
107 int InitDisplayWindowThread ();
108
109 #endif
110
This page was automatically generated by the
LXR engine.
Visit the LXR main site for more
information.