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

Side by Side Diff: content/renderer/media/android/renderer_demuxer_android.cc

Issue 2283493003: Delete browser MSE implementation. (Closed)
Patch Set: Actually delete MSP. Cleanse references. Remove AudioTrack usage. Created 4 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 unified diff | Download patch
OLDNEW
(Empty)
1 // Copyright 2013 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 #include "content/renderer/media/android/renderer_demuxer_android.h"
6
7 #include "base/bind.h"
8 #include "base/single_thread_task_runner.h"
9 #include "content/child/thread_safe_sender.h"
10 #include "content/common/media/media_player_messages_android.h"
11 #include "content/renderer/media/android/media_source_delegate.h"
12 #include "content/renderer/render_thread_impl.h"
13
14 namespace content {
15
16 RendererDemuxerAndroid::RendererDemuxerAndroid()
17 : thread_safe_sender_(RenderThreadImpl::current()->thread_safe_sender()),
18 media_task_runner_(
19 RenderThreadImpl::current()->GetMediaThreadTaskRunner()) {}
20
21 RendererDemuxerAndroid::~RendererDemuxerAndroid() {}
22
23 int RendererDemuxerAndroid::GetNextDemuxerClientID() {
24 // Don't use zero for IDs since it can be interpreted as having no ID.
25 return next_demuxer_client_id_.GetNext() + 1;
26 }
27
28 void RendererDemuxerAndroid::AddDelegate(int demuxer_client_id,
29 MediaSourceDelegate* delegate) {
30 DCHECK(media_task_runner_->BelongsToCurrentThread());
31 delegates_.AddWithID(delegate, demuxer_client_id);
32 }
33
34 void RendererDemuxerAndroid::RemoveDelegate(int demuxer_client_id) {
35 DCHECK(media_task_runner_->BelongsToCurrentThread());
36 delegates_.Remove(demuxer_client_id);
37 }
38
39 bool RendererDemuxerAndroid::OnMessageReceived(const IPC::Message& message) {
40 switch (message.type()) {
41 case MediaPlayerMsg_DemuxerSeekRequest::ID:
42 case MediaPlayerMsg_ReadFromDemuxer::ID:
43 media_task_runner_->PostTask(FROM_HERE, base::Bind(
44 &RendererDemuxerAndroid::DispatchMessage, this, message));
45 return true;
46 }
47 return false;
48 }
49
50 void RendererDemuxerAndroid::DemuxerReady(
51 int demuxer_client_id,
52 const media::DemuxerConfigs& configs) {
53 thread_safe_sender_->Send(new MediaPlayerHostMsg_DemuxerReady(
54 demuxer_client_id, configs));
55 }
56
57 void RendererDemuxerAndroid::ReadFromDemuxerAck(
58 int demuxer_client_id,
59 const media::DemuxerData& data) {
60 thread_safe_sender_->Send(new MediaPlayerHostMsg_ReadFromDemuxerAck(
61 demuxer_client_id, data));
62 }
63
64 void RendererDemuxerAndroid::DemuxerSeekDone(
65 int demuxer_client_id,
66 const base::TimeDelta& actual_browser_seek_time) {
67 thread_safe_sender_->Send(new MediaPlayerHostMsg_DemuxerSeekDone(
68 demuxer_client_id, actual_browser_seek_time));
69 }
70
71 void RendererDemuxerAndroid::DurationChanged(int demuxer_client_id,
72 const base::TimeDelta& duration) {
73 thread_safe_sender_->Send(new MediaPlayerHostMsg_DurationChanged(
74 demuxer_client_id, duration));
75 }
76
77 void RendererDemuxerAndroid::DispatchMessage(const IPC::Message& message) {
78 IPC_BEGIN_MESSAGE_MAP(RendererDemuxerAndroid, message)
79 IPC_MESSAGE_HANDLER(MediaPlayerMsg_DemuxerSeekRequest, OnDemuxerSeekRequest)
80 IPC_MESSAGE_HANDLER(MediaPlayerMsg_ReadFromDemuxer, OnReadFromDemuxer)
81 IPC_END_MESSAGE_MAP()
82 }
83
84 void RendererDemuxerAndroid::OnReadFromDemuxer(
85 int demuxer_client_id,
86 media::DemuxerStream::Type type) {
87 MediaSourceDelegate* delegate = delegates_.Lookup(demuxer_client_id);
88 if (delegate)
89 delegate->OnReadFromDemuxer(type);
90 }
91
92 void RendererDemuxerAndroid::OnDemuxerSeekRequest(
93 int demuxer_client_id,
94 const base::TimeDelta& time_to_seek,
95 bool is_browser_seek) {
96 MediaSourceDelegate* delegate = delegates_.Lookup(demuxer_client_id);
97 if (delegate)
98 delegate->Seek(time_to_seek, is_browser_seek);
99 }
100
101 } // namespace content
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698