platform/upstream/libvpx.git
4 years agoMove pimpl to the function body of SimpleEncode
angiebird [Mon, 18 Nov 2019 18:37:15 +0000 (10:37 -0800)]
Move pimpl to the function body of SimpleEncode

Change-Id: Id4757d61916b8348d76c99dddbe48e68f2b3ef1a

4 years agoFix a bug in EncodeFrame test
angiebird [Fri, 15 Nov 2019 01:04:58 +0000 (17:04 -0800)]
Fix a bug in EncodeFrame test

Move key frame checks after EncodeFrame()

Change-Id: I4e3eded5dc54e757f85e846c4920cddc1ea7444b

4 years agoAdd namespace vp9
angiebird [Thu, 14 Nov 2019 20:35:13 +0000 (12:35 -0800)]
Add namespace vp9

Change-Id: I29d05557becbfc5d55d1cd1bb709e519d27c928b

4 years agoAdd copyright and header guard for simple_encode.h
angiebird [Wed, 13 Nov 2019 21:39:23 +0000 (13:39 -0800)]
Add copyright and header guard for simple_encode.h

Change-Id: Ib4502fc35202b36aa25f06c7c2bb5203673faa06

4 years agoClose the file that SimpleEncode opens in its ctor in its dtor.
Angie Chen [Wed, 20 Nov 2019 00:37:57 +0000 (16:37 -0800)]
Close the file that SimpleEncode opens in its ctor in its dtor.

Change-Id: I1e5d1be9f076c70ec1d7764d5703aeba8afd4436

4 years agoMerge changes I32ab6829,If47867d4,I4442de01
Angie Chiang [Wed, 20 Nov 2019 01:04:56 +0000 (01:04 +0000)]
Merge changes I32ab6829,If47867d4,I4442de01

* changes:
  Add coding_data_bit_size to EncodeFrameResult
  Pass in infile_path to SimpleEncode()
  Add SimpleEncode::EncodeFrameWithQuantizeIndex()

4 years agoMerge "Use a better model for tune=ssim"
Sai Deng [Wed, 20 Nov 2019 00:58:57 +0000 (00:58 +0000)]
Merge "Use a better model for tune=ssim"

4 years agoUse a better model for tune=ssim
sdeng [Mon, 18 Nov 2019 19:33:22 +0000 (11:33 -0800)]
Use a better model for tune=ssim

Comparing to the baseline tune=ssim, the average gains are
PSNR -0.55, SSIM -0.30, MS-SSIM -0.98, VMAF -1.26

Details: (150f VBR)
               PSNR    SSIM  MS-SSIM    VMAF
Lowres       -1.347   0.291   -0.307  -1.291
Midres       -0.628  -0.329   -1.011  -2.173
Hdres         0.781  -0.656   -1.319   0.210
Ugc360p      -2.695  -0.972   -1.503  -4.055
Lowres_bd10   0.074   0.196   -0.623  -0.835
Midres_bd10   0.517  -0.327   -1.124   0.566

Change-Id: Ie034eaedf20e1fe843921cafbb3b7ad9a2bc89d1

4 years agoAdd coding_data_bit_size to EncodeFrameResult
angiebird [Wed, 13 Nov 2019 02:57:39 +0000 (18:57 -0800)]
Add coding_data_bit_size to EncodeFrameResult

Change-Id: I32ab6829083c896ab2c6234e191939a000dea6e5

4 years agoAdd quantize_index to EncodeFrameResult
angiebird [Tue, 12 Nov 2019 16:56:13 +0000 (08:56 -0800)]
Add quantize_index to EncodeFrameResult

Change-Id: Idfb36a8bfa264df8294eba70424fd25fa5d88cda

4 years agoPass in infile_path to SimpleEncode()
angiebird [Wed, 13 Nov 2019 02:34:03 +0000 (18:34 -0800)]
Pass in infile_path to SimpleEncode()

Change-Id: If47867d4d59a59e252bfe7eb24c940f9e089d335

4 years agoAdd psnr and sse to EncodeFrameResult
angiebird [Tue, 12 Nov 2019 01:33:46 +0000 (17:33 -0800)]
Add psnr and sse to EncodeFrameResult

Change-Id: I33c410a14b86f95278eff8d1d0e6992f1b82a17d

4 years agoAdd SimpleEncode::EncodeFrameWithQuantizeIndex()
angiebird [Tue, 12 Nov 2019 21:52:08 +0000 (13:52 -0800)]
Add SimpleEncode::EncodeFrameWithQuantizeIndex()

Change-Id: I4442de01dfdbf13b0b9f7830f0fb393d3b935522

4 years agoAdd frame_type and show_idx to EncodeFrameResult
angiebird [Mon, 11 Nov 2019 20:32:10 +0000 (12:32 -0800)]
Add frame_type and show_idx to EncodeFrameResult

Let vp9_get_compressed_data update ENCODE_FRAME_RESULT, a C
version of EncodeFrameResult.
Let unit test to test frame_type and show_idx properly.

Change-Id: Id810c26c826254fd82249f19ab855ea3b440d99c

4 years agoAdd EncodeFrameResults
angiebird [Mon, 11 Nov 2019 18:20:15 +0000 (10:20 -0800)]
Add EncodeFrameResults

It contains coding_data_size and coding_data.

The EncodeFrame will allocate a buffer, write the coding data into the
buffer and give the ownership of the buffer to
encode_frame_result->coding_data

Change-Id: I6bd86aede191ade1db4a1f1bba5be601eef97d60

4 years agoRename frame_stats by first_pass_stats
angiebird [Mon, 11 Nov 2019 04:39:37 +0000 (20:39 -0800)]
Rename frame_stats by first_pass_stats

This is in simple_encode.cc

Change-Id: I2770e4a229b435f92e1ebe226644d8d104114d29

4 years agoAdd SimpleEncode::GetCodingFrameNum()
angiebird [Mon, 11 Nov 2019 04:36:04 +0000 (20:36 -0800)]
Add SimpleEncode::GetCodingFrameNum()

Also add unit tests for GetCodingFrameNum() and EncodeFrame()

Change-Id: I3e7b65f47226be4660409481435f8f784db72a68

4 years agoAdd SimpleEncode::EncodeFrame()
angiebird [Mon, 11 Nov 2019 04:01:42 +0000 (20:01 -0800)]
Add SimpleEncode::EncodeFrame()

Change-Id: I08f074b7db2011f88769bd1d9d50cb376c238fe5

4 years agoAdd ComputeFirstPassStats()
angiebird [Sun, 10 Nov 2019 18:48:22 +0000 (10:48 -0800)]
Add ComputeFirstPassStats()

Change-Id: Iaed87a4fa35f456aec5d88d07fade636280eb211

4 years agoAdd vp9_iface_common.c
angiebird [Sun, 10 Nov 2019 00:32:01 +0000 (16:32 -0800)]
Add vp9_iface_common.c

Change-Id: Iac8c31a333a0ae04c9b5f188b3e3b09c25df4046

4 years agoMerge changes Id42dbddd,I6dff1bda
Angie Chiang [Mon, 18 Nov 2019 19:33:55 +0000 (19:33 +0000)]
Merge changes Id42dbddd,I6dff1bda

* changes:
  Add const to oxcf of vp9_create_compressor
  Add simple_encode.cc/h

4 years agovp9_cx_iface: quiet unused fn warning w/CONFIG_REALTIME_ONLY
James Zern [Sat, 16 Nov 2019 04:30:39 +0000 (20:30 -0800)]
vp9_cx_iface: quiet unused fn warning w/CONFIG_REALTIME_ONLY

since:
71684703a Remove output_pkt_list from cpi

Change-Id: I14afae6598051680fdaf8c7509b6705d73789dd6

4 years agoAdd const to oxcf of vp9_create_compressor
angiebird [Sat, 9 Nov 2019 23:38:43 +0000 (15:38 -0800)]
Add const to oxcf of vp9_create_compressor

Change-Id: Id42dbdddae3e0a16022343c89cbc57912297398c

4 years agoAdd simple_encode.cc/h
angiebird [Sat, 9 Nov 2019 04:31:10 +0000 (20:31 -0800)]
Add simple_encode.cc/h

Change-Id: I6dff1bda4bea760a32c2f8e38773e5913c830204

4 years agoAdd vp9_update_compressor_with_img_fmt()
angiebird [Sat, 9 Nov 2019 04:23:03 +0000 (20:23 -0800)]
Add vp9_update_compressor_with_img_fmt()

Add utility functions
vpx_img_chroma_subsampling
vpx_img_use_highbitdepth

Change-Id: I7b44fdc2cf67bbb49e161fdf778917b9ec0c8832

4 years agoAdd vp9_lookahead_full/vp9_lookahead_next_show_idx
angiebird [Tue, 5 Nov 2019 03:22:10 +0000 (19:22 -0800)]
Add vp9_lookahead_full/vp9_lookahead_next_show_idx

vp9_lookahead_full -  Check if lookahead is full
vp9_lookahead_next_show_idx - Return the show_idx
that will be assigned to the next frame pushed by
vp9_lookahead_push()

Keep track of the show_idx of each frame in the queue

Change-Id: If7ec2c7250f52413e6ce00c5b96f026ebf60a403

4 years agoRemove output_pkt_list from cpi
angiebird [Sun, 3 Nov 2019 05:13:58 +0000 (22:13 -0700)]
Remove output_pkt_list from cpi

Move the pkt operations to encoder_encode

Change-Id: Ibe730baab61bf7a395998641f106eb0f06d3b8ae

4 years agoPack psnr pkt outside of vp9_get_compressed_data
angiebird [Sat, 2 Nov 2019 22:22:13 +0000 (15:22 -0700)]
Pack psnr pkt outside of vp9_get_compressed_data

Change-Id: I5549c3dbcbe1550824deaebf03178e38c1b07d54

4 years agoUnite vpx_psnr_pkt and PSNR_STATS
angiebird [Fri, 8 Nov 2019 22:55:14 +0000 (14:55 -0800)]
Unite vpx_psnr_pkt and PSNR_STATS

Change-Id: Ia2be91a49dfa95906fa2ce232ff9d3a69deda4ad

4 years agoRemove psnr_pkt in LAYER_CONTEXT
angiebird [Sat, 2 Nov 2019 21:51:20 +0000 (14:51 -0700)]
Remove psnr_pkt in LAYER_CONTEXT

It's not used by anycode

Change-Id: I30e86c142d4367c7b301f5b19e39c14480d4129b

4 years agoRemove the macro of vp9_lookahead_push
angiebird [Thu, 31 Oct 2019 22:52:43 +0000 (15:52 -0700)]
Remove the macro of vp9_lookahead_push

Change-Id: Iffc06e53714165cbd8e509ca6d2114e9c4d4ab96

4 years agoAdd g_timebase/g_timebase_in_ts to oxcf
angiebird [Tue, 5 Nov 2019 03:40:19 +0000 (19:40 -0800)]
Add g_timebase/g_timebase_in_ts to oxcf

Use get_g_timebase_in_ts() to set priv->timestamp_ratio
and oxcf->g_timebase_in_ts

Change-Id: Iea9d589cb7e5611067bcedfdf6f5becd4592d3cf

4 years agoAdd frame_rate param to vp9_get_encoder_config
angiebird [Sun, 3 Nov 2019 16:45:39 +0000 (08:45 -0800)]
Add frame_rate param to vp9_get_encoder_config

Change-Id: I14a3d076d71240b4ed2436947418aa3177911fc1

4 years agoMerge "example: Enable row-mt on low res and speed 7 8."
Jerome Jiang [Fri, 8 Nov 2019 23:19:48 +0000 (23:19 +0000)]
Merge "example: Enable row-mt on low res and speed 7 8."

4 years agoMerge "remove unused vp8_hex_search parameter"
Johann Koenig [Fri, 8 Nov 2019 19:48:42 +0000 (19:48 +0000)]
Merge "remove unused vp8_hex_search parameter"

4 years agoMerge "remove unused cpi parameters from firstpass.c"
Johann Koenig [Fri, 8 Nov 2019 19:48:21 +0000 (19:48 +0000)]
Merge "remove unused cpi parameters from firstpass.c"

4 years agoremove unused vp8_hex_search parameter
Johann [Mon, 4 Nov 2019 22:50:03 +0000 (16:50 -0600)]
remove unused vp8_hex_search parameter

BUG=webm:1612

Change-Id: I80765f4ed05fb5d588249e56a018bf8b9828a197

4 years agoremove unused cpi parameters from firstpass.c
Johann [Mon, 4 Nov 2019 22:45:56 +0000 (16:45 -0600)]
remove unused cpi parameters from firstpass.c

BUG=webm:1612

Change-Id: I77db5f9f2cb8244cca831b76c00926112c3e0dfe

4 years agoremove unused Pass1Encode parameters
Johann [Mon, 4 Nov 2019 22:52:21 +0000 (16:52 -0600)]
remove unused Pass1Encode parameters

BUG=webm:1612

Change-Id: Ifbe5bbba706311057bfc5d5fa9b63e57ac56e398

4 years agoexample: Enable row-mt on low res and speed 7 8.
Jerome Jiang [Wed, 6 Nov 2019 23:36:15 +0000 (15:36 -0800)]
example: Enable row-mt on low res and speed 7 8.

Verified row-mt works for low res and speed 7 8.

Change-Id: I1e7f260fe5cda40a2da80ca47692a5864712ec30

4 years agoMerge "test/vp[89]_boolcoder_test: quiet msan warnings"
James Zern [Wed, 6 Nov 2019 20:32:00 +0000 (20:32 +0000)]
Merge "test/vp[89]_boolcoder_test: quiet msan warnings"

4 years agoMerge changes I341bd674,Ia9a0d71d,I71c1f906,I2e36e07c,I94ee2e85, ...
Angie Chiang [Wed, 6 Nov 2019 20:07:49 +0000 (20:07 +0000)]
Merge changes I341bd674,Ia9a0d71d,I71c1f906,I2e36e07c,I94ee2e85, ...

* changes:
  Refactor check_initial_width
  Move noise_sensitivity to set_encoder_config
  Remove extra function calls in check_initial_width
  Move init_ref_frame_bufs to vp9_create_compressor
  Remove bits_left update in encoder_encode()
  Add vp9_get_encoder_config / vp9_get_frame_info
  vp9_get_coding_frame_num()
  Make [min/max]_gf_interval static under rate_ctrl
  Add rate_ctrl flag

4 years agotest/vp[89]_boolcoder_test: quiet msan warnings
James Zern [Wed, 6 Nov 2019 07:02:44 +0000 (23:02 -0800)]
test/vp[89]_boolcoder_test: quiet msan warnings

the bitreaders may fill beyond what was written to the buffer as an
optimization. the data isn't used meaningfully, but it may trigger a
msan warning.

BUG=b/140939146

Change-Id: Id03cd203b8ee7ecaf6fdfe3f3c9f2ccfec527129

4 years agoremove unused vp8dx_receive_compressed_data parameters
Johann [Mon, 4 Nov 2019 21:09:50 +0000 (15:09 -0600)]
remove unused vp8dx_receive_compressed_data parameters

BUG=webm:1612

Change-Id: If2dc8a77c8f8bca86ee4b8349091dd1117b42dce

4 years agoensure ctx is used
Johann [Mon, 4 Nov 2019 21:05:12 +0000 (15:05 -0600)]
ensure ctx is used

Rather that (void)ing ctx, document the case where it might not be used.

BUG=webm:1612

Change-Id: I1f1ba9a3d52b43a6987dbe3afec96fa17101e3bf

4 years agoremove unused mbmi parameter
Johann [Mon, 4 Nov 2019 20:59:19 +0000 (14:59 -0600)]
remove unused mbmi parameter

BUG=webm:1612

Change-Id: I0f982d8269ec50a767efc222d958d37a55d5c77f

4 years agoremove unused simple loopfilter parameters
Johann [Mon, 4 Nov 2019 20:52:17 +0000 (14:52 -0600)]
remove unused simple loopfilter parameters

The simple filter only processes the Y plane.

BUG=webm:1612

Change-Id: I9886ff43ea7f621d8915846cb65f609a9298566d

4 years agoremove unused postproc parameters
Johann [Mon, 4 Nov 2019 20:45:13 +0000 (14:45 -0600)]
remove unused postproc parameters

BUG=webm:1612

Change-Id: I92937417403af2c943e903ba66799609ef6ab635

4 years agoconfigure.sh,darwin: fix external_build check
James Zern [Fri, 1 Nov 2019 06:13:50 +0000 (23:13 -0700)]
configure.sh,darwin: fix external_build check

disabled external_build will return an incorrect result for a value not
explicitly set on the command line; use ! enabled instead.

fixes ios build

Change-Id: I48dda3a06731bc9809c2266880797e1779e4c01c

4 years agoRefactor check_initial_width
angiebird [Wed, 30 Oct 2019 22:35:58 +0000 (15:35 -0700)]
Refactor check_initial_width

1) Rename it by update_initial_width() because it's actually
changing the initial_width

2) Move alloc_raw_frame_buffers out of it.

Change-Id: I341bd6743eb0e1217bdf1bdbd7f67c4ea7d76ee2

4 years agoMove noise_sensitivity to set_encoder_config
angiebird [Wed, 30 Oct 2019 21:59:58 +0000 (14:59 -0700)]
Move noise_sensitivity to set_encoder_config

Change-Id: Ia9a0d71dc8a329d00ebf20a82d42cda43e13431b

4 years agoRemove extra function calls in check_initial_width
angiebird [Wed, 30 Oct 2019 21:40:53 +0000 (14:40 -0700)]
Remove extra function calls in check_initial_width

These function are already called in set_frame_size()

Change-Id: I71c1f906fa4deef7bc630dcff1506f5b57c6d045

4 years agoMove init_ref_frame_bufs to vp9_create_compressor
angiebird [Wed, 30 Oct 2019 21:36:54 +0000 (14:36 -0700)]
Move init_ref_frame_bufs to vp9_create_compressor

Change-Id: I2e36e07c273692a08a9c3ebba814882d32d32f8c

4 years agodarwin: disable compiler checks
Johann [Wed, 30 Oct 2019 16:05:18 +0000 (16:05 +0000)]
darwin: disable compiler checks

When configuring with --enable-external-build the .mk files
are not expected to work. This avoids some spurious warnings
when configuring for darwin targets on other platforms.

Fixed: webm:1535
Change-Id: Idac2b397db1b595ba7ea9231c4eb835b6013abdc

4 years agoMerge changes I7dd2b487,I6db5b053
Johann Koenig [Wed, 30 Oct 2019 13:07:55 +0000 (13:07 +0000)]
Merge changes I7dd2b487,I6db5b053

* changes:
  support visual studio 2019 (vs16)
  remove old visual studio remnants

4 years agoRemove bits_left update in encoder_encode()
angiebird [Wed, 30 Oct 2019 01:52:40 +0000 (18:52 -0700)]
Remove bits_left update in encoder_encode()

It's already updated properly in vp9_init_second_pass()

Change-Id: I94ee2e8536387c94a2abf9a7686011c76489c2f9

4 years agoAdd vp9_get_encoder_config / vp9_get_frame_info
angiebird [Tue, 29 Oct 2019 19:13:41 +0000 (12:13 -0700)]
Add vp9_get_encoder_config / vp9_get_frame_info

Change-Id: Id5c8b2d69a36d218ec04cd504868ce0efebf6b69

4 years agovp9_get_coding_frame_num()
angiebird [Fri, 25 Oct 2019 18:45:34 +0000 (11:45 -0700)]
vp9_get_coding_frame_num()

Change-Id: I36fa92d9acfc272fc9a2f700bcd1466e95f1443c

4 years agoMake [min/max]_gf_interval static under rate_ctrl
angiebird [Fri, 25 Oct 2019 18:03:19 +0000 (11:03 -0700)]
Make [min/max]_gf_interval static under rate_ctrl

Change-Id: I0624c4b44a35c760bb00e4d1a07bb0ac2640ea0b

4 years agoAdd rate_ctrl flag
angiebird [Thu, 24 Oct 2019 20:59:00 +0000 (13:59 -0700)]
Add rate_ctrl flag

BDRate Changes (negative means improvement)
lowres: 0.565%
midres: 0.361%
lowres: 0.233%
ugc360: -0.242%

Make gop size independent from coding results

Change-Id: I1f54c48b12dc45ee5162ca2527a877c1610528bd

4 years agoMerge changes Ibde94f52,Iae804fcc,I94f3b93a
Angie Chiang [Tue, 29 Oct 2019 23:14:38 +0000 (23:14 +0000)]
Merge changes Ibde94f52,Iae804fcc,I94f3b93a

* changes:
  Add get_arf_layers()
  Use RANGE in get_gop_coding_frame_num
  Add get_gf_interval_active_range()

4 years agoalways use lf for shell scripts
Johann [Tue, 29 Oct 2019 15:44:11 +0000 (11:44 -0400)]
always use lf for shell scripts

Ensure scripts do not get crlf endings when checking out
on Windows.

Fixed: webm:1651

Change-Id: I7cb6039c6d600bb57e7fbdb2fdbb84f4040803f5

4 years agoremove .gitattributes
Johann [Tue, 29 Oct 2019 15:39:38 +0000 (11:39 -0400)]
remove .gitattributes

None of these file patterns match any existing files.

Change-Id: I069bab91fe43887b094d02e6328b00da62706d94

4 years agoremove .gitattributes filters
Johann [Tue, 29 Oct 2019 15:30:45 +0000 (11:30 -0400)]
remove .gitattributes filters

These only appear to exist in this repository. Based
on the name they may have been intended to manage
tabs vs spaces.

Change-Id: I2ac1a858f75cb0e5714964cb68e49082c4eb3ca5

4 years agosupport visual studio 2019 (vs16)
Johann [Tue, 29 Oct 2019 17:19:43 +0000 (13:19 -0400)]
support visual studio 2019 (vs16)

Fixed: 1633
Change-Id: I7dd2b4873aeb548c7f9ebf7025baf15a8e65c68f

4 years agoremove old visual studio remnants
Johann [Tue, 29 Oct 2019 17:08:06 +0000 (13:08 -0400)]
remove old visual studio remnants

The oldest supported Visual Studio version has been vs14
since 539dc7649f67ec10097b3c8eb2c0073f0d0571ce.

Clean up scripts and remove dead code.

Change-Id: I6db5b053a55d7656275d3d48e35d672c8ce22067

4 years agoAdd get_arf_layers()
angiebird [Thu, 24 Oct 2019 00:21:52 +0000 (17:21 -0700)]
Add get_arf_layers()

Change-Id: Ibde94f52235a37e122e6a548d71cb230e7b28368

4 years agoUse RANGE in get_gop_coding_frame_num
angiebird [Wed, 23 Oct 2019 23:49:55 +0000 (16:49 -0700)]
Use RANGE in get_gop_coding_frame_num

Change-Id: Iae804fccd7cca180eef9e6664de70f0930ee2e94

4 years agoAdd get_gf_interval_active_range()
angiebird [Wed, 23 Oct 2019 23:36:08 +0000 (16:36 -0700)]
Add get_gf_interval_active_range()

Change-Id: I94f3b93a932f351b6c9743932238d7ede2938462

4 years agoMerge "remove clang flag for integer sanitizer testing"
Hien Ho [Fri, 25 Oct 2019 16:24:23 +0000 (16:24 +0000)]
Merge "remove clang flag for integer sanitizer testing"

4 years agoMerge changes I309357fd,I0d170956,I5c7fc771,I6ebb023a,I1f6ef8c6, ...
Angie Chiang [Thu, 24 Oct 2019 20:25:05 +0000 (20:25 +0000)]
Merge changes I309357fd,I0d170956,I5c7fc771,I6ebb023a,I1f6ef8c6, ...

* changes:
  Make gop size independent from kf_zeromotion_pct
  Add get_frames_to_next_key()
  Rename i by frames_to_key in find_next_key_frame
  Remove input_stats when decide frames_to_key
  Remove twopass param from test_candidate_kf
  Pass first_pass_info/show_idx to test_candidate_kf
  Refactor test_candidate_kf()
  Decide the key frame directly when auto_key is off
  Remove detect_transition_to_still()
  Change the interface of find_next_key_frame

4 years agoremove clang flag for integer sanitizer testing
Hien Ho [Thu, 24 Oct 2019 18:00:18 +0000 (11:00 -0700)]
remove clang flag for integer sanitizer testing

BUG=webm:1615

Change-Id: Idfc86722e744d0c71ad47e284afb9cf9b8474473

4 years agoMerge "vpx_dsp/x86/avg_intrin_sse2: fix int sanitizer warnings"
Hien Ho [Thu, 24 Oct 2019 16:39:52 +0000 (16:39 +0000)]
Merge "vpx_dsp/x86/avg_intrin_sse2: fix int sanitizer warnings"

4 years agoMerge "vpx_int_pro_col_sse2: use unaligned loads"
James Zern [Thu, 24 Oct 2019 06:36:38 +0000 (06:36 +0000)]
Merge "vpx_int_pro_col_sse2: use unaligned loads"

4 years agovpx_dsp/x86/avg_intrin_sse2: fix int sanitizer warnings
Hien Ho [Tue, 1 Oct 2019 22:38:25 +0000 (15:38 -0700)]
vpx_dsp/x86/avg_intrin_sse2: fix int sanitizer warnings

Unit Test: VP9/AqSegmentTest. VP9/CpuSpeedTest, AVX2/Loop8Test6Param

implicit conversion from type 'int' of value 59741 (32-bit, signed) to
type 'int16_t' (aka 'short') changed the value to -5795 (16-bit, signed)

BUG=webm:1615

Change-Id: I2e5b688a97c3caa29d4b8a817b95a4986b81a562

4 years agoMerge "simplify darwin autodetection"
Johann Koenig [Wed, 23 Oct 2019 20:22:11 +0000 (20:22 +0000)]
Merge "simplify darwin autodetection"

4 years agoMerge "add darwin18 target"
Johann Koenig [Wed, 23 Oct 2019 19:23:55 +0000 (19:23 +0000)]
Merge "add darwin18 target"

4 years agosimplify darwin autodetection
Johann [Wed, 23 Oct 2019 18:17:57 +0000 (14:17 -0400)]
simplify darwin autodetection

Use sed to extract tgt_os

Change-Id: I2f7cd290102a2b591c6ae6e40766918b55abff10

4 years agoadd darwin18 target
Johann [Wed, 23 Oct 2019 17:50:31 +0000 (13:50 -0400)]
add darwin18 target

Fix autodetection on MacOS 10.14. Without this it defaults
to generic-gnu

Change-Id: I19cd4a9f2fb106dff16ab5e38821a5f374add59c

4 years agouse a compile time constant for kDataAlignment
Johann [Wed, 23 Oct 2019 14:52:38 +0000 (10:52 -0400)]
use a compile time constant for kDataAlignment

const or constexpr should be sufficient for this use but older
versions of gcc fail to expand DECLARE_ALIGNED correctly. Work
around this by using an enum.

Fixed: webm:1660
Change-Id: Ifa4f7585417760f90f9fb28332152019de9f8169

4 years agovpx_int_pro_col_sse2: use unaligned loads
James Zern [Wed, 23 Oct 2019 02:56:31 +0000 (19:56 -0700)]
vpx_int_pro_col_sse2: use unaligned loads

this fixes a segfault when scaling is enabled; in some cases depending
on the ratio offsets may become odd.

vpx_int_pro_row_sse2 was updated previously, though the reason wasn't
listed:
54eda13f8 Apply fast motion search to golden reference frame

BUG=webm:1600

Change-Id: I8d5e105d876d8cf917919da301fce362adffab95

4 years agoMake gop size independent from kf_zeromotion_pct
angiebird [Tue, 22 Oct 2019 22:16:21 +0000 (15:16 -0700)]
Make gop size independent from kf_zeromotion_pct

Change-Id: I309357fd0e008d10b974c9d2603d0712e1aa0bcd

4 years agoAdd get_frames_to_next_key()
angiebird [Tue, 22 Oct 2019 02:13:51 +0000 (19:13 -0700)]
Add get_frames_to_next_key()

Change-Id: I0d1709562bf96648fbaf2a0dce2dc23b9d2b81f1

4 years agoRename i by frames_to_key in find_next_key_frame
angiebird [Tue, 22 Oct 2019 01:49:21 +0000 (18:49 -0700)]
Rename i by frames_to_key in find_next_key_frame

Change-Id: I5c7fc771f0852d3b9e8b30be34097b13dfbc2513

4 years agoMerge "vpx_dsp/inv_txfm: fix int sanitizer warnings"
Hien Ho [Wed, 23 Oct 2019 00:22:43 +0000 (00:22 +0000)]
Merge "vpx_dsp/inv_txfm: fix int sanitizer warnings"

4 years agoRemove input_stats when decide frames_to_key
angiebird [Tue, 22 Oct 2019 01:32:57 +0000 (18:32 -0700)]
Remove input_stats when decide frames_to_key

Also remove the corresponding reset_fpf_position

Change-Id: I6ebb023a38627785ff19e161bfe7bbef797fc710

4 years agoMerge changes I00697e9a,I9dfc2ba3,I73619051,Ib4d37667
Angie Chiang [Tue, 22 Oct 2019 18:17:51 +0000 (18:17 +0000)]
Merge changes I00697e9a,I9dfc2ba3,I73619051,Ib4d37667

* changes:
  Refactor kf_group_err in find_next_key_frame
  Simplify the logics in find_next_key_frame
  Add get_gop_coding_frame_num()
  Localize zero_motion_accumulator

4 years agoRemove twopass param from test_candidate_kf
angiebird [Tue, 22 Oct 2019 01:18:16 +0000 (18:18 -0700)]
Remove twopass param from test_candidate_kf

Change-Id: I1f6ef8c6d453177e3b48c95434b66480ee19f91d

4 years agoPass first_pass_info/show_idx to test_candidate_kf
angiebird [Tue, 22 Oct 2019 01:04:49 +0000 (18:04 -0700)]
Pass first_pass_info/show_idx to test_candidate_kf

Change-Id: I5c18de464be9981236f95c62391258c4963e469b

4 years agoRefactor test_candidate_kf()
angiebird [Tue, 22 Oct 2019 00:56:54 +0000 (17:56 -0700)]
Refactor test_candidate_kf()

Replace detect_flash() by detect_flash_from_frame_stats()

Change-Id: Ia4eca1ca553fdb2f4f63ff6f683c79d92fc52556

4 years agoDecide the key frame directly when auto_key is off
angiebird [Tue, 22 Oct 2019 00:20:17 +0000 (17:20 -0700)]
Decide the key frame directly when auto_key is off

Change-Id: I41d107558a8b1d31ef3b263ecc0ec1e1d91c8f7e

4 years agoRemove detect_transition_to_still()
angiebird [Tue, 22 Oct 2019 00:09:11 +0000 (17:09 -0700)]
Remove detect_transition_to_still()

Change-Id: I877f55355fc85d67f46bb76e521a19d35d76df09

4 years agoChange the interface of find_next_key_frame
angiebird [Mon, 21 Oct 2019 23:51:27 +0000 (16:51 -0700)]
Change the interface of find_next_key_frame

Change-Id: I9c25cbac2953755efa9fd72f59149f26513d1977

4 years agoRefactor kf_group_err in find_next_key_frame
angiebird [Mon, 21 Oct 2019 23:07:28 +0000 (16:07 -0700)]
Refactor kf_group_err in find_next_key_frame

Move the computation out of the while loop.

Change-Id: I00697e9a16d5d597c63e5d9895e4ae00efc7a2df

4 years agoSimplify the logics in find_next_key_frame
angiebird [Mon, 21 Oct 2019 22:23:46 +0000 (15:23 -0700)]
Simplify the logics in find_next_key_frame

Since the while loop's condition already check
rc->frames_to_key < cpi->oxcf.key_freq,
it impossible to have "frames_to_key >= 2 * cpi->oxcf.key_freq"
and "frames_to_key > cpi->oxcf.key_freq".

Hence, these logics are removed.

Change-Id: I9dfc2ba36e1012718c857fc710036e2d30acd3b8

4 years agoAdd get_gop_coding_frame_num()
angiebird [Mon, 21 Oct 2019 18:44:36 +0000 (11:44 -0700)]
Add get_gop_coding_frame_num()

This function will decide number of coding frames and whether to
use altref

Change-Id: I736190512ea92ce5387600712bd0e250ad7cb44c

4 years agoMerge "Fix AVX-512 capability detection"
Johann Koenig [Mon, 21 Oct 2019 18:24:31 +0000 (18:24 +0000)]
Merge "Fix AVX-512 capability detection"

4 years agoMerge changes I2acc7d6b,I560dccfc,I3fb23f5c,Ifa24a501
Angie Chiang [Fri, 18 Oct 2019 19:19:06 +0000 (19:19 +0000)]
Merge changes I2acc7d6b,I560dccfc,I3fb23f5c,Ifa24a501

* changes:
  Rename num_show_frames by num_coding_frames
  Use compute_arf_boost() in define_gf_group()
  Localize av_err mean_mod_score in define_gf_group
  Move code of deciding gop size into brackets

4 years agoFix AVX-512 capability detection
Birk Magnussen [Wed, 16 Oct 2019 22:11:26 +0000 (00:11 +0200)]
Fix AVX-512 capability detection

When Checking for AVX Support, only the CPU's Capabilities and YMM
Register support by the OS were queried. In case of AVX-512, that is
insufficient, and ZMM Register support by the OS needs querying,
otherwise the OS will raise an Illegal Operation Exception if the CPU
is capable of AVX-512 but the OS is not.

Change-Id: I3444b19156d5743841de96cecbdaac19cc3f2b3f

4 years agoLocalize zero_motion_accumulator
angiebird [Wed, 16 Oct 2019 20:50:02 +0000 (13:50 -0700)]
Localize zero_motion_accumulator

Change-Id: Ib4d37667c217cb06e6941de7b3204ba71b880396