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