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

Unified Diff: chromecast/browser/media/cast_renderer.h

Issue 2348603002: [chromecast] Track MediaPipelineBackend used by CastRenderer. (Closed)
Patch Set: Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: chromecast/browser/media/cast_renderer.h
diff --git a/chromecast/browser/media/cast_renderer.h b/chromecast/browser/media/cast_renderer.h
index bc3e395a54a3359539d3cd95723b3b941be9c39c..0b6ce602651612c1d7e24959d415b7ac327c4aff 100644
--- a/chromecast/browser/media/cast_renderer.h
+++ b/chromecast/browser/media/cast_renderer.h
@@ -8,6 +8,7 @@
#include "base/memory/weak_ptr.h"
#include "chromecast/browser/media/media_pipeline_backend_factory.h"
#include "chromecast/browser/media/video_resolution_policy.h"
+#include "chromecast/media/base/media_resource_tracker.h"
#include "media/base/renderer.h"
#include "ui/gfx/geometry/size.h"
@@ -33,7 +34,8 @@ class CastRenderer : public ::media::Renderer,
CastRenderer(const CreateMediaPipelineBackendCB& create_backend_cb,
const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
const std::string& audio_device_id,
- VideoResolutionPolicy* video_resolution_policy);
+ VideoResolutionPolicy* video_resolution_policy,
+ MediaResourceTracker* media_resource_tracker);
~CastRenderer() final;
// ::media::Renderer implementation.
@@ -68,6 +70,10 @@ class CastRenderer : public ::media::Renderer,
scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
std::string audio_device_id_;
VideoResolutionPolicy* video_resolution_policy_;
+ MediaResourceTracker* media_resource_tracker_;
+ // Must outlive |pipeline_| to properly count resource usage.
+ std::unique_ptr<MediaResourceTracker::ScopedUsage> media_resource_usage_;
+
::media::RendererClient* client_;
CastCdmContext* cast_cdm_context_;
scoped_refptr<BalancedMediaTaskRunnerFactory> media_task_runner_factory_;
@@ -75,8 +81,8 @@ class CastRenderer : public ::media::Renderer,
std::unique_ptr<MediaPipelineImpl> pipeline_;
bool eos_[2];
gfx::Size video_res_;
- base::WeakPtrFactory<CastRenderer> weak_factory_;
+ base::WeakPtrFactory<CastRenderer> weak_factory_;
DISALLOW_COPY_AND_ASSIGN(CastRenderer);
};

Powered by Google App Engine
This is Rietveld 408576698