Add support for XR30 native GMBs on Mac |
|||||
Issue descriptionSibling but to 776093 for Mac. Enable XR30 thingies and use them, in Mac
,
Jan 4 2018
ccameron@ left a comment in a CL [1] about checking if we can use 1010102 IOSurfaces as overlays. From an incomplete perspective, I think it boils down to if -[CALayer setContents:] would be happy with a 10bpc IOSurface, so I took the sample app in crbug.com/510087 and frankenstenised it [2,3] to make it work (it needed a file I didn't have so just put some moving colors using glClearColor()). What I see is that 10bpc rasters nothing (black) on my MBP OS X 10.12.6 (Early 2015), whereas on my iMac 10.13.2 Late 2015, I can see the moving colors as intended. This is, essentially matching capabilities, so if the OS supports 10 bpc the CALayer is also happy accepting them, IIUC. [1] https://chromium-review.googlesource.com/c/chromium/src/+/842948#message-2fc65b3d1bcfc3b28493c92533da609eead8edf8 [2] https://github.com/yellowdoge/screen_info/blob/master/texquad-iosurface.mm#L117 [3] https://github.com/yellowdoge/screen_info/blob/master/texquad-iosurface.mm#L155
,
Jan 5 2018
Just upgraded my MBP early 2015 to 10.13.2 and now the micro demo works: I can see the colors changing, so High Sierra has added logic to understand the 1010102 format.
,
Jan 9 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/877759a311eb7b92c1ebff9b3957994e27555e9f commit 877759a311eb7b92c1ebff9b3957994e27555e9f Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Tue Jan 09 22:54:08 2018 io_surface mac cleanup: Remove |force_color_space| |force_color_space| was added in [1] but its use was removed in [2]. [1] https://codereview.chromium.org/2871893002/diff/40001/ui/gfx/mac/io_surface.cc [2] https://chromium-review.googlesource.com/c/chromium/src/+/698347/3/ui/gfx/mac/io_surface.cc Bug: 797347 Change-Id: I4671ddd669a5e6b20bd1b43e47555c8ffd85eab9 Reviewed-on: https://chromium-review.googlesource.com/857423 Commit-Queue: ccameron <ccameron@chromium.org> Reviewed-by: ccameron <ccameron@chromium.org> Cr-Commit-Position: refs/heads/master@{#528150} [modify] https://crrev.com/877759a311eb7b92c1ebff9b3957994e27555e9f/ui/gfx/mac/io_surface.cc
,
Jan 12 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5d682ec24e2f049d24867bbfccfe9be7ae67a00b commit 5d682ec24e2f049d24867bbfccfe9be7ae67a00b Author: Miguel Casas <mcasas@chromium.org> Date: Fri Jan 12 17:30:26 2018 GLImageNativePixmap minor cleanup This CL uses gfx::BufferFormatToString(format) in LOG(ERROR) statements and changes an if(!bla) return false; return true; into return bla; No new code, just a cleanup that arouse in crrev.com/c/862326. Bug: 797347 Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I5675a7c3646ca29211edb9efb39fd7571d347685 Reviewed-on: https://chromium-review.googlesource.com/863944 Reviewed-by: David Reveman <reveman@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#528984} [modify] https://crrev.com/5d682ec24e2f049d24867bbfccfe9be7ae67a00b/ui/gl/gl_image_native_pixmap.cc
,
Jan 16 2018
After some more testing and re-reading the documentation we know believe that AR30 is indeed not supported in intel KBL (nor in SKL, for the case); attaching the appropriate snapshot taken from [1], "Volume 12: Display". [1] https://01.org/linuxgraphics/hardware-specification-prms/2016-intelr-processors-based-kaby-lake-platform
,
Jan 16 2018
Hopefully now with the "attached file" :-)
,
Jan 16 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/1a7b952b780b91dc853344b98a5c49b2e2ca01ed commit 1a7b952b780b91dc853344b98a5c49b2e2ca01ed Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Tue Jan 16 23:41:56 2018 GpuMemoryBuffer IOSurface: wire 1010102 format This CL teaches GpuMemoryBuffers on Mac to recognize the RGB 1010102 format and also adds the translations to the appropriate GL formats so that it can be bound by CGLTexImageIOSurface2D. It also extends the current GLImageIOSurfaceTests. The value 'R10k' is actually taken from CoreVideo Framework [1], while the internal format, format and type used in CGLTexImage2D() can be found in CGLIOSurface.h, e.g. [2] CQ-DEPEND=CL:860618 [1] https://developer.apple.com/documentation/corevideo/1563591-pixel_format_identifiers/kcvpixelformattype_30rgb?language=objc [2] https://github.com/phracker/MacOSX-SDKs/blob/HEAD/MacOSX10.12.sdk/System/Library/Frameworks/OpenGL.framework/Versions/A/Headers/CGLIOSurface.h#L102 Bug: 797347 Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: Ibf0fa42f5692f67e0fac1d0345e3ff730866c2c2 Reviewed-on: https://chromium-review.googlesource.com/842948 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: David Reveman <reveman@chromium.org> Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Reviewed-by: ccameron <ccameron@chromium.org> Cr-Commit-Position: refs/heads/master@{#529520} [modify] https://crrev.com/1a7b952b780b91dc853344b98a5c49b2e2ca01ed/ui/gfx/mac/io_surface.cc [modify] https://crrev.com/1a7b952b780b91dc853344b98a5c49b2e2ca01ed/ui/gl/gl_image_io_surface.mm [modify] https://crrev.com/1a7b952b780b91dc853344b98a5c49b2e2ca01ed/ui/gl/gl_image_io_surface_unittest.cc
,
Jan 18 2018
,
Jan 19 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/5f81c6ec4cfe9024df59d91496d036231f9d9791 commit 5f81c6ec4cfe9024df59d91496d036231f9d9791 Author: Miguel Casas <mcasas@chromium.org> Date: Fri Jan 19 02:52:06 2018 Add FeatureFlags chromium_image_xr30 capability This CL adds a FeatureInfo::FeatureFlags.chromium_image_xr30 to indicate that XR30 (aka BGRX_2101010) is supported, and propagates it to the context's gpu::Capabilities.chromium_image_ar30, and teaches a few other context-related classes about this format. Bug: 797347 ,776093 Test: unit tests and crrev.com/c/862326. Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I8794aa2a45eb47f4809eeee18a1fc3a3bfcce5ed Reviewed-on: https://chromium-review.googlesource.com/868172 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Reviewed-by: Robert Sesek <rsesek@chromium.org> Cr-Commit-Position: refs/heads/master@{#530402} [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/common/capabilities.h [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/common/gpu_memory_buffer_support.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/service/feature_info.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/service/feature_info.h [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/service/gles2_cmd_decoder.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/service/gles2_cmd_decoder_passthrough.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/service/texture_manager.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/command_buffer/tests/gl_unittest.cc [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/gpu/ipc/common/gpu_command_buffer_traits_multi.h [modify] https://crrev.com/5f81c6ec4cfe9024df59d91496d036231f9d9791/ui/gl/gl_bindings.h
,
Jan 19 2018
,
Jan 20 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a208cabada5ea8aef741ebcca208af018bf292b0 commit a208cabada5ea8aef741ebcca208af018bf292b0 Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Sat Jan 20 03:23:19 2018 Roll src/third_party/libyuv 50f9e61..09db0c4 📈 09db0c4 H010ToAR30 in 1 step with SSSE3 assembly by Frank Barchard 37f9721 Add LibYUVConvertTest.TestH010ToAR30 unittest by Frank Barchard ecab543 Remove MEMOPREG x64 NaCL macros by Frank Barchard b33e0f9 Remove MEMOPMEM x64 NaCL macros by Frank Barchard a875ed1 Remove VMEMOPREG x64 NaCL macros by Frank Barchard 030042a Remove VEXTOPMEM x64 NaCL macros by Frank Barchard 5088f00 Remove MEMACCESS x64 NaCL macros by Frank Barchard e3797d1 Remove MEMOPARG x64 NaCL macros by Frank Barchard c682abe libyuv: fix undefined mul overflow by Frank Barchard caeb9dc [ndk] Add android ndk deps in libyuv DEPS by Shenghua Zhang 3694891 Remove MEMLEA x64 NaCL macros by Frank Barchard a214214 Remove x64 native_client macros. by Frank Barchard 00d526d H010ToARGB_AVX2 optimized conversion by Frank Barchard 55310f9 Remove NACL_R14 macro by Frank Barchard Bug: 797347 , libyuv:751 Change-Id: I9d325bef1dea9d378cd0a25aa2e8a57338698d5b Reviewed-on: https://chromium-review.googlesource.com/876446 Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#530740} [modify] https://crrev.com/a208cabada5ea8aef741ebcca208af018bf292b0/DEPS
,
Jan 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e commit dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Tue Jan 23 19:02:36 2018 Mac: teach GpuMemoryBufferVideoFramePool to handle XR30 This CL teaches GpuMemoryBufferVideoFramePool to handle XR30 formats, when context capabilities' image_xr30 is enabled and the incoming data is of 10 bit per component type. This CL also enables the necessary checks in the gles2 and GpuMemoryBuffer support to recongnise this format in Mac only (other platforms coming soon). Test with high bit depth videos e.g.: 'http://crosvideo.appspot.com?codec=vp9.2&loop=true' and media/test/data/... - bear-320x180-hi10p-vp9.webm - bear-320x180-hi10p.mp4 (this is an H.264 part 10, 10bpc) - blackwhite_yuv420p_hi10p.mp4 - bear-320x180-hi12p-vp9.webm Also covered in e.g. content_browsertests' MediaColorTest.Yuv420pHighBitDepth which would fail if the colors were inverted. Bug: 797347 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I8e73a7558d5506875d1547983d4e5e796a543aeb Reviewed-on: https://chromium-review.googlesource.com/862326 Reviewed-by: Daniele Castagna <dcastagna@chromium.org> Reviewed-by: Robert Sesek <rsesek@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Reviewed-by: Antoine Labour <piman@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#531293} [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/content/renderer/media/gpu/gpu_video_accelerator_factories_impl.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/gpu/command_buffer/client/gles2_implementation.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/gpu/ipc/common/gpu_memory_buffer_support.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/media/video/gpu_memory_buffer_video_frame_pool.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/media/video/gpu_memory_buffer_video_frame_pool_unittest.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/media/video/gpu_video_accelerator_factories.h [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/media/video/mock_gpu_video_accelerator_factories.cc [modify] https://crrev.com/dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e/ui/gl/gl_image_io_surface.mm
,
Jan 23 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/692b3b47879c75c1321ec759cb10fdd3f59e9fcc commit 692b3b47879c75c1321ec759cb10fdd3f59e9fcc Author: Joe Downing <joedow@chromium.org> Date: Tue Jan 23 21:26:28 2018 Revert "Mac: teach GpuMemoryBufferVideoFramePool to handle XR30" This reverts commit dacf14c4bd19bcc4d5b74daeca97344ef6a31a5e. Reason for revert: Causing failure on Linux MSAN builder: https://uberchromegw.corp.google.com/i/chromium.memory/builders/Linux%20MSan%20Tests/builds/7431 Original change's description: > Mac: teach GpuMemoryBufferVideoFramePool to handle XR30 > > This CL teaches GpuMemoryBufferVideoFramePool to handle XR30 > formats, when context capabilities' image_xr30 is enabled > and the incoming data is of 10 bit per component type. > > This CL also enables the necessary checks in the gles2 and > GpuMemoryBuffer support to recongnise this format in Mac only > (other platforms coming soon). > > Test with high bit depth videos e.g.: > 'http://crosvideo.appspot.com?codec=vp9.2&loop=true' > and media/test/data/... > - bear-320x180-hi10p-vp9.webm > - bear-320x180-hi10p.mp4 (this is an H.264 part 10, 10bpc) > - blackwhite_yuv420p_hi10p.mp4 > - bear-320x180-hi12p-vp9.webm > > Also covered in e.g. content_browsertests' > MediaColorTest.Yuv420pHighBitDepth > which would fail if the colors were inverted. > > Bug: 797347 > Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel > Change-Id: I8e73a7558d5506875d1547983d4e5e796a543aeb > Reviewed-on: https://chromium-review.googlesource.com/862326 > Reviewed-by: Daniele Castagna <dcastagna@chromium.org> > Reviewed-by: Robert Sesek <rsesek@chromium.org> > Reviewed-by: Dale Curtis <dalecurtis@chromium.org> > Reviewed-by: Antoine Labour <piman@chromium.org> > Commit-Queue: Miguel Casas <mcasas@chromium.org> > Cr-Commit-Position: refs/heads/master@{#531293} TBR=dalecurtis@chromium.org,mcasas@chromium.org,dcastagna@chromium.org,rsesek@chromium.org,piman@chromium.org Change-Id: Ibc1979309377edc919206dbffd9f8a1258bf6acd No-Presubmit: true No-Tree-Checks: true No-Try: true Bug: 797347 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Reviewed-on: https://chromium-review.googlesource.com/881588 Reviewed-by: Joe Downing <joedow@chromium.org> Commit-Queue: Joe Downing <joedow@chromium.org> Cr-Commit-Position: refs/heads/master@{#531355} [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/content/renderer/media/gpu/gpu_video_accelerator_factories_impl.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/gpu/command_buffer/client/gles2_implementation.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/gpu/ipc/common/gpu_memory_buffer_support.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/media/video/gpu_memory_buffer_video_frame_pool.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/media/video/gpu_memory_buffer_video_frame_pool_unittest.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/media/video/gpu_video_accelerator_factories.h [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/media/video/mock_gpu_video_accelerator_factories.cc [modify] https://crrev.com/692b3b47879c75c1321ec759cb10fdd3f59e9fcc/ui/gl/gl_image_io_surface.mm
,
Jan 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/e257e8e2361d35d69a8df96d468e81cda33c998a commit e257e8e2361d35d69a8df96d468e81cda33c998a Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Wed Jan 24 03:23:16 2018 RELAND: Mac: teach GpuMemoryBufferVideoFramePool to handle XR30 Original CL got reverted due to MSAN finding a use-of-unitialized-value; PS4 initializes it before use. TBR=piman@chromium.org, dcastagna@chromium.org, rsesek@chromium.org, dalecurtis@chromium.org ˘ Original CL description: ----------------------------------------------- This CL teaches GpuMemoryBufferVideoFramePool to handle XR30 formats, when context capabilities' image_xr30 is enabled and the incoming data is of 10 bit per component type. This CL also enables the necessary checks in the gles2 and GpuMemoryBuffer support to recongnise this format in Mac only (other platforms coming soon). Test with high bit depth videos e.g.: 'http://crosvideo.appspot.com?codec=vp9.2&loop=true' and media/test/data/... - bear-320x180-hi10p-vp9.webm - bear-320x180-hi10p.mp4 (this is an H.264 part 10, 10bpc) - blackwhite_yuv420p_hi10p.mp4 - bear-320x180-hi12p-vp9.webm Also covered in e.g. content_browsertests' MediaColorTest.Yuv420pHighBitDepth which would fail if the colors were inverted. Bug: 797347 Cq-Include-Trybots: master.tryserver.chromium.android:android_optional_gpu_tests_rel;master.tryserver.chromium.linux:linux_optional_gpu_tests_rel;master.tryserver.chromium.mac:mac_optional_gpu_tests_rel;master.tryserver.chromium.win:win_optional_gpu_tests_rel Change-Id: I1283095909daca8cb96e024b2812d77de52ac008 NOTRY=true (because ios-simulator keeps failing). Change-Id: I1283095909daca8cb96e024b2812d77de52ac008 Reviewed-on: https://chromium-review.googlesource.com/882081 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#531408} [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/content/renderer/media/gpu/gpu_video_accelerator_factories_impl.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/gpu/command_buffer/client/gles2_implementation.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/gpu/ipc/common/gpu_memory_buffer_support.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/media/video/gpu_memory_buffer_video_frame_pool.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/media/video/gpu_memory_buffer_video_frame_pool_unittest.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/media/video/gpu_video_accelerator_factories.h [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/media/video/mock_gpu_video_accelerator_factories.cc [modify] https://crrev.com/e257e8e2361d35d69a8df96d468e81cda33c998a/ui/gl/gl_image_io_surface.mm
,
Jan 24 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/a1110c20b0613375803ef728b7a54f755c073703 commit a1110c20b0613375803ef728b7a54f755c073703 Author: Frank Barchard <fbarchard@google.com> Date: Wed Jan 24 21:41:42 2018 Roll libyuv r1691 for C99 types. Switch types to C99 int8_t etc Types are defined in basic_types.h Also optimizes I420ToAR30 26% faster 92e22cf Lint cleanup after C99 change CL f1c5345 Define basic_types backward compatible layer 7e38988 Switch to C99 types 13771ff basic_types.h - remove unused macros a11ffa1 NV12 format documentation added. 8af6ea4 I420ToAR30 in 1 step SSSE3 assembly Bug: 797347 , libyuv:774 , libyuv:751 Test: try bots passed for local libyuv build Change-Id: If1060f71882886c237a46e1bb7791e3f5f419073 Reviewed-on: https://chromium-review.googlesource.com/881922 Reviewed-by: Miguel Casas <mcasas@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#531693} [modify] https://crrev.com/a1110c20b0613375803ef728b7a54f755c073703/DEPS
,
Jan 25 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/45c6a9b671b191c2bcdfe876b0d0398d92d26795 commit 45c6a9b671b191c2bcdfe876b0d0398d92d26795 Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Thu Jan 25 18:13:58 2018 GpuMemoryBufferVideoFramePool: correct color space correction crrev.com/c/882081 landed a correction of the incoming VideoFrame colorspace [1,2], to have a MatrixID::RGB matrix. This was (and is) not needed and wrong, because we might lose container color space information, and in reality what we want is to tell VideoResourceUpdater to manipulate this resource as RGB, so this CL corrects this situation. [1] https://cs.chromium.org/chromium/src/media/video/gpu_memory_buffer_video_frame_pool.cc?sq=package:chromium&dr=CSs&l=451 [2] https://cs.chromium.org/chromium/src/media/video/gpu_memory_buffer_video_frame_pool.cc?sq=package:chromium&dr=CSs&l=462 Bug: 797347 Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.android:android_optional_gpu_tests_rel Change-Id: I3f22fdc82395ece5181cb2ce198ed2c838cf49a7 Reviewed-on: https://chromium-review.googlesource.com/885041 Reviewed-by: ccameron <ccameron@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#531946} [modify] https://crrev.com/45c6a9b671b191c2bcdfe876b0d0398d92d26795/cc/resources/video_resource_updater.cc [modify] https://crrev.com/45c6a9b671b191c2bcdfe876b0d0398d92d26795/media/video/gpu_memory_buffer_video_frame_pool.cc
,
Jan 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/78800d85df7918f82562dceb901d182c90f0a1d1 commit 78800d85df7918f82562dceb901d182c90f0a1d1 Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Tue Jan 30 00:05:58 2018 XR30 correct IOSurface and GMBVideoFramePool component ordering This CL corrects the wrong UV ordering for the call to x010ToAR30() in GpuMemoryBufferVideoFramePool, and also corrects the IOSurface format used for creation, from 'R10k' to 'l10r' [1], the latter having the correct channel endianness (i.e. XR30 == BGRX2101010 [2] . tested via e.g. ./out/gn/Chromium.app/Contents/MacOS/Chromium 'http://crosvideo.appspot.com?codec=vp9.2&loop=true' ./out/gn/Chromium.app/Contents/MacOS/Chromium 'http://crosvideo.appspot.com?codec=vp9.2&loop=true' --disable-mac-overlays both showing correct colors :-) [1] https://github.com/phracker/MacOSX-SDKs/blob/HEAD/MacOSX10.13.sdk/System/Library/Frameworks/CoreVideo.framework/Versions/A/Headers/CVPixelBuffer.h#L83 [2] https://github.com/torvalds/linux/blob/master/include/uapi/drm/drm_fourcc.h#L98 Bug: 797347 Change-Id: I56c06fc06bef950ba2053750cdd7aee937e3c00b Reviewed-on: https://chromium-review.googlesource.com/891521 Reviewed-by: ccameron <ccameron@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Dale Curtis <dalecurtis@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#532675} [modify] https://crrev.com/78800d85df7918f82562dceb901d182c90f0a1d1/media/video/gpu_memory_buffer_video_frame_pool.cc [modify] https://crrev.com/78800d85df7918f82562dceb901d182c90f0a1d1/ui/gfx/mac/io_surface.cc
,
Jan 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/d1823b5b0ee13dd8883fda3eff4de541806bbdaf commit d1823b5b0ee13dd8883fda3eff4de541806bbdaf Author: Frank Barchard <fbarchard@google.com> Date: Tue Jan 30 15:09:50 2018 Roll libyuv r1694 for AVX2 10 bit YUV AVX2 version of H010ToAR30_Opt is 42% faster on Broadwell. Add ABGRToAR30 fully optimized for AVX2 and SSSE3. Add AR30ToABGR, unoptimized, 1000 iterations of 720p: Was SSSE3 H010ToAR30_Opt (635 ms) Was SSSE3 I420ToAR30_Opt (635 ms) Now AVX2 H010ToAR30_Opt (448 ms) Now AVX2 I420ToAR30_Opt (446 ms) ffec313 ABGRToAR30 used AVX2 with reversed shuffler ff8ab9b AR30ToABGR for 10 to 8 bit RGB on Android ed96b7b AVX2 port of H010ToAR30_AVX2 c95fd57 AVX2 port of I010ToAR30_AVX2 3f43ecc Add H420ToAR30 and a test that does a histogram Bug: 797347 , libyuv:751 Test: try bots passed for local libyuv build Change-Id: I2ea965b65b6757dc31ab1cdb706dc02c68afeab3 Reviewed-on: https://chromium-review.googlesource.com/892340 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#532876} [modify] https://crrev.com/d1823b5b0ee13dd8883fda3eff4de541806bbdaf/DEPS
,
Feb 5 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/48222f94328b91c70ebc3613d7aea6ebdfdb90cb commit 48222f94328b91c70ebc3613d7aea6ebdfdb90cb Author: Miguel Casas-Sanchez <mcasas@chromium.org> Date: Mon Feb 05 23:20:22 2018 IOSurface colour space: Use explicit ICC for HDR This CL uses the 2020 CGColorSpaceRef when playing back high bit depth content that is labelled as having e.g. transfer function SMPTE ST.2084 [1]. (This is Mac specific because other platforms use the shaders in [2]). [1] http://go/bt.2100 , table 4 [2] https://cs.chromium.org/chromium/src/ui/gfx/color_transform.cc?type=cs&q=SMPTEST2084&sq=package:chromium&l=617 Bug: 797347 Change-Id: I943b41a8b7372f6eb641524fac85be8da58afa11 Reviewed-on: https://chromium-review.googlesource.com/896719 Reviewed-by: ccameron <ccameron@chromium.org> Commit-Queue: Miguel Casas <mcasas@chromium.org> Cr-Commit-Position: refs/heads/master@{#534528} [modify] https://crrev.com/48222f94328b91c70ebc3613d7aea6ebdfdb90cb/ui/gfx/mac/io_surface.cc
,
Feb 20 2018
,
Aug 9
|
|||||
►
Sign in to add a comment |
|||||
Comment 1 by kainino@chromium.org
, Dec 22 2017