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

Side by Side Diff: extensions/renderer/api/display_source/wifi_display/wifi_display_audio_encoder.h

Issue 1903823002: [chrome.displaySource] Implement LPCM audio encoder. (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Member initialization, NOTREACHED Created 4 years, 7 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
OLDNEW
1 // Copyright 2016 The Chromium Authors. All rights reserved. 1 // Copyright 2016 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 EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDIO_E NCODER_H_ 5 #ifndef EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDIO_E NCODER_H_
6 #define EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDIO_E NCODER_H_ 6 #define EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDIO_E NCODER_H_
7 7
8 #include "content/public/renderer/media_stream_audio_sink.h" 8 #include "content/public/renderer/media_stream_audio_sink.h"
9 #include "extensions/renderer/api/display_source/wifi_display/wifi_display_media _encoder.h" 9 #include "extensions/renderer/api/display_source/wifi_display/wifi_display_media _encoder.h"
10 #include "third_party/wds/src/libwds/public/audio_codec.h" 10 #include "third_party/wds/src/libwds/public/audio_codec.h"
11 11
12 namespace extensions { 12 namespace extensions {
13 13
14 // This interface is a base class for audio used by the Wi-Fi Display media 14 // This interface is a base class for audio used by the Wi-Fi Display media
15 // pipeline. 15 // pipeline.
16 // Threading: the client code should belong to a single thread. 16 // Threading: the client code should belong to a single thread.
17 class WiFiDisplayAudioEncoder : public WiFiDisplayMediaEncoder, 17 class WiFiDisplayAudioEncoder : public WiFiDisplayMediaEncoder,
18 public content::MediaStreamAudioSink { 18 public content::MediaStreamAudioSink {
19 public: 19 public:
20 using AudioEncoderCallback = 20 using AudioEncoderCallback =
21 base::Callback<void(scoped_refptr<WiFiDisplayAudioEncoder>)>; 21 base::Callback<void(scoped_refptr<WiFiDisplayAudioEncoder>)>;
22 22
23 static void Create(const wds::AudioCodec& audio_codec, 23 static void Create(const wds::AudioCodec& audio_codec,
24 const AudioEncoderCallback& encoder_callback); 24 const AudioEncoderCallback& encoder_callback);
25 25
26 protected: 26 protected:
27 static const size_t kInvalidCodecModeValue = ~static_cast<size_t>(0u); 27 static const size_t kInvalidCodecModeValue = ~static_cast<size_t>(0u);
28 28
29 static void CreateLPCM(const wds::AudioCodec& audio_codec,
asargent_no_longer_on_chrome 2016/04/28 21:19:13 nit: this could use a comment, since it's not imme
e_hakkinen 2016/04/29 07:32:06 Done.
30 const AudioEncoderCallback& encoder_callback);
31
29 explicit WiFiDisplayAudioEncoder(const wds::AudioCodec& audio_codec); 32 explicit WiFiDisplayAudioEncoder(const wds::AudioCodec& audio_codec);
30 ~WiFiDisplayAudioEncoder() override; 33 ~WiFiDisplayAudioEncoder() override;
31 34
32 size_t GetAudioCodecMode() const; 35 size_t GetAudioCodecMode() const;
33 36
34 const wds::AudioCodec audio_codec_; 37 const wds::AudioCodec audio_codec_;
35 }; 38 };
36 39
37 } // namespace extensions 40 } // namespace extensions
38 41
39 #endif // EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDI O_ENCODER_H_ 42 #endif // EXTENSIONS_RENDERER_API_DISPLAY_SOURCE_WIFI_DISPLAY_WIFI_DISPLAY_AUDI O_ENCODER_H_
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698