Index: webkit/renderer/media/android/media_source_delegate.h |
diff --git a/webkit/renderer/media/android/media_source_delegate.h b/webkit/renderer/media/android/media_source_delegate.h |
deleted file mode 100644 |
index cc71521c6dac0a579815b8b1128ffa8e91749e9a..0000000000000000000000000000000000000000 |
--- a/webkit/renderer/media/android/media_source_delegate.h |
+++ /dev/null |
@@ -1,168 +0,0 @@ |
-// Copyright 2013 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 WEBKIT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |
-#define WEBKIT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |
- |
-#include "base/callback.h" |
-#include "base/memory/ref_counted.h" |
-#include "base/memory/scoped_ptr.h" |
-#include "base/memory/weak_ptr.h" |
-#include "base/time.h" |
-#include "media/base/decryptor.h" |
-#include "media/base/demuxer.h" |
-#include "media/base/media_keys.h" |
-#include "media/base/pipeline_status.h" |
-#include "media/base/ranges.h" |
-#include "media/base/text_track.h" |
-#include "third_party/WebKit/public/web/WebMediaPlayer.h" |
- |
-namespace media { |
-class ChunkDemuxer; |
-class DecoderBuffer; |
-class DemuxerStream; |
-class MediaLog; |
-struct MediaPlayerHostMsg_ReadFromDemuxerAck_Params; |
-} |
- |
-namespace webkit_media { |
- |
-class ProxyDecryptor; |
-class WebMediaPlayerProxyAndroid; |
- |
-class MediaSourceDelegate : public media::DemuxerHost { |
- public: |
- typedef base::Callback<void(WebKit::WebMediaPlayer::NetworkState)> |
- UpdateNetworkStateCB; |
- typedef base::Callback<void(const base::TimeDelta&)> DurationChangeCB; |
- |
- // Helper class used by scoped_ptr to destroy an instance of |
- // MediaSourceDelegate. |
- class Destroyer { |
- public: |
- inline void operator()(void* media_source_delegate) const { |
- static_cast<MediaSourceDelegate*>(media_source_delegate)->Destroy(); |
- } |
- }; |
- |
- MediaSourceDelegate(WebMediaPlayerProxyAndroid* proxy, |
- int player_id, |
- media::MediaLog* media_log); |
- // Initialize the MediaSourceDelegate. |media_source| will be owned by |
- // this object after this call. |
- void InitializeMediaSource( |
- WebKit::WebMediaSource* media_source, |
- const media::NeedKeyCB& need_key_cb, |
- const UpdateNetworkStateCB& update_network_state_cb, |
- const DurationChangeCB& duration_change_cb); |
-#if defined(GOOGLE_TV) |
- void InitializeMediaStream( |
- media::Demuxer* demuxer, |
- const UpdateNetworkStateCB& update_network_state_cb); |
-#endif |
- |
- const WebKit::WebTimeRanges& Buffered(); |
- size_t DecodedFrameCount() const; |
- size_t DroppedFrameCount() const; |
- size_t AudioDecodedByteCount() const; |
- size_t VideoDecodedByteCount() const; |
- |
- void Seek(base::TimeDelta time); |
- |
- void CancelPendingSeek(); |
- |
- void NotifyKeyAdded(const std::string& key_system); |
- |
- // Called when DemuxerStreamPlayer needs to read data from ChunkDemuxer. |
- // If it's the first request after the seek, |seek_done| will be true. |
- void OnReadFromDemuxer(media::DemuxerStream::Type type, bool seek_done); |
- |
- // Called when the player needs the new config data from ChunkDemuxer. |
- void OnMediaConfigRequest(); |
- |
- // Called by the Destroyer to destroy an instance of this object. |
- void Destroy(); |
- |
- private: |
- // This is private to enforce use of the Destroyer. |
- virtual ~MediaSourceDelegate(); |
- |
- // Methods inherited from DemuxerHost. |
- virtual void SetTotalBytes(int64 total_bytes) OVERRIDE; |
- virtual void AddBufferedByteRange(int64 start, int64 end) OVERRIDE; |
- virtual void AddBufferedTimeRange(base::TimeDelta start, |
- base::TimeDelta end) OVERRIDE; |
- virtual void SetDuration(base::TimeDelta duration) OVERRIDE; |
- virtual void OnDemuxerError(media::PipelineStatus status) OVERRIDE; |
- |
- // Callbacks for ChunkDemuxer. |
- void OnDemuxerInitDone(media::PipelineStatus status); |
- void OnDemuxerStopDone(); |
- void OnDemuxerOpened(); |
- void OnNeedKey(const std::string& type, |
- const std::string& session_id, |
- scoped_ptr<uint8[]> init_data, |
- int init_data_size); |
- scoped_ptr<media::TextTrack> OnAddTextTrack(media::TextKind kind, |
- const std::string& label, |
- const std::string& language); |
- void NotifyDemuxerReady(const std::string& key_system); |
- bool CanNotifyDemuxerReady(); |
- |
- // Reads an access unit from the demuxer stream |stream| and stores it in |
- // the |index|th access unit in |params|. |
- void ReadFromDemuxerStream( |
- media::DemuxerStream* stream, |
- media::MediaPlayerHostMsg_ReadFromDemuxerAck_Params* params, |
- size_t index); |
- void OnBufferReady( |
- media::DemuxerStream* stream, |
- media::MediaPlayerHostMsg_ReadFromDemuxerAck_Params* params, |
- size_t index, |
- media::DemuxerStream::Status status, |
- const scoped_refptr<media::DecoderBuffer>& buffer); |
- |
- // Helper function for calculating duration. |
- int GetDurationMs(); |
- |
- base::WeakPtrFactory<MediaSourceDelegate> weak_this_; |
- |
- WebMediaPlayerProxyAndroid* proxy_; |
- int player_id_; |
- |
- scoped_refptr<media::MediaLog> media_log_; |
- UpdateNetworkStateCB update_network_state_cb_; |
- DurationChangeCB duration_change_cb_; |
- |
- scoped_ptr<media::ChunkDemuxer> chunk_demuxer_; |
- scoped_ptr<WebKit::WebMediaSource> media_source_; |
- media::Demuxer* demuxer_; |
- |
- media::PipelineStatistics statistics_; |
- media::Ranges<base::TimeDelta> buffered_time_ranges_; |
- // Keep a list of buffered time ranges. |
- WebKit::WebTimeRanges buffered_web_time_ranges_; |
- |
- media::NeedKeyCB need_key_cb_; |
- |
- // The currently selected key system. Empty string means that no key system |
- // has been selected. |
- WebKit::WebString current_key_system_; |
- |
- // Temporary for EME v0.1. In the future the init data type should be passed |
- // through GenerateKeyRequest() directly from WebKit. |
- std::string init_data_type_; |
- |
- scoped_ptr<media::MediaPlayerHostMsg_ReadFromDemuxerAck_Params> audio_params_; |
- scoped_ptr<media::MediaPlayerHostMsg_ReadFromDemuxerAck_Params> video_params_; |
- |
- bool seeking_; |
- bool key_added_; |
- size_t access_unit_size_; |
- |
- DISALLOW_COPY_AND_ASSIGN(MediaSourceDelegate); |
-}; |
- |
-} // namespace webkit_media |
-#endif // WEBKIT_RENDERER_MEDIA_ANDROID_MEDIA_SOURCE_DELEGATE_H_ |