New issue
Advanced search Search tips
Note: Color blocks (like or ) mean that a user may not be available. Tooltip shows the reason.

Issue 859969 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Aug 27
Cc:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 3
Type: Bug



Sign in to add a comment

Simplify compositor_frame_metadata.mojom

Project Member Reported by fsam...@chromium.org, Jul 3

Issue description

Currently, all fields of CompositorFrameMetadata are serialized and deserialized on all platforms. Many fields, however, are android specific and do not need to be shipped on other platforms. We should simply ifdef out those fields.

As an example, see render_frame_metadata.mojom

https://cs.chromium.org/chromium/src/content/common/render_frame_metadata.mojom
 
Owner: moh...@chromium.org
Status: Started (was: Untriaged)
Spreadsheet to track fields of CompositorFrameMetadata and their usage in Android/non-Android code:

https://docs.google.com/spreadsheets/d/18um3LtodNUDkatHNGA5jMaMru0r67t9lZgEbcKpo23c/edit?usp=sharing
Project Member

Comment 3 by bugdroid1@chromium.org, Aug 13

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/f278b1abe88a0ce2113770121a08a4df080cbd34

commit f278b1abe88a0ce2113770121a08a4df080cbd34
Author: Mohsen Izadi <mohsen@chromium.org>
Date: Mon Aug 13 17:19:11 2018

Limit CompositorFrameMetadata::selection to Clank

Platforms other than Android, use selection sent in RenderFrameMetadata
rather than the one in CompositorFrameMetadata. There is no need to
serialize/deserialize and send the unused data on each frame.

BUG= 859969 

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ibfde9270deae40ebc57e15251b70597fd3e6a0f7
Reviewed-on: https://chromium-review.googlesource.com/1172142
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Fady Samuel <fsamuel@chromium.org>
Reviewed-by: Ali Juma <ajuma@chromium.org>
Commit-Queue: Mohsen Izadi <mohsen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#582626}
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/components/viz/common/quads/compositor_frame_metadata.h
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/content/common/content_param_traits_macros.h
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.cc
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.h
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/services/viz/public/cpp/compositing/struct_traits_unittest.cc
[modify] https://crrev.com/f278b1abe88a0ce2113770121a08a4df080cbd34/services/viz/public/interfaces/compositing/compositor_frame_metadata.mojom

Project Member

Comment 4 by bugdroid1@chromium.org, Aug 23

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/6f48ce68f8f1a9350c150f0ea2ac17d635740557

commit 6f48ce68f8f1a9350c150f0ea2ac17d635740557
Author: Mohsen Izadi <mohsen@chromium.org>
Date: Thu Aug 23 21:16:55 2018

Limit some compositor frame metadata fields to Android

These fields are not used on other platforms; so there is no need to
send them:
 - |max_page_scale_factor|;
 - |root_layer_size|;
 - |root_overflow_y_hidden|.

Note that |min_page_scale_factor| is used on Mac.

BUG= 859969 

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: I27d23f9b32e93805ab204b44a0999fb0c72e585f
Reviewed-on: https://chromium-review.googlesource.com/1158856
Reviewed-by: vmpstr <vmpstr@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Commit-Queue: Mohsen Izadi <mohsen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#585617}
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/cc/trees/layer_tree_host_impl_unittest.cc
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/cc/trees/layer_tree_host_unittest.cc
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/components/viz/common/quads/compositor_frame_metadata.h
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.cc
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.h
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/services/viz/public/cpp/compositing/struct_traits_unittest.cc
[modify] https://crrev.com/6f48ce68f8f1a9350c150f0ea2ac17d635740557/services/viz/public/interfaces/compositing/compositor_frame_metadata.mojom

Project Member

Comment 5 by bugdroid1@chromium.org, Aug 27

The following revision refers to this bug:
  https://chromium.googlesource.com/chromium/src.git/+/5fb3f7f8b886864748b544f7742894899cf57dce

commit 5fb3f7f8b886864748b544f7742894899cf57dce
Author: Mohsen Izadi <mohsen@chromium.org>
Date: Mon Aug 27 18:49:35 2018

Limit top/bottom controls data in CompositorFrameMetadata to Android

These fields of CompositorFrameMetadata are not used on other platforms:
 - |top_controls_height|,
 - |top_controls_shown_ratio|,
 - |bottom_controls_height|,
 - |bottom_controls_shown_ratio|.

BUG= 859969 

Cq-Include-Trybots: luci.chromium.try:android_optional_gpu_tests_rel;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Ibe602785bf2214bd371b3ed64964f112e3c7f149
Reviewed-on: https://chromium-review.googlesource.com/1184237
Reviewed-by: Fady Samuel <fsamuel@chromium.org>
Reviewed-by: Andrey Kosyakov <caseq@chromium.org>
Reviewed-by: Daniel Cheng <dcheng@chromium.org>
Reviewed-by: Thomas Guilbert <tguilbert@chromium.org>
Reviewed-by: vmpstr <vmpstr@chromium.org>
Commit-Queue: Mohsen Izadi <mohsen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#586340}
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/cc/trees/layer_tree_host_impl.cc
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/components/viz/common/quads/compositor_frame_metadata.h
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/components/viz/service/frame_sinks/video_capture/frame_sink_video_capturer_impl.cc
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/content/browser/devtools/protocol/page_handler.cc
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/media/base/video_frame_metadata.h
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.cc
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/services/viz/public/cpp/compositing/compositor_frame_metadata_struct_traits.h
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/services/viz/public/cpp/compositing/struct_traits_unittest.cc
[modify] https://crrev.com/5fb3f7f8b886864748b544f7742894899cf57dce/services/viz/public/interfaces/compositing/compositor_frame_metadata.mojom

Status: Fixed (was: Started)

Sign in to add a comment