OLD | NEW |
1 // Copyright 2013 The Chromium Authors. All rights reserved. | 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 | 2 // Use of this source code is governed by a BSD-style license that can be |
3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
4 | 4 |
5 #include "media/blink/webmediasource_impl.h" | 5 #include "media/blink/webmediasource_impl.h" |
6 | 6 |
7 #include "base/guid.h" | 7 #include "base/guid.h" |
8 #include "media/blink/websourcebuffer_impl.h" | 8 #include "media/blink/websourcebuffer_impl.h" |
9 #include "media/filters/chunk_demuxer.h" | 9 #include "media/filters/chunk_demuxer.h" |
10 #include "third_party/WebKit/public/platform/WebCString.h" | 10 #include "third_party/WebKit/public/platform/WebCString.h" |
11 #include "third_party/WebKit/public/platform/WebString.h" | 11 #include "third_party/WebKit/public/platform/WebString.h" |
12 | 12 |
13 using ::blink::WebString; | 13 using ::blink::WebString; |
14 using ::blink::WebMediaSource; | 14 using ::blink::WebMediaSource; |
15 | 15 |
16 namespace media { | 16 namespace media { |
17 | 17 |
18 #define STATIC_ASSERT_MATCHING_STATUS_ENUM(webkit_name, chromium_name) \ | 18 #define STATIC_ASSERT_MATCHING_STATUS_ENUM(webkit_name, chromium_name) \ |
19 static_assert(static_cast<int>(WebMediaSource::webkit_name) == \ | 19 static_assert(static_cast<int>(WebMediaSource::webkit_name) == \ |
20 static_cast<int>(ChunkDemuxer::chromium_name), \ | 20 static_cast<int>(ChunkDemuxer::chromium_name), \ |
21 "mismatching status enum values: " #webkit_name) | 21 "mismatching status enum values: " #webkit_name) |
22 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusOk, kOk); | 22 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusOk, kOk); |
23 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusNotSupported, kNotSupported); | 23 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusNotSupported, kNotSupported); |
24 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusReachedIdLimit, kReachedIdLimit); | 24 STATIC_ASSERT_MATCHING_STATUS_ENUM(AddStatusReachedIdLimit, kReachedIdLimit); |
25 #undef STATIC_ASSERT_MATCHING_STATUS_ENUM | 25 #undef STATIC_ASSERT_MATCHING_STATUS_ENUM |
26 | 26 |
27 WebMediaSourceImpl::WebMediaSourceImpl( | 27 WebMediaSourceImpl::WebMediaSourceImpl(ChunkDemuxer* demuxer, |
28 ChunkDemuxer* demuxer, LogCB log_cb) | 28 const scoped_refptr<MediaLog>& media_log) |
29 : demuxer_(demuxer), | 29 : demuxer_(demuxer), media_log_(media_log) { |
30 log_cb_(log_cb) { | |
31 DCHECK(demuxer_); | 30 DCHECK(demuxer_); |
32 } | 31 } |
33 | 32 |
34 WebMediaSourceImpl::~WebMediaSourceImpl() {} | 33 WebMediaSourceImpl::~WebMediaSourceImpl() {} |
35 | 34 |
36 WebMediaSource::AddStatus WebMediaSourceImpl::addSourceBuffer( | 35 WebMediaSource::AddStatus WebMediaSourceImpl::addSourceBuffer( |
37 const blink::WebString& type, | 36 const blink::WebString& type, |
38 const blink::WebVector<blink::WebString>& codecs, | 37 const blink::WebVector<blink::WebString>& codecs, |
39 blink::WebSourceBuffer** source_buffer) { | 38 blink::WebSourceBuffer** source_buffer) { |
40 std::string id = base::GenerateGUID(); | 39 std::string id = base::GenerateGUID(); |
(...skipping 36 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
77 } | 76 } |
78 | 77 |
79 demuxer_->MarkEndOfStream(pipeline_status); | 78 demuxer_->MarkEndOfStream(pipeline_status); |
80 } | 79 } |
81 | 80 |
82 void WebMediaSourceImpl::unmarkEndOfStream() { | 81 void WebMediaSourceImpl::unmarkEndOfStream() { |
83 demuxer_->UnmarkEndOfStream(); | 82 demuxer_->UnmarkEndOfStream(); |
84 } | 83 } |
85 | 84 |
86 } // namespace media | 85 } // namespace media |
OLD | NEW |