summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-02-17Only use .text sections for aoutJohann
Also do not specify alignment. Change-Id: I92d07dcce632ff9380c5dce18f88597414ab60c7
2016-02-17Use .text instead of .rodata on machoJohann
The read only sections are getting stripped on some OS X builds. As a result, random data is used in place of the intended tables. Change-Id: I4629c90d9e0ae4d4efc193a93be6fb93809ae895
2016-02-17Copy PIC handling code from x86_abi_supportJohann
Change-Id: Ia05fe78d2bd29b6aebaf6605719fe8a32528f25c
2016-02-17Set 'private_extern' visibility for macho targetsJohann
Do not set it when building with 'nasm' Change-Id: Iff2acf22543f5899f6eefa7624821cc6270a0923
2016-02-17Expand PIC default to macho64 and respect CONFIG_PIC from libvpxJohann
Change-Id: I8df65c6e52141183344ee91a7f94e8f4d5687e2f
2016-02-17Use libvpx defines to set name mangling rulesJohann
Change-Id: Ie5dbfe73bdb6132047f9ab7d5716714d50befea5
2016-02-17Customize x86inc.asm for libvpxJohann
Use settings from vpx_config.asm Prefix functions with vpx. Change-Id: I71b4a89eaecf51fa56a07d9927081d50798a9042
2016-02-17Update x86inc.asm from x264Johann
Revision d23d18655249944c1ca894b451e2c82c7a584c62 from https://git.videolan.org/x264.git Change-Id: I841ec8c5ea71935aa364657299c6bba0c8742fc1
2016-02-16vp10,encoder: relocate setjmpJames Zern
move to encoder_encode() as vp10_get_compressed_data() allocates data and would require some modification to make its error return meaningful. Change-Id: Ia5267c35d16ccd42b6da6d2136402b13e28f9159
2016-02-16vp9,encoder: relocate setjmpJames Zern
move to encoder_encode() as vp9_get_compressed_data() allocates data and would require some modification to make its error return meaningful. Change-Id: I8ddc390a1441afd0ff937842fa4ad1053c956133
2016-02-16vp10_cx_iface,encode: remove redundant cpi checkJames Zern
this is allocated in init(), a NULL pointer on encode() should be treated as a failure. Change-Id: I09c206f088982716fd5acc39949ceb25576313fc
2016-02-16vp9_cx_iface,encode: remove redundant cpi checkJames Zern
this is allocated in init(), a NULL pointer on encode() should be treated as a failure. Change-Id: I3f55ea4a98be616bb5ab74d95ce4a3d6262e734a
2016-02-16vp9-real-time mode: Fix condition for allowing reference masking.Marco
Add frame-level condition for reference masking: under external or internal dynamic resize, allow for reference masking if none of the references have been scaled. Peviously, reference masking was turned off for the stream if dynamic resize feature was enabled or an external resize event occurred. reference_masking gives speed up with little/no loss in compression. For speed 7 on rtc set: encoding time decreases by about 5-7%, avgPSNR/SSIM goes down ~0.2%. Change-Id: Ie4444577451ef954414d8fb4b2c99d65cadf1746
2016-02-16Merge "Fix tsan error in VP9 sub8x8 intra mode search"James Zern
2016-02-16Fix tsan error in VP9 sub8x8 intra mode searchJingning Han
This commit fixes issue 1141. The issue was triggered in multi-tile encoding. The change properly saves and restores the block context information in the real-time mode selection process. It removes several redundant memcpy operations in sub8x8 intra block mode search. Change-Id: I35c9ad197f4bd500ec39b5fc833f052f19eee010
2016-02-16Merge "vp9-resize: Fix an issue with external dynamic resize."Marco Paniconi
2016-02-13Merge changes from topic 'unused-params'James Zern
* changes: tests: quiet some unused parameter warnings vp9_error_block_test: prefer EXPECT over assert() vp9_encoder_parms_get_to_decoder: add missing initializers vpxenc: quiet unused param warning vpx_ve_predictor_4x4_c: quiet unused param warning
2016-02-12vp9-resize: Fix an issue with external dynamic resize.Marco
External dynamic resize with swapping width and height was not handled properly. Fix is to re-init loop-filter under certain condtions. Modify unittest to test this case. Without this change test will fail. Relates to: https://bugs.chromium.org/p/webm/issues/detail?id=1140 Change-Id: I7d81ca7fe0783b3bc103a52a7b7cf073a96be26e
2016-02-11tests: quiet some unused parameter warningsJames Zern
Change-Id: Iff8b0d77234f78bf407676891bccad92825bfcc6
2016-02-11vp9_error_block_test: prefer EXPECT over assert()James Zern
Change-Id: Id523448bac903999934370f7b06a5c316f11a966
2016-02-11vp9_encoder_parms_get_to_decoder: add missing initializersJames Zern
+ quiet an unused parameter warning Change-Id: I65f69172febb4e0701d3e440b7e1fb31829cda57
2016-02-11vpxenc: quiet unused param warningJames Zern
Change-Id: Ib6ed1b8c03f6c269f8d667b21b895b35363cee9e
2016-02-11vpx_ve_predictor_4x4_c: quiet unused param warningJames Zern
Change-Id: I62234260e2d2de94d602c6d8095c8f8124334052
2016-02-11vp10_receive_raw_frame: add missing setjmpJames Zern
allocations done within this function are protected with vpx_internal_error; adding the setjmp fixes a crash in vp10_lookahead_push() under low memory conditions. Change-Id: I5515017cd71b218840c506791b3a517da7ffc93e
2016-02-11vp9_receive_raw_frame: add missing setjmpJames Zern
allocations done within this function are protected with vpx_internal_error; adding the setjmp fixes a crash in vp9_lookahead_push() under low memory conditions. Change-Id: I4b79dca37cc7fadc4b7633f0db44c0e406799bc6
2016-02-11vp9-resize: Force reference masking off for external dynamic-resizing.Marco
An issue exists with reference_masking in non-rd pickmode for spatial scaling. It was kept off for internal dynamic resizing and svc, this change is to keep it off also for external dynamic resizing. Update to external resize test, and update TODO to re-enable this at frame level when references have same scale as source. Change-Id: If880a643572127def703ee5b2d16fd41bdbf256c
2016-02-10vp9 resize_test: Enable resize_allowed in real-time ExternalResize test.Marco
For dynamic resizing (whether the new codec size is determined internally or externally set by user), we should for now keep rc.resize_allowed enabled. This prevent the use of referene_masking for real-time mode (in set_rt_speed_feature()). Change-Id: Ibb7c3ff35be88afdf1a3c6db6693521766f177a3
2016-02-10VP9: Pass NULL scale_factors ptr when not scalingScott LaVarnway
to vp9_setup_pre_planes(), preventing the function unscaled_value() from being called. unscaled_value() returns the same value that was passed in. See scaled_buffer_offset() in vp9_reconinter.h. Change-Id: I2a6fbaf07972c2f212834929d29a2cbe72e399c3
2016-02-10Merge "VP9: Refactor read_inter_block_mode_info() -- 2"Scott LaVarnway
2016-02-10Merge "intrapred/d135: flatten border results before storing"James Zern
2016-02-10Merge "vp8: fix build with mingw+pthreads"James Zern
2016-02-10Merge "Restore previous motion search bit-error scale."Alex Converse
2016-02-09VP9: Refactor read_inter_block_mode_info() -- 2Scott LaVarnway
Change-Id: I96d4764523b8d634eafb4cb3ed6eb3aee4052573
2016-02-09Restore previous motion search bit-error scale.Alex Converse
The bit to error transformation got doubled as a result of going from 8-bit to 9-bit costs (change d13385c). Use defines to derive the scale numbers and comment some of the fields. derf: -0.023 BDRATE hevcmr: +0.067 BDRATE stdhd: +0.098 BDRATE (These are substantially smaller than than the original gains from 8 to 9 bit costing.) Change-Id: I6a2b3b029b2f1415e4f90a05709b2333ec0eea9b
2016-02-09vp9-dynamic resize: Fix bug on releasing scaled reference.Marco
When the codec frame size is the same as the reference frame size, release the scaled reference before assigning it a new buf_idx. Only affects 1 pass non-svc mode, where the scaled references are release only under certain conditions (to prevent un-needed scaling of the references every frame). Modified a unittest that can trigger this bug without this change. https://code.google.com/p/chromium/issues/detail?id=582598 Change-Id: I9a884e36ebd7608b1641ec2a469e20a4f829cf43
2016-02-09vp9-aq-mode=3: Reset cyclic refresh under config/external size change.Marco
If the application changes frame size (external size changes), and aq-mode=3 is on, reset the cyclic refresh. Modify the TestExternalResize unittest (longer run with more resize actions). Without this change an assert would be triggered on this longer test. Change-Id: I0eefd2cd7ffa0c557cca96ae30d607034a2599ce
2016-02-09Merge "Set use_highbitdepth flag to either 1 or 0"Yaowu Xu
2016-02-09Merge "BUG FIX: undefined reference to `vp9_scale_and_extend_frame_c'"Scott LaVarnway
2016-02-08Set use_highbitdepth flag to either 1 or 0Yaowu Xu
This reduces the buffer allocation size for high bit depth buffers by more than 70%. Change-Id: Iab9007d9684e8ac30ce7fa94e61f038f01792fc5
2016-02-08Explicitly set tx_type for sub8x8 blocksDebargha Mukherjee
Fixes an issue where the tx_type was not set correctly for sub8x8 inter and intra blocks. In the current syntax, for sub8x8 blocks, there is still a single tx_type that is transmitted. Ideally, this should be searched for the best rd performance, albeit at the expense of encode speed. For now, we just set it to DCT_DCT. Previously it was left incorrectly as what was used for the previous non sub8x8 block. derflr: BDRATE -0.277% Change-Id: If76ba903bfbfd4d374cf1ac7d1daee50e92f0edd
2016-02-08BUG FIX: undefined reference to `vp9_scale_and_extend_frame_c'Scott LaVarnway
See https://bugs.chromium.org/p/webm/issues/detail?id=1145 Change-Id: I778ee07dc39a524e3f729bef47a7abeed51e0cee
2016-02-08vp9-denoiser: Allow for checking skin for bsize <=32x32.Marco
Change-Id: I6c99ac6fd3735e24cf668479c55bff313c0b4970
2016-02-08Merge "Account for sub8x8 block skip mode cost in RD decision"Jingning Han
2016-02-08Account for sub8x8 block skip mode cost in RD decisionJingning Han
Make this consistent with regular block size rate-distortion optimization. It improves the compression performance: derf 0.055% hevcmr 0.129% Change-Id: I112fe734f592c21bc7aa6efb7e3f269c4214ee7b
2016-02-08Clean up in vp9_rd_pick_inter_mode_sbJingning Han
Use local variable. Change-Id: I0d3df36cf4536958a0cda422f6c30da50f0e0bbf
2016-02-05vp8: fix build with mingw+pthreadsJames Zern
Change-Id: Icc34a00759c95b7b8ac356cdcc4adae848b61431
2016-02-05vp9-dynamic resize: On a resize trigger frame refresh alt_ref.Marco
For 1 pass real-time mode. No change in behavior as only last and golden are used as references in 1 pass real-time mode. Change-Id: Ie4655014eee1a8b271542f29d74b2c6f7fed54c9
2016-02-05intrapred/d135: flatten border results before storingJames Zern
the results along the top and left border are then stored with a moving window into the vector. ~40-67% faster on ARM, ~40-77+% on x86 depending on the block size. Change-Id: Iab369aa2946a3ae4eb7290d512868fe5db92dbc8
2016-02-05Fix an uninitialized warning.Alex Converse
Change-Id: I3ac1070df2948f6d8637ade7192400be53a7675c
2016-02-05vp9_aq_cyclicrefresh: fix unused-function warningJames Zern
delete apply_cyclic_refresh_bitrate(). unused since: 3472cbb vp9 aq-mode=3: Keep it on even at low bitrates. Change-Id: I0fac9a31b59504e31000ac3a8f0b68e8d4320113