| 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 149 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 160 int num_sim_layers; | 160 int num_sim_layers; |
| 161 }; | 161 }; |
| 162 | 162 |
| 163 typedef std::vector<Stream> Streams; | 163 typedef std::vector<Stream> Streams; |
| 164 Streams streams; | 164 Streams streams; |
| 165 }; | 165 }; |
| 166 | 166 |
| 167 // "content" (as used in XEP-0166) descriptions for voice and video. | 167 // "content" (as used in XEP-0166) descriptions for voice and video. |
| 168 class MediaContentDescription : public ContentDescription { | 168 class MediaContentDescription : public ContentDescription { |
| 169 public: | 169 public: |
| 170 MediaContentDescription() | 170 MediaContentDescription() {} |
| 171 : rtcp_mux_(false), | |
| 172 bandwidth_(kAutoBandwidth), | |
| 173 crypto_required_(CT_NONE), | |
| 174 rtp_header_extensions_set_(false), | |
| 175 multistream_(false), | |
| 176 conference_mode_(false), | |
| 177 partial_(false), | |
| 178 buffered_mode_latency_(kBufferedModeDisabled), | |
| 179 direction_(MD_SENDRECV) { | |
| 180 } | |
| 181 | 171 |
| 182 virtual MediaType type() const = 0; | 172 virtual MediaType type() const = 0; |
| 183 virtual bool has_codecs() const = 0; | 173 virtual bool has_codecs() const = 0; |
| 184 | 174 |
| 185 // |protocol| is the expected media transport protocol, such as RTP/AVPF, | 175 // |protocol| is the expected media transport protocol, such as RTP/AVPF, |
| 186 // RTP/SAVPF or SCTP/DTLS. | 176 // RTP/SAVPF or SCTP/DTLS. |
| 187 std::string protocol() const { return protocol_; } | 177 std::string protocol() const { return protocol_; } |
| 188 void set_protocol(const std::string& protocol) { protocol_ = protocol; } | 178 void set_protocol(const std::string& protocol) { protocol_ = protocol; } |
| 189 | 179 |
| 190 MediaContentDirection direction() const { return direction_; } | 180 MediaContentDirection direction() const { return direction_; } |
| 191 void set_direction(MediaContentDirection direction) { | 181 void set_direction(MediaContentDirection direction) { |
| 192 direction_ = direction; | 182 direction_ = direction; |
| 193 } | 183 } |
| 194 | 184 |
| 195 bool rtcp_mux() const { return rtcp_mux_; } | 185 bool rtcp_mux() const { return rtcp_mux_; } |
| 196 void set_rtcp_mux(bool mux) { rtcp_mux_ = mux; } | 186 void set_rtcp_mux(bool mux) { rtcp_mux_ = mux; } |
| 197 | 187 |
| 188 bool rtcp_reduced_size() const { return rtcp_reduced_size_; } |
| 189 void set_rtcp_reduced_size(bool reduced_size) { |
| 190 rtcp_reduced_size_ = reduced_size; |
| 191 } |
| 192 |
| 198 int bandwidth() const { return bandwidth_; } | 193 int bandwidth() const { return bandwidth_; } |
| 199 void set_bandwidth(int bandwidth) { bandwidth_ = bandwidth; } | 194 void set_bandwidth(int bandwidth) { bandwidth_ = bandwidth; } |
| 200 | 195 |
| 201 const std::vector<CryptoParams>& cryptos() const { return cryptos_; } | 196 const std::vector<CryptoParams>& cryptos() const { return cryptos_; } |
| 202 void AddCrypto(const CryptoParams& params) { | 197 void AddCrypto(const CryptoParams& params) { |
| 203 cryptos_.push_back(params); | 198 cryptos_.push_back(params); |
| 204 } | 199 } |
| 205 void set_cryptos(const std::vector<CryptoParams>& cryptos) { | 200 void set_cryptos(const std::vector<CryptoParams>& cryptos) { |
| 206 cryptos_ = cryptos; | 201 cryptos_ = cryptos; |
| 207 } | 202 } |
| (...skipping 76 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 284 | 279 |
| 285 void set_partial(bool partial) { partial_ = partial; } | 280 void set_partial(bool partial) { partial_ = partial; } |
| 286 bool partial() const { return partial_; } | 281 bool partial() const { return partial_; } |
| 287 | 282 |
| 288 void set_buffered_mode_latency(int latency) { | 283 void set_buffered_mode_latency(int latency) { |
| 289 buffered_mode_latency_ = latency; | 284 buffered_mode_latency_ = latency; |
| 290 } | 285 } |
| 291 int buffered_mode_latency() const { return buffered_mode_latency_; } | 286 int buffered_mode_latency() const { return buffered_mode_latency_; } |
| 292 | 287 |
| 293 protected: | 288 protected: |
| 294 bool rtcp_mux_; | 289 bool rtcp_mux_ = false; |
| 295 int bandwidth_; | 290 bool rtcp_reduced_size_ = false; |
| 291 int bandwidth_ = kAutoBandwidth; |
| 296 std::string protocol_; | 292 std::string protocol_; |
| 297 std::vector<CryptoParams> cryptos_; | 293 std::vector<CryptoParams> cryptos_; |
| 298 CryptoType crypto_required_; | 294 CryptoType crypto_required_ = CT_NONE; |
| 299 std::vector<RtpHeaderExtension> rtp_header_extensions_; | 295 std::vector<RtpHeaderExtension> rtp_header_extensions_; |
| 300 bool rtp_header_extensions_set_; | 296 bool rtp_header_extensions_set_ = false; |
| 301 bool multistream_; | 297 bool multistream_ = false; |
| 302 StreamParamsVec streams_; | 298 StreamParamsVec streams_; |
| 303 bool conference_mode_; | 299 bool conference_mode_ = false; |
| 304 bool partial_; | 300 bool partial_ = false; |
| 305 int buffered_mode_latency_; | 301 int buffered_mode_latency_ = kBufferedModeDisabled; |
| 306 MediaContentDirection direction_; | 302 MediaContentDirection direction_ = MD_SENDRECV; |
| 307 }; | 303 }; |
| 308 | 304 |
| 309 template <class C> | 305 template <class C> |
| 310 class MediaContentDescriptionImpl : public MediaContentDescription { | 306 class MediaContentDescriptionImpl : public MediaContentDescription { |
| 311 public: | 307 public: |
| 312 struct PreferenceSort { | 308 struct PreferenceSort { |
| 313 bool operator()(C a, C b) { return a.preference > b.preference; } | 309 bool operator()(C a, C b) { return a.preference > b.preference; } |
| 314 }; | 310 }; |
| 315 | 311 |
| 316 const std::vector<C>& codecs() const { return codecs_; } | 312 const std::vector<C>& codecs() const { return codecs_; } |
| (...skipping 239 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 556 void GetSupportedVideoCryptoSuiteNames( | 552 void GetSupportedVideoCryptoSuiteNames( |
| 557 std::vector<std::string>* crypto_suite_names); | 553 std::vector<std::string>* crypto_suite_names); |
| 558 void GetSupportedDataCryptoSuiteNames( | 554 void GetSupportedDataCryptoSuiteNames( |
| 559 std::vector<std::string>* crypto_suite_names); | 555 std::vector<std::string>* crypto_suite_names); |
| 560 void GetDefaultSrtpCryptoSuiteNames( | 556 void GetDefaultSrtpCryptoSuiteNames( |
| 561 std::vector<std::string>* crypto_suite_names); | 557 std::vector<std::string>* crypto_suite_names); |
| 562 | 558 |
| 563 } // namespace cricket | 559 } // namespace cricket |
| 564 | 560 |
| 565 #endif // TALK_SESSION_MEDIA_MEDIASESSION_H_ | 561 #endif // TALK_SESSION_MEDIA_MEDIASESSION_H_ |
| OLD | NEW |