| OLD | NEW |
| 1 /* | 1 /* |
| 2 * libjingle | 2 * libjingle |
| 3 * Copyright 2012 Google Inc. | 3 * Copyright 2012 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 61 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 72 #include <vector> | 72 #include <vector> |
| 73 | 73 |
| 74 #include "talk/app/webrtc/datachannelinterface.h" | 74 #include "talk/app/webrtc/datachannelinterface.h" |
| 75 #include "talk/app/webrtc/dtmfsenderinterface.h" | 75 #include "talk/app/webrtc/dtmfsenderinterface.h" |
| 76 #include "talk/app/webrtc/jsep.h" | 76 #include "talk/app/webrtc/jsep.h" |
| 77 #include "talk/app/webrtc/mediastreaminterface.h" | 77 #include "talk/app/webrtc/mediastreaminterface.h" |
| 78 #include "talk/app/webrtc/statstypes.h" | 78 #include "talk/app/webrtc/statstypes.h" |
| 79 #include "talk/app/webrtc/umametrics.h" | 79 #include "talk/app/webrtc/umametrics.h" |
| 80 #include "webrtc/base/fileutils.h" | 80 #include "webrtc/base/fileutils.h" |
| 81 #include "webrtc/base/network.h" | 81 #include "webrtc/base/network.h" |
| 82 #include "webrtc/base/sslidentity.h" |
| 82 #include "webrtc/base/sslstreamadapter.h" | 83 #include "webrtc/base/sslstreamadapter.h" |
| 83 #include "webrtc/base/socketaddress.h" | 84 #include "webrtc/base/socketaddress.h" |
| 84 | 85 |
| 85 namespace rtc { | 86 namespace rtc { |
| 86 class SSLIdentity; | 87 class SSLIdentity; |
| 87 class Thread; | 88 class Thread; |
| 88 } | 89 } |
| 89 | 90 |
| 90 namespace cricket { | 91 namespace cricket { |
| 91 class PortAllocator; | 92 class PortAllocator; |
| (...skipping 448 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 540 | 541 |
| 541 virtual void SetOptions(const Options& options) = 0; | 542 virtual void SetOptions(const Options& options) = 0; |
| 542 | 543 |
| 543 // This method takes the ownership of |dtls_identity_service|. | 544 // This method takes the ownership of |dtls_identity_service|. |
| 544 virtual rtc::scoped_refptr<PeerConnectionInterface> | 545 virtual rtc::scoped_refptr<PeerConnectionInterface> |
| 545 CreatePeerConnection( | 546 CreatePeerConnection( |
| 546 const PeerConnectionInterface::RTCConfiguration& configuration, | 547 const PeerConnectionInterface::RTCConfiguration& configuration, |
| 547 const MediaConstraintsInterface* constraints, | 548 const MediaConstraintsInterface* constraints, |
| 548 PortAllocatorFactoryInterface* allocator_factory, | 549 PortAllocatorFactoryInterface* allocator_factory, |
| 549 DTLSIdentityServiceInterface* dtls_identity_service, | 550 DTLSIdentityServiceInterface* dtls_identity_service, |
| 551 rtc::KeyType key_type, |
| 550 PeerConnectionObserver* observer) = 0; | 552 PeerConnectionObserver* observer) = 0; |
| 551 | 553 |
| 552 // TODO(mallinath) : Remove below versions after clients are updated | 554 // TODO(mallinath) : Remove below versions after clients are updated |
| 553 // to above method. | 555 // to above method. |
| 554 // In latest W3C WebRTC draft, PC constructor will take RTCConfiguration, | 556 // In latest W3C WebRTC draft, PC constructor will take RTCConfiguration, |
| 555 // and not IceServers. RTCConfiguration is made up of ice servers and | 557 // and not IceServers. RTCConfiguration is made up of ice servers and |
| 556 // ice transport type. | 558 // ice transport type. |
| 557 // http://dev.w3.org/2011/webrtc/editor/webrtc.html | 559 // http://dev.w3.org/2011/webrtc/editor/webrtc.html |
| 558 inline rtc::scoped_refptr<PeerConnectionInterface> | 560 inline rtc::scoped_refptr<PeerConnectionInterface> |
| 559 CreatePeerConnection( | 561 CreatePeerConnection( |
| 560 const PeerConnectionInterface::IceServers& servers, | 562 const PeerConnectionInterface::IceServers& servers, |
| 561 const MediaConstraintsInterface* constraints, | 563 const MediaConstraintsInterface* constraints, |
| 562 PortAllocatorFactoryInterface* allocator_factory, | 564 PortAllocatorFactoryInterface* allocator_factory, |
| 563 DTLSIdentityServiceInterface* dtls_identity_service, | 565 DTLSIdentityServiceInterface* dtls_identity_service, |
| 566 rtc::KeyType key_type, |
| 567 PeerConnectionObserver* observer) { |
| 568 PeerConnectionInterface::RTCConfiguration rtc_config; |
| 569 rtc_config.servers = servers; |
| 570 return CreatePeerConnection(rtc_config, constraints, allocator_factory, |
| 571 dtls_identity_service, key_type, observer); |
| 572 } |
| 573 |
| 574 // TODO(hbos): Remove once chromium uses CreatePeerConnection with KeyType. |
| 575 inline rtc::scoped_refptr<PeerConnectionInterface> |
| 576 CreatePeerConnection( |
| 577 const PeerConnectionInterface::RTCConfiguration& configuration, |
| 578 const MediaConstraintsInterface* constraints, |
| 579 PortAllocatorFactoryInterface* allocator_factory, |
| 580 DTLSIdentityServiceInterface* dtls_identity_service, |
| 564 PeerConnectionObserver* observer) { | 581 PeerConnectionObserver* observer) { |
| 565 PeerConnectionInterface::RTCConfiguration rtc_config; | 582 return CreatePeerConnection(configuration, constraints, allocator_factory, |
| 566 rtc_config.servers = servers; | 583 dtls_identity_service, rtc::KT_DEFAULT, |
| 567 return CreatePeerConnection(rtc_config, constraints, allocator_factory, | 584 observer); |
| 568 dtls_identity_service, observer); | 585 } |
| 586 // TODO(hbos): Remove once chromium uses CreatePeerConnection with KeyType. |
| 587 inline rtc::scoped_refptr<PeerConnectionInterface> |
| 588 CreatePeerConnection( |
| 589 const PeerConnectionInterface::IceServers& servers, |
| 590 const MediaConstraintsInterface* constraints, |
| 591 PortAllocatorFactoryInterface* allocator_factory, |
| 592 DTLSIdentityServiceInterface* dtls_identity_service, |
| 593 PeerConnectionObserver* observer) { |
| 594 return CreatePeerConnection(servers, constraints, allocator_factory, |
| 595 dtls_identity_service, rtc::KT_DEFAULT, |
| 596 observer); |
| 569 } | 597 } |
| 570 | 598 |
| 571 virtual rtc::scoped_refptr<MediaStreamInterface> | 599 virtual rtc::scoped_refptr<MediaStreamInterface> |
| 572 CreateLocalMediaStream(const std::string& label) = 0; | 600 CreateLocalMediaStream(const std::string& label) = 0; |
| 573 | 601 |
| 574 // Creates a AudioSourceInterface. | 602 // Creates a AudioSourceInterface. |
| 575 // |constraints| decides audio processing settings but can be NULL. | 603 // |constraints| decides audio processing settings but can be NULL. |
| 576 virtual rtc::scoped_refptr<AudioSourceInterface> CreateAudioSource( | 604 virtual rtc::scoped_refptr<AudioSourceInterface> CreateAudioSource( |
| 577 const MediaConstraintsInterface* constraints) = 0; | 605 const MediaConstraintsInterface* constraints) = 0; |
| 578 | 606 |
| (...skipping 40 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 619 CreatePeerConnectionFactory( | 647 CreatePeerConnectionFactory( |
| 620 rtc::Thread* worker_thread, | 648 rtc::Thread* worker_thread, |
| 621 rtc::Thread* signaling_thread, | 649 rtc::Thread* signaling_thread, |
| 622 AudioDeviceModule* default_adm, | 650 AudioDeviceModule* default_adm, |
| 623 cricket::WebRtcVideoEncoderFactory* encoder_factory, | 651 cricket::WebRtcVideoEncoderFactory* encoder_factory, |
| 624 cricket::WebRtcVideoDecoderFactory* decoder_factory); | 652 cricket::WebRtcVideoDecoderFactory* decoder_factory); |
| 625 | 653 |
| 626 } // namespace webrtc | 654 } // namespace webrtc |
| 627 | 655 |
| 628 #endif // TALK_APP_WEBRTC_PEERCONNECTIONINTERFACE_H_ | 656 #endif // TALK_APP_WEBRTC_PEERCONNECTIONINTERFACE_H_ |
| OLD | NEW |