Commit 198db2ac authored by Antonio Gomes's avatar Antonio Gomes Committed by Commit Bot

Change fake_rtc_rtp_transceiver_impl.cc to operate over MediaStreamSource

... instead of WebMediaStreamSource.

CL also converts DidStopMediaStreamSource() in html_media_element_capture.cc.

BUG=704136
R=guidou@chromium.org

Change-Id: Id88fe7e809210885157af84a5dc7b746b0a7f18f
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2283583
Commit-Queue: Antonio Gomes <tonikitoo@igalia.com>
Reviewed-by: default avatarGuido Urdaneta <guidou@chromium.org>
Cr-Commit-Position: refs/heads/master@{#785776}
parent a310f758
......@@ -26,6 +26,7 @@
#include "third_party/blink/renderer/platform/mediastream/media_stream_audio_source.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_component.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_descriptor.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_source.h"
#include "third_party/blink/renderer/platform/wtf/uuid.h"
namespace blink {
......@@ -229,11 +230,11 @@ void MediaElementEventListener::Invoke(ExecutionContext* context,
UpdateSources(context);
}
void DidStopMediaStreamSource(const WebMediaStreamSource& source) {
if (source.IsNull())
void DidStopMediaStreamSource(MediaStreamSource* source) {
if (!source)
return;
blink::WebPlatformMediaStreamSource* const platform_source =
source.GetPlatformSource();
WebPlatformMediaStreamSource* const platform_source =
source->GetPlatformSource();
DCHECK(platform_source);
platform_source->StopSource();
}
......
......@@ -5,6 +5,7 @@
#include <utility>
#include "third_party/blink/renderer/modules/peerconnection/fake_rtc_rtp_transceiver_impl.h"
#include "third_party/blink/renderer/platform/mediastream/media_stream_source.h"
#include "third_party/blink/renderer/platform/peerconnection/rtc_dtmf_sender_handler.h"
namespace blink {
......@@ -12,20 +13,18 @@ namespace blink {
MediaStreamComponent* CreateMediaStreamComponent(
const std::string& id,
scoped_refptr<base::SingleThreadTaskRunner> task_runner) {
blink::WebMediaStreamSource web_source;
web_source.Initialize(blink::WebString::FromUTF8(id),
blink::WebMediaStreamSource::kTypeAudio,
blink::WebString::FromUTF8("audio_track"), false);
std::unique_ptr<blink::MediaStreamAudioSource> audio_source_ptr =
std::make_unique<blink::MediaStreamAudioSource>(
std::move(task_runner), true /* is_local_source */);
blink::MediaStreamAudioSource* audio_source = audio_source_ptr.get();
// Takes ownership of |audio_source_ptr|.
web_source.SetPlatformSource(std::move(audio_source_ptr));
MediaStreamComponent* component =
MakeGarbageCollected<MediaStreamComponent>(web_source.Id(), web_source);
audio_source->ConnectToTrack(component);
auto* source = MakeGarbageCollected<MediaStreamSource>(
String::FromUTF8(id), MediaStreamSource::kTypeAudio,
String::FromUTF8("audio_track"), false);
auto audio_source = std::make_unique<blink::MediaStreamAudioSource>(
std::move(task_runner), true /* is_local_source */);
auto* audio_source_ptr = audio_source.get();
audio_source->SetOwner(source);
source->SetPlatformSource(std::move(audio_source));
auto* component =
MakeGarbageCollected<MediaStreamComponent>(source->Id(), source);
audio_source_ptr->ConnectToTrack(component);
return component;
}
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment