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

Unified Diff: content/renderer/media/media_stream_video_track.cc

Issue 2339193002: Wip - cl for implemening VideoTrackSource::ApplyConstraints(constraints, VideoTrack) and adopt safe…
Patch Set: Created 4 years, 3 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/media/media_stream_video_track.cc
diff --git a/content/renderer/media/media_stream_video_track.cc b/content/renderer/media/media_stream_video_track.cc
index e23b290328ddc6aafdea984452fa1336165dd720..cdbb8ac18dfa27f9765dae75286351509dba5d0b 100644
--- a/content/renderer/media/media_stream_video_track.cc
+++ b/content/renderer/media/media_stream_video_track.cc
@@ -196,18 +196,32 @@ MediaStreamVideoTrack::FrameDeliverer::GetBlackFrame(
// static
blink::WebMediaStreamTrack MediaStreamVideoTrack::CreateVideoTrack(
- MediaStreamVideoSource* source,
- const blink::WebMediaConstraints& constraints,
- const MediaStreamVideoSource::ConstraintsCallback& callback,
- bool enabled) {
+ MediaStreamVideoSource* source) {
blink::WebMediaStreamTrack track;
track.initialize(source->owner());
- track.setTrackData(
- new MediaStreamVideoTrack(source, constraints, callback, enabled));
+ source->ConnectToTrack(track);
+
+ blink::WebMediaConstraints constraints;
+ constraints.initialize();
+ source->ApplyConstraints(track, constraints,
+ MediaStreamVideoSource::ConstraintsCallback());
+
return track;
}
// static
+void MediaStreamVideoTrack::InitializeVideoTrack(MediaStreamVideoSource* source,
+ const blink::WebMediaStreamTrack& track) {
+ DCHECK(!track.isNull());
+ source->ConnectToTrack(track);
+
+ blink::WebMediaConstraints constraints;
+ constraints.initialize();
+ source->ApplyConstraints(track, constraints,
+ MediaStreamVideoSource::ConstraintsCallback());
+}
+
+// static
MediaStreamVideoTrack* MediaStreamVideoTrack::GetVideoTrack(
const blink::WebMediaStreamTrack& track) {
if (track.isNull() ||
@@ -218,22 +232,19 @@ MediaStreamVideoTrack* MediaStreamVideoTrack::GetVideoTrack(
}
MediaStreamVideoTrack::MediaStreamVideoTrack(
- MediaStreamVideoSource* source,
- const blink::WebMediaConstraints& constraints,
- const MediaStreamVideoSource::ConstraintsCallback& callback,
+ base::WeakPtr<MediaStreamVideoSource> source,
bool enabled)
: MediaStreamTrack(true),
frame_deliverer_(
new MediaStreamVideoTrack::FrameDeliverer(source->io_task_runner(),
enabled)),
- constraints_(constraints),
- source_(source->GetWeakPtr()) {
- DCHECK(!constraints.isNull());
- source->AddTrack(this,
+ source_(source) {
+// DCHECK(!constraints.isNull());
+/* source->AddTrack(this,
base::Bind(
&MediaStreamVideoTrack::FrameDeliverer::DeliverFrameOnIO,
frame_deliverer_),
- constraints, callback);
+ constraints, callback);*/
}
MediaStreamVideoTrack::~MediaStreamVideoTrack() {
@@ -243,6 +254,13 @@ MediaStreamVideoTrack::~MediaStreamVideoTrack() {
DVLOG(3) << "~MediaStreamVideoTrack()";
}
+VideoCaptureDeliverFrameCB MediaStreamVideoTrack::frame_input() const {
+ DCHECK(main_render_thread_checker_.CalledOnValidThread());
+ return base::Bind(
+ &MediaStreamVideoTrack::FrameDeliverer::DeliverFrameOnIO,
+ frame_deliverer_);
+}
+
void MediaStreamVideoTrack::AddSink(MediaStreamVideoSink* sink,
const VideoCaptureDeliverFrameCB& callback,
bool is_sink_secure) {
« no previous file with comments | « content/renderer/media/media_stream_video_track.h ('k') | content/renderer/media/pepper_to_video_track_adapter.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698