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

Side by Side Diff: media/filters/chunk_demuxer_factory.cc

Issue 9860027: Remove DemuxerFactory and URL parameter from Pipeline. (Closed) Base URL: svn://chrome-svn/chrome/trunk/src
Patch Set: added some todos Created 8 years, 8 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 | Annotate | Revision Log
OLDNEW
(Empty)
1 // Copyright (c) 2012 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 "media/filters/chunk_demuxer_factory.h"
6
7 #include "base/bind.h"
8 #include "base/message_loop.h"
9 #include "media/filters/chunk_demuxer.h"
10
11 namespace media {
12
13 static void InitDone(MessageLoop* message_loop,
14 const DemuxerFactory::BuildCallback& cb,
15 scoped_refptr<Demuxer> demuxer,
16 PipelineStatus status) {
17 if (status != PIPELINE_OK)
18 demuxer = NULL;
19 message_loop->PostTask(FROM_HERE, base::Bind(cb, status, demuxer));
20 }
21
22 ChunkDemuxerFactory::ChunkDemuxerFactory(ChunkDemuxerClient* client)
23 : client_(client) {
24 DCHECK(client_);
25 }
26
27 ChunkDemuxerFactory::~ChunkDemuxerFactory() {}
28
29 void ChunkDemuxerFactory::Build(const std::string& url,
30 const BuildCallback& cb) {
31 scoped_refptr<ChunkDemuxer> demuxer(new ChunkDemuxer(client_));
32
33 // Call Init() on demuxer. Note that ownership is being passed to the
34 // callback here.
35 demuxer->Init(base::Bind(&InitDone, MessageLoop::current(), cb, demuxer));
36 }
37
38 } // namespace media
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698