Merge "removed reference to "LLM" and "x8"" into experimental
This commit is contained in:
Коммит
12ade55719
|
@ -120,7 +120,7 @@ TEST(Vp9Fdct4x4Test, RoundTripErrorCheck) {
|
|||
}
|
||||
|
||||
// Because the bitstream is not frozen yet, use the idct in the codebase.
|
||||
vp9_short_idct4x4llm_c(test_temp_block, test_output_block, pitch);
|
||||
vp9_short_idct4x4_c(test_temp_block, test_output_block, pitch);
|
||||
|
||||
for (int j = 0; j < 16; ++j) {
|
||||
const int diff = test_input_block[j] - test_output_block[j];
|
||||
|
|
|
@ -10,8 +10,8 @@
|
|||
|
||||
|
||||
extern "C" {
|
||||
#include "vpx_config.h"
|
||||
#include "vp8_rtcd.h"
|
||||
#include "./vpx_config.h"
|
||||
#include "./vp8_rtcd.h"
|
||||
}
|
||||
#include "test/register_state_check.h"
|
||||
#include "third_party/googletest/src/include/gtest/gtest.h"
|
||||
|
@ -20,18 +20,16 @@ typedef void (*idct_fn_t)(short *input, unsigned char *pred_ptr,
|
|||
int pred_stride, unsigned char *dst_ptr,
|
||||
int dst_stride);
|
||||
namespace {
|
||||
class IDCTTest : public ::testing::TestWithParam<idct_fn_t>
|
||||
{
|
||||
class IDCTTest : public ::testing::TestWithParam<idct_fn_t> {
|
||||
protected:
|
||||
virtual void SetUp()
|
||||
{
|
||||
virtual void SetUp() {
|
||||
int i;
|
||||
|
||||
UUT = GetParam();
|
||||
memset(input, 0, sizeof(input));
|
||||
/* Set up guard blocks */
|
||||
for(i=0; i<256; i++)
|
||||
output[i] = ((i&0xF)<4&&(i<64))?0:-1;
|
||||
for (i = 0; i < 256; i++)
|
||||
output[i] = ((i & 0xF) < 4 && (i < 64)) ? 0 : -1;
|
||||
}
|
||||
|
||||
idct_fn_t UUT;
|
||||
|
@ -40,78 +38,72 @@ class IDCTTest : public ::testing::TestWithParam<idct_fn_t>
|
|||
unsigned char predict[256];
|
||||
};
|
||||
|
||||
TEST_P(IDCTTest, TestGuardBlocks)
|
||||
{
|
||||
TEST_P(IDCTTest, TestGuardBlocks) {
|
||||
int i;
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
if((i&0xF) < 4 && i<64)
|
||||
for (i = 0; i < 256; i++)
|
||||
if ((i & 0xF) < 4 && i < 64)
|
||||
EXPECT_EQ(0, output[i]) << i;
|
||||
else
|
||||
EXPECT_EQ(255, output[i]);
|
||||
}
|
||||
|
||||
TEST_P(IDCTTest, TestAllZeros)
|
||||
{
|
||||
TEST_P(IDCTTest, TestAllZeros) {
|
||||
int i;
|
||||
|
||||
REGISTER_STATE_CHECK(UUT(input, output, 16, output, 16));
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
if((i&0xF) < 4 && i<64)
|
||||
for (i = 0; i < 256; i++)
|
||||
if ((i & 0xF) < 4 && i < 64)
|
||||
EXPECT_EQ(0, output[i]) << "i==" << i;
|
||||
else
|
||||
EXPECT_EQ(255, output[i]) << "i==" << i;
|
||||
}
|
||||
|
||||
TEST_P(IDCTTest, TestAllOnes)
|
||||
{
|
||||
TEST_P(IDCTTest, TestAllOnes) {
|
||||
int i;
|
||||
|
||||
input[0] = 4;
|
||||
REGISTER_STATE_CHECK(UUT(input, output, 16, output, 16));
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
if((i&0xF) < 4 && i<64)
|
||||
for (i = 0; i < 256; i++)
|
||||
if ((i & 0xF) < 4 && i < 64)
|
||||
EXPECT_EQ(1, output[i]) << "i==" << i;
|
||||
else
|
||||
EXPECT_EQ(255, output[i]) << "i==" << i;
|
||||
}
|
||||
|
||||
TEST_P(IDCTTest, TestAddOne)
|
||||
{
|
||||
TEST_P(IDCTTest, TestAddOne) {
|
||||
int i;
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
for (i = 0; i < 256; i++)
|
||||
predict[i] = i;
|
||||
|
||||
input[0] = 4;
|
||||
REGISTER_STATE_CHECK(UUT(input, predict, 16, output, 16));
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
if((i&0xF) < 4 && i<64)
|
||||
for (i = 0; i < 256; i++)
|
||||
if ((i & 0xF) < 4 && i < 64)
|
||||
EXPECT_EQ(i+1, output[i]) << "i==" << i;
|
||||
else
|
||||
EXPECT_EQ(255, output[i]) << "i==" << i;
|
||||
}
|
||||
|
||||
TEST_P(IDCTTest, TestWithData)
|
||||
{
|
||||
TEST_P(IDCTTest, TestWithData) {
|
||||
int i;
|
||||
|
||||
for(i=0; i<16; i++)
|
||||
for (i = 0; i < 16; i++)
|
||||
input[i] = i;
|
||||
|
||||
REGISTER_STATE_CHECK(UUT(input, output, 16, output, 16));
|
||||
|
||||
for(i=0; i<256; i++)
|
||||
if((i&0xF) > 3 || i>63)
|
||||
for (i = 0; i < 256; i++)
|
||||
if ((i & 0xF) > 3 || i > 63)
|
||||
EXPECT_EQ(255, output[i]) << "i==" << i;
|
||||
else if(i == 0)
|
||||
else if (i == 0)
|
||||
EXPECT_EQ(11, output[i]) << "i==" << i;
|
||||
else if(i == 34)
|
||||
else if (i == 34)
|
||||
EXPECT_EQ(1, output[i]) << "i==" << i;
|
||||
else if(i == 2 || i == 17 || i == 32)
|
||||
else if (i == 2 || i == 17 || i == 32)
|
||||
EXPECT_EQ(3, output[i]) << "i==" << i;
|
||||
else
|
||||
EXPECT_EQ(0, output[i]) << "i==" << i;
|
|
@ -47,7 +47,7 @@ ifeq ($(CONFIG_VP8_ENCODER)$(CONFIG_VP8_DECODER),yesyes)
|
|||
LIBVPX_TEST_SRCS-yes += vp8_boolcoder_test.cc
|
||||
endif
|
||||
|
||||
LIBVPX_TEST_SRCS-yes += idctllm_test.cc
|
||||
LIBVPX_TEST_SRCS-yes += idct_test.cc
|
||||
LIBVPX_TEST_SRCS-yes += intrapred_test.cc
|
||||
LIBVPX_TEST_SRCS-$(CONFIG_POSTPROC) += pp_filter_test.cc
|
||||
LIBVPX_TEST_SRCS-$(CONFIG_ENCODERS) += sad_test.cc
|
||||
|
|
|
@ -9,7 +9,7 @@
|
|||
;
|
||||
|
||||
|
||||
.globl short_idct4x4llm_ppc
|
||||
.globl short_idct4x4_ppc
|
||||
|
||||
.macro load_c V, LABEL, OFF, R0, R1
|
||||
lis \R0, \LABEL@ha
|
||||
|
@ -21,7 +21,7 @@
|
|||
;# r4 short *output
|
||||
;# r5 int pitch
|
||||
.align 2
|
||||
short_idct4x4llm_ppc:
|
||||
short_idct4x4_ppc:
|
||||
mfspr r11, 256 ;# get old VRSAVE
|
||||
oris r12, r11, 0xfff8
|
||||
mtspr 256, r12 ;# set VRSAVE
|
|
@ -63,7 +63,7 @@ void recon_b_ppc(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_pt
|
|||
void recon2b_ppc(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_ptr, int stride);
|
||||
void recon4b_ppc(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_ptr, int stride);
|
||||
|
||||
extern void short_idct4x4llm_ppc(short *input, short *output, int pitch);
|
||||
extern void short_idct4x4_ppc(short *input, short *output, int pitch);
|
||||
|
||||
// Generic C
|
||||
extern subpixel_predict_function vp9_sixtap_predict_c;
|
||||
|
@ -83,8 +83,8 @@ void vp9_recon_b_c(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_
|
|||
void vp9_recon2b_c(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_ptr, int stride);
|
||||
void vp9_recon4b_c(short *diff_ptr, unsigned char *pred_ptr, unsigned char *dst_ptr, int stride);
|
||||
|
||||
extern void vp9_short_idct4x4llm_1_c(short *input, short *output, int pitch);
|
||||
extern void vp9_short_idct4x4llm_c(short *input, short *output, int pitch);
|
||||
extern void vp9_short_idct4x4_1_c(short *input, short *output, int pitch);
|
||||
extern void vp9_short_idct4x4_c(short *input, short *output, int pitch);
|
||||
extern void vp8_dc_only_idct_c(short input_dc, short *output, int pitch);
|
||||
|
||||
// PPC
|
||||
|
@ -139,8 +139,8 @@ void vp9_machine_specific_config(void) {
|
|||
vp9_sixtap_predict8x4 = sixtap_predict8x4_ppc;
|
||||
vp9_sixtap_predict = sixtap_predict_ppc;
|
||||
|
||||
vp8_short_idct4x4_1 = vp9_short_idct4x4llm_1_c;
|
||||
vp8_short_idct4x4 = short_idct4x4llm_ppc;
|
||||
vp8_short_idct4x4_1 = vp9_short_idct4x4_1_c;
|
||||
vp8_short_idct4x4 = short_idct4x4_ppc;
|
||||
vp8_dc_only_idct = vp8_dc_only_idct_c;
|
||||
|
||||
vp8_lf_mbvfull = loop_filter_mbv_ppc;
|
||||
|
|
|
@ -8,20 +8,6 @@
|
|||
* be found in the AUTHORS file in the root of the source tree.
|
||||
*/
|
||||
|
||||
|
||||
/****************************************************************************
|
||||
* Notes:
|
||||
*
|
||||
* This implementation makes use of 16 bit fixed point verio of two multiply
|
||||
* constants:
|
||||
* 1. sqrt(2) * cos (pi/8)
|
||||
* 2. sqrt(2) * sin (pi/8)
|
||||
* Becuase the first constant is bigger than 1, to maintain the same 16 bit
|
||||
* fixed point precision as the second one, we use a trick of
|
||||
* x * a = x + x*(a-1)
|
||||
* so
|
||||
* x * sqrt(2) * cos (pi/8) = x + x * (sqrt(2) *cos(pi/8)-1).
|
||||
**************************************************************************/
|
||||
#include <assert.h>
|
||||
#include <math.h>
|
||||
|
||||
|
@ -32,7 +18,7 @@
|
|||
#include "vp9/common/vp9_common.h"
|
||||
#include "vp9/common/vp9_idct.h"
|
||||
|
||||
void vp9_short_inv_walsh4x4_x8_c(int16_t *input, int16_t *output, int pitch) {
|
||||
void vp9_short_iwalsh4x4_c(int16_t *input, int16_t *output, int pitch) {
|
||||
int i;
|
||||
int a1, b1, c1, d1;
|
||||
int16_t *ip = input;
|
||||
|
@ -73,7 +59,7 @@ void vp9_short_inv_walsh4x4_x8_c(int16_t *input, int16_t *output, int pitch) {
|
|||
}
|
||||
}
|
||||
|
||||
void vp9_short_inv_walsh4x4_1_x8_c(int16_t *in, int16_t *out, int pitch) {
|
||||
void vp9_short_iwalsh4x4_1_c(int16_t *in, int16_t *out, int pitch) {
|
||||
int i;
|
||||
int16_t tmp[4];
|
||||
int16_t *ip = in;
|
||||
|
@ -99,7 +85,7 @@ void vp9_dc_only_inv_walsh_add_c(int input_dc, uint8_t *pred_ptr,
|
|||
int r, c;
|
||||
int16_t dc = input_dc;
|
||||
int16_t tmp[4 * 4];
|
||||
vp9_short_inv_walsh4x4_1_x8_c(&dc, tmp, 4 << 1);
|
||||
vp9_short_iwalsh4x4_1_c(&dc, tmp, 4 << 1);
|
||||
|
||||
for (r = 0; r < 4; r++) {
|
||||
for (c = 0; c < 4; c++)
|
||||
|
@ -130,7 +116,7 @@ void vp9_idct4_1d_c(int16_t *input, int16_t *output) {
|
|||
output[3] = step[0] - step[3];
|
||||
}
|
||||
|
||||
void vp9_short_idct4x4llm_c(int16_t *input, int16_t *output, int pitch) {
|
||||
void vp9_short_idct4x4_c(int16_t *input, int16_t *output, int pitch) {
|
||||
int16_t out[4 * 4];
|
||||
int16_t *outptr = out;
|
||||
const int half_pitch = pitch >> 1;
|
||||
|
@ -156,7 +142,7 @@ void vp9_short_idct4x4llm_c(int16_t *input, int16_t *output, int pitch) {
|
|||
}
|
||||
}
|
||||
|
||||
void vp9_short_idct4x4llm_1_c(int16_t *input, int16_t *output, int pitch) {
|
||||
void vp9_short_idct4x4_1_c(int16_t *input, int16_t *output, int pitch) {
|
||||
int i;
|
||||
int a1;
|
||||
int16_t *op = output;
|
|
@ -279,11 +279,11 @@ specialize vp9_convolve8_avg_vert ssse3
|
|||
#
|
||||
# dct
|
||||
#
|
||||
prototype void vp9_short_idct4x4llm_1 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_idct4x4llm_1
|
||||
prototype void vp9_short_idct4x4_1 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_idct4x4_1
|
||||
|
||||
prototype void vp9_short_idct4x4llm "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_idct4x4llm sse2
|
||||
prototype void vp9_short_idct4x4 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_idct4x4 sse2
|
||||
|
||||
prototype void vp9_short_idct8x8 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_idct8x8
|
||||
|
@ -330,10 +330,10 @@ specialize vp9_idct4_1d sse2
|
|||
prototype void vp9_dc_only_idct_add "int input_dc, uint8_t *pred_ptr, uint8_t *dst_ptr, int pitch, int stride"
|
||||
specialize vp9_dc_only_idct_add sse2
|
||||
|
||||
prototype void vp9_short_inv_walsh4x4_1_x8 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_inv_walsh4x4_1_x8
|
||||
prototype void vp9_short_inv_walsh4x4_x8 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_inv_walsh4x4_x8
|
||||
prototype void vp9_short_iwalsh4x4_1 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_iwalsh4x4_1
|
||||
prototype void vp9_short_iwalsh4x4 "int16_t *input, int16_t *output, int pitch"
|
||||
specialize vp9_short_iwalsh4x4
|
||||
prototype void vp9_dc_only_inv_walsh_add "int input_dc, uint8_t *pred_ptr, uint8_t *dst_ptr, int pitch, int stride"
|
||||
specialize vp9_dc_only_inv_walsh_add
|
||||
|
||||
|
@ -600,11 +600,11 @@ specialize vp9_short_fdct32x32
|
|||
prototype void vp9_short_fdct16x16 "int16_t *InputData, int16_t *OutputData, int pitch"
|
||||
specialize vp9_short_fdct16x16 sse2
|
||||
|
||||
prototype void vp9_short_walsh4x4_x8 "int16_t *InputData, int16_t *OutputData, int pitch"
|
||||
specialize vp9_short_walsh4x4_x8
|
||||
prototype void vp9_short_walsh4x4 "int16_t *InputData, int16_t *OutputData, int pitch"
|
||||
specialize vp9_short_walsh4x4
|
||||
|
||||
prototype void vp9_short_walsh8x4_x8 "int16_t *InputData, int16_t *OutputData, int pitch"
|
||||
specialize vp9_short_walsh8x4_x8
|
||||
prototype void vp9_short_walsh8x4 "int16_t *InputData, int16_t *OutputData, int pitch"
|
||||
specialize vp9_short_walsh8x4
|
||||
|
||||
#
|
||||
# Motion search
|
||||
|
|
|
@ -74,7 +74,7 @@ void vp9_dc_only_idct_add_sse2(int input_dc, uint8_t *pred_ptr,
|
|||
*(int *)dst_ptr = _mm_cvtsi128_si32(p1);
|
||||
}
|
||||
|
||||
void vp9_short_idct4x4llm_sse2(int16_t *input, int16_t *output, int pitch) {
|
||||
void vp9_short_idct4x4_sse2(int16_t *input, int16_t *output, int pitch) {
|
||||
const __m128i zero = _mm_setzero_si128();
|
||||
const __m128i eight = _mm_set1_epi16(8);
|
||||
const __m128i cst = _mm_setr_epi16((int16_t)cospi_16_64, (int16_t)cospi_16_64,
|
|
@ -138,14 +138,14 @@ static void mb_init_dequantizer(VP9D_COMP *pbi, MACROBLOCKD *mb) {
|
|||
|
||||
if (mb->lossless) {
|
||||
assert(qindex == 0);
|
||||
mb->inv_txm4x4_1 = vp9_short_inv_walsh4x4_1_x8;
|
||||
mb->inv_txm4x4 = vp9_short_inv_walsh4x4_x8;
|
||||
mb->inv_txm4x4_1 = vp9_short_iwalsh4x4_1;
|
||||
mb->inv_txm4x4 = vp9_short_iwalsh4x4;
|
||||
mb->itxm_add = vp9_dequant_idct_add_lossless_c;
|
||||
mb->itxm_add_y_block = vp9_dequant_idct_add_y_block_lossless_c;
|
||||
mb->itxm_add_uv_block = vp9_dequant_idct_add_uv_block_lossless_c;
|
||||
} else {
|
||||
mb->inv_txm4x4_1 = vp9_short_idct4x4llm_1;
|
||||
mb->inv_txm4x4 = vp9_short_idct4x4llm;
|
||||
mb->inv_txm4x4_1 = vp9_short_idct4x4_1;
|
||||
mb->inv_txm4x4 = vp9_short_idct4x4;
|
||||
mb->itxm_add = vp9_dequant_idct_add;
|
||||
mb->itxm_add_y_block = vp9_dequant_idct_add_y_block;
|
||||
mb->itxm_add_uv_block = vp9_dequant_idct_add_uv_block;
|
||||
|
|
|
@ -126,7 +126,7 @@ void vp9_dequant_idct_add_c(int16_t *input, const int16_t *dq, uint8_t *pred,
|
|||
input[i] *= dq[i];
|
||||
|
||||
// the idct halves ( >> 1) the pitch
|
||||
vp9_short_idct4x4llm(input, output, 4 << 1);
|
||||
vp9_short_idct4x4(input, output, 4 << 1);
|
||||
|
||||
vpx_memset(input, 0, 32);
|
||||
|
||||
|
@ -148,7 +148,7 @@ void vp9_dequant_dc_idct_add_c(int16_t *input, const int16_t *dq, uint8_t *pred,
|
|||
input[i] *= dq[i];
|
||||
|
||||
// the idct halves ( >> 1) the pitch
|
||||
vp9_short_idct4x4llm(input, output, 4 << 1);
|
||||
vp9_short_idct4x4(input, output, 4 << 1);
|
||||
vpx_memset(input, 0, 32);
|
||||
vp9_add_residual_4x4(output, pred, pitch, dest, stride);
|
||||
}
|
||||
|
@ -163,7 +163,7 @@ void vp9_dequant_idct_add_lossless_c(int16_t *input, const int16_t *dq,
|
|||
for (i = 0; i < 16; i++)
|
||||
input[i] *= dq[i];
|
||||
|
||||
vp9_short_inv_walsh4x4_x8_c(input, output, 4 << 1);
|
||||
vp9_short_iwalsh4x4_c(input, output, 4 << 1);
|
||||
|
||||
vpx_memset(input, 0, 32);
|
||||
|
||||
|
@ -186,7 +186,7 @@ void vp9_dequant_dc_idct_add_lossless_c(int16_t *input, const int16_t *dq,
|
|||
for (i = 1; i < 16; i++)
|
||||
input[i] *= dq[i];
|
||||
|
||||
vp9_short_inv_walsh4x4_x8_c(input, output, 4 << 1);
|
||||
vp9_short_iwalsh4x4_c(input, output, 4 << 1);
|
||||
vpx_memset(input, 0, 32);
|
||||
vp9_add_residual_4x4(output, pred, pitch, dest, stride);
|
||||
}
|
||||
|
|
|
@ -553,7 +553,7 @@ void vp9_short_fht8x8_c(int16_t *input, int16_t *output,
|
|||
}
|
||||
}
|
||||
|
||||
void vp9_short_walsh4x4_x8_c(short *input, short *output, int pitch) {
|
||||
void vp9_short_walsh4x4_c(short *input, short *output, int pitch) {
|
||||
int i;
|
||||
int a1, b1, c1, d1;
|
||||
short *ip = input;
|
||||
|
@ -593,9 +593,9 @@ void vp9_short_walsh4x4_x8_c(short *input, short *output, int pitch) {
|
|||
}
|
||||
}
|
||||
|
||||
void vp9_short_walsh8x4_x8_c(short *input, short *output, int pitch) {
|
||||
vp9_short_walsh4x4_x8_c(input, output, pitch);
|
||||
vp9_short_walsh4x4_x8_c(input + 4, output + 16, pitch);
|
||||
void vp9_short_walsh8x4_c(short *input, short *output, int pitch) {
|
||||
vp9_short_walsh4x4_c(input, output, pitch);
|
||||
vp9_short_walsh4x4_c(input + 4, output + 16, pitch);
|
||||
}
|
||||
|
||||
|
||||
|
|
|
@ -1214,10 +1214,10 @@ static void init_encode_frame_mb_context(VP9_COMP *cpi) {
|
|||
|
||||
static void switch_lossless_mode(VP9_COMP *cpi, int lossless) {
|
||||
if (lossless) {
|
||||
cpi->mb.fwd_txm8x4 = vp9_short_walsh8x4_x8;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_walsh4x4_x8;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_inv_walsh4x4_1_x8;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_inv_walsh4x4_x8;
|
||||
cpi->mb.fwd_txm8x4 = vp9_short_walsh8x4;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_walsh4x4;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_iwalsh4x4_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_iwalsh4x4;
|
||||
cpi->mb.optimize = 0;
|
||||
cpi->common.filter_level = 0;
|
||||
cpi->zbin_mode_boost_enabled = FALSE;
|
||||
|
@ -1225,8 +1225,8 @@ static void switch_lossless_mode(VP9_COMP *cpi, int lossless) {
|
|||
} else {
|
||||
cpi->mb.fwd_txm8x4 = vp9_short_fdct8x4;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_fdct4x4;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_idct4x4llm_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_idct4x4llm;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_idct4x4_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_idct4x4;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -843,8 +843,8 @@ void vp9_set_speed_features(VP9_COMP *cpi) {
|
|||
cpi->mb.fwd_txm8x4 = vp9_short_fdct8x4;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_fdct4x4;
|
||||
if (cpi->oxcf.lossless || cpi->mb.e_mbd.lossless) {
|
||||
cpi->mb.fwd_txm8x4 = vp9_short_walsh8x4_x8;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_walsh4x4_x8;
|
||||
cpi->mb.fwd_txm8x4 = vp9_short_walsh8x4;
|
||||
cpi->mb.fwd_txm4x4 = vp9_short_walsh4x4;
|
||||
}
|
||||
|
||||
cpi->mb.quantize_b_4x4 = vp9_regular_quantize_b_4x4;
|
||||
|
@ -1217,11 +1217,11 @@ void vp9_change_config(VP9_PTR ptr, VP9_CONFIG *oxcf) {
|
|||
|
||||
cpi->oxcf.lossless = oxcf->lossless;
|
||||
if (cpi->oxcf.lossless) {
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_inv_walsh4x4_1_x8;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_inv_walsh4x4_x8;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_iwalsh4x4_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_iwalsh4x4;
|
||||
} else {
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_idct4x4llm_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_idct4x4llm;
|
||||
cpi->mb.e_mbd.inv_txm4x4_1 = vp9_short_idct4x4_1;
|
||||
cpi->mb.e_mbd.inv_txm4x4 = vp9_short_idct4x4;
|
||||
}
|
||||
|
||||
cpi->baseline_gf_interval = DEFAULT_GF_INTERVAL;
|
||||
|
|
|
@ -28,7 +28,7 @@ VP9_COMMON_SRCS-yes += common/vp9_filter.c
|
|||
VP9_COMMON_SRCS-yes += common/vp9_filter.h
|
||||
VP9_COMMON_SRCS-yes += common/vp9_findnearmv.c
|
||||
VP9_COMMON_SRCS-yes += common/generic/vp9_systemdependent.c
|
||||
VP9_COMMON_SRCS-yes += common/vp9_idctllm.c
|
||||
VP9_COMMON_SRCS-yes += common/vp9_idct.c
|
||||
VP9_COMMON_SRCS-yes += common/vp9_alloccommon.h
|
||||
VP9_COMMON_SRCS-yes += common/vp9_blockd.h
|
||||
VP9_COMMON_SRCS-yes += common/vp9_common.h
|
||||
|
@ -91,7 +91,7 @@ VP9_COMMON_SRCS-$(CONFIG_POSTPROC) += common/vp9_postproc.c
|
|||
VP9_COMMON_SRCS-$(HAVE_MMX) += common/x86/vp9_iwalsh_mmx.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_MMX) += common/x86/vp9_recon_mmx.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_MMX) += common/x86/vp9_loopfilter_mmx.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_idctllm_sse2.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_idct_sse2.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_iwalsh_sse2.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_loopfilter_sse2.asm
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_recon_sse2.asm
|
||||
|
@ -110,13 +110,13 @@ VP9_COMMON_SRCS-yes += common/vp9_maskingmv.c
|
|||
VP9_COMMON_SRCS-$(HAVE_SSE3) += common/x86/vp9_mask_sse3.asm
|
||||
endif
|
||||
|
||||
VP9_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/vp9_idctllm_x86.c
|
||||
VP9_COMMON_SRCS-$(ARCH_X86)$(ARCH_X86_64) += common/x86/vp9_idct_x86.c
|
||||
VP9_COMMON_SRCS-$(HAVE_SSE2) += common/x86/vp9_sadmxn_x86.c
|
||||
ifeq ($(HAVE_SSE2),yes)
|
||||
vp9/common/x86/vp9_idctllm_x86.c.o: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_idct_x86.c.o: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_loopfilter_x86.c.o: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_sadmxn_x86.c.o: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_idctllm_x86.c.d: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_idct_x86.c.d: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_loopfilter_x86.c.d: CFLAGS += -msse2
|
||||
vp9/common/x86/vp9_sadmxn_x86.c.d: CFLAGS += -msse2
|
||||
endif
|
||||
|
|
Загрузка…
Ссылка в новой задаче