- 19 Jan, 2018 1 commit
-
-
Frank Barchard authored
Tests accuracy of H010ToAR30 on grey scale ramp against float and computes a histogram to detect number of unique shades for each channel. With 2 step intermediate using 8 bit RGB, the test shows 256 unique values. [ RUN ] LibYUVConvertTest.TestH420ToARGB uniques: B 220, G, 220, R 220 [ OK ] LibYUVConvertTest.TestH420ToARGB (0 ms) [ RUN ] LibYUVConvertTest.TestH010ToARGB uniques: B 256, G, 256, R 256 [ OK ] LibYUVConvertTest.TestH010ToARGB (0 ms) [ RUN ] LibYUVConvertTest.TestH010ToAR30 uniques: B 256, G, 256, R 256 [ OK ] LibYUVConvertTest.TestH010ToAR30 (0 ms) Bug: libyuv:751 Test LibYUVConvertTest.TestH010ToAR30 unittest Change-Id: I6b1e1209247cb00b79b594127b02dae5217dc400 Reviewed-on: https://chromium-review.googlesource.com/875317Reviewed-by: Miguel Casas <mcasas@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 16 Jan, 2018 1 commit
-
-
Frank Barchard authored
MEMOPREG macros are deprecated in row.h Regular expressions to remove MEMOPREG macros: MEMOPREG(movd, 0x00, [u_buf], [v_buf], 1, xmm1) \ MEMOPREG\((.*), (.*), (.*), (.*), (.*), (.*)\) "\1 \2(%\3,%\4,\5),%%\6 \\n" MEMOPREG(movdqu,0x00,1,4,1,xmm2) MEMOPREG\((.*),(.*),(.*),(.*),(.*),(.*)\) "\1 \2(%\3,%\4,\5),%%\6 \\n" MEMOPREG(movdqu,0x00,1,4,1,xmm2) MEMOPREG\((.*),(.*),(.*),(.*),(.*),(.*)\)(.*)(//.*) "\1 \2(%\3,%\4,\5),%%\6 \\n" TBR=braveyao@chromium.org Bug: libyuv:702 Test: try bots pass Change-Id: If8743abd9af2e8c549d0c7d3d49733a9b0f0ca86 Reviewed-on: https://chromium-review.googlesource.com/865964Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 13 Jan, 2018 1 commit
-
-
Frank Barchard authored
MEMOPMEM macros are deprecated in row.h Usage examples MEMOPMEM(vmovdqu,ymm0,0x00,0,1,1) // vmovdqu %%ymm0,(%0,%1) MEMOPMEM(movdqu,xmm2,0x00,1,0,1) Regular expressions to remove MEMACCESS macros: MEMOPMEM\((.*),(.*),(.*),(.*),(.*),(.*)\)(.*)(//.*) "\1 %%\2,\3(%\4,%\5,\6)\7 \\n" MEMOPMEM\((.*),(.*),(.*),(.*),(.*),(.*)\) "\1 %%\2,\3(%\4,%\5,\6) \\n" TBR=braveyao@chromium.org Bug: libyuv:702 Test: try bots pass Change-Id: Id8c6963d544d16e39bb6a9a0536babfb7f554b3a Reviewed-on: https://chromium-review.googlesource.com/865934Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 12 Jan, 2018 4 commits
-
-
Frank Barchard authored
VMEMOPREG macros are deprecated in row.h Usage examples VMEMOPREG(vpavgb,0x00,0,4,1,ymm0,ymm0) // vpavgb (%0,%4,1),%%ymm0,%%ymm0 VMEMOPREG(vpavgb,0x20,0,4,1,ymm1,ymm1) Regular expressions to remove MEMACCESS macros: VMEMOPREG\((.*),(.*),(.*),(.*),(.*),(.*),(.*)\)(.*)(//.*) "\1 \2(%\3,%\4,\5),%%\6,%%\7 \\n" VMEMOPREG\((.*),(.*),(.*),(.*),(.*),(.*),(.*)\) "\1 \2(%\3,%\4,\5),%%\6,%%\7 \\n" TBR=braveyao@chromium.org Bug: libyuv:702 Test: try bots pass Change-Id: I472446606f7fd568fdf33aaacc22d5ed78673dab Reviewed-on: https://chromium-review.googlesource.com/865640Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
VEXTOPMEM macros are deprecated in row.h Usage examples VEXTOPMEM(vextractf128,1,ymm0,0x0,1,2,1) // vextractf128 $1,%%ymm0,(%1,%2,1) Regular expressions to remove MEMACCESS macros: VEXTOPMEM\((.*),(.*),(.*),(.*),(.*),(.*),(.*)\)(.*//.*) "\1 $\2,%\3,\4(%\5,%\6,\7) \\n" Bug: libyuv:702 Test: try bots pass Change-Id: I177edf9813128408e74816672dd25abb03a5e1ca Reviewed-on: https://chromium-review.googlesource.com/865283Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
MEMACCESS macros are deprecated in row.h Usage examples "movdqu " MEMACCESS(0) ",%%xmm0 \n" "movdqu " MEMACCESS2(0x10,0) ",%%xmm1 \n" Regular expressions to remove MEMACCESS macros: " MEMACCESS2\((.*),(.*)\) "(.*)\\n" \1(%\2)\3 \\n" " MEMACCESS\((.*)\) "(.*)\\n" (%\1)\2 \\n" Bug: libyuv:702 Test: try bots pass Change-Id: I42f62d5dede8ef2ea643e78c204371a7659d25e6 Reviewed-on: https://chromium-review.googlesource.com/862803Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
MEMOPARG macros are deprecated in row.h #opcode " " #offset "(%" #base ",%" #index "," #scale "),%" #arg "\n" Usage examples MEMOPARG(movzwl,0x00,1,3,1,k2) // movzwl (%1,%3,1),%k2 Regular expression to remove MEMACCESS macro: MEMOPARG\((.*),(.*),(.*),(.*),(.*),(.*)\)(.*//.*) "\1 \2(%\3,%\4,\5),%\6 \\n" Bug: libyuv:702 Test: try bots pass Change-Id: I4a5ad2abf5017e651576f4c8c784be1c8dbf5a83 Reviewed-on: https://chromium-review.googlesource.com/863108Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 10 Jan, 2018 4 commits
-
-
Frank Barchard authored
Bug: libyuv:771 Test: build asm with ubsan and check Change-Id: I966d0bff74eef9ddfbeb93965fbff24c1472927c Reviewed-on: https://chromium-review.googlesource.com/860898Reviewed-by: Weiyong Yao <braveyao@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
Shenghua Zhang authored
Because of the android sdk managed by CIPD (see go/use-adjective-apis), its deps repo ndk needs to be relocated, as well as hooked by the root DEPS instead of recursedeps. This CL addes android ndk deps in libyuv/DEPS. Bug: chromium:659808 Change-Id: I3d83c06d108d131ea1809c79955fae39d6cc737d Reviewed-on: https://chromium-review.googlesource.com/858433Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
Bug: libyuv:702 Test: try bots pass Change-Id: I0ee094551734368f2179c298e7bf423ec80a929c Reviewed-on: https://chromium-review.googlesource.com/857845Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
Bug: libyuv:702 Test: try bots pass Change-Id: I76d74b5f02fe9843418108b84742e2f714d1ab0a Reviewed-on: https://chromium-review.googlesource.com/855656Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 09 Jan, 2018 1 commit
-
-
Frank Barchard authored
AVX2 optimized 10 bit YUV to ARGB. Bug: libyuv:751 Test: H010ToARGB unittest Change-Id: I705630beb62714b52042c2a5dcdb8b7859e734ae Reviewed-on: https://chromium-review.googlesource.com/852563 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 08 Jan, 2018 2 commits
-
-
Frank Barchard authored
Bug: libyuv:702 Test: try bots still build Change-Id: I05317e45c885955fcda233bdddbd11ce1d246d90 Reviewed-on: https://chromium-review.googlesource.com/854770Reviewed-by: Weiyong Yao <braveyao@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
ABGR output is implemented using the same source code as ARGB, by swapping the u and v and supplying the mirrored conversion matrix. ABGR format (RGBA in memory) is popular on Android. Bug: libyuv:751 Test: H010ToABGR, I010ToABGR and I010ToARGB unittests Change-Id: I0b5103628c58dcb22a6442c03814d4d5972e0339 Reviewed-on: https://chromium-review.googlesource.com/852985 Commit-Queue: Miguel Casas <mcasas@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 07 Jan, 2018 1 commit
-
-
Frank Barchard authored
Previously H010ToAR30 was done in a 3 step conversion: H010ToH420, H420ToARGB, ARGBToAR30. This CL merges the first 2 steps into H010ToARGB, to improve performance. Caveat - only 10 bit YUV is supported at this time. Previously the low level code supported different numbers of bits - 9, 10, 12 or 16. Was 3 step conversion: LibYUVConvertTest.H010ToAR30_Any (1263 ms) LibYUVConvertTest.H010ToAR30_Unaligned (951 ms) LibYUVConvertTest.H010ToAR30_Invert (913 ms) LibYUVConvertTest.H010ToAR30_Opt (901 ms) Now 2 step conversion: LibYUVConvertTest.H010ToAR30_Any (853 ms) LibYUVConvertTest.H010ToAR30_Unaligned (811 ms) LibYUVConvertTest.H010ToAR30_Invert (781 ms) LibYUVConvertTest.H010ToAR30_Opt (755 ms) Bug: libyuv:751 Test: LibYUVConvertTest.H010ToAR30_Opt Change-Id: Ica7574040401cd57145a4827acdf3c0e58346a2a Reviewed-on: https://chromium-review.googlesource.com/853288Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Miguel Casas <mcasas@chromium.org>
-
- 05 Jan, 2018 2 commits
-
-
Frank Barchard authored
A sanity check that H010ToARGB is doing the correct math. The normal test only checks the C and ASM match, but they could both be wrong, or the common code could be wrong. This test checks a grey scale ramp matches expected results. Bug: libyuv:751 Test: LibYUVConvertTest.TestH420ToARGB and LibYUVConvertTest.TestH010ToARGB Change-Id: Ie8c2b91ac9993f41675c02d0dde9db72d0612450 Reviewed-on: https://chromium-review.googlesource.com/851474Reviewed-by: Miguel Casas <mcasas@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
SSSE3 optimized 10 bit YUV conversion to ARGB in single step. Bug: libyuv:751 Test: I010ToARGB Change-Id: I234b2850e35992113ee6bd638732bafc7010a60d Reviewed-on: https://chromium-review.googlesource.com/848238 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 04 Jan, 2018 1 commit
-
-
Frank Barchard authored
Changed dependencies: * src/third_party/lss: https://chromium.googlesource.com/linux-syscall-support.git/+log/63f24c8221..e6527b0cd4 TBR=phoglund@chromium.org BUG=libyuv:768 TEST=None Change-Id: Ieecd96f78c841b6defed0105430b2a09168b7b54 Reviewed-on: https://chromium-review.googlesource.com/849258Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 03 Jan, 2018 1 commit
-
-
Patrik Höglund authored
All other DEPS-using projects have migrated away from deps_os, so let us do the same. This also fixes the roll-svn-dep bug. Bug: chromium:798336, libyuv:768 Change-Id: I1528720766af9a0f0d4906aa0ad440408232f6d0 Reviewed-on: https://chromium-review.googlesource.com/848812 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Aaron Gable <agable@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 02 Jan, 2018 4 commits
-
-
Patrik Höglund authored
Bug: libyuv:768 Test: git checkout master && tools_libyuv/autoroller/roll_deps.py Change-Id: I55f21382cb947ecff2078eb9a0fa5572ceee64b5 Reviewed-on: https://chromium-review.googlesource.com/847001 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
Bug: libyuv:769 Test: try bots build Change-Id: I9633637cee1dc17bc62dd0598b1ea1edc15cf646 Reviewed-on: https://chromium-review.googlesource.com/847702Reviewed-by: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Weiyong Yao <braveyao@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
Convert planar 8 bit formats to planar 16 bit formats. Includes msan fix for Convert8To16Row_Opt unittest. I420 is YUV bt.601 8 bits per channel with 420 subsampling. I010 is YUV bt.601 10 bits per channel with 420 subsampling. I is color space - bt.601. The function does no color space conversion so H420ToI010 is aliased to this function as well. 0 = 420 subsampling. The chroma channels are half width / height. 10 = 10 bits per channel, stored in low 10 bits of 16 bit samples. For SSSE3 version: out/Release/libyuv_unittest --gtest_filter=*LibYUVConvertTest.I420ToI010_Opt --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=999 --libyuv_flags=-1 --libyuv_cpu_info=-1 [ RUN ] LibYUVConvertTest.I420ToI010_Opt [ OK ] LibYUVConvertTest.I420ToI010_Opt (276 ms) Bug: libyuv:751 Test: LibYUVConvertTest.I420ToI010_Opt Change-Id: I072876ee4fd74a2b74f459b628838bc808f9bdd2 Reviewed-on: https://chromium-review.googlesource.com/846421Reviewed-by: Miguel Casas <mcasas@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
LIBYUV_SSSE3_ONLY was for functions that have SSE2 and SSSE3 but are compiling for SSSE3, so SSE2 will never be used. Remove the SSE2 implementation of ARGBSHUFFLEROW_SSE2 and rely on SSSE3. Bug: libyuv: 769 Test: ~/intelsde/sde -p4 -- out/Release/libyuv_unittest --gtest_filter=LibYUVConvertTest.ARGBToABGR_Opt Change-Id: I7443f4d8ee3c6f47edd2cf1d5a1eb0f8d7a1eeeb Reviewed-on: https://chromium-review.googlesource.com/846541Reviewed-by: Weiyong Yao <braveyao@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-
- 28 Dec, 2017 1 commit
-
-
Frank Barchard authored
Convert planar 8 bit formats to planar 16 bit formats. Accepts a parameter that determines the number of bits. Bug: libyuv:751 Test: Convert8To16 unittest Change-Id: I8f6ffe64428ddf5769b87e0c069093a50a2541e9 Reviewed-on: https://chromium-review.googlesource.com/835410Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 21 Dec, 2017 2 commits
-
-
Frank Barchard authored
pshufd requires 16 byte aligned memory or a register. Use movd to a register to avoid a segfault if memory for float is misaligned Bug: libyuv:759 Test: 32 bit build of LibYUVPlanarTest.TestHalfFloatPlane_16bit_denormal Change-Id: I6fdcc4317453af5acd4700f9d46425bb2f4a205b Reviewed-on: https://chromium-review.googlesource.com/840459Reviewed-by: Miguel Casas <mcasas@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
VladimirTechMan authored
When developing WebRTC applications with custom video sources, libyuv's API is often the required part of the project. For that, application developers can link with a separate standalone instance of libyuv. However, it is even better to avoid that binary code duplication and link against libyuv as a part compiled into the WebRTC library. When building WebRTC as a static library target, the symbols from libyuv are normally accessible to the linker without any extra actions. When building WebRTC as a shared library, that does not work as the exported symbols are those marked as visible, while libyuv is built with the hidden visibility setting by default. This patch adds an extra flag to enable switching the symbol visibility to default when building shared library targets depending on libyuv in WebRTC and Chromium projects. By default the flag is not enabled, preserving the prior behaviour. Bug: NONE Change-Id: I48893cb9f54b1e1b49a34e14434e67f91d3e5e79 Reviewed-on: https://chromium-review.googlesource.com/827746Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 20 Dec, 2017 1 commit
-
-
Frank Barchard authored
Most conversion tests exactly match on Intel, so reduce max diff to zero for Intel and leave at 4 for ARM using a macro. TBR=braveyao@chromium.org Bug: libyuv:447 Test: libyuv_unittests pass Change-Id: Ife13a0dd9581b58135b39d95ff1081f74840655c Reviewed-on: https://chromium-review.googlesource.com/832927Reviewed-by: Frank Barchard <fbarchard@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 19 Dec, 2017 1 commit
-
-
Frank Barchard authored
Initial AR30ToARGB function to allow converion from AR30 to other formats if necessary and/or for testing. Not optimized at this point. Bug: libyuv:751 Test: LibYUVConvertTest.AR30ToARGB_Opt Change-Id: I38ef192315240f3caa7aee0218b38d5e88a2849f Reviewed-on: https://chromium-review.googlesource.com/833025 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 15 Dec, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:751 Test: LibYUVConvertTest.H010ToH010_Opt Change-Id: I996d309040a14193a97d05b62ac0b3e1ad1ee74b Reviewed-on: https://chromium-review.googlesource.com/823445 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Cheng Wang <wangcheng@google.com> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 14 Dec, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:765 Test: build for mips still passes Change-Id: I99105ad3951d2210c0793e3b9241c178442fdc37 Reviewed-on: https://chromium-review.googlesource.com/826404Reviewed-by: Weiyong Yao <braveyao@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 12 Dec, 2017 4 commits
-
-
Frank Barchard authored
For more complete support of AR30 format, add I420ToAR30 allowing the new RGB 10 bit format to be used from standard 8 bit I420 format. Bug: libyuv:751 Test: I420ToAR30 unittest added Change-Id: Ia8b0857447408bd6adab485158ce5f38d6dc2faa Reviewed-on: https://chromium-review.googlesource.com/823243Reviewed-by: Weiyong Yao <braveyao@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Frank Barchard authored
AR30 is optimized with 3 techniques 1. pmulhuw is used to replicate 8 bits to 10 bits. 2. Two channels are processed at a time. R and B, and A and G. 3. pshufb is used to shift and mask 2 channels of R and B Bug: libyuv:751 Test: ARGBToAR30_Opt Change-Id: I4e62d6caa4df7d0ae80395fa911d3c922b6b897b Reviewed-on: https://chromium-review.googlesource.com/822520Reviewed-by: richard winterton <rrwinterton@gmail.com> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
Mirko Bonadei authored
Using public_configs, client projects must rely on public_deps to propagate configurations up in the build graph. This is bad because public_deps allows the exposition of headers that live in another target. This can lead to a really unhealthy build. On the other side, all_dependent_configs is automatically propagated up in the build graph but if a target includes a libyuv header it is forced by GN to declare the dependency (and this will propagate libyuv_config). Bug: webrtc:8605, webrtc:8603 Change-Id: I4d71bb5de0b5b62a4ec110349223614f0b98e655 No-Try: True Reviewed-on: https://chromium-review.googlesource.com/822112 Commit-Queue: Mirko Bonadei <mbonadei@chromium.org> Reviewed-by: Patrik Höglund <phoglund@chromium.org>
-
Frank Barchard authored
AR30 is optimized with 3 techniques 1. vpmulhuw is used to replicate 8 bits to 10 bits. 2. Two channels are processed at a time. R and B, and A and G. 3. vpshufb is used to shift and mask 2 channels of R and B Red Blue With the 8 bit value in the upper bits, vpmulhuw by (1024+4) will produce a 10 bit value in the low 10 bits of each 16 bit value. This is whats wanted for the blue channel. The red needs to be shifted 4 left, so multiply by (1024+4)*16 for red. Alpha Green Alpha and Green are already in the high bits so vpand can zero out the other bits, keeping just 2 upper bits of alpha and 8 bit green. The same multiplier could be used for Green - (1024+4) putting the 10 bit green in the lsb. Alpha would be a simple multiplier to shift it into position. It wants a gap of 10 above the green. Green is 10 bits, so there are 6 bits in the low short. 4 more are needed, so a multiplier of 4 gets the 2 bits into the upper 16 bits, and then a shift of 4 is a multiply of 16, so (4*16) = 64. Then shift the result left 10 to position the A and G channels. Bug: libyuv:751 Test: ARGBToAR30_Opt Change-Id: Ie4f20dce18203bae7b75acb1fd5232db8a8a4f11 Reviewed-on: https://chromium-review.googlesource.com/820046 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Cheng Wang <wangcheng@google.com>
-
- 09 Dec, 2017 1 commit
-
-
Frank Barchard authored
Port ARGBToAR30Row_AVX2 to ARGBToAR30Row_SSE2 using same instructions but xmm registers and doing half as many pixels per loop. Bug: libyuv:751 Test: LibYUVConvertTest.ARGBToAR30_Opt Change-Id: Id644e54639133d1caf28ea3cd11ff6ab6891a673 Reviewed-on: https://chromium-review.googlesource.com/817918 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 08 Dec, 2017 1 commit
-
-
Frank Barchard authored
Reduce allocations of row buffers to 1 alloc/free. Do 2 rows at a time to avoid converting U and V planes twice. Bug: libyuv:715 Test: LibYUVConvertTest.H010ToAR30_Opt Change-Id: I2f3a03b4875df5e3b969112a78a1a0b28399fa2f Reviewed-on: https://chromium-review.googlesource.com/816021Reviewed-by: Cheng Wang <wangcheng@google.com>
-
- 07 Dec, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:751 Test: LibYUVConvertTest.H010ToARGB_Opt Change-Id: I668d3f3810e59a4fb6611503aae1c8edc7d596e7 Reviewed-on: https://chromium-review.googlesource.com/815015 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: richard winterton <rrwinterton@gmail.com>
-
- 05 Dec, 2017 1 commit
-
-
Frank Barchard authored
Add a comment in util/Makefile for how to enable OpenMP for MacOS. Requires updated gcc or clang compile. Bug: None Test: /usr/local/bin/g++-7 -msse2 -O3 -fopenmp -static-libgcc -o psnr_omp psnr.cc ssim.cc psnr_main.cc Change-Id: Icb3389bf8cf94f09a185fea055c69823b9fbc66b time ./psnr_omp -ssim -s 1920 1080 ~/test/garden2_mp4.yuv ~/test/garden2_ogv.yuv Reviewed-on: https://chromium-review.googlesource.com/807546Reviewed-by: Weiyong Yao <braveyao@chromium.org> Commit-Queue: Frank Barchard <fbarchard@chromium.org>
-
- 30 Nov, 2017 1 commit
-
-
Frank Barchard authored
Bug: libyuv:762 Test: NV21ToABGR unittest Change-Id: I71448ab83930339083f07eeafccf240c6cb41c48 Reviewed-on: https://chromium-review.googlesource.com/795212 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Cheng Wang <wangcheng@google.com>
-
- 28 Nov, 2017 1 commit
-
-
Frank Barchard authored
H010ToAR30 uses Convert16To8Row_SSSE3 to convert 10 bit YUV to 8 bit. Then standard YUV conversion can be used. This improves performance on low end CPUs. Future CL will by pass this conversion allowing for 10 bit YUV source, but the function will be useful as a utility for YUV conversions. Bug: libyuv:559, libyuv:751 Test: out/Release/libyuv_unittest --gtest_filter=*H010ToAR30* --libyuv_width=1280 --libyuv_height=720 --libyuv_repeat=999 --libyuv_flags=-1 --libyuv_cpu_info=-1 Change-Id: I9b3ef22d88a5fd861de4cf1900b4c6e8fd24d0af Reviewed-on: https://chromium-review.googlesource.com/792334 Commit-Queue: Frank Barchard <fbarchard@chromium.org> Reviewed-by: Frank Barchard <fbarchard@chromium.org>
-