annotate stream/tvi_dummy.c @ 27409:e2de11109139

If (has outline) blur(outline) else blur(glyph). If there is an outline, the glyph itself should not be blurred. Keeps the border between glyph and outline clear (unblurred), which is probably how it should be. Patch by Diogo Franco (diogomfranco gmail com).
author eugeni
date Thu, 07 Aug 2008 22:20:58 +0000
parents c43ce7268677
children ce0122361a39
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
1 /*
09d5c9834580 tv update
alex
parents: 2790
diff changeset
2 Only a sample!
09d5c9834580 tv update
alex
parents: 2790
diff changeset
3 */
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
4
98769cea155c added tv subsystem
alex
parents:
diff changeset
5 #include "config.h"
98769cea155c added tv subsystem
alex
parents:
diff changeset
6
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
7 #include <stdio.h>
19431
ac69ba536915 Explicitly include libmpcodecs/img_format.h and libvo/fastmemcpy.h.
diego
parents: 19271
diff changeset
8 #include "libmpcodecs/img_format.h"
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
9 #include "tv.h"
98769cea155c added tv subsystem
alex
parents:
diff changeset
10
23883
d65439444b75 Removing global variables from tv://
voroshil
parents: 23362
diff changeset
11 static tvi_handle_t *tvi_init_dummy(tv_param_t* tv_param);
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
12 /* information about this file */
25689
7d5823bd4517 Make all tvi_info_t const
reimar
parents: 23883
diff changeset
13 const tvi_info_t tvi_info_dummy = {
22381
6cabac4d35b5 tv driver loading rework. As a side effect "-tv driver=help" option is
voroshil
parents: 19431
diff changeset
14 tvi_init_dummy,
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
15 "NULL-TV",
98769cea155c added tv subsystem
alex
parents:
diff changeset
16 "dummy",
98769cea155c added tv subsystem
alex
parents:
diff changeset
17 "alex",
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
18 NULL
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
19 };
98769cea155c added tv subsystem
alex
parents:
diff changeset
20
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
21 /* private data's */
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
22 typedef struct {
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
23 int width;
09d5c9834580 tv update
alex
parents: 2790
diff changeset
24 int height;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
25 } priv_t;
98769cea155c added tv subsystem
alex
parents:
diff changeset
26
98769cea155c added tv subsystem
alex
parents:
diff changeset
27 #include "tvi_def.h"
98769cea155c added tv subsystem
alex
parents:
diff changeset
28
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
29 /* handler creator - entry point ! */
23883
d65439444b75 Removing global variables from tv://
voroshil
parents: 23362
diff changeset
30 static tvi_handle_t *tvi_init_dummy(tv_param_t* tv_param)
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
31 {
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
32 return new_handle();
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
33 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
34
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
35 /* initialisation */
3815
622a9ade4517 updated
alex
parents: 3375
diff changeset
36 static int init(priv_t *priv)
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
37 {
3375
5fb624943c90 default size 320x200
alex
parents: 2837
diff changeset
38 priv->width = 320;
5fb624943c90 default size 320x200
alex
parents: 2837
diff changeset
39 priv->height = 200;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
40 return 1;
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
41 }
09d5c9834580 tv update
alex
parents: 2790
diff changeset
42
09d5c9834580 tv update
alex
parents: 2790
diff changeset
43 /* that's the real start, we'got the format parameters (checked with control) */
09d5c9834580 tv update
alex
parents: 2790
diff changeset
44 static int start(priv_t *priv)
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
45 {
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
46 return 1;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
47 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
48
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
49 static int uninit(priv_t *priv)
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
50 {
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
51 return 1;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
52 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
53
98769cea155c added tv subsystem
alex
parents:
diff changeset
54 static int control(priv_t *priv, int cmd, void *arg)
98769cea155c added tv subsystem
alex
parents:
diff changeset
55 {
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
56 switch(cmd)
09d5c9834580 tv update
alex
parents: 2790
diff changeset
57 {
09d5c9834580 tv update
alex
parents: 2790
diff changeset
58 case TVI_CONTROL_IS_VIDEO:
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
59 return TVI_CONTROL_TRUE;
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
60 case TVI_CONTROL_VID_GET_FORMAT:
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
61 // *(int *)arg = IMGFMT_YV12;
7319
20acd78d1239 fixed get_format/set_format
alex
parents: 5572
diff changeset
62 *(int *)arg = IMGFMT_YV12;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
63 return TVI_CONTROL_TRUE;
2815
alex
parents: 2802
diff changeset
64 case TVI_CONTROL_VID_SET_FORMAT:
alex
parents: 2802
diff changeset
65 {
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
66 // int req_fmt = *(int *)arg;
7319
20acd78d1239 fixed get_format/set_format
alex
parents: 5572
diff changeset
67 int req_fmt = *(int *)arg;
2815
alex
parents: 2802
diff changeset
68 if (req_fmt != IMGFMT_YV12)
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
69 return TVI_CONTROL_FALSE;
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
70 return TVI_CONTROL_TRUE;
2815
alex
parents: 2802
diff changeset
71 }
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
72 case TVI_CONTROL_VID_SET_WIDTH:
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
73 priv->width = *(int *)arg;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
74 return TVI_CONTROL_TRUE;
3375
5fb624943c90 default size 320x200
alex
parents: 2837
diff changeset
75 case TVI_CONTROL_VID_GET_WIDTH:
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
76 *(int *)arg = priv->width;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
77 return TVI_CONTROL_TRUE;
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
78 case TVI_CONTROL_VID_SET_HEIGHT:
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
79 priv->height = *(int *)arg;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
80 return TVI_CONTROL_TRUE;
3375
5fb624943c90 default size 320x200
alex
parents: 2837
diff changeset
81 case TVI_CONTROL_VID_GET_HEIGHT:
12375
48a655d09522 and more and more stupidity
rfelker
parents: 9094
diff changeset
82 *(int *)arg = priv->height;
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
83 return TVI_CONTROL_TRUE;
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
84 case TVI_CONTROL_VID_CHK_WIDTH:
09d5c9834580 tv update
alex
parents: 2790
diff changeset
85 case TVI_CONTROL_VID_CHK_HEIGHT:
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
86 return TVI_CONTROL_TRUE;
9094
84012782d313 added TVI_CONTROL_TUN_SET_NORM
gabucino
parents: 7319
diff changeset
87 case TVI_CONTROL_TUN_SET_NORM:
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
88 return TVI_CONTROL_TRUE;
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
89 }
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
90 return TVI_CONTROL_UNKNOWN;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
91 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
92
5572
8cd761968f35 BSD-BT848 TV update patch by Charles Henrich <henrich@sigbus.com>
arpi
parents: 3815
diff changeset
93 static double grab_video_frame(priv_t *priv, char *buffer, int len)
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
94 {
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
95 memset(buffer, 0x42, len);
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
96 return 1;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
97 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
98
98769cea155c added tv subsystem
alex
parents:
diff changeset
99 static int get_video_framesize(priv_t *priv)
98769cea155c added tv subsystem
alex
parents:
diff changeset
100 {
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
101 /* YV12 */
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
102 return priv->width * priv->height * 12 / 8;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
103 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
104
5572
8cd761968f35 BSD-BT848 TV update patch by Charles Henrich <henrich@sigbus.com>
arpi
parents: 3815
diff changeset
105 static double grab_audio_frame(priv_t *priv, char *buffer, int len)
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
106 {
2802
09d5c9834580 tv update
alex
parents: 2790
diff changeset
107 memset(buffer, 0x42, len);
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
108 return 1;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
109 }
98769cea155c added tv subsystem
alex
parents:
diff changeset
110
98769cea155c added tv subsystem
alex
parents:
diff changeset
111 static int get_audio_framesize(priv_t *priv)
98769cea155c added tv subsystem
alex
parents:
diff changeset
112 {
26756
c43ce7268677 cosmetics: Remove useless parentheses from return statements.
diego
parents: 25689
diff changeset
113 return 1;
2790
98769cea155c added tv subsystem
alex
parents:
diff changeset
114 }