本文整理汇总了C++中MediaStreamTrackVector::remove方法的典型用法代码示例。如果您正苦于以下问题:C++ MediaStreamTrackVector::remove方法的具体用法?C++ MediaStreamTrackVector::remove怎么用?C++ MediaStreamTrackVector::remove使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类MediaStreamTrackVector
的用法示例。
在下文中一共展示了MediaStreamTrackVector::remove方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: removeRemoteTrack
void MediaStream::removeRemoteTrack(MediaStreamComponent* component)
{
if (ended())
return;
MediaStreamTrackVector* tracks = 0;
switch (component->source()->type()) {
case MediaStreamSource::TypeAudio:
tracks = &m_audioTracks;
break;
case MediaStreamSource::TypeVideo:
tracks = &m_videoTracks;
break;
}
size_t index = notFound;
for (size_t i = 0; i < tracks->size(); ++i) {
if ((*tracks)[i]->component() == component) {
index = i;
break;
}
}
if (index == notFound)
return;
RefPtr<MediaStreamTrack> track = (*tracks)[index];
tracks->remove(index);
scheduleDispatchEvent(MediaStreamTrackEvent::create(eventNames().removetrackEvent, false, false, track));
}
示例2: removeRemoteSource
void MediaStream::removeRemoteSource(MediaStreamSource* source)
{
if (ended())
return;
MediaStreamTrackVector* tracks = 0;
switch (source->type()) {
case MediaStreamSource::Audio:
tracks = &m_audioTracks;
break;
case MediaStreamSource::Video:
tracks = &m_videoTracks;
break;
}
size_t index = notFound;
for (size_t i = 0; i < tracks->size(); ++i) {
if ((*tracks)[i]->source() == source) {
index = i;
break;
}
}
if (index == notFound)
return;
m_descriptor->removeSource(source);
RefPtr<MediaStreamTrack> track = (*tracks)[index];
tracks->remove(index);
scheduleDispatchEvent(MediaStreamTrackEvent::create(eventNames().removetrackEvent, false, false, track));
}