Mon, 30 Mar 2009 23:50:44 +0000
Remove purple_media_remove_stream as purple_media_end does what it was
supposed to do.
| 19883 | 1 | /** |
| 19889 | 2 | * @file media.h Media API |
| 19883 | 3 | * @ingroup core |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
4 | */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
5 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
6 | /* purple |
| 19883 | 7 | * |
| 8 | * Purple is the legal property of its developers, whose names are too numerous | |
| 9 | * to list here. Please refer to the COPYRIGHT file distributed with this | |
| 10 | * source distribution. | |
| 11 | * | |
| 12 | * This program is free software; you can redistribute it and/or modify | |
| 13 | * it under the terms of the GNU General Public License as published by | |
| 14 | * the Free Software Foundation; either version 2 of the License, or | |
| 15 | * (at your option) any later version. | |
| 16 | * | |
| 17 | * This program is distributed in the hope that it will be useful, | |
| 18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 20 | * GNU General Public License for more details. | |
| 21 | * | |
| 22 | * You should have received a copy of the GNU General Public License | |
| 23 | * along with this program; if not, write to the Free Software | |
| 24 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 25 | */ | |
| 26 | ||
| 27 | #ifndef __MEDIA_H_ | |
| 28 | #define __MEDIA_H_ | |
| 29 | ||
| 30 | #include <glib.h> | |
| 31 | #include <glib-object.h> | |
| 32 | ||
| 33 | G_BEGIN_DECLS | |
| 34 | ||
| 35 | #define PURPLE_TYPE_MEDIA (purple_media_get_type()) | |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
36 | #define PURPLE_TYPE_MEDIA_CANDIDATE (purple_media_candidate_get_type()) |
|
26232
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
37 | #define PURPLE_TYPE_MEDIA_CODEC (purple_media_codec_get_type()) |
| 19883 | 38 | #define PURPLE_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_MEDIA, PurpleMedia)) |
| 39 | #define PURPLE_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_MEDIA, PurpleMediaClass)) | |
| 40 | #define PURPLE_IS_MEDIA(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_MEDIA)) | |
| 41 | #define PURPLE_IS_MEDIA_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_MEDIA)) | |
| 42 | #define PURPLE_MEDIA_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_MEDIA, PurpleMediaClass)) | |
| 43 | ||
|
26449
9e381dc6ed24
Rename state-changed enum and values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26448
diff
changeset
|
44 | #define PURPLE_MEDIA_TYPE_STATE (purple_media_state_changed_get_type()) |
|
26447
d966eb10953d
Use the right enum for the stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26446
diff
changeset
|
45 | #define PURPLE_MEDIA_TYPE_INFO_TYPE (purple_media_info_type_get_type()) |
|
26193
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
46 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
47 | /** @copydoc _PurpleMedia */ |
| 19883 | 48 | typedef struct _PurpleMedia PurpleMedia; |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
49 | /** @copydoc _PurpleMediaClass */ |
| 19883 | 50 | typedef struct _PurpleMediaClass PurpleMediaClass; |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
51 | /** @copydoc _PurpleMediaPrivate */ |
| 19883 | 52 | typedef struct _PurpleMediaPrivate PurpleMediaPrivate; |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
53 | /** @copydoc _PurpleMediaCandidate */ |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
54 | typedef struct _PurpleMediaCandidate PurpleMediaCandidate; |
|
26232
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
55 | /** @copydoc _PurpleMediaCodec */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
56 | typedef struct _PurpleMediaCodec PurpleMediaCodec; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
57 | /** @copydoc _PurpleMediaCodecParameter */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
58 | typedef struct _PurpleMediaCodecParameter PurpleMediaCodecParameter; |
| 19883 | 59 | |
|
26316
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
60 | /** Media caps */ |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
61 | typedef enum { |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
62 | PURPLE_MEDIA_CAPS_NONE = 0, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
63 | PURPLE_MEDIA_CAPS_AUDIO = 1, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
64 | PURPLE_MEDIA_CAPS_AUDIO_SINGLE_DIRECTION = 1 << 1, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
65 | PURPLE_MEDIA_CAPS_VIDEO = 1 << 2, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
66 | PURPLE_MEDIA_CAPS_VIDEO_SINGLE_DIRECTION = 1 << 3, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
67 | PURPLE_MEDIA_CAPS_AUDIO_VIDEO = 1 << 4, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
68 | PURPLE_MEDIA_CAPS_MODIFY_SESSION = 1 << 5, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
69 | PURPLE_MEDIA_CAPS_CHANGE_DIRECTION = 1 << 6, |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
70 | } PurpleMediaCaps; |
|
950c0d491c0d
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents:
26304
diff
changeset
|
71 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
72 | /** Media session types */ |
| 19883 | 73 | typedef enum { |
|
23724
5d3300ffacad
Added some utility functions to convert PurpleMediaStreamType
Michael Ruprecht <maiku@pidgin.im>
parents:
23721
diff
changeset
|
74 | PURPLE_MEDIA_NONE = 0, |
| 19883 | 75 | PURPLE_MEDIA_RECV_AUDIO = 1 << 0, |
| 76 | PURPLE_MEDIA_SEND_AUDIO = 1 << 1, | |
| 77 | PURPLE_MEDIA_RECV_VIDEO = 1 << 2, | |
| 78 | PURPLE_MEDIA_SEND_VIDEO = 1 << 3, | |
|
23697
299bafcd8eb8
Updates voice and video to use Farsight 2, gets XMPP voice conferences
Michael Ruprecht <maiku@pidgin.im>
parents:
22682
diff
changeset
|
79 | PURPLE_MEDIA_AUDIO = PURPLE_MEDIA_RECV_AUDIO | PURPLE_MEDIA_SEND_AUDIO, |
|
299bafcd8eb8
Updates voice and video to use Farsight 2, gets XMPP voice conferences
Michael Ruprecht <maiku@pidgin.im>
parents:
22682
diff
changeset
|
80 | PURPLE_MEDIA_VIDEO = PURPLE_MEDIA_RECV_VIDEO | PURPLE_MEDIA_SEND_VIDEO |
|
26108
8d0fd2f195aa
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
81 | } PurpleMediaSessionType; |
| 19883 | 82 | |
|
26193
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
83 | /** Media state-changed types */ |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
84 | typedef enum { |
|
26449
9e381dc6ed24
Rename state-changed enum and values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26448
diff
changeset
|
85 | PURPLE_MEDIA_STATE_NEW = 0, |
|
9e381dc6ed24
Rename state-changed enum and values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26448
diff
changeset
|
86 | PURPLE_MEDIA_STATE_CONNECTED, |
|
9e381dc6ed24
Rename state-changed enum and values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26448
diff
changeset
|
87 | PURPLE_MEDIA_STATE_END, |
|
9e381dc6ed24
Rename state-changed enum and values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26448
diff
changeset
|
88 | } PurpleMediaState; |
|
26193
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
89 | |
|
26440
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
90 | /** Media info types */ |
|
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
91 | typedef enum { |
|
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
92 | PURPLE_MEDIA_INFO_HANGUP = 0, |
|
26497
f1bdba5a6236
Add some more PurpleMediaInfo values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26496
diff
changeset
|
93 | PURPLE_MEDIA_INFO_ACCEPT, |
|
26440
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
94 | PURPLE_MEDIA_INFO_REJECT, |
|
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
95 | PURPLE_MEDIA_INFO_MUTE, |
|
26497
f1bdba5a6236
Add some more PurpleMediaInfo values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26496
diff
changeset
|
96 | PURPLE_MEDIA_INFO_UNMUTE, |
|
26440
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
97 | PURPLE_MEDIA_INFO_HOLD, |
|
26497
f1bdba5a6236
Add some more PurpleMediaInfo values.
Michael Ruprecht <maiku@pidgin.im>
parents:
26496
diff
changeset
|
98 | PURPLE_MEDIA_INFO_UNHOLD, |
|
26440
1ece473ab51a
Add stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26434
diff
changeset
|
99 | } PurpleMediaInfoType; |
|
26193
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
100 | |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
101 | typedef enum { |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
102 | PURPLE_MEDIA_CANDIDATE_TYPE_HOST, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
103 | PURPLE_MEDIA_CANDIDATE_TYPE_SRFLX, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
104 | PURPLE_MEDIA_CANDIDATE_TYPE_PRFLX, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
105 | PURPLE_MEDIA_CANDIDATE_TYPE_RELAY, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
106 | PURPLE_MEDIA_CANDIDATE_TYPE_MULTICAST, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
107 | } PurpleMediaCandidateType; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
108 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
109 | typedef enum { |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
110 | PURPLE_MEDIA_COMPONENT_NONE = 0, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
111 | PURPLE_MEDIA_COMPONENT_RTP = 1, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
112 | PURPLE_MEDIA_COMPONENT_RTCP = 2, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
113 | } PurpleMediaComponentType; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
114 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
115 | typedef enum { |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
116 | PURPLE_MEDIA_NETWORK_PROTOCOL_UDP, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
117 | PURPLE_MEDIA_NETWORK_PROTOCOL_TCP, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
118 | } PurpleMediaNetworkProtocol; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
119 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
120 | /** The media class */ |
| 19883 | 121 | struct _PurpleMediaClass |
| 122 | { | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
123 | GObjectClass parent_class; /**< The parent class. */ |
| 19883 | 124 | }; |
| 125 | ||
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
126 | /** The media class's private data */ |
| 19883 | 127 | struct _PurpleMedia |
| 128 | { | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
129 | GObject parent; /**< The parent of this object. */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
130 | PurpleMediaPrivate *priv; /**< The private data of this object. */ |
| 19883 | 131 | }; |
| 132 | ||
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
133 | struct _PurpleMediaCandidate |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
134 | { |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
135 | const gchar *foundation; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
136 | guint component_id; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
137 | const gchar *ip; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
138 | guint16 port; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
139 | const gchar *base_ip; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
140 | guint16 base_port; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
141 | PurpleMediaNetworkProtocol proto; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
142 | guint32 priority; |
|
26230
3d8b6e21c16f
Use the correct enumeration name.
Michael Ruprecht <maiku@pidgin.im>
parents:
26229
diff
changeset
|
143 | PurpleMediaCandidateType type; |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
144 | const gchar *username; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
145 | const gchar *password; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
146 | guint ttl; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
147 | }; |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
148 | |
|
26232
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
149 | struct _PurpleMediaCodecParameter |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
150 | { |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
151 | gchar *name; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
152 | gchar *value; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
153 | }; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
154 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
155 | struct _PurpleMediaCodec |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
156 | { |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
157 | gint id; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
158 | char *encoding_name; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
159 | PurpleMediaSessionType media_type; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
160 | guint clock_rate; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
161 | guint channels; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
162 | GList *optional_params; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
163 | }; |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
164 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
165 | #ifdef __cplusplus |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
166 | extern "C" { |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
167 | #endif |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
168 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
169 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
170 | * Gets the media class's GType |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
171 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
172 | * @return The media class's GType. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
173 | */ |
|
22071
4c47e360e467
Fix the prplinfo structs and get rid of some compile warnings.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19889
diff
changeset
|
174 | GType purple_media_get_type(void); |
| 19883 | 175 | |
|
26193
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
176 | /** |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
177 | * Gets the type of the state-changed enum |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
178 | * |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
179 | * @return The state-changed enum's GType |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
180 | */ |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
181 | GType purple_media_state_changed_get_type(void); |
|
101122f0f3dd
Add state-changed signal to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26184
diff
changeset
|
182 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
183 | /** |
|
26448
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
184 | * Gets the type of the info type enum |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
185 | * |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
186 | * @return The info type enum's GType |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
187 | */ |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
188 | GType purple_media_info_type_get_type(void); |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
189 | |
|
64c7d1b462c3
Declare purple_media_state_changed_get_type.
Michael Ruprecht <maiku@pidgin.im>
parents:
26447
diff
changeset
|
190 | /** |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
191 | * Gets the type of the media candidate structure. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
192 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
193 | * @return The media canditate's GType |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
194 | */ |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
195 | GType purple_media_candidate_get_type(void); |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
196 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
197 | /** |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
198 | * Creates a PurpleMediaCandidate instance. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
199 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
200 | * @param foundation The foundation of the candidate. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
201 | * @param component_id The component this candidate is for. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
202 | * @param type The type of candidate. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
203 | * @param proto The protocol this component is for. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
204 | * @param ip The IP address of this component. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
205 | * @param port The network port. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
206 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
207 | * @return The newly created PurpleMediaCandidate instance. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
208 | */ |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
209 | PurpleMediaCandidate *purple_media_candidate_new( |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
210 | const gchar *foundation, guint component_id, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
211 | PurpleMediaCandidateType type, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
212 | PurpleMediaNetworkProtocol proto, |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
213 | const gchar *ip, guint port); |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
214 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
215 | /** |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
216 | * Copies a GList of PurpleMediaCandidate and its contents. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
217 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
218 | * @param candidates The list of candidates to be copied. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
219 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
220 | * @return The copy of the GList. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
221 | */ |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
222 | GList *purple_media_candidate_list_copy(GList *candidates); |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
223 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
224 | /** |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
225 | * Frees a GList of PurpleMediaCandidate and its contents. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
226 | * |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
227 | * @param candidates The list of candidates to be freed. |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
228 | */ |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
229 | void purple_media_candidate_list_free(GList *candidates); |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
230 | |
|
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
231 | /** |
|
26232
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
232 | * Gets the type of the media codec structure. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
233 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
234 | * @return The media codec's GType |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
235 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
236 | GType purple_media_codec_get_type(void); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
237 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
238 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
239 | * Creates a new PurpleMediaCodec instance. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
240 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
241 | * @param id Codec identifier. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
242 | * @param encoding_name Name of the media type this encodes. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
243 | * @param media_type PurpleMediaSessionType of this codec. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
244 | * @param clock_rate The clock rate this codec encodes at, if applicable. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
245 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
246 | * @return The newly created PurpleMediaCodec. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
247 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
248 | PurpleMediaCodec *purple_media_codec_new(int id, const char *encoding_name, |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
249 | PurpleMediaSessionType media_type, guint clock_rate); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
250 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
251 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
252 | * Creates a string representation of the codec. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
253 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
254 | * @param codec The codec to create the string of. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
255 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
256 | * @return The new string representation. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
257 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
258 | gchar *purple_media_codec_to_string(const PurpleMediaCodec *codec); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
259 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
260 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
261 | * Adds an optional parameter to the codec. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
262 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
263 | * @param codec The codec to add the parameter to. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
264 | * @param name The name of the parameter to add. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
265 | * @param value The value of the parameter to add. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
266 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
267 | void purple_media_codec_add_optional_parameter(PurpleMediaCodec *codec, |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
268 | const gchar *name, const gchar *value); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
269 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
270 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
271 | * Removes an optional parameter from the codec. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
272 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
273 | * @param codec The codec to remove the parameter from. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
274 | * @param param A pointer to the parameter to remove. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
275 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
276 | void purple_media_codec_remove_optional_parameter(PurpleMediaCodec *codec, |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
277 | PurpleMediaCodecParameter *param); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
278 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
279 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
280 | * Gets an optional parameter based on the values given. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
281 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
282 | * @param codec The codec to find the parameter in. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
283 | * @param name The name of the parameter to search for. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
284 | * @param value The value to search for or NULL. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
285 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
286 | * @return The value found or NULL. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
287 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
288 | PurpleMediaCodecParameter *purple_media_codec_get_optional_parameter( |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
289 | PurpleMediaCodec *codec, const gchar *name, |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
290 | const gchar *value); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
291 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
292 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
293 | * Copies a GList of PurpleMediaCodec and its contents. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
294 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
295 | * @param codecs The list of codecs to be copied. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
296 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
297 | * @return The copy of the GList. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
298 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
299 | GList *purple_media_codec_list_copy(GList *codecs); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
300 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
301 | /** |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
302 | * Frees a GList of PurpleMediaCodec and its contents. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
303 | * |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
304 | * @param codecs The list of codecs to be freed. |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
305 | */ |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
306 | void purple_media_codec_list_free(GList *codecs); |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
307 | |
|
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
308 | /** |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
309 | * Gets a list of session names. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
310 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
311 | * @param media The media session to retrieve session names from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
312 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
313 | * @return GList of session names. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
314 | */ |
|
23721
15285d082f6c
Refactored PurpleMedia to make creating audio or video sessions virtually identical. Audio, video, and audio/video sessions now work. Also added videotestsrc to the video plugin preference.
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
315 | GList *purple_media_get_session_names(PurpleMedia *media); |
|
15285d082f6c
Refactored PurpleMedia to make creating audio or video sessions virtually identical. Audio, video, and audio/video sessions now work. Also added videotestsrc to the video plugin preference.
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
316 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
317 | /** |
|
26327
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
318 | * Gets the PurpleConnection this media session is on. |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
319 | * |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
320 | * @param media The media session to retrieve the connection from. |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
321 | * |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
322 | * @return The connection retrieved. |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
323 | */ |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
324 | PurpleConnection *purple_media_get_connection(PurpleMedia *media); |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
325 | |
|
6a436310d508
Added the connection property back to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26323
diff
changeset
|
326 | /** |
|
26328
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
327 | * Gets the prpl data from the media session. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
328 | * |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
329 | * @param media The media session to retrieve the prpl data from. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
330 | * |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
331 | * @return The prpl data retrieved. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
332 | */ |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
333 | gpointer purple_media_get_prpl_data(PurpleMedia *media); |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
334 | |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
335 | /** |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
336 | * Sets the prpl data on the media session. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
337 | * |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
338 | * @param media The media session to set the prpl data on. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
339 | * @param prpl_data The data to set on the media session. |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
340 | */ |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
341 | void purple_media_set_prpl_data(PurpleMedia *media, gpointer prpl_data); |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
342 | |
|
9c15d3c83e24
Add a prpl-data property to PurpleMedia.
Michael Ruprecht <maiku@pidgin.im>
parents:
26327
diff
changeset
|
343 | /** |
|
26182
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
344 | * Signals an error in the media session. |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
345 | * |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
346 | * @param media The media object to set the state on. |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
347 | * @param error The format of the error message to send in the signal. |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
348 | * @param ... The arguments to plug into the format. |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
349 | */ |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
350 | void purple_media_error(PurpleMedia *media, const gchar *error, ...); |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
351 | |
|
728ad1da9cbc
Add purple_media_error.
Michael Ruprecht <maiku@pidgin.im>
parents:
26176
diff
changeset
|
352 | /** |
|
26264
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
353 | * Ends all streams that match the given parameters |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
354 | * |
|
26264
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
355 | * @param media The media object with which to end streams. |
|
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
356 | * @param session_id The session to end streams on. |
|
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
357 | * @param participant The participant to end streams with. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
358 | */ |
|
26264
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
359 | void purple_media_end(PurpleMedia *media, const gchar *session_id, |
|
c062fc1f212f
Added purple_media_end and removed the purple_media_got_hangup.
Michael Ruprecht <maiku@pidgin.im>
parents:
26259
diff
changeset
|
360 | const gchar *participant); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
361 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
362 | /** |
|
26496
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
363 | * Signals different information about the given stream. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
364 | * |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
365 | * @param media The media instance to containing the stream to signal. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
366 | * @param type The type of info being signaled. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
367 | * @param session_id The id of the session of the stream being signaled. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
368 | * @param participant The participant of the stream being signaled. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
369 | * @param local TRUE if the info originated locally, FALSE if on the remote end. |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
370 | */ |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
371 | void purple_media_stream_info(PurpleMedia *media, PurpleMediaInfoType type, |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
372 | const gchar *session_id, const gchar *participant, |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
373 | gboolean local); |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
374 | |
|
11e1e5221460
Create purple_media_stream_info. Add local parameter to stream-info signal.
Michael Ruprecht <maiku@pidgin.im>
parents:
26480
diff
changeset
|
375 | /** |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
376 | * Adds a stream to a session. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
377 | * |
|
26134
2def4b29fcfe
purple_media_add_stream should only add a stream to one session.
Michael Ruprecht <maiku@pidgin.im>
parents:
26133
diff
changeset
|
378 | * It only adds a stream to one audio session or video session as |
|
2def4b29fcfe
purple_media_add_stream should only add a stream to one session.
Michael Ruprecht <maiku@pidgin.im>
parents:
26133
diff
changeset
|
379 | * the @c sess_id must be unique between sessions. |
|
2def4b29fcfe
purple_media_add_stream should only add a stream to one session.
Michael Ruprecht <maiku@pidgin.im>
parents:
26133
diff
changeset
|
380 | * |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
381 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
382 | * @param sess_id The session id of the session to add the stream to. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
383 | * @param who The name of the remote user to add the stream for. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
384 | * @param type The type of stream to create. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
385 | * @param transmitter The transmitter to use for the stream. |
|
26134
2def4b29fcfe
purple_media_add_stream should only add a stream to one session.
Michael Ruprecht <maiku@pidgin.im>
parents:
26133
diff
changeset
|
386 | * @param num_params The number of parameters to pass to Farsight. |
|
2def4b29fcfe
purple_media_add_stream should only add a stream to one session.
Michael Ruprecht <maiku@pidgin.im>
parents:
26133
diff
changeset
|
387 | * @param params The parameters to pass to Farsight. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
388 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
389 | * @return @c TRUE The stream was added successfully, @c FALSE otherwise. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
390 | */ |
|
23721
15285d082f6c
Refactored PurpleMedia to make creating audio or video sessions virtually identical. Audio, video, and audio/video sessions now work. Also added videotestsrc to the video plugin preference.
Michael Ruprecht <maiku@pidgin.im>
parents:
23704
diff
changeset
|
391 | gboolean purple_media_add_stream(PurpleMedia *media, const gchar *sess_id, const gchar *who, |
|
26133
a12ffee5bd73
Add params to purple_media_add_stream to allow for different libNice
Michael Ruprecht <maiku@pidgin.im>
parents:
26131
diff
changeset
|
392 | PurpleMediaSessionType type, const gchar *transmitter, |
|
a12ffee5bd73
Add params to purple_media_add_stream to allow for different libNice
Michael Ruprecht <maiku@pidgin.im>
parents:
26131
diff
changeset
|
393 | guint num_params, GParameter *params); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
394 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
395 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
396 | * Gets the session type from a session |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
397 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
398 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
399 | * @param sess_id The session id of the session to get the type from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
400 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
401 | * @return The retreived session type. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
402 | */ |
|
26108
8d0fd2f195aa
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Michael Ruprecht <maiku@pidgin.im>
parents:
26105
diff
changeset
|
403 | PurpleMediaSessionType purple_media_get_session_type(PurpleMedia *media, const gchar *sess_id); |
|
23697
299bafcd8eb8
Updates voice and video to use Farsight 2, gets XMPP voice conferences
Michael Ruprecht <maiku@pidgin.im>
parents:
22682
diff
changeset
|
404 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
405 | /** |
|
26160
46bc5e18d59c
Combine get_*_codecs functions to mirror Farsight 2.
Michael Ruprecht <maiku@pidgin.im>
parents:
26143
diff
changeset
|
406 | * Gets the codecs from a session. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
407 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
408 | * @param media The media object to find the session in. |
|
26160
46bc5e18d59c
Combine get_*_codecs functions to mirror Farsight 2.
Michael Ruprecht <maiku@pidgin.im>
parents:
26143
diff
changeset
|
409 | * @param sess_id The session id of the session to get the codecs from. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
410 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
411 | * @return The retreieved codecs. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
412 | */ |
|
26160
46bc5e18d59c
Combine get_*_codecs functions to mirror Farsight 2.
Michael Ruprecht <maiku@pidgin.im>
parents:
26143
diff
changeset
|
413 | GList *purple_media_get_codecs(PurpleMedia *media, const gchar *sess_id); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
414 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
415 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
416 | * Adds remote candidates to the stream. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
417 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
418 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
419 | * @param sess_id The session id of the session find the stream in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
420 | * @param name The name of the remote user to add the candidates for. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
421 | * @param remote_candidates The remote candidates to add. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
422 | */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
423 | void purple_media_add_remote_candidates(PurpleMedia *media, |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
424 | const gchar *sess_id, |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
425 | const gchar *name, |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
426 | GList *remote_candidates); |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
427 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
428 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
429 | * Gets the local candidates from a stream. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
430 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
431 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
432 | * @param sess_id The session id of the session to find the stream in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
433 | * @param name The name of the remote user to get the candidates from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
434 | */ |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
435 | GList *purple_media_get_local_candidates(PurpleMedia *media, |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
436 | const gchar *sess_id, |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
437 | const gchar *name); |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
438 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
439 | /** |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
440 | * Gets the active local candidates for the stream. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
441 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
442 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
443 | * @param sess_id The session id of the session to find the stream in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
444 | * @param name The name of the remote user to get the active candidate from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
445 | * |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
446 | * @return The active candidates retrieved. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
447 | */ |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
448 | GList *purple_media_get_active_local_candidates(PurpleMedia *media, |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
449 | const gchar *sess_id, const gchar *name); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
450 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
451 | /** |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
452 | * Gets the active remote candidates for the stream. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
453 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
454 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
455 | * @param sess_id The session id of the session to find the stream in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
456 | * @param name The name of the remote user to get the remote candidate from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
457 | * |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
458 | * @return The remote candidates retrieved. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
459 | */ |
|
26304
6e19bf6af065
Handle having multiple active candidates.
Michael Ruprecht <maiku@pidgin.im>
parents:
26281
diff
changeset
|
460 | GList *purple_media_get_active_remote_candidates(PurpleMedia *media, |
|
26229
3e786c9ebb62
Duplicate FsCandidate to remove it from the public interface.
Michael Ruprecht <maiku@pidgin.im>
parents:
26226
diff
changeset
|
461 | const gchar *sess_id, const gchar *name); |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
462 | |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
463 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
464 | * Gets remote candidates from the stream. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
465 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
466 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
467 | * @param sess_id The session id of the session find the stream in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
468 | * @param name The name of the remote user to get the candidates from. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
469 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
470 | * @return @c TRUE The codecs were set successfully, or @c FALSE otherwise. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
471 | */ |
|
23745
091a506a7018
Added better Farsight error handling.
Michael Ruprecht <maiku@pidgin.im>
parents:
23737
diff
changeset
|
472 | gboolean purple_media_set_remote_codecs(PurpleMedia *media, const gchar *sess_id, |
|
091a506a7018
Added better Farsight error handling.
Michael Ruprecht <maiku@pidgin.im>
parents:
23737
diff
changeset
|
473 | const gchar *name, GList *codecs); |
|
23697
299bafcd8eb8
Updates voice and video to use Farsight 2, gets XMPP voice conferences
Michael Ruprecht <maiku@pidgin.im>
parents:
22682
diff
changeset
|
474 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
475 | /** |
|
26430
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
476 | * Returns whether or not the candidates for set of streams are prepared |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
477 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
478 | * @param media The media object to find the remote user in. |
|
26430
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
479 | * @param session_id The session id of the session to check. |
|
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
480 | * @param participant The remote user to check for. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
481 | * |
|
26430
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
482 | * @return @c TRUE All streams for the given session_id/participant combination have candidates prepared, @c FALSE otherwise. |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
483 | */ |
|
26430
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
484 | gboolean purple_media_candidates_prepared(PurpleMedia *media, |
|
439ade36af30
Change purple_media_candidates_prepared to use wildcards.
Michael Ruprecht <maiku@pidgin.im>
parents:
26328
diff
changeset
|
485 | const gchar *session_id, const gchar *participant); |
|
23730
ed15b42da75c
Jingle sessions now keep track of their transaction state to a degree.
Michael Ruprecht <maiku@pidgin.im>
parents:
23724
diff
changeset
|
486 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
487 | /** |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
488 | * Sets the send codec for the a session. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
489 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
490 | * @param media The media object to find the session in. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
491 | * @param sess_id The session id of the session to set the codec for. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
492 | * @param codec The codec to set the session to stream. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
493 | * |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
494 | * @return @c TRUE The codec was successfully changed, or @c FALSE otherwise. |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
495 | */ |
|
26232
f91c96072586
Wrap FsCodec and remove the Farsight2 include from media.h.
Michael Ruprecht <maiku@pidgin.im>
parents:
26230
diff
changeset
|
496 | gboolean purple_media_set_send_codec(PurpleMedia *media, const gchar *sess_id, PurpleMediaCodec *codec); |
|
26102
881a436d77eb
Set the proper send codec in Farsight.
Michael Ruprecht <maiku@pidgin.im>
parents:
26099
diff
changeset
|
497 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
498 | /** |
|
26137
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
499 | * Gets whether a session's codecs are ready to be used. |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
500 | * |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
501 | * @param media The media object to find the session in. |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
502 | * @param sess_id The session id of the session to check. |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
503 | * |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
504 | * @return @c TRUE The codecs are ready, or @c FALSE otherwise. |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
505 | */ |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
506 | gboolean purple_media_codecs_ready(PurpleMedia *media, const gchar *sess_id); |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
507 | |
|
0688cf5221c9
Wait for Farsight 2's codecs-ready property to be TRUE before using codecs.
Michael Ruprecht <maiku@pidgin.im>
parents:
26135
diff
changeset
|
508 | /** |
|
26267
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
509 | * Gets whether a streams selected have been accepted. |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
510 | * |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
511 | * @param media The media object to find the session in. |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
512 | * @param sess_id The session id of the session to check. |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
513 | * @param participant The participant to check. |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
514 | * |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
515 | * @return @c TRUE The selected streams have been accepted, or @c FALSE otherwise. |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
516 | */ |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
517 | gboolean purple_media_accepted(PurpleMedia *media, const gchar *sess_id, |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
518 | const gchar *participant); |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
519 | |
|
3bd0240f0632
Add the accepted signal and make the accept button go away immediately.
Michael Ruprecht <maiku@pidgin.im>
parents:
26264
diff
changeset
|
520 | /** |
|
26172
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
521 | * Sets the input volume of all the selected sessions. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
522 | * |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
523 | * @param media The media object the sessions are in. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
524 | * @param session_id The session to select (if any). |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
525 | * @param level The level to set the volume to. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
526 | */ |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
527 | void purple_media_set_input_volume(PurpleMedia *media, const gchar *session_id, double level); |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
528 | |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
529 | /** |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
530 | * Sets the output volume of all the selected streams. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
531 | * |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
532 | * @param media The media object the streams are in. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
533 | * @param session_id The session to limit the streams to (if any). |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
534 | * @param participant The participant to limit the streams to (if any). |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
535 | * @param level The level to set the volume to. |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
536 | */ |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
537 | void purple_media_set_output_volume(PurpleMedia *media, const gchar *session_id, |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
538 | const gchar *participant, double level); |
|
b14249e42983
Added media functions to set input and output volume.
Michael Ruprecht <maiku@pidgin.im>
parents:
26162
diff
changeset
|
539 | |
|
26453
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
540 | /** |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
541 | * Sets a video output window for the given session/stream. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
542 | * |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
543 | * @param media The media instance to set the output window on. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
544 | * @param session_id The session to set the output window on. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
545 | * @param participant Optionally, the participant to set the output window on. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
546 | * @param window_id The window id use for embedding the video in. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
547 | * |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
548 | * @return An id to reference the output window. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
549 | */ |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26316
diff
changeset
|
550 | gulong purple_media_set_output_window(PurpleMedia *media, |
|
26259
0983517fc75f
Wait to create the sinks until the frames are ready.
Michael Ruprecht <maiku@pidgin.im>
parents:
26248
diff
changeset
|
551 | const gchar *session_id, const gchar *participant, |
|
0983517fc75f
Wait to create the sinks until the frames are ready.
Michael Ruprecht <maiku@pidgin.im>
parents:
26248
diff
changeset
|
552 | gulong window_id); |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26316
diff
changeset
|
553 | |
|
26453
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
554 | /** |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
555 | * Removes all output windows from a given media session. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
556 | * |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
557 | * @param media The instance to remove all output windows from. |
|
41db8e31e6ff
Add documentation for a few media functions.
Michael Ruprecht <maiku@pidgin.im>
parents:
26452
diff
changeset
|
558 | */ |
|
26323
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26316
diff
changeset
|
559 | void purple_media_remove_output_windows(PurpleMedia *media); |
|
cf93de98325c
Only create output windows once there's data to be output.
Michael Ruprecht <maiku@pidgin.im>
parents:
26316
diff
changeset
|
560 | |
|
26105
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
561 | #ifdef __cplusplus |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
562 | } |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
563 | #endif |
|
7647c0dcf202
* Added documentation to media.h and mediamanager.h
Michael Ruprecht <maiku@pidgin.im>
parents:
26103
diff
changeset
|
564 | |
| 19883 | 565 | G_END_DECLS |
| 566 | ||
| 567 | #endif /* __MEDIA_H_ */ |