Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(63)

Side by Side Diff: talk/session/media/channel.h

Issue 1458023002: Reland Convert internal representation of Srtp cryptos from string to int (Closed) Base URL: https://chromium.googlesource.com/external/webrtc@master
Patch Set: Created 5 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
« no previous file with comments | « talk/media/base/cryptoparams.h ('k') | talk/session/media/channel.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
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 218 matching lines...) Expand 10 before | Expand all | Expand 10 after
229 void ChannelNotWritable_w(); 229 void ChannelNotWritable_w();
230 bool AddRecvStream_w(const StreamParams& sp); 230 bool AddRecvStream_w(const StreamParams& sp);
231 bool RemoveRecvStream_w(uint32_t ssrc); 231 bool RemoveRecvStream_w(uint32_t ssrc);
232 bool AddSendStream_w(const StreamParams& sp); 232 bool AddSendStream_w(const StreamParams& sp);
233 bool RemoveSendStream_w(uint32_t ssrc); 233 bool RemoveSendStream_w(uint32_t ssrc);
234 virtual bool ShouldSetupDtlsSrtp() const; 234 virtual bool ShouldSetupDtlsSrtp() const;
235 // Do the DTLS key expansion and impose it on the SRTP/SRTCP filters. 235 // Do the DTLS key expansion and impose it on the SRTP/SRTCP filters.
236 // |rtcp_channel| indicates whether to set up the RTP or RTCP filter. 236 // |rtcp_channel| indicates whether to set up the RTP or RTCP filter.
237 bool SetupDtlsSrtp(bool rtcp_channel); 237 bool SetupDtlsSrtp(bool rtcp_channel);
238 // Set the DTLS-SRTP cipher policy on this channel as appropriate. 238 // Set the DTLS-SRTP cipher policy on this channel as appropriate.
239 bool SetDtlsSrtpCiphers(TransportChannel *tc, bool rtcp); 239 bool SetDtlsSrtpCryptoSuites(TransportChannel* tc, bool rtcp);
240 240
241 virtual void ChangeState() = 0; 241 virtual void ChangeState() = 0;
242 242
243 // Gets the content info appropriate to the channel (audio or video). 243 // Gets the content info appropriate to the channel (audio or video).
244 virtual const ContentInfo* GetFirstContent( 244 virtual const ContentInfo* GetFirstContent(
245 const SessionDescription* sdesc) = 0; 245 const SessionDescription* sdesc) = 0;
246 bool UpdateLocalStreams_w(const std::vector<StreamParams>& streams, 246 bool UpdateLocalStreams_w(const std::vector<StreamParams>& streams,
247 ContentAction action, 247 ContentAction action,
248 std::string* error_desc); 248 std::string* error_desc);
249 bool UpdateRemoteStreams_w(const std::vector<StreamParams>& streams, 249 bool UpdateRemoteStreams_w(const std::vector<StreamParams>& streams,
(...skipping 25 matching lines...) Expand all
275 void ActivateRtcpMux_w(); 275 void ActivateRtcpMux_w();
276 bool SetRtcpMux_w(bool enable, 276 bool SetRtcpMux_w(bool enable,
277 ContentAction action, 277 ContentAction action,
278 ContentSource src, 278 ContentSource src,
279 std::string* error_desc); 279 std::string* error_desc);
280 280
281 // From MessageHandler 281 // From MessageHandler
282 void OnMessage(rtc::Message* pmsg) override; 282 void OnMessage(rtc::Message* pmsg) override;
283 283
284 // Handled in derived classes 284 // Handled in derived classes
285 // Get the SRTP ciphers to use for RTP media 285 // Get the SRTP crypto suites to use for RTP media
286 virtual void GetSrtpCryptoSuiteNames( 286 virtual void GetSrtpCryptoSuites(std::vector<int>* crypto_suites) const = 0;
287 std::vector<std::string>* ciphers) const = 0;
288 virtual void OnConnectionMonitorUpdate(ConnectionMonitor* monitor, 287 virtual void OnConnectionMonitorUpdate(ConnectionMonitor* monitor,
289 const std::vector<ConnectionInfo>& infos) = 0; 288 const std::vector<ConnectionInfo>& infos) = 0;
290 289
291 // Helper function for invoking bool-returning methods on the worker thread. 290 // Helper function for invoking bool-returning methods on the worker thread.
292 template <class FunctorT> 291 template <class FunctorT>
293 bool InvokeOnWorker(const FunctorT& functor) { 292 bool InvokeOnWorker(const FunctorT& functor) {
294 return worker_thread_->Invoke<bool>(functor); 293 return worker_thread_->Invoke<bool>(functor);
295 } 294 }
296 295
297 private: 296 private:
(...skipping 102 matching lines...) Expand 10 before | Expand all | Expand 10 after
400 std::string* error_desc); 399 std::string* error_desc);
401 virtual bool SetRemoteContent_w(const MediaContentDescription* content, 400 virtual bool SetRemoteContent_w(const MediaContentDescription* content,
402 ContentAction action, 401 ContentAction action,
403 std::string* error_desc); 402 std::string* error_desc);
404 void HandleEarlyMediaTimeout(); 403 void HandleEarlyMediaTimeout();
405 bool InsertDtmf_w(uint32_t ssrc, int event, int duration, int flags); 404 bool InsertDtmf_w(uint32_t ssrc, int event, int duration, int flags);
406 bool SetOutputVolume_w(uint32_t ssrc, double volume); 405 bool SetOutputVolume_w(uint32_t ssrc, double volume);
407 bool GetStats_w(VoiceMediaInfo* stats); 406 bool GetStats_w(VoiceMediaInfo* stats);
408 407
409 virtual void OnMessage(rtc::Message* pmsg); 408 virtual void OnMessage(rtc::Message* pmsg);
410 virtual void GetSrtpCryptoSuiteNames(std::vector<std::string>* ciphers) const; 409 virtual void GetSrtpCryptoSuites(std::vector<int>* crypto_suites) const;
411 virtual void OnConnectionMonitorUpdate( 410 virtual void OnConnectionMonitorUpdate(
412 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos); 411 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos);
413 virtual void OnMediaMonitorUpdate( 412 virtual void OnMediaMonitorUpdate(
414 VoiceMediaChannel* media_channel, const VoiceMediaInfo& info); 413 VoiceMediaChannel* media_channel, const VoiceMediaInfo& info);
415 void OnAudioMonitorUpdate(AudioMonitor* monitor, const AudioInfo& info); 414 void OnAudioMonitorUpdate(AudioMonitor* monitor, const AudioInfo& info);
416 415
417 static const int kEarlyMediaTimeout = 1000; 416 static const int kEarlyMediaTimeout = 1000;
418 MediaEngineInterface* media_engine_; 417 MediaEngineInterface* media_engine_;
419 bool received_media_; 418 bool received_media_;
420 rtc::scoped_ptr<VoiceMediaMonitor> media_monitor_; 419 rtc::scoped_ptr<VoiceMediaMonitor> media_monitor_;
(...skipping 69 matching lines...) Expand 10 before | Expand all | Expand 10 after
490 bool ApplyViewRequest_w(const ViewRequest& request); 489 bool ApplyViewRequest_w(const ViewRequest& request);
491 490
492 bool AddScreencast_w(uint32_t ssrc, VideoCapturer* capturer); 491 bool AddScreencast_w(uint32_t ssrc, VideoCapturer* capturer);
493 bool RemoveScreencast_w(uint32_t ssrc); 492 bool RemoveScreencast_w(uint32_t ssrc);
494 void OnScreencastWindowEvent_s(uint32_t ssrc, rtc::WindowEvent we); 493 void OnScreencastWindowEvent_s(uint32_t ssrc, rtc::WindowEvent we);
495 bool IsScreencasting_w() const; 494 bool IsScreencasting_w() const;
496 void GetScreencastDetails_w(ScreencastDetailsData* d) const; 495 void GetScreencastDetails_w(ScreencastDetailsData* d) const;
497 bool GetStats_w(VideoMediaInfo* stats); 496 bool GetStats_w(VideoMediaInfo* stats);
498 497
499 virtual void OnMessage(rtc::Message* pmsg); 498 virtual void OnMessage(rtc::Message* pmsg);
500 virtual void GetSrtpCryptoSuiteNames(std::vector<std::string>* ciphers) const; 499 virtual void GetSrtpCryptoSuites(std::vector<int>* crypto_suites) const;
501 virtual void OnConnectionMonitorUpdate( 500 virtual void OnConnectionMonitorUpdate(
502 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos); 501 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos);
503 virtual void OnMediaMonitorUpdate( 502 virtual void OnMediaMonitorUpdate(
504 VideoMediaChannel* media_channel, const VideoMediaInfo& info); 503 VideoMediaChannel* media_channel, const VideoMediaInfo& info);
505 virtual void OnScreencastWindowEvent(uint32_t ssrc, rtc::WindowEvent event); 504 virtual void OnScreencastWindowEvent(uint32_t ssrc, rtc::WindowEvent event);
506 virtual void OnStateChange(VideoCapturer* capturer, CaptureState ev); 505 virtual void OnStateChange(VideoCapturer* capturer, CaptureState ev);
507 bool GetLocalSsrc(const VideoCapturer* capturer, uint32_t* ssrc); 506 bool GetLocalSsrc(const VideoCapturer* capturer, uint32_t* ssrc);
508 507
509 VideoRenderer* renderer_; 508 VideoRenderer* renderer_;
510 ScreencastMap screencast_capturers_; 509 ScreencastMap screencast_capturers_;
(...skipping 96 matching lines...) Expand 10 before | Expand all | Expand 10 after
607 virtual bool SetLocalContent_w(const MediaContentDescription* content, 606 virtual bool SetLocalContent_w(const MediaContentDescription* content,
608 ContentAction action, 607 ContentAction action,
609 std::string* error_desc); 608 std::string* error_desc);
610 virtual bool SetRemoteContent_w(const MediaContentDescription* content, 609 virtual bool SetRemoteContent_w(const MediaContentDescription* content,
611 ContentAction action, 610 ContentAction action,
612 std::string* error_desc); 611 std::string* error_desc);
613 virtual void ChangeState(); 612 virtual void ChangeState();
614 virtual bool WantsPacket(bool rtcp, rtc::Buffer* packet); 613 virtual bool WantsPacket(bool rtcp, rtc::Buffer* packet);
615 614
616 virtual void OnMessage(rtc::Message* pmsg); 615 virtual void OnMessage(rtc::Message* pmsg);
617 virtual void GetSrtpCryptoSuiteNames(std::vector<std::string>* ciphers) const; 616 virtual void GetSrtpCryptoSuites(std::vector<int>* crypto_suites) const;
618 virtual void OnConnectionMonitorUpdate( 617 virtual void OnConnectionMonitorUpdate(
619 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos); 618 ConnectionMonitor* monitor, const std::vector<ConnectionInfo>& infos);
620 virtual void OnMediaMonitorUpdate( 619 virtual void OnMediaMonitorUpdate(
621 DataMediaChannel* media_channel, const DataMediaInfo& info); 620 DataMediaChannel* media_channel, const DataMediaInfo& info);
622 virtual bool ShouldSetupDtlsSrtp() const; 621 virtual bool ShouldSetupDtlsSrtp() const;
623 void OnDataReceived( 622 void OnDataReceived(
624 const ReceiveDataParams& params, const char* data, size_t len); 623 const ReceiveDataParams& params, const char* data, size_t len);
625 void OnDataChannelError(uint32_t ssrc, DataMediaChannel::Error error); 624 void OnDataChannelError(uint32_t ssrc, DataMediaChannel::Error error);
626 void OnDataChannelReadyToSend(bool writable); 625 void OnDataChannelReadyToSend(bool writable);
627 void OnStreamClosedRemotely(uint32_t sid); 626 void OnStreamClosedRemotely(uint32_t sid);
628 627
629 rtc::scoped_ptr<DataMediaMonitor> media_monitor_; 628 rtc::scoped_ptr<DataMediaMonitor> media_monitor_;
630 // TODO(pthatcher): Make a separate SctpDataChannel and 629 // TODO(pthatcher): Make a separate SctpDataChannel and
631 // RtpDataChannel instead of using this. 630 // RtpDataChannel instead of using this.
632 DataChannelType data_channel_type_; 631 DataChannelType data_channel_type_;
633 bool ready_to_send_data_; 632 bool ready_to_send_data_;
634 633
635 // Last DataSendParameters sent down to the media_channel() via 634 // Last DataSendParameters sent down to the media_channel() via
636 // SetSendParameters. 635 // SetSendParameters.
637 DataSendParameters last_send_params_; 636 DataSendParameters last_send_params_;
638 // Last DataRecvParameters sent down to the media_channel() via 637 // Last DataRecvParameters sent down to the media_channel() via
639 // SetRecvParameters. 638 // SetRecvParameters.
640 DataRecvParameters last_recv_params_; 639 DataRecvParameters last_recv_params_;
641 }; 640 };
642 641
643 } // namespace cricket 642 } // namespace cricket
644 643
645 #endif // TALK_SESSION_MEDIA_CHANNEL_H_ 644 #endif // TALK_SESSION_MEDIA_CHANNEL_H_
OLDNEW
« no previous file with comments | « talk/media/base/cryptoparams.h ('k') | talk/session/media/channel.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698