2163 Commits

Author SHA1 Message Date
Frank Barchard
d4c3f45eb6 libyuv r1749 upstream for I444ToNV12
Bug: libyuv:858
Change-Id: Iacf70938ace6258e5bbd397cd78414f1025474c5
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2154331
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-04-17 09:16:46 +00:00
Frank Barchard
27d846c57d Replace phoglund in libyuv OWNERS wth mbonadei
Patrik is leaving the company.

Bug: None
Change-Id: Ifd872700ee1f4ca5272a045513d0dcd9f5efe7d6
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2154253
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-04-17 09:16:26 +00:00
Shiyou Yin
ca954a3419 Add unittest TestLinuxMipsMsaMmi.
This unittest help to test MipsCpuCaps.

Change-Id: I9e0ceeed0e5243446eaafa27e8de4c5f8163b09e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2133314
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-04-16 19:51:27 +00:00
Frank Barchard
f813b8a810 Refine function MipsCpuCaps.
1. Refactored function MipsCpuCaps.
2. allow msa and mmi can be enabled together.

Signed-off-by: Jiaxun Yang <jiaxun.yang@flygoat.com>
Signed-off-by: Shiyou Yin <yinshiyou-hf@loongson.cn>
Change-Id: I7330d0551a6a167e4c76d37e4defcc20783f5815
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2131145
Reviewed-by: Hsiu Wang <hsiu@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-04-01 18:49:34 +00:00
Frank Barchard
7e05059557 Apply clang format to libyuv source
Bug: None
Change-Id: Ifd16b59d7f0dbf4402dd5741bb89d1ec06dfaac8
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2131868
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Hsiu Wang <hsiu@google.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-04-01 18:07:34 +00:00
Shiyou Yin
59b29c5f4d Fix prob of disabling mmi on loongson3 variant.
If 'mips_arch_variant=loongson3' is setted without 'mips_use_mmi=true',
undefined reference of MMI functions will be reported.

Change-Id: I2e91d63e1fa2d6c0db907aaab978227c87c991ac
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2129285
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-03-31 20:25:25 +00:00
Frank Barchard
aabcc477bd RGB24Mirror function
Bug: b/151960427
Change-Id: I413db0011a4ed87eefc0dd166bb8e076b5aa4b1d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2116639
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
2020-03-24 20:13:08 +00:00
Frank Barchard
7f00d67d7c Remove HAVE_JPEG requirement from headers.
JPeg is currently only enabled on Windows and Linux builds, so only
call the functions if needed and available for your target platform.

Bug: b/152178870
Change-Id: I99082d2d6b1440b26c4fe6840dfafe6fc9b1df9d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2115190
Reviewed-by: Hsiu Wang <hsiu@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-03-23 21:39:53 +00:00
Frank Barchard
b5e223ac4c Upstream all libyuv changes to version 1746 Prefetch for all arm functions - helps performance at higher resolutions Make MirrorPlane function public.
Bug: libyuv:855
Change-Id: I4020face6b52767ee78d81870314285d63e98b95
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2113650
Reviewed-by: Hsiu Wang <hsiu@google.com>
2020-03-21 20:19:44 +00:00
Byoungchan Lee
45f1f2b201 Remove unnessary .DS_Store file.
Bug: None
Change-Id: I6c6f4d06af61be2cb23f376bafd29c15edc9207b
No-Try: True
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2062847
Reviewed-by: Patrik Höglund <phoglund@chromium.org>
Commit-Queue: Patrik Höglund <phoglund@chromium.org>
2020-02-24 08:31:12 +00:00
Frank Barchard
3db22ebc4b RAWToJ400 and RGBToJ400 use 2 step row function for Intel. RAWToJ400 Was 3996 ms, now 3309. 20.7% faster.
Call a row function for each row, based on ARGBToI400 code.
But implement row functions as 2 step conversion.  Adds the
row functions:
RAWToYJ, RGBToYJ, SSSE3 and AVX2 versions, and Any versions.
The smaller row buffer is more cache friendly on large images.

The max cache size can be configured, and is currently:
// Maximum temporary width for wrappers to process at a time, in pixels.
And the row buffer is
  SIMD_ALIGNED(uint8_t row[MAXTWIDTH * 4]);
So 8192 bytes are used for the row buffer, leaving the rest for source
and destination buffers.

blaze-bin/third_party/libyuv/libyuv_test '--gunit_filter=*R*To?400_Opt' --libyuv_width=3600 --libyuv_height=2500 --libyuv_repeat=1000 --libyuv_flags=-1 --libyuv_cpu_info=-1 | sortms

Was
RAWToJ400_Opt (3996 ms)
ARGBToI400_Opt (3964 ms)
RGB24ToJ400_Opt (3960 ms)
ARGBToJ400_Opt (3909 ms)
RGBAToJ400_Opt (3885 ms)

Now
ARGBToJ400_Opt (4091 ms)
ARGBToI400_Opt (3936 ms)
RGBAToJ400_Opt (3428 ms)
RGB24ToJ400_Opt (3324 ms)
RAWToJ400_Opt (3309 ms)

Bug: libyuv:854, b/147753855
Change-Id: Ieb65fbda94e812c737f4c3c74107354b73c4bcd2
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2016203
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2020-01-23 03:23:38 +00:00
Frank Barchard
1cea4235af RAWToJ400 for big endian RGB to grey scale.
On Pixel 3
Was
BM_ConvertToGray/1280/720/3                        2360958 ns      2334984 ns         2999
BM_ConvertToGray/1279/721/3                        2360289 ns      2334329 ns         2994
BM_ConvertGrayTensorflowCoefficients/1280/720/3    2983296 ns      2947113 ns         2259
BM_ConvertGrayTensorflowCoefficients/1279/721/3    2871205 ns      2835359 ns         2170

Now
BM_ConvertToGray/1280/720/3                        2358469 ns      2334068 ns         2997
BM_ConvertToGray/1279/721/3                        2364584 ns      2336892 ns         2995
BM_ConvertGrayTensorflowCoefficients/1280/720/3     281312 ns       278244 ns        25170
BM_ConvertGrayTensorflowCoefficients/1279/721/3     351310 ns       347229 ns        20217

BUG=libyuv:854

Change-Id: If2192affc2d3219e0fb824737d75b9374a25d709
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/2003236
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
2020-01-16 00:29:11 +00:00
Frank Barchard
6e6f81b803 Floating point Gaussian kernels
On SkylakeX for 720p
TestGaussPlane_F32 (657 ms)

On Pixel3
TestGaussPlane_F32 (1787 ms)

Bug: libyuv:852, b/145611468
Change-Id: I9859af1b9381621067992305727da285f82bdded
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1949667
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Marat Dukhan <maratek@google.com>
2019-12-09 04:45:59 +00:00
Frank Barchard
d82f4baf5f Upstream minor changes. Faster tests, Faster YUV Rotate180 and Mirror
Bug: libyuv:840, libyuv:849: b/144318948
Change-Id: I303c02ac2b838a09d3e623df7a69ffc085fe3cd2
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1914781
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-11-13 20:02:40 +00:00
Frank Barchard
6afd9becdf I420ToI010 fix for missing LIBYUV_API in DLL
Bug: libyuv:850
Change-Id: Ib10208955bd1b5614f9278fcbef2340bb7425888
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1902252
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
2019-11-12 18:20:51 +00:00
Frank Barchard
6502179e4c I210ToAR30 support for 422 10 bit to 10 bit RGB
BUG=960620, libyuv:845, b/129864744

Change-Id: I43b152568b7f297f81624d47e56a334c127be17b
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1901465
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-11-06 19:37:22 +00:00
Frank Barchard
1f12946068 Add U444ToABGR, J444ToABGR, H444ToABGR, H444ToARGB and ConvertToARGB support
BUG=960620, libyuv:845, b/129864744

Change-Id: I9f80cda3be8e13298c596fac514f65a23a38d3d0
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1900310
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-11-05 22:11:20 +00:00
Frank Barchard
53e014c99d BT.2020 pull in tests and upstream fixes; expose a few more methods.
This adds some missing prototypes from the BT.2020 CL as well as expands
the H444 and J444 results.

BUG=960620, libyuv:845, b/129864744

Change-Id: I8ea3959379f1bb2edb857d4eb90fb9a1f6aa4e03
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1899093
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-11-05 20:01:59 +00:00
Dale Curtis
f15793d6af Add support for BT.2020.
This pulls in the changes that Firefox made to add BT.2020 support as well
as expands them to the existing 10-bit support. So we now have the following
input formats: U420, U422, U444, U010.

BUG=960620, libyuv:845

Change-Id: If0c47853a465d0ed660f849db08e71489fe1b9c2
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1884468
Commit-Queue: Dale Curtis <dalecurtis@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-10-29 21:06:48 +00:00
Frank Barchard
4205d7a6c9 Fix for jpeg to allow fuzz
Bug: None
Change-Id: I6eecef4f755ffb9e3eeee9f8ca7890b3445b14a5
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1884878
Reviewed-by: Dale Curtis <dalecurtis@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-10-28 23:35:13 +00:00
Hans Wennborg
53b529e362 Remove #pragma clang loop vectorize_width
Recent versions of Clang started warning when the loop doesn't get
vectorized, such as when compiling with -Oz (see bug).

To fix the build, remove the pragma and let the compiler decide on its
own when to vectorize.

Bug: chromium:1015665
Change-Id: I40a610c9e0d94cfd577a6cd2b01e6fdaa08bef7d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1872580
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Hans Wennborg <hans@chromium.org>
2019-10-21 20:18:43 +00:00
Frank Barchard
22f8aad8bc RAWToRGBA for 3 channel OCR
Replace ARM64 only row function with high level function
that implements SSSE3, 32 bit Neon and C.

Compared to 2 step RAWToARGB + ARGBToRGBA on row level:
3.1x faster on ARM
6.2% faster on Intel

BUG=b/140748379

Change-Id: Ia8636d9e4fcdbe10b8c2e81610a54728e29845cd
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1860914
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-10-14 22:27:37 +00:00
Eric Foo
98a4882de5 Add "# COMPONENT" to libyuv OWNERS file
See https://tinyurl.com/yxau5sc4 for context.

Bug: 977050
Change-Id: I5b4f86267980bc97760aa23e1f28cbed890d8a9d
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1846507
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-10-09 00:21:03 +00:00
Frank Barchard
fce0fed542 ARGBToY use 8 bit precision instead of 7 bit.
Neon and GCC Intel optimized, but win32 and mips not optimized.

BUG=libyuv:842, b/141482243

Change-Id: Ia56fa85c8cc1db51f374bd0c89b56d21ec94afa7
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1825642
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Miguel Casas <mcasas@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
2019-10-07 23:01:10 +00:00
Mirko Bonadei
e278d4617f Allowing C++14 in libyuv.
Bug: None
Change-Id: I2600e1012fa3fab5b8d2ad6e4af44dfa97e95ea4
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1789304
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
2019-09-17 17:53:26 +00:00
Mirko Bonadei
7320ac5277 Re-enable optimize_max to fix UBSan.
This reverts the changes to BUILD.gn done by [1] because they were
breaking UBSan. At least one between:
//build/config/compiler:default_optimization
//build/config/compiler:optimize_max

need to be selected, this CL re-enables optimize_max since that was the
previous default.

[1] - https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1790959

Bug: None
Change-Id: I136179c2e814f7aba9cc8515cc4825cbd41f8abb
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1809137
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-09-17 17:39:54 +00:00
Frank Barchard
c85a7b3ae3 MMI Optimized functions I422ToARGB for 1080p video
Improves playback performance for 1080p video on www.youku.com

BUG=libyuv:841

Change-Id: Iabe7693fba276162af0290863f46e214ab86fb6c
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1790959
Reviewed-by: Miguel Casas <mcasas@chromium.org>
2019-09-11 21:06:21 +00:00
libyuv-ci-autoroll-builder
eeccc19a99 Roll chromium_revision 08ed8f8301..30ccb0cb50 (693151:695606)
Change log: 08ed8f8301..30ccb0cb50
Full diff: 08ed8f8301..30ccb0cb50

Changed dependencies:
* src/base: 3bd361995d..a8b47403c0
* src/build: 2ee8adf846..9112428bb9
* src/buildtools: 74cfb57006..cd73d21598
* src/ios: 2f3f83ac15..9101b264f6
* src/testing: ae52062d9c..3d7e946f5b
* src/third_party: 3a7aa3a24c..2ce10380bd
* src/third_party/android_ndk: https://chromium.googlesource.com/android_ndk.git/+log/62582753e8..89e8db0cdf
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/2e1d9ff85e..c5f9c06821
* src/third_party/freetype/src: 3fa35aa420..3de1b8d0b0
* src/third_party/googletest/src: 565f1b8482..33a0d4f6d7
* src/third_party/harfbuzz-ng/src: bbad1b8298..170b5dd856
* src/third_party/libjpeg_turbo: d460d6b1cb..baa5dc2425
* src/tools: 716cf8f74e..a9a3a3075b
DEPS diff: 08ed8f8301..30ccb0cb50/DEPS

Clang version changed 8288453f6aac05080b751b680455349e09d49825:8455294f2ac13d587b13d728038a9bffa7185f2b
Details: 08ed8f8301..30ccb0cb50/tools/clang/scripts/update.py

TBR=libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com
BUG=None

Change-Id: I26205cc328d1851ed70ae21d2dfcb7f6f7bb2b49
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1797295
Reviewed-by: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2019-09-11 14:17:25 +00:00
libyuv-ci-autoroll-builder
ea23edfb97 Roll chromium_revision 8d7ec560e9..08ed8f8301 (691142:693151)
Change log: 8d7ec560e9..08ed8f8301
Full diff: 8d7ec560e9..08ed8f8301

Changed dependencies:
* src/base: 1f06e5a1b0..3bd361995d
* src/build: 5e679e9417..2ee8adf846
* src/ios: a211ea4ecd..2f3f83ac15
* src/testing: a929c22e59..ae52062d9c
* src/third_party: bb0a504d2e..3a7aa3a24c
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/8e42ececca..2e1d9ff85e
* src/third_party/freetype/src: cbee985a2b..3fa35aa420
* src/third_party/googletest/src: 6a3d632f40..565f1b8482
* src/third_party/icu: 952ccb90fb..53f6b233a4
* src/tools: d354e37390..716cf8f74e
DEPS diff: 8d7ec560e9..08ed8f8301/DEPS

No update to Clang.

TBR=libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com
BUG=None

Change-Id: I3a2bc46d3fdf070d68f8c5cea048b73aa79d79bd
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1783844
Reviewed-by: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2019-09-04 14:29:23 +00:00
Mirko Bonadei
43d37c05e5 Update android_sdk/public/build-tools and third_party/android_deps.
This should fix the currently broken Chromium Roll [1]:

ninja: error:
          '../../third_party/android_sdk/public/build-tools/29.0.2/aidl',
          needed by 'gen/base/test/test_support_java_aidl.srcjar',
          missing and no known rule to make it

[1]- https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1774658

Bug: None
Change-Id: I5d35b3c0e6d950b2aa15801a507caf9307c49552
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1774728
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Patrik Höglund <phoglund@chromium.org>
2019-08-30 08:39:54 +00:00
Frank Barchard
f7b49c7e1a Disable tests via macro that refer to row.h
This is to resolve issues when the library is compiled with different
compiler and/or flags than the tests.

BUG=libyuv:836

Change-Id: I80727bfbd2fe1e02c842a7dba68a3deac941e23e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1757114
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-08-20 18:44:36 +00:00
libyuv-ci-autoroll-builder
7e7f229af9 Roll chromium_revision 2ab7c1917b..8f1ff9dfca (683574:685863)
Change log: 2ab7c1917b..8f1ff9dfca
Full diff: 2ab7c1917b..8f1ff9dfca

Changed dependencies:
* src/base: dae065e2ca..f7bce10653
* src/build: 63108fa2f2..58bc7764d7
* src/ios: 6bfc5e510b..89179694e2
* src/testing: 2cedc7b79a..77d64cea02
* src/third_party: 57a4f29cc3..3241af8019
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/4dfd5af701..81080a729a
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/4f68ff26e4..f970aa79fc
* src/third_party/freetype/src: 12af46b649..734d60f63c
* src/third_party/googletest/src: a45c24ac18..90a443f9c2
* src/third_party/harfbuzz-ng/src: 2e7021da7d..60485ab047
* src/third_party/libjpeg_turbo: 81aef9014e..cd241207cb
* src/tools: 11238ddd61..3487be6a2e
DEPS diff: 2ab7c1917b..8f1ff9dfca/DEPS

Clang version changed f7e52fbdb5a7af8ea0808e98458b497125a5eca1:7859fed6eaff162a995bbcc58b142a5358a882ee
Details: 2ab7c1917b..8f1ff9dfca/tools/clang/scripts/update.py

TBR=libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com
BUG=None

Change-Id: I756e1535a508ab4dc404f617f19897ada05a99fa
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1747686
Reviewed-by: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2019-08-10 14:20:50 +00:00
Frank Barchard
0bb2773a39 AVX2 versions of ABGRToNV12 and ABGRToNV21
BUG=libyuv:833

Change-Id: I9b6653e9c304b4e0805b7d3c8408ce57009c8559
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1740682
Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-08-07 18:16:34 +00:00
Frank Barchard
9b63884a3e Add ABGRToNV21 and ABGRToNV12
Fix ARGBToUVJRow_AVX2 constants for win32

BUG=libyuv:833, libyuv:839

Change-Id: Id4731a573d40d7a9b46fcc31c2fee295483e1ff6
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1739509
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Hirokazu Honda <hiroh@chromium.org>
2019-08-07 01:29:13 +00:00
libyuv-ci-autoroll-builder
a57b724ffb Roll chromium_revision bc5b06fa53..2ab7c1917b (681273:683574)
Change log: bc5b06fa53..2ab7c1917b
Full diff: bc5b06fa53..2ab7c1917b

Changed dependencies:
* src/base: 507fbe175b..dae065e2ca
* src/build: c3472b022f..63108fa2f2
* src/ios: adcf115a5a..6bfc5e510b
* src/testing: 5efdc1ca0c..2cedc7b79a
* src/third_party: cded3d1ebd..57a4f29cc3
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/ce4a26a406..4f68ff26e4
* src/third_party/freetype/src: b110acba9e..12af46b649
* src/third_party/googletest/src: b77e5c7625..a45c24ac18
* src/third_party/libjpeg_turbo: 14eba7addf..81aef9014e
* src/tools: 1e923835a8..11238ddd61
DEPS diff: bc5b06fa53..2ab7c1917b/DEPS

No update to Clang.

TBR=libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com
BUG=None

Change-Id: Ifabd4413e4cfd9b7c60a3a1aca31a7bed3acc240
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1733466
Reviewed-by: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2019-08-02 14:19:40 +00:00
Frank Barchard
fec9121b67 SwapUV AVX2 and SSSE3
Based on ARGBShuffle but with count adjusted and new shuffle mask

BUG=libyuv:809

Change-Id: Idd936ee6bedcf285607a68c2fc54d876b4becc01
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1711882
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-07-26 18:41:40 +00:00
libyuv-ci-autoroll-builder
22ae4bfa05 Roll chromium_revision e02114c8fa..bc5b06fa53 (678980:681273)
Change log: e02114c8fa..bc5b06fa53
Full diff: e02114c8fa..bc5b06fa53

Changed dependencies:
* src/base: ce23ecb4d8..507fbe175b
* src/build: c98642948c..c3472b022f
* src/buildtools: 7b7a5c0f25..74cfb57006
* src/ios: 9038e03eb1..adcf115a5a
* src/testing: 46959ed82d..5efdc1ca0c
* src/third_party: 3b2eb39e31..cded3d1ebd
* src/third_party/boringssl/src: https://boringssl.googlesource.com/boringssl.git/+log/09050cb498..4dfd5af701
* src/third_party/catapult: https://chromium.googlesource.com/catapult.git/+log/42a883d132..ce4a26a406
* src/third_party/googletest/src: 6077f444da..b77e5c7625
* src/third_party/icu: fd97d4326f..682a230923
* src/tools: a99b9c5b68..1e923835a8
DEPS diff: e02114c8fa..bc5b06fa53/DEPS

No update to Clang.

TBR=libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com
BUG=None

Change-Id: I750df9d0a3bd43efb707d26962bf3847d289fd93
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1720853
Reviewed-by: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
Commit-Queue: <libyuv-ci-autoroll-builder@chops-service-accounts.iam.gserviceaccount.com>
2019-07-26 14:22:59 +00:00
Oleh Prypin
db5c979247 Roll chromium_revision 4476bd69d1..e02114c8fa
Roll all versions in the DEPS file to match WebRTC's file
https://webrtc.googlesource.com/src/+/1a49c1338830b222bc6b22b4e0690615bcd6fa52/DEPS

Change log: 4476bd69d1..e02114c8fa

Bug: None
Change-Id: Id70ae5fbac30ab73f71b83d8a8637dca220e7d5c
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1709450
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Commit-Queue: Oleh Prypin <oprypin@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2019-07-19 14:42:00 +00:00
Mirko Bonadei
33b1c1a1b1 Fix chromium autoroller to parse new clang revision format.
TBR=magjed@chromium.org, fbarchard@chromium.org
Bug: None
Change-Id: Idf42e33ab4297c0439710532b4c57cb92d572018
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1708140
Commit-Queue: Mirko Bonadei <mbonadei@chromium.org>
Reviewed-by: Mirko Bonadei <mbonadei@chromium.org>
2019-07-18 12:43:27 +00:00
Frank Barchard
f1c00932df NV21 unittest and benchmark
BUG=libyuv:809

Change-Id: I75afb5612dcd05820479848a90ad16b07a7981bc
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1707229
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-07-18 02:13:02 +00:00
Frank Barchard
f9aacffa02 Fix arm unittest failure by removing unused FloatDivToByteRow.
Apply clang-format to fix jpeg if() for lint fix.
Change comments about 4th pixel for open source compliance.
Rename UVToVU to SwapUV for consistency with MergeUV.

BUG=b/135532289, b/136515133

Change-Id: I9ce377c57b1d4d8f8b373c4cb44cd3f836300f79
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1685936
Reviewed-by: Chong Zhang <chz@google.com>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-07-02 20:00:30 +00:00
Chong Zhang
c6dcbdfaac Sync up Android.bp file with master
Change-Id: I708b2253902cb2d3a78cf7a334f8846dd732b7d1
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1682526
Reviewed-by: Chong Zhang <chz@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Chong Zhang <chz@google.com>
2019-07-02 00:15:11 +00:00
Frank Barchard
09cfb2bbd6 Update to r1732 for more robust jpeg
Includes a rounding change for neon.
BUG=b/135532289

Change-Id: I36ffb57b55db6c64804ad169def865be1ac6d66e
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1684439
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Chong Zhang <chz@google.com>
2019-07-01 22:32:36 +00:00
Frank Barchard
af9bc4f67c RGB24ToJ420 for full range YUV
BUG=b/249563884

Change-Id: I41b45b274313ec22f5e3799000242da1ec692586
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1629527
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
2019-05-29 02:40:22 +00:00
Frank Barchard
681c6c6739 Add LIBYUV_API to NV12ToABGR and I444Rotate, I444Scale
Gaussian blur low levels ported to 32 bit neon.
But they are not hooked up to anything but a unittest.

Bug:b/248041731, b/132108021, b/129908793
Change-Id: Iccebb8ffd6b719810aa11dd770a525227da4c357
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1611206
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Chong Zhang <chz@google.com>
2019-05-14 01:18:06 +00:00
Emmanuel Weber
05f72b8602 add I444Scale and I444Rotate
Bug: b:132108021
Change-Id: Ife6abbd54c4620984e412c9244c6b65fe4c7946a
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1597418
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-05-06 23:43:11 +00:00
Frank Barchard
413a8d8041 Add AYUVToNV12 and NV21ToNV12
BUG=libyuv:832
TESTED=out/Release/libyuv_unittest --gtest_filter=*ToNV12* --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=1000 --libyuv_flags=-1 --libyuv_cpu_info=-1

R=rrwinterton@gmail.com

Change-Id: Id03b4613211fb6a6e163d10daa7c692fe31e36d8
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1560080
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-04-12 17:48:45 +00:00
Yun Liu
4bd08cbc0e Migrate android SDK path to third_party/android_sdk/public for libyuv
src repo CL: https://chromium-review.googlesource.com/c/chromium/src/+/1518245

Bug: 659808
Change-Id: Iea8bbcf0a58c4cb57a78d48488463643d6668664
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1542363
Commit-Queue: Yun Liu <yliuyliu@google.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-04-01 18:30:35 +00:00
Frank Barchard
5b6042fa0d add YUV24 and AYUV formats
Alternatives to RGB24 and AYUV for working with GPU.

BUG=libyuv:832
TESTED=out/Release/libyuv_unittest --gtest_filter=*NV21To???24* --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=1000 --libyuv_flags=-1 --libyuv_cpu_info=-1
R=rrwinterton@gmail.com

Change-Id: I5559c63f4bd4c847492fcb1571f7b03c58146689
Reviewed-on: https://chromium-review.googlesource.com/c/libyuv/libyuv/+/1501735
Reviewed-by: richard winterton <rrwinterton@gmail.com>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
2019-03-05 02:53:56 +00:00
Oleh Prypin
7ce50764c5 Remove infra/config directory because cq.cfg has been moved
https://chromium-review.googlesource.com/1437407 made it so that this cq.cfg has no effect.

Bug: chromium:916292
Change-Id: I2c35b11405836a54112611a9decd33bd21e1d4c3
Reviewed-on: https://chromium-review.googlesource.com/c/1442211
Commit-Queue: Frank Barchard <fbarchard@chromium.org>
Reviewed-by: Frank Barchard <fbarchard@chromium.org>
2019-01-30 01:01:22 +00:00