OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 1 // Copyright 2013 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 MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ | 5 #ifndef MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ |
6 #define MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ | 6 #define MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ |
7 | 7 |
8 #include <stdint.h> | 8 #include <stdint.h> |
9 | 9 |
10 #include <string> | 10 #include <string> |
(...skipping 21 matching lines...) Expand all Loading... |
32 explicit FakeAudioRendererSink(const AudioParameters& hardware_params); | 32 explicit FakeAudioRendererSink(const AudioParameters& hardware_params); |
33 | 33 |
34 void Initialize(const AudioParameters& params, | 34 void Initialize(const AudioParameters& params, |
35 RenderCallback* callback) override; | 35 RenderCallback* callback) override; |
36 void Start() override; | 36 void Start() override; |
37 void Stop() override; | 37 void Stop() override; |
38 void Pause() override; | 38 void Pause() override; |
39 void Play() override; | 39 void Play() override; |
40 bool SetVolume(double volume) override; | 40 bool SetVolume(double volume) override; |
41 OutputDeviceInfo GetOutputDeviceInfo() override; | 41 OutputDeviceInfo GetOutputDeviceInfo() override; |
| 42 bool CurrentThreadIsRenderingThread() override; |
42 | 43 |
43 // Attempts to call Render() on the callback provided to | 44 // Attempts to call Render() on the callback provided to |
44 // Initialize() with |dest| and |frames_delayed|. | 45 // Initialize() with |dest| and |frames_delayed|. |
45 // Returns true and sets |frames_written| to the return value of the | 46 // Returns true and sets |frames_written| to the return value of the |
46 // Render() call. | 47 // Render() call. |
47 // Returns false if this object is in a state where calling Render() | 48 // Returns false if this object is in a state where calling Render() |
48 // should not occur. (i.e., in the kPaused or kStopped state.) The | 49 // should not occur. (i.e., in the kPaused or kStopped state.) The |
49 // value of |frames_written| is undefined if false is returned. | 50 // value of |frames_written| is undefined if false is returned. |
50 bool Render(AudioBus* dest, uint32_t frames_delayed, int* frames_written); | 51 bool Render(AudioBus* dest, uint32_t frames_delayed, int* frames_written); |
51 void OnRenderError(); | 52 void OnRenderError(); |
52 | 53 |
53 State state() const { return state_; } | 54 State state() const { return state_; } |
54 | 55 |
55 protected: | 56 protected: |
56 ~FakeAudioRendererSink() override; | 57 ~FakeAudioRendererSink() override; |
57 | 58 |
58 private: | 59 private: |
59 void ChangeState(State new_state); | 60 void ChangeState(State new_state); |
60 | 61 |
61 State state_; | 62 State state_; |
62 RenderCallback* callback_; | 63 RenderCallback* callback_; |
63 OutputDeviceInfo output_device_info_; | 64 OutputDeviceInfo output_device_info_; |
64 | 65 |
65 DISALLOW_COPY_AND_ASSIGN(FakeAudioRendererSink); | 66 DISALLOW_COPY_AND_ASSIGN(FakeAudioRendererSink); |
66 }; | 67 }; |
67 | 68 |
68 } // namespace media | 69 } // namespace media |
69 | 70 |
70 #endif // MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ | 71 #endif // MEDIA_BASE_FAKE_AUDIO_RENDERER_SINK_H_ |
OLD | NEW |