OLD | NEW |
1 /* | 1 /* |
2 * libjingle | 2 * libjingle |
3 * Copyright 2004 Google Inc. | 3 * Copyright 2004 Google Inc. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions are met: | 6 * modification, are permitted provided that the following conditions are met: |
7 * | 7 * |
8 * 1. Redistributions of source code must retain the above copyright notice, | 8 * 1. Redistributions of source code must retain the above copyright notice, |
9 * this list of conditions and the following disclaimer. | 9 * this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright notice, | 10 * 2. Redistributions in binary form must reproduce the above copyright notice, |
(...skipping 1079 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1090 // Returns if the telephone-event has been negotiated. | 1090 // Returns if the telephone-event has been negotiated. |
1091 virtual bool CanInsertDtmf() { return false; } | 1091 virtual bool CanInsertDtmf() { return false; } |
1092 // Send and/or play a DTMF |event| according to the |flags|. | 1092 // Send and/or play a DTMF |event| according to the |flags|. |
1093 // The DTMF out-of-band signal will be used on sending. | 1093 // The DTMF out-of-band signal will be used on sending. |
1094 // The |ssrc| should be either 0 or a valid send stream ssrc. | 1094 // The |ssrc| should be either 0 or a valid send stream ssrc. |
1095 // The valid value for the |event| are 0 to 15 which corresponding to | 1095 // The valid value for the |event| are 0 to 15 which corresponding to |
1096 // DTMF event 0-9, *, #, A-D. | 1096 // DTMF event 0-9, *, #, A-D. |
1097 virtual bool InsertDtmf(uint32 ssrc, int event, int duration, int flags) = 0; | 1097 virtual bool InsertDtmf(uint32 ssrc, int event, int duration, int flags) = 0; |
1098 // Gets quality stats for the channel. | 1098 // Gets quality stats for the channel. |
1099 virtual bool GetStats(VoiceMediaInfo* info) = 0; | 1099 virtual bool GetStats(VoiceMediaInfo* info) = 0; |
1100 // Gets last reported error for this media channel. | |
1101 virtual void GetLastMediaError(uint32* ssrc, | |
1102 VoiceMediaChannel::Error* error) { | |
1103 ASSERT(error != NULL); | |
1104 *error = ERROR_NONE; | |
1105 } | |
1106 | |
1107 // Signal errors from MediaChannel. Arguments are: | |
1108 // ssrc(uint32), and error(VoiceMediaChannel::Error). | |
1109 sigslot::signal2<uint32, VoiceMediaChannel::Error> SignalMediaError; | |
1110 }; | 1100 }; |
1111 | 1101 |
1112 struct VideoSendParameters : RtpSendParameters<VideoCodec, VideoOptions> { | 1102 struct VideoSendParameters : RtpSendParameters<VideoCodec, VideoOptions> { |
1113 }; | 1103 }; |
1114 | 1104 |
1115 struct VideoRecvParameters : RtpParameters<VideoCodec> { | 1105 struct VideoRecvParameters : RtpParameters<VideoCodec> { |
1116 }; | 1106 }; |
1117 | 1107 |
1118 class VideoMediaChannel : public MediaChannel { | 1108 class VideoMediaChannel : public MediaChannel { |
1119 public: | 1109 public: |
(...skipping 33 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1153 // |capturer|. If |ssrc| is non zero create a new stream with |ssrc| as SSRC. | 1143 // |capturer|. If |ssrc| is non zero create a new stream with |ssrc| as SSRC. |
1154 virtual bool SetCapturer(uint32 ssrc, VideoCapturer* capturer) = 0; | 1144 virtual bool SetCapturer(uint32 ssrc, VideoCapturer* capturer) = 0; |
1155 // Gets quality stats for the channel. | 1145 // Gets quality stats for the channel. |
1156 virtual bool GetStats(VideoMediaInfo* info) = 0; | 1146 virtual bool GetStats(VideoMediaInfo* info) = 0; |
1157 // Send an intra frame to the receivers. | 1147 // Send an intra frame to the receivers. |
1158 virtual bool SendIntraFrame() = 0; | 1148 virtual bool SendIntraFrame() = 0; |
1159 // Reuqest each of the remote senders to send an intra frame. | 1149 // Reuqest each of the remote senders to send an intra frame. |
1160 virtual bool RequestIntraFrame() = 0; | 1150 virtual bool RequestIntraFrame() = 0; |
1161 virtual void UpdateAspectRatio(int ratio_w, int ratio_h) = 0; | 1151 virtual void UpdateAspectRatio(int ratio_w, int ratio_h) = 0; |
1162 | 1152 |
1163 // Signal errors from MediaChannel. Arguments are: | |
1164 // ssrc(uint32), and error(VideoMediaChannel::Error). | |
1165 sigslot::signal2<uint32, Error> SignalMediaError; | |
1166 | |
1167 protected: | 1153 protected: |
1168 VideoRenderer *renderer_; | 1154 VideoRenderer *renderer_; |
1169 }; | 1155 }; |
1170 | 1156 |
1171 enum DataMessageType { | 1157 enum DataMessageType { |
1172 // Chrome-Internal use only. See SctpDataMediaChannel for the actual PPID | 1158 // Chrome-Internal use only. See SctpDataMediaChannel for the actual PPID |
1173 // values. | 1159 // values. |
1174 DMT_NONE = 0, | 1160 DMT_NONE = 0, |
1175 DMT_CONTROL = 1, | 1161 DMT_CONTROL = 1, |
1176 DMT_BINARY = 2, | 1162 DMT_BINARY = 2, |
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1279 virtual bool SetReceive(bool receive) = 0; | 1265 virtual bool SetReceive(bool receive) = 0; |
1280 | 1266 |
1281 virtual bool SendData( | 1267 virtual bool SendData( |
1282 const SendDataParams& params, | 1268 const SendDataParams& params, |
1283 const rtc::Buffer& payload, | 1269 const rtc::Buffer& payload, |
1284 SendDataResult* result = NULL) = 0; | 1270 SendDataResult* result = NULL) = 0; |
1285 // Signals when data is received (params, data, len) | 1271 // Signals when data is received (params, data, len) |
1286 sigslot::signal3<const ReceiveDataParams&, | 1272 sigslot::signal3<const ReceiveDataParams&, |
1287 const char*, | 1273 const char*, |
1288 size_t> SignalDataReceived; | 1274 size_t> SignalDataReceived; |
1289 // Signal errors from MediaChannel. Arguments are: | |
1290 // ssrc(uint32), and error(DataMediaChannel::Error). | |
1291 sigslot::signal2<uint32, DataMediaChannel::Error> SignalMediaError; | |
1292 // Signal when the media channel is ready to send the stream. Arguments are: | 1275 // Signal when the media channel is ready to send the stream. Arguments are: |
1293 // writable(bool) | 1276 // writable(bool) |
1294 sigslot::signal1<bool> SignalReadyToSend; | 1277 sigslot::signal1<bool> SignalReadyToSend; |
1295 // Signal for notifying that the remote side has closed the DataChannel. | 1278 // Signal for notifying that the remote side has closed the DataChannel. |
1296 sigslot::signal1<uint32> SignalStreamClosedRemotely; | 1279 sigslot::signal1<uint32> SignalStreamClosedRemotely; |
1297 }; | 1280 }; |
1298 | 1281 |
1299 } // namespace cricket | 1282 } // namespace cricket |
1300 | 1283 |
1301 #endif // TALK_MEDIA_BASE_MEDIACHANNEL_H_ | 1284 #endif // TALK_MEDIA_BASE_MEDIACHANNEL_H_ |
OLD | NEW |