OLD | NEW |
1 /* | 1 /* |
2 * Copyright (C) 2011 Google Inc. All rights reserved. | 2 * Copyright (C) 2011 Google Inc. All rights reserved. |
3 * Copyright (C) 2011, 2012 Ericsson AB. All rights reserved. | 3 * Copyright (C) 2011, 2012 Ericsson AB. All rights reserved. |
4 * | 4 * |
5 * Redistribution and use in source and binary forms, with or without | 5 * Redistribution and use in source and binary forms, with or without |
6 * modification, are permitted provided that the following conditions | 6 * modification, are permitted provided that the following conditions |
7 * are met: | 7 * are met: |
8 * 1. Redistributions of source code must retain the above copyright | 8 * 1. Redistributions of source code must retain the above copyright |
9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
10 * 2. Redistributions in binary form must reproduce the above copyright | 10 * 2. Redistributions in binary form must reproduce the above copyright |
(...skipping 41 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
52 MediaStreamSource* source = track->component()->source(); | 52 MediaStreamSource* source = track->component()->source(); |
53 if (!containsSource(trackVector, source)) | 53 if (!containsSource(trackVector, source)) |
54 trackVector.append(track); | 54 trackVector.append(track); |
55 } | 55 } |
56 | 56 |
57 MediaStream* MediaStream::create(ExecutionContext* context) | 57 MediaStream* MediaStream::create(ExecutionContext* context) |
58 { | 58 { |
59 MediaStreamTrackVector audioTracks; | 59 MediaStreamTrackVector audioTracks; |
60 MediaStreamTrackVector videoTracks; | 60 MediaStreamTrackVector videoTracks; |
61 | 61 |
62 return adoptRefCountedGarbageCollectedWillBeNoop(new MediaStream(context, au
dioTracks, videoTracks)); | 62 return new MediaStream(context, audioTracks, videoTracks); |
63 } | 63 } |
64 | 64 |
65 MediaStream* MediaStream::create(ExecutionContext* context, MediaStream* stream) | 65 MediaStream* MediaStream::create(ExecutionContext* context, MediaStream* stream) |
66 { | 66 { |
67 ASSERT(stream); | 67 ASSERT(stream); |
68 | 68 |
69 MediaStreamTrackVector audioTracks; | 69 MediaStreamTrackVector audioTracks; |
70 MediaStreamTrackVector videoTracks; | 70 MediaStreamTrackVector videoTracks; |
71 | 71 |
72 for (size_t i = 0; i < stream->m_audioTracks.size(); ++i) | 72 for (size_t i = 0; i < stream->m_audioTracks.size(); ++i) |
73 processTrack(stream->m_audioTracks[i].get(), audioTracks); | 73 processTrack(stream->m_audioTracks[i].get(), audioTracks); |
74 | 74 |
75 for (size_t i = 0; i < stream->m_videoTracks.size(); ++i) | 75 for (size_t i = 0; i < stream->m_videoTracks.size(); ++i) |
76 processTrack(stream->m_videoTracks[i].get(), videoTracks); | 76 processTrack(stream->m_videoTracks[i].get(), videoTracks); |
77 | 77 |
78 return adoptRefCountedGarbageCollectedWillBeNoop(new MediaStream(context, au
dioTracks, videoTracks)); | 78 return new MediaStream(context, audioTracks, videoTracks); |
79 } | 79 } |
80 | 80 |
81 MediaStream* MediaStream::create(ExecutionContext* context, const MediaStreamTra
ckVector& tracks) | 81 MediaStream* MediaStream::create(ExecutionContext* context, const MediaStreamTra
ckVector& tracks) |
82 { | 82 { |
83 MediaStreamTrackVector audioTracks; | 83 MediaStreamTrackVector audioTracks; |
84 MediaStreamTrackVector videoTracks; | 84 MediaStreamTrackVector videoTracks; |
85 | 85 |
86 for (size_t i = 0; i < tracks.size(); ++i) | 86 for (size_t i = 0; i < tracks.size(); ++i) |
87 processTrack(tracks[i].get(), tracks[i]->kind() == "audio" ? audioTracks
: videoTracks); | 87 processTrack(tracks[i].get(), tracks[i]->kind() == "audio" ? audioTracks
: videoTracks); |
88 | 88 |
89 return adoptRefCountedGarbageCollectedWillBeNoop(new MediaStream(context, au
dioTracks, videoTracks)); | 89 return new MediaStream(context, audioTracks, videoTracks); |
90 } | 90 } |
91 | 91 |
92 MediaStream* MediaStream::create(ExecutionContext* context, MediaStreamDescripto
r* streamDescriptor) | 92 MediaStream* MediaStream::create(ExecutionContext* context, MediaStreamDescripto
r* streamDescriptor) |
93 { | 93 { |
94 return adoptRefCountedGarbageCollectedWillBeNoop(new MediaStream(context, st
reamDescriptor)); | 94 return new MediaStream(context, streamDescriptor); |
95 } | 95 } |
96 | 96 |
97 MediaStream::MediaStream(ExecutionContext* context, MediaStreamDescriptor* strea
mDescriptor) | 97 MediaStream::MediaStream(ExecutionContext* context, MediaStreamDescriptor* strea
mDescriptor) |
98 : ContextLifecycleObserver(context) | 98 : ContextLifecycleObserver(context) |
99 , m_stopped(false) | 99 , m_stopped(false) |
100 , m_descriptor(streamDescriptor) | 100 , m_descriptor(streamDescriptor) |
101 , m_scheduledEventTimer(this, &MediaStream::scheduledEventTimerFired) | 101 , m_scheduledEventTimer(this, &MediaStream::scheduledEventTimerFired) |
102 { | 102 { |
103 m_descriptor->setClient(this); | 103 m_descriptor->setClient(this); |
104 | 104 |
(...skipping 285 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
390 { | 390 { |
391 visitor->trace(m_audioTracks); | 391 visitor->trace(m_audioTracks); |
392 visitor->trace(m_videoTracks); | 392 visitor->trace(m_videoTracks); |
393 visitor->trace(m_scheduledEvents); | 393 visitor->trace(m_scheduledEvents); |
394 visitor->trace(m_descriptor); | 394 visitor->trace(m_descriptor); |
395 EventTargetWithInlineData::trace(visitor); | 395 EventTargetWithInlineData::trace(visitor); |
396 MediaStreamDescriptorClient::trace(visitor); | 396 MediaStreamDescriptorClient::trace(visitor); |
397 } | 397 } |
398 | 398 |
399 } // namespace blink | 399 } // namespace blink |
OLD | NEW |