summaryrefslogtreecommitdiff
path: root/vp9/common
AgeCommit message (Collapse)Author
2014-09-13Merge "Add a note for enum values of MV_REFERENCE_FRAME"Jingning Han
2014-09-11Adds high bitdepth transform functions and testsDeb Mukherjee
Adds various high bitdepth transform functions and tests. Much of the changes are related to using typedefs tran_low_t and tran_high_t for the final transform cofficients and intermediate stages of the transform computation respectively rather than fixed types int16_t/int. When vp9_highbitdepth configure flag is off, these map tp int16_t/int32_t, but when the flag is on, they map to int32_t/int64_t to make space for needed extra precision. Change-Id: I3c56de79e15b904d6f655b62ffae170729befdd8
2014-09-11Adds high bit depth sad and variance functionsDeb Mukherjee
Moves high bit depth sad/var functions from highbitdepth branch to master. Change-Id: If03845d8ef9c9c494e13350e7a587c289306b94d
2014-09-11Merge "Allow specifying opt dependencies"Johann
2014-09-11Allow specifying opt dependenciesJohann
If optimizations use more than one cpu feature, allow specifying them so that '--disable-X' still works https://code.google.com/p/webm/issues/detail?id=854 Change-Id: I3108ea37b397371a2be84dd5f2380b304db23f18
2014-09-11Add a note for enum values of MV_REFERENCE_FRAMEJingning Han
Change-Id: Ifaf6738f26e86ded6eb6ea1465bad7a229612999
2014-09-10Merge "LoopFilterWorkerData: remove misleading 'const'"Jim Bankoski
2014-09-09Merge changes If8887e1d,I36bfc9c8,I3d1e6c42James Zern
* changes: vp9_dthread: simplify loop_filter_row_worker signature simplify vp9_loop_filter_worker signature vp9_decodeframe: simplify tile_work_hook signature
2014-09-09Merge "Cleaning up and speeding up vp9_idct32x32_1024_add_sse2()."Dmitry Kovalev
2014-09-08LoopFilterWorkerData: remove misleading 'const'James Zern
'frame_buffer' is modified indirectly via 'planes'. + do the same for vp9_loop_filter_rows Change-Id: Ibb7daa2e261064e4a5317a2969e3490e59891b82
2014-09-08simplify vp9_loop_filter_worker signatureJames Zern
use the type names directly in the function declaration rather than (void *arg1, void *arg2) Change-Id: I36bfc9c886310ce370bf0ca7c679ebd6e95109cc
2014-09-08Fixing Mac OS build.Dmitry Kovalev
Change-Id: Ifae8906185a868a07685eb7a7da2484af95e70a7
2014-09-05Cleaning up and speeding up vp9_idct32x32_1024_add_sse2().Dmitry Kovalev
Change-Id: If91017b792572c9db6e257011ca307bef8428486
2014-09-05Merge "Removing postproc mmx code."Dmitry Kovalev
2014-09-05Merge "Initializing intra modes without vpx_once()."Dmitry Kovalev
2014-09-05Removing postproc mmx code.Dmitry Kovalev
Removed functions: * vp9_post_proc_down_and_across_mmx * vp9_mbpost_proc_down_mmx * vp9_plane_add_noise_mmx They all have sse2 equivalent. Change-Id: I59c1fac12b7c96ca4538d455e4400c2b7875feff
2014-09-04fix x86-darwin* buildJames Zern
vp9_variance_sse2.c contains a mix of intrinsics and references to assembly which uses x86inc.asm; it's conditionally included as a result. Change-Id: I254451483a65881c0b8e18e27bf0c3ddef60c4ec
2014-09-04Removing unused function prototypes.Dmitry Kovalev
Change-Id: Ia5e383e2cf18052f6f1eacf8b9495ab8e4d58878
2014-09-03Adding sse2 variant for vp9_mse{8x8, 8x16, 16x8}.Dmitry Kovalev
Change-Id: I6786d25ce4f32b8d8912f2d239a45ca15b310c4b
2014-09-03Initializing intra modes without vpx_once().Dmitry Kovalev
Change-Id: I0a9d52432f2500f1bd8f43f229e70e38bb9a0343
2014-09-02Merge "Removing MMX SAD calculation code."Dmitry Kovalev
2014-09-02Removing MMX SAD calculation code.Dmitry Kovalev
Removed functions: * vp9_sad_16x16_mmx * vp9_sad_8x16_mmx * vp9_sad_16x8_mmx * vp9_sad_8x8_mmx * vp9_sad_4x4_mmx Change-Id: Ic5174b93b64d65d846f0c11e72cab149e9472bc3
2014-09-02Adds config opt for highbitdepth + misc. vpxDeb Mukherjee
Adds config parameter vp9_highbitdepth, to support highbitdepth profiles. Also includes most vpx level high bit-depth functions. However encode/decode in the highbitdepth profiles will not work until the rest of the code is in place. Change-Id: I34c53b253c38873611057a6cbc89a1361b8985a6
2014-08-29Removing variance MMX code.Dmitry Kovalev
Removed functions: * vp9_mse16x16_mmx * vp9_get_mb_ss_mmx * vp9_get4x4var_mmx * vp9_get8x8var_mmx * vp9_variance4x4_mmx * vp9_variance8x8_mmx * vp9_variance16x16_mmx * vp9_variance16x8_mmx * vp9_variance8x16_mmx They all have SSE2 equivalent. Change-Id: I3796f2477c4f59b35b4828f46a300c16e62a2615
2014-08-25Merge "Replacing int_mv with MV inside the first pass code."Dmitry Kovalev
2014-08-22Replacing int_mv with MV inside the first pass code.Dmitry Kovalev
Change-Id: Ia3be6b5a18e1ff6cc5c5f4d37e4a5d0972388308
2014-08-22vp9_postproc.c: unused parameter warning resolvedJim Bankoski
Change-Id: I6d77a7c775c0482fd1f9bb03ea6f336dd2973fa0
2014-08-21Merge "Fix bug 804"Yaowu Xu
2014-08-15Merge "get_ref_frame: fix test for valid buffer."Adrian Grange
2014-08-14Merge "Fix bug 837: realloc mode info buffers on resize"Adrian Grange
2014-08-14get_ref_frame: fix test for valid buffer.Adrian Grange
In the current implementation of the encoder, frame buffers may come from the wider set of 12 such buffers, and is not restricted to the 8 allowed as reference frames. This is only an implementation detail and does not affect the constraint of having a total of 8 reference buffers overall. Change-Id: I075f777146c2df49c275d89232933f8127235175
2014-08-14Fix bug 837: realloc mode info buffers on resizeAdrian Grange
The test to determine if the mode info buffers need to be resized when the frame size changes was incorrect, as per bug 837. By storing the size of the allocated data structure, a simple test determines whether to allocate more memory when the frame size changes. Change-Id: I1544698f2882cf958fc672485614f2f46e9719bd
2014-08-12Merge "get_ref_frame: check ref_frame_map value"James Zern
2014-08-12Merge "fixes several -Wunused-function warnings"James Zern
2014-08-12get_ref_frame: check ref_frame_map valueJames Zern
'ref_frame_map' is initialized to -1. avoids using an invalid index if VP9_GET_REFERENCE/VP8_COPY_REFERENCE controls are issued after a decode error. Change-Id: I4599762c4d0b07a5943a72bf4a86ccb596cc062a
2014-08-12fixes several -Wunused-function warningsJim Bankoski
Change-Id: I4dc2cb255f4fe30998b6ee61184895dee9f5da8e
2014-08-08Common encode/decode function to get reference frameAdrian Grange
Replaced encoder and decoder functions to get a pointer to a reference frame with a common function, vp9_get_ref_frame, and simplified it. Change-Id: Icb206fcce8caace3bfd1db3dbfa318dde79043ee
2014-08-08Remove coding_use_prev_mi member from VP9_COMMONAdrian Grange
This was shadowing the use of error_resilient_mode, but with the opposite sense. Change-Id: Ie4d30263a304fe4b3e94f0c7741db6888cc6afd8
2014-08-07Fix bug 807levytamar82
in the sub_pixel_*variance* function the dst is aligned to 16 bytes and not to 32 bytes - now load unaligned data Change-Id: I2e0b9745543697efc56fefa32857ea10117af135
2014-08-07Fix bug 804levytamar82
A bug in Microsoft compiler was found in the function vp9_filter_block1d16_v8_avx2 and a workaround applied. the bug occur when there was 4 consecutive maddubs + min + adds intrinsic instructions. Change-Id: I83499faeb70971e650e5663fd2490360ddb1a51b
2014-08-07Fix bug 806levytamar82
in the function sad32x32x4d and sad64x64x4d the source is aligned to 16 bytes and not to 32 bytes - the load is now unaligned. Change-Id: I922fdba56d0936b5cf72e4503519f185645a168c
2014-08-07Merge "Removing direct references to VP9_COMP."Dmitry Kovalev
2014-08-07Merge "Changes hdr for profiles > 1 for intraonly frames"Deb Mukherjee
2014-08-07Changes hdr for profiles > 1 for intraonly framesDeb Mukherjee
Specifies the bit-depth, color sampling and colorspace for intra only frames for profiles > 0 Also adds checks to ensure that profile 1 and 3 are exclusively used for non 420 streams. Change-Id: Icfb15fa1acccbce8f757c78fa8a2f60591360745
2014-08-06configure: add --enable-coefficient-range-checkingYaowu Xu
This commit adds a configure time option used to enable strict error checking in decoder to make sure intermediate stage cofficients of inverse transforms are within valid range of signed 16 bit integer. For valid VP9 input streams, intermediate stage coefficients should always stay within the range of a signed 16 bit integer. Coefficients can go out of this range for invalid/corrupt VP9 streams. However, strictly checking this range for every intermediate coefficient can be a burden for decoder, therefore such validation is only enabled with configure option --enable-coefficient-range-checking. Change-Id: I47d47c8c4e48a922c3d223ca59064f51b3f0f5ed
2014-08-06Removing direct references to VP9_COMP.Dmitry Kovalev
Change-Id: Ic37624d807884e71f08b50fd04892f03f2708ba7
2014-08-05Remove vp9_postproc_x86.hJohann
This configuration has moved to vp9_rtcd_defs.pl Change-Id: I71a31dbb8d79df226b60dd834324a5af69956c51
2014-08-04cast enums to int to avoid gcc warning in pred_commonJim Bankoski
Change-Id: Ie3e478ef4fa565225d9e19a14d2f40aad966c2b6
2014-08-04break at the end of clauses with assert(0) to avoid gcc warningJim Bankoski
Change-Id: I1b3c5337f018dde27dc819ab18bd081d169a91e8
2014-08-04uint8_t segment and skip to avoid signed / unsigned warningsJim Bankoski
Change-Id: I2e2765b851fb0a1b15351c2aa0e079197cbee373