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

Side by Side Diff: webrtc/audio/audio_send_stream.h

Issue 2060403002: Add task queue to Call. (Closed) Base URL: https://chromium.googlesource.com/external/webrtc.git@move_getpadding
Patch Set: Fix audio thread check when adding audio to bitrateallocator. Created 4 years, 4 months 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 | « no previous file | webrtc/audio/audio_send_stream.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 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved. 2 * Copyright (c) 2015 The WebRTC project authors. All Rights Reserved.
3 * 3 *
4 * Use of this source code is governed by a BSD-style license 4 * Use of this source code is governed by a BSD-style license
5 * that can be found in the LICENSE file in the root of the source 5 * that can be found in the LICENSE file in the root of the source
6 * tree. An additional intellectual property rights grant can be found 6 * tree. An additional intellectual property rights grant can be found
7 * in the file PATENTS. All contributing project authors may 7 * in the file PATENTS. All contributing project authors may
8 * be found in the AUTHORS file in the root of the source tree. 8 * be found in the AUTHORS file in the root of the source tree.
9 */ 9 */
10 10
(...skipping 15 matching lines...) Expand all
26 namespace voe { 26 namespace voe {
27 class ChannelProxy; 27 class ChannelProxy;
28 } // namespace voe 28 } // namespace voe
29 29
30 namespace internal { 30 namespace internal {
31 class AudioSendStream final : public webrtc::AudioSendStream, 31 class AudioSendStream final : public webrtc::AudioSendStream,
32 public webrtc::BitrateAllocatorObserver { 32 public webrtc::BitrateAllocatorObserver {
33 public: 33 public:
34 AudioSendStream(const webrtc::AudioSendStream::Config& config, 34 AudioSendStream(const webrtc::AudioSendStream::Config& config,
35 const rtc::scoped_refptr<webrtc::AudioState>& audio_state, 35 const rtc::scoped_refptr<webrtc::AudioState>& audio_state,
36 rtc::TaskQueue* worker_queue,
36 CongestionController* congestion_controller, 37 CongestionController* congestion_controller,
37 BitrateAllocator* bitrate_allocator); 38 BitrateAllocator* bitrate_allocator);
38 ~AudioSendStream() override; 39 ~AudioSendStream() override;
39 40
40 // webrtc::AudioSendStream implementation. 41 // webrtc::AudioSendStream implementation.
41 void Start() override; 42 void Start() override;
42 void Stop() override; 43 void Stop() override;
43 bool SendTelephoneEvent(int payload_type, int event, 44 bool SendTelephoneEvent(int payload_type, int event,
44 int duration_ms) override; 45 int duration_ms) override;
45 void SetMuted(bool muted) override; 46 void SetMuted(bool muted) override;
46 webrtc::AudioSendStream::Stats GetStats() const override; 47 webrtc::AudioSendStream::Stats GetStats() const override;
47 48
48 void SignalNetworkState(NetworkState state); 49 void SignalNetworkState(NetworkState state);
49 bool DeliverRtcp(const uint8_t* packet, size_t length); 50 bool DeliverRtcp(const uint8_t* packet, size_t length);
50 51
51 // Implements BitrateAllocatorObserver. 52 // Implements BitrateAllocatorObserver.
52 uint32_t OnBitrateUpdated(uint32_t bitrate_bps, 53 uint32_t OnBitrateUpdated(uint32_t bitrate_bps,
53 uint8_t fraction_loss, 54 uint8_t fraction_loss,
54 int64_t rtt) override; 55 int64_t rtt) override;
55 56
56 const webrtc::AudioSendStream::Config& config() const; 57 const webrtc::AudioSendStream::Config& config() const;
57 58
58 private: 59 private:
59 VoiceEngine* voice_engine() const; 60 VoiceEngine* voice_engine() const;
60 61
61 rtc::ThreadChecker thread_checker_; 62 rtc::ThreadChecker thread_checker_;
63 rtc::TaskQueue* worker_queue_;
stefan-webrtc 2016/08/16 07:32:07 rtc::TaskQueue* const
62 const webrtc::AudioSendStream::Config config_; 64 const webrtc::AudioSendStream::Config config_;
63 rtc::scoped_refptr<webrtc::AudioState> audio_state_; 65 rtc::scoped_refptr<webrtc::AudioState> audio_state_;
64 std::unique_ptr<voe::ChannelProxy> channel_proxy_; 66 std::unique_ptr<voe::ChannelProxy> channel_proxy_;
65 67
66 BitrateAllocator* const bitrate_allocator_; 68 BitrateAllocator* const bitrate_allocator_;
67 69
68 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioSendStream); 70 RTC_DISALLOW_IMPLICIT_CONSTRUCTORS(AudioSendStream);
69 }; 71 };
70 } // namespace internal 72 } // namespace internal
71 } // namespace webrtc 73 } // namespace webrtc
72 74
73 #endif // WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_ 75 #endif // WEBRTC_AUDIO_AUDIO_SEND_STREAM_H_
OLDNEW
« no previous file with comments | « no previous file | webrtc/audio/audio_send_stream.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698