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

Unified Diff: extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc

Issue 1911403003: [chrome.displaySource] Move video stream info creation to encoders. (Closed) Base URL: https://chromium.googlesource.com/chromium/src@master
Patch Set: Rebase, thead checker DCHECK Created 4 years, 8 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: extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc
diff --git a/extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc b/extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc
index 1b3d4b12d7349efb3bb59762844292736a4e40ad..a4d44f5f9c0880d81bc08c68ba2f9b03c622e747 100644
--- a/extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc
+++ b/extensions/renderer/api/display_source/wifi_display/wifi_display_media_pipeline.cc
@@ -73,8 +73,8 @@ void WiFiDisplayMediaPipeline::RequestIDRPicture() {
enum WiFiDisplayMediaPipeline::InitializationStep : unsigned {
INITIALIZE_FIRST,
- INITIALIZE_MEDIA_PACKETIZER = INITIALIZE_FIRST,
- INITIALIZE_VIDEO_ENCODER,
+ INITIALIZE_VIDEO_ENCODER = INITIALIZE_FIRST,
+ INITIALIZE_MEDIA_PACKETIZER,
INITIALIZE_MEDIA_SERVICE,
INITIALIZE_LAST = INITIALIZE_MEDIA_SERVICE
};
@@ -103,11 +103,6 @@ void WiFiDisplayMediaPipeline::OnInitialize(
}
switch (current_step) {
- case INITIALIZE_MEDIA_PACKETIZER:
- DCHECK(!packetizer_);
- CreateMediaPacketizer();
- init_step_callback.Run(true);
- break;
case INITIALIZE_VIDEO_ENCODER:
DCHECK(!video_encoder_);
if (type_ & wds::VideoSession) {
@@ -119,6 +114,11 @@ void WiFiDisplayMediaPipeline::OnInitialize(
init_step_callback.Run(true);
}
break;
+ case INITIALIZE_MEDIA_PACKETIZER:
+ DCHECK(!packetizer_);
+ CreateMediaPacketizer();
+ init_step_callback.Run(true);
+ break;
case INITIALIZE_MEDIA_SERVICE:
service_callback_.Run(
mojo::GetProxy(&media_service_),
@@ -131,12 +131,10 @@ void WiFiDisplayMediaPipeline::OnInitialize(
void WiFiDisplayMediaPipeline::CreateMediaPacketizer() {
DCHECK(!packetizer_);
std::vector<WiFiDisplayElementaryStreamInfo> stream_infos;
+
if (type_ & wds::VideoSession) {
- std::vector<WiFiDisplayElementaryStreamDescriptor> descriptors;
- descriptors.emplace_back(
- WiFiDisplayElementaryStreamDescriptor::AVCTimingAndHRD::Create());
- stream_infos.emplace_back(WiFiDisplayElementaryStreamInfo::VIDEO_H264,
- std::move(descriptors));
+ DCHECK(video_encoder_);
+ stream_infos.push_back(video_encoder_->CreateElementaryStreamInfo());
}
if (type_ & wds::AudioSession) {
@@ -156,8 +154,7 @@ void WiFiDisplayMediaPipeline::CreateMediaPacketizer() {
}
packetizer_.reset(new WiFiDisplayMediaPacketizer(
- base::TimeDelta::FromMilliseconds(200),
- std::move(stream_infos),
+ base::TimeDelta::FromMilliseconds(200), stream_infos,
base::Bind(&WiFiDisplayMediaPipeline::OnPacketizedMediaDatagramPacket,
base::Unretained(this))));
}

Powered by Google App Engine
This is Rietveld 408576698