Mercurial > pidgin
annotate src/mediastreamer/msvideosource.h @ 12354:709548d845a1
[gaim-migrate @ 14658]
this hugely increases the color variance, and I think (I looked at #gaim
and #debian) it leaves the colors all still readable. now that the test
actually _works_ I think we can attempt to fine-tune our readability at
our leisure.
committer: Tailor Script <tailor@pidgin.im>
author | Luke Schierer <lschiere@pidgin.im> |
---|---|
date | Mon, 05 Dec 2005 16:44:46 +0000 |
parents | fc464a0abccc |
children |
rev | line source |
---|---|
12024 | 1 /* |
2 The mediastreamer library aims at providing modular media processing and I/O | |
3 for linphone, but also for any telephony application. | |
4 Copyright (C) 2001 Simon MORLAT simon.morlat@linphone.org | |
5 | |
6 This library is free software; you can redistribute it and/or | |
7 modify it under the terms of the GNU Lesser General Public | |
8 License as published by the Free Software Foundation; either | |
9 version 2.1 of the License, or (at your option) any later version. | |
10 | |
11 This library is distributed in the hope that it will be useful, | |
12 but WITHOUT ANY WARRANTY; without even the implied warranty of | |
13 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU | |
14 Lesser General Public License for more details. | |
15 | |
16 You should have received a copy of the GNU Lesser General Public | |
17 License along with this library; if not, write to the Free Software | |
18 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
19 */ | |
20 | |
21 #ifndef MSVIDEOSOURCE_H | |
22 #define MSVIDEOSOURCE_H | |
23 | |
24 | |
25 #include "msfilter.h" | |
26 | |
27 /* this is the video input abstract class */ | |
28 | |
29 #define MSVIDEOSOURCE_MAX_OUTPUTS 1 /* max output per filter*/ | |
30 | |
31 typedef struct _MSVideoSource | |
32 { | |
33 /* the MSVideoSource derivates from MSFilter, so the MSFilter object MUST be the first of the MSVideoSource object | |
34 in order to the object mechanism to work*/ | |
35 MSFilter filter; | |
36 MSQueue *outputs[MSVIDEOSOURCE_MAX_OUTPUTS]; | |
37 gchar *dev_name; | |
38 gint width, height; | |
39 gchar *format; | |
40 gint frame_rate; | |
41 gint frame_rate_base; | |
42 } MSVideoSource; | |
43 | |
44 typedef struct _MSVideoSourceClass | |
45 { | |
46 /* the MSVideoSource derivates from MSFilter, so the MSFilter class MUST be the first of the MSVideoSource class | |
47 in order to the class mechanism to work*/ | |
48 MSFilterClass parent_class; | |
49 gint (*set_device)(MSVideoSource *s, const gchar *name); | |
50 void (*start)(MSVideoSource *s); | |
51 void (*stop)(MSVideoSource *s); | |
52 void (*set_size)(MSVideoSource *s, gint width, gint height); | |
53 void (*set_frame_rate)(MSVideoSource *s, gint frame_rate, gint frame_rate_base); | |
54 } MSVideoSourceClass; | |
55 | |
56 /* PUBLIC */ | |
12323
fc464a0abccc
[gaim-migrate @ 14627]
Richard Laager <rlaager@wiktel.com>
parents:
12024
diff
changeset
|
57 void ms_video_source_register_all(void); |
12024 | 58 int ms_video_source_set_device(MSVideoSource *f, const gchar *device); |
59 gchar* ms_video_source_get_device_name(MSVideoSource *f); | |
60 void ms_video_source_start(MSVideoSource *f); | |
61 void ms_video_source_stop(MSVideoSource *f); | |
62 void ms_video_source_set_size(MSVideoSource *f, gint width, gint height); | |
63 void ms_video_source_set_frame_rate(MSVideoSource *f, gint frame_rate, gint frame_rate_base); | |
64 gchar* ms_video_source_get_format(MSVideoSource *f); | |
65 | |
66 #define MS_VIDEO_SOURCE(obj) ((MSVideoSource*)(obj)) | |
67 #define MS_VIDEO_SOURCE_CLASS(klass) ((MSVideoSourceClass*)(klass)) | |
68 | |
69 | |
70 /* FOR INTERNAL USE*/ | |
71 void ms_video_source_init(MSVideoSource *f); | |
72 void ms_video_source_class_init(MSVideoSourceClass *klass); | |
73 | |
74 #endif |