| 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 13 matching lines...) Expand all Loading... |
| 24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF | 24 * OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF |
| 25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. | 25 * ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 26 */ | 26 */ |
| 27 | 27 |
| 28 // Types and classes used in media session descriptions. | 28 // Types and classes used in media session descriptions. |
| 29 | 29 |
| 30 #ifndef TALK_SESSION_MEDIA_MEDIASESSION_H_ | 30 #ifndef TALK_SESSION_MEDIA_MEDIASESSION_H_ |
| 31 #define TALK_SESSION_MEDIA_MEDIASESSION_H_ | 31 #define TALK_SESSION_MEDIA_MEDIASESSION_H_ |
| 32 | 32 |
| 33 #include <algorithm> | 33 #include <algorithm> |
| 34 #include <map> |
| 34 #include <string> | 35 #include <string> |
| 35 #include <vector> | 36 #include <vector> |
| 36 | 37 |
| 37 #include "webrtc/base/scoped_ptr.h" | 38 #include "webrtc/base/scoped_ptr.h" |
| 38 #include "webrtc/media/base/codec.h" | 39 #include "webrtc/media/base/codec.h" |
| 39 #include "webrtc/media/base/constants.h" | 40 #include "webrtc/media/base/constants.h" |
| 40 #include "webrtc/media/base/cryptoparams.h" | 41 #include "webrtc/media/base/cryptoparams.h" |
| 41 #include "webrtc/media/base/mediachannel.h" | 42 #include "webrtc/media/base/mediachannel.h" |
| 42 #include "webrtc/media/base/mediaengine.h" // For DataChannelType | 43 #include "webrtc/media/base/mediaengine.h" // For DataChannelType |
| 43 #include "webrtc/media/base/streamparams.h" | 44 #include "webrtc/media/base/streamparams.h" |
| (...skipping 97 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 141 bool recv_audio; | 142 bool recv_audio; |
| 142 bool recv_video; | 143 bool recv_video; |
| 143 DataChannelType data_channel_type; | 144 DataChannelType data_channel_type; |
| 144 bool is_muc; | 145 bool is_muc; |
| 145 bool vad_enabled; | 146 bool vad_enabled; |
| 146 bool rtcp_mux_enabled; | 147 bool rtcp_mux_enabled; |
| 147 bool bundle_enabled; | 148 bool bundle_enabled; |
| 148 // bps. -1 == auto. | 149 // bps. -1 == auto. |
| 149 int video_bandwidth; | 150 int video_bandwidth; |
| 150 int data_bandwidth; | 151 int data_bandwidth; |
| 151 TransportOptions audio_transport_options; | 152 // content name ("mid") => options. |
| 152 TransportOptions video_transport_options; | 153 std::map<std::string, TransportOptions> transport_options; |
| 153 TransportOptions data_transport_options; | |
| 154 | 154 |
| 155 struct Stream { | 155 struct Stream { |
| 156 Stream(MediaType type, | 156 Stream(MediaType type, |
| 157 const std::string& id, | 157 const std::string& id, |
| 158 const std::string& sync_label, | 158 const std::string& sync_label, |
| 159 int num_sim_layers) | 159 int num_sim_layers) |
| 160 : type(type), id(id), sync_label(sync_label), | 160 : type(type), id(id), sync_label(sync_label), |
| 161 num_sim_layers(num_sim_layers) { | 161 num_sim_layers(num_sim_layers) { |
| 162 } | 162 } |
| 163 MediaType type; | 163 MediaType type; |
| (...skipping 365 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 529 bool add_legacy_; | 529 bool add_legacy_; |
| 530 std::string lang_; | 530 std::string lang_; |
| 531 const TransportDescriptionFactory* transport_desc_factory_; | 531 const TransportDescriptionFactory* transport_desc_factory_; |
| 532 }; | 532 }; |
| 533 | 533 |
| 534 // Convenience functions. | 534 // Convenience functions. |
| 535 bool IsMediaContent(const ContentInfo* content); | 535 bool IsMediaContent(const ContentInfo* content); |
| 536 bool IsAudioContent(const ContentInfo* content); | 536 bool IsAudioContent(const ContentInfo* content); |
| 537 bool IsVideoContent(const ContentInfo* content); | 537 bool IsVideoContent(const ContentInfo* content); |
| 538 bool IsDataContent(const ContentInfo* content); | 538 bool IsDataContent(const ContentInfo* content); |
| 539 const ContentInfo* GetFirstMediaContent(const ContentInfos& contents, |
| 540 MediaType media_type); |
| 539 const ContentInfo* GetFirstAudioContent(const ContentInfos& contents); | 541 const ContentInfo* GetFirstAudioContent(const ContentInfos& contents); |
| 540 const ContentInfo* GetFirstVideoContent(const ContentInfos& contents); | 542 const ContentInfo* GetFirstVideoContent(const ContentInfos& contents); |
| 541 const ContentInfo* GetFirstDataContent(const ContentInfos& contents); | 543 const ContentInfo* GetFirstDataContent(const ContentInfos& contents); |
| 542 const ContentInfo* GetFirstAudioContent(const SessionDescription* sdesc); | 544 const ContentInfo* GetFirstAudioContent(const SessionDescription* sdesc); |
| 543 const ContentInfo* GetFirstVideoContent(const SessionDescription* sdesc); | 545 const ContentInfo* GetFirstVideoContent(const SessionDescription* sdesc); |
| 544 const ContentInfo* GetFirstDataContent(const SessionDescription* sdesc); | 546 const ContentInfo* GetFirstDataContent(const SessionDescription* sdesc); |
| 545 const AudioContentDescription* GetFirstAudioContentDescription( | 547 const AudioContentDescription* GetFirstAudioContentDescription( |
| 546 const SessionDescription* sdesc); | 548 const SessionDescription* sdesc); |
| 547 const VideoContentDescription* GetFirstVideoContentDescription( | 549 const VideoContentDescription* GetFirstVideoContentDescription( |
| 548 const SessionDescription* sdesc); | 550 const SessionDescription* sdesc); |
| 549 const DataContentDescription* GetFirstDataContentDescription( | 551 const DataContentDescription* GetFirstDataContentDescription( |
| 550 const SessionDescription* sdesc); | 552 const SessionDescription* sdesc); |
| 551 | 553 |
| 552 void GetSupportedAudioCryptoSuites(std::vector<int>* crypto_suites); | 554 void GetSupportedAudioCryptoSuites(std::vector<int>* crypto_suites); |
| 553 void GetSupportedVideoCryptoSuites(std::vector<int>* crypto_suites); | 555 void GetSupportedVideoCryptoSuites(std::vector<int>* crypto_suites); |
| 554 void GetSupportedDataCryptoSuites(std::vector<int>* crypto_suites); | 556 void GetSupportedDataCryptoSuites(std::vector<int>* crypto_suites); |
| 555 void GetDefaultSrtpCryptoSuites(std::vector<int>* crypto_suites); | 557 void GetDefaultSrtpCryptoSuites(std::vector<int>* crypto_suites); |
| 556 void GetSupportedAudioCryptoSuiteNames( | 558 void GetSupportedAudioCryptoSuiteNames( |
| 557 std::vector<std::string>* crypto_suite_names); | 559 std::vector<std::string>* crypto_suite_names); |
| 558 void GetSupportedVideoCryptoSuiteNames( | 560 void GetSupportedVideoCryptoSuiteNames( |
| 559 std::vector<std::string>* crypto_suite_names); | 561 std::vector<std::string>* crypto_suite_names); |
| 560 void GetSupportedDataCryptoSuiteNames( | 562 void GetSupportedDataCryptoSuiteNames( |
| 561 std::vector<std::string>* crypto_suite_names); | 563 std::vector<std::string>* crypto_suite_names); |
| 562 void GetDefaultSrtpCryptoSuiteNames( | 564 void GetDefaultSrtpCryptoSuiteNames( |
| 563 std::vector<std::string>* crypto_suite_names); | 565 std::vector<std::string>* crypto_suite_names); |
| 564 | 566 |
| 565 } // namespace cricket | 567 } // namespace cricket |
| 566 | 568 |
| 567 #endif // TALK_SESSION_MEDIA_MEDIASESSION_H_ | 569 #endif // TALK_SESSION_MEDIA_MEDIASESSION_H_ |
| OLD | NEW |