blob: e6692af38bed00085cdb094be35e9fbb0720e84c (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
|
// Copyright 2017 The Chromium Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
#ifndef THIRD_PARTY_BLINK_RENDERER_PLATFORM_TESTING_EMPTY_WEB_MEDIA_PLAYER_H_
#define THIRD_PARTY_BLINK_RENDERER_PLATFORM_TESTING_EMPTY_WEB_MEDIA_PLAYER_H_
#include "base/callback.h"
#include "third_party/blink/public/platform/web_media_player.h"
namespace cc {
class PaintCanvas;
class PaintFlags;
} // namespace cc
namespace blink {
// An empty WebMediaPlayer used only for tests. This class defines the methods
// of WebMediaPlayer so that mock WebMediaPlayers don't need to redefine them if
// they don't care their behavior.
class EmptyWebMediaPlayer : public WebMediaPlayer {
public:
~EmptyWebMediaPlayer() override = default;
LoadTiming Load(LoadType, const WebMediaPlayerSource&, CorsMode) override;
void Play() override {}
void Pause() override {}
void Seek(double seconds) override {}
void SetRate(double) override {}
void SetVolume(double) override {}
void SetLatencyHint(double) override {}
void OnRequestPictureInPicture() override {}
void OnPictureInPictureAvailabilityChanged(bool available) override {}
SurfaceLayerMode GetVideoSurfaceLayerMode() const override {
return SurfaceLayerMode::kNever;
}
WebTimeRanges Buffered() const override;
WebTimeRanges Seekable() const override;
void SetSinkId(const WebString& sink_id,
WebSetSinkIdCompleteCallback) override {}
bool HasVideo() const override { return false; }
bool HasAudio() const override { return false; }
gfx::Size NaturalSize() const override;
gfx::Size VisibleSize() const override;
bool Paused() const override { return false; }
bool Seeking() const override { return false; }
double Duration() const override { return 0.0; }
double CurrentTime() const override { return 0.0; }
bool IsEnded() const override { return false; }
NetworkState GetNetworkState() const override { return kNetworkStateIdle; }
ReadyState GetReadyState() const override { return kReadyStateHaveNothing; }
WebString GetErrorMessage() const override;
bool DidLoadingProgress() override { return false; }
bool WouldTaintOrigin() const override { return false; }
double MediaTimeForTimeValue(double time_value) const override {
return time_value;
}
unsigned DecodedFrameCount() const override { return 0; }
unsigned DroppedFrameCount() const override { return 0; }
uint64_t AudioDecodedByteCount() const override { return 0; }
uint64_t VideoDecodedByteCount() const override { return 0; }
void Paint(cc::PaintCanvas*,
const WebRect&,
cc::PaintFlags&,
int already_uploaded_id,
VideoFrameUploadMetadata*) override {}
bool HasAvailableVideoFrame() const override { return false; }
base::WeakPtr<WebMediaPlayer> AsWeakPtr() override { return nullptr; }
};
} // namespace blink
#endif // THIRD_PARTY_BLINK_RENDERER_PLATFORM_TESTING_EMPTY_WEB_MEDIA_PLAYER_H_
|