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

Side by Side Diff: media/base/android/media_url_demuxer.h

Issue 2230583002: Add MediaPlayerRenderer/MediaPlayerRendererClient (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Added MEDIA_EXPORT. Created 4 years, 4 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 unified diff | Download patch
« no previous file with comments | « media/base/android/BUILD.gn ('k') | media/base/android/media_url_demuxer.cc » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
OLDNEW
(Empty)
1 // Copyright 2016 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4
5 #ifndef MEDIA_BASE_ANDROID_MEDIA_URL_DEMUXER_H_
6 #define MEDIA_BASE_ANDROID_MEDIA_URL_DEMUXER_H_
7
8 #include <stddef.h>
9
10 #include "base/callback.h"
11 #include "base/macros.h"
12 #include "base/memory/weak_ptr.h"
13 #include "media/base/demuxer.h"
14 #include "url/gurl.h"
15
16 namespace media {
17
18 // Class that saves a URL for later retrieval. To be used in conjunction with
19 // the MediaPlayerRenderer.
20 //
21 // Its primary purpose is to act as a dummy Demuxer, when there is no need
22 // for DemuxerStreams (e.g. in the MediaPlayerRenderer case). For the most part,
23 // its implementation of the Demuxer are NOPs that return the default values and
24 // fire any provided callbacks immediately.
25 //
26 // If Pipeline where to be refactored to use a DemuxerStreamProvider instead of
27 // a Demuxer, MediaUrlDemuxer should be refactored to inherit directly from
28 // DemuxerStreamProvider.
29 class MediaUrlDemuxer : public Demuxer {
30 public:
31 MediaUrlDemuxer(
32 const scoped_refptr<base::SingleThreadTaskRunner>& task_runner,
33 const GURL& url);
34 ~MediaUrlDemuxer() override;
35
36 // DemuxerStreamProvider interface.
37 DemuxerStream* GetStream(DemuxerStream::Type type) override;
38 GURL GetUrl() const override;
39 DemuxerStreamProvider::Type GetType() const override;
40
41 // Demuxer interface.
42 std::string GetDisplayName() const override;
43 void Initialize(DemuxerHost* host,
44 const PipelineStatusCB& status_cb,
45 bool enable_text_tracks) override;
46 void StartWaitingForSeek(base::TimeDelta seek_time) override;
47 void CancelPendingSeek(base::TimeDelta seek_time) override;
48 void Seek(base::TimeDelta time, const PipelineStatusCB& status_cb) override;
49 void Stop() override;
50 base::TimeDelta GetStartTime() const override;
51 base::Time GetTimelineOffset() const override;
52 int64_t GetMemoryUsage() const override;
53 void OnEnabledAudioTracksChanged(const std::vector<MediaTrack::Id>& track_ids,
54 base::TimeDelta currTime) override;
55 void OnSelectedVideoTrackChanged(const std::vector<MediaTrack::Id>& track_ids,
56 base::TimeDelta currTime) override;
57
58 private:
59 GURL url_;
60
61 scoped_refptr<base::SingleThreadTaskRunner> task_runner_;
62
63 DISALLOW_COPY_AND_ASSIGN(MediaUrlDemuxer);
64 };
65
66 } // namespace media
67
68 #endif // MEDIA_BASE_ANDROID_MEDIA_URL_DEMUXER_H_
OLDNEW
« no previous file with comments | « media/base/android/BUILD.gn ('k') | media/base/android/media_url_demuxer.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698