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

Side by Side Diff: remoting/codec/audio_encoder_opus.h

Issue 914133003: Fix AudioPump to pause the stream when the network is congested. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@audio_pump
Patch Set: Created 5 years, 10 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 | « remoting/codec/audio_encoder.h ('k') | remoting/codec/audio_encoder_opus.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 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #ifndef REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_ 5 #ifndef REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_
6 #define REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_ 6 #define REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_
7 7
8 #include "remoting/codec/audio_encoder.h" 8 #include "remoting/codec/audio_encoder.h"
9 9
10 #include "remoting/proto/audio.pb.h" 10 #include "remoting/proto/audio.pb.h"
11 11
12 struct OpusEncoder; 12 struct OpusEncoder;
13 13
14 namespace media { 14 namespace media {
15 class AudioBus; 15 class AudioBus;
16 class MultiChannelResampler; 16 class MultiChannelResampler;
17 } // namespace media 17 } // namespace media
18 18
19 namespace remoting { 19 namespace remoting {
20 20
21 class AudioPacket; 21 class AudioPacket;
22 22
23 class AudioEncoderOpus : public AudioEncoder { 23 class AudioEncoderOpus : public AudioEncoder {
24 public: 24 public:
25 AudioEncoderOpus(); 25 AudioEncoderOpus();
26 ~AudioEncoderOpus() override; 26 ~AudioEncoderOpus() override;
27 27
28 // AudioEncoder interface. 28 // AudioEncoder interface.
29 scoped_ptr<AudioPacket> Encode(scoped_ptr<AudioPacket> packet) override; 29 scoped_ptr<AudioPacket> Encode(scoped_ptr<AudioPacket> packet) override;
30 int GetBitrate() override;
30 31
31 private: 32 private:
32 void InitEncoder(); 33 void InitEncoder();
33 void DestroyEncoder(); 34 void DestroyEncoder();
34 bool ResetForPacket(AudioPacket* packet); 35 bool ResetForPacket(AudioPacket* packet);
35 36
36 void FetchBytesToResample(int resampler_frame_delay, 37 void FetchBytesToResample(int resampler_frame_delay,
37 media::AudioBus* audio_bus); 38 media::AudioBus* audio_bus);
38 39
39 int sampling_rate_; 40 int sampling_rate_;
(...skipping 14 matching lines...) Expand all
54 scoped_ptr<int16[]> leftover_buffer_; 55 scoped_ptr<int16[]> leftover_buffer_;
55 int leftover_buffer_size_; 56 int leftover_buffer_size_;
56 int leftover_samples_; 57 int leftover_samples_;
57 58
58 DISALLOW_COPY_AND_ASSIGN(AudioEncoderOpus); 59 DISALLOW_COPY_AND_ASSIGN(AudioEncoderOpus);
59 }; 60 };
60 61
61 } // namespace remoting 62 } // namespace remoting
62 63
63 #endif // REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_ 64 #endif // REMOTING_CODEC_AUDIO_ENCODER_OPUS_H_
OLDNEW
« no previous file with comments | « remoting/codec/audio_encoder.h ('k') | remoting/codec/audio_encoder_opus.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698