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

Unified Diff: chromecast/media/cma/backend/media_pipeline_backend_default.h

Issue 1372393007: [Chromecast] Upgrade to new CMA backend API (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Address alokp@ comments Created 5 years, 2 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/media/cma/backend/media_pipeline_backend_default.h
diff --git a/chromecast/media/cma/backend/media_pipeline_backend_default.h b/chromecast/media/cma/backend/media_pipeline_backend_default.h
index 7a9a602d68577e55b60739b1e708e336cd9818c2..8dc2b94b2e9550df0599b6c54d1258a14cb3c43b 100644
--- a/chromecast/media/cma/backend/media_pipeline_backend_default.h
+++ b/chromecast/media/cma/backend/media_pipeline_backend_default.h
@@ -2,12 +2,13 @@
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
-#ifndef CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_DEVICE_FACTORY_DEFAULT_H_
-#define CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_DEVICE_FACTORY_DEFAULT_H_
+#ifndef CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_BACKEND_DEFAULT_H_
+#define CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_BACKEND_DEFAULT_H_
+#include "base/macros.h"
#include "base/memory/scoped_ptr.h"
+#include "base/time/time.h"
#include "chromecast/public/media/media_pipeline_backend.h"
-#include "chromecast/public/media/media_pipeline_device_params.h"
namespace chromecast {
namespace media {
@@ -15,19 +16,31 @@ namespace media {
// Factory that instantiates default (stub) media pipeline device elements.
class MediaPipelineBackendDefault : public MediaPipelineBackend {
public:
- MediaPipelineBackendDefault(const MediaPipelineDeviceParams& params);
+ MediaPipelineBackendDefault();
~MediaPipelineBackendDefault() override;
- // MediaPipelineBackend implementation
- MediaClockDevice* GetClock() override;
- AudioPipelineDevice* GetAudio() override;
- VideoPipelineDevice* GetVideo() override;
+ // MediaPipelineBackend implementation:
+ AudioDecoder* CreateAudioDecoder() override;
+ VideoDecoder* CreateVideoDecoder() override;
+ bool Initialize(Delegate* delegate) override;
+ bool Start(int64_t start_pts) override;
+ bool Stop() override;
+ bool Pause() override;
+ bool Resume() override;
+ int64_t GetCurrentPts() override;
+ bool SetPlaybackRate(float rate) override;
private:
- MediaPipelineDeviceParams params_;
- scoped_ptr<MediaClockDevice> clock_;
- scoped_ptr<AudioPipelineDevice> audio_;
- scoped_ptr<VideoPipelineDevice> video_;
+ class AudioDecoderDefault;
+ class VideoDecoderDefault;
+
+ base::TimeDelta start_pts_;
+ base::TimeTicks start_clock_;
+ bool running_;
+ float rate_;
+
+ scoped_ptr<AudioDecoderDefault> audio_decoder_;
+ scoped_ptr<VideoDecoderDefault> video_decoder_;
DISALLOW_COPY_AND_ASSIGN(MediaPipelineBackendDefault);
};
@@ -35,4 +48,4 @@ class MediaPipelineBackendDefault : public MediaPipelineBackend {
} // namespace media
} // namespace chromecast
-#endif // CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_DEVICE_FACTORY_DEFAULT_H_
+#endif // CHROMECAST_MEDIA_CMA_BACKEND_MEDIA_PIPELINE_BACKEND_DEFAULT_H_

Powered by Google App Engine
This is Rietveld 408576698