predict.h 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105
  1. /*****************************************************************************
  2. * predict.h: arm intra prediction
  3. *****************************************************************************
  4. * Copyright (C) 2009-2018 x264 project
  5. *
  6. * Authors: David Conrad <lessen42@gmail.com>
  7. *
  8. * This program is free software; you can redistribute it and/or modify
  9. * it under the terms of the GNU General Public License as published by
  10. * the Free Software Foundation; either version 2 of the License, or
  11. * (at your option) any later version.
  12. *
  13. * This program is distributed in the hope that it will be useful,
  14. * but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
  16. * GNU General Public License for more details.
  17. *
  18. * You should have received a copy of the GNU General Public License
  19. * along with this program; if not, write to the Free Software
  20. * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA.
  21. *
  22. * This program is also available under a commercial proprietary license.
  23. * For more information, contact us at licensing@x264.com.
  24. *****************************************************************************/
  25. #ifndef X264_ARM_PREDICT_H
  26. #define X264_ARM_PREDICT_H
  27. #define x264_predict_4x4_dc_armv6 x264_template(predict_4x4_dc_armv6)
  28. void x264_predict_4x4_dc_armv6( uint8_t *src );
  29. #define x264_predict_4x4_dc_top_neon x264_template(predict_4x4_dc_top_neon)
  30. void x264_predict_4x4_dc_top_neon( uint8_t *src );
  31. #define x264_predict_4x4_v_armv6 x264_template(predict_4x4_v_armv6)
  32. void x264_predict_4x4_v_armv6( uint8_t *src );
  33. #define x264_predict_4x4_h_armv6 x264_template(predict_4x4_h_armv6)
  34. void x264_predict_4x4_h_armv6( uint8_t *src );
  35. #define x264_predict_4x4_ddr_armv6 x264_template(predict_4x4_ddr_armv6)
  36. void x264_predict_4x4_ddr_armv6( uint8_t *src );
  37. #define x264_predict_4x4_ddl_neon x264_template(predict_4x4_ddl_neon)
  38. void x264_predict_4x4_ddl_neon( uint8_t *src );
  39. #define x264_predict_8x8c_dc_neon x264_template(predict_8x8c_dc_neon)
  40. void x264_predict_8x8c_dc_neon( uint8_t *src );
  41. #define x264_predict_8x8c_dc_top_neon x264_template(predict_8x8c_dc_top_neon)
  42. void x264_predict_8x8c_dc_top_neon( uint8_t *src );
  43. #define x264_predict_8x8c_dc_left_neon x264_template(predict_8x8c_dc_left_neon)
  44. void x264_predict_8x8c_dc_left_neon( uint8_t *src );
  45. #define x264_predict_8x8c_h_neon x264_template(predict_8x8c_h_neon)
  46. void x264_predict_8x8c_h_neon( uint8_t *src );
  47. #define x264_predict_8x8c_v_neon x264_template(predict_8x8c_v_neon)
  48. void x264_predict_8x8c_v_neon( uint8_t *src );
  49. #define x264_predict_8x8c_p_neon x264_template(predict_8x8c_p_neon)
  50. void x264_predict_8x8c_p_neon( uint8_t *src );
  51. #define x264_predict_8x16c_h_neon x264_template(predict_8x16c_h_neon)
  52. void x264_predict_8x16c_h_neon( uint8_t *src );
  53. #define x264_predict_8x16c_dc_top_neon x264_template(predict_8x16c_dc_top_neon)
  54. void x264_predict_8x16c_dc_top_neon( uint8_t *src );
  55. #define x264_predict_8x16c_p_neon x264_template(predict_8x16c_p_neon)
  56. void x264_predict_8x16c_p_neon( uint8_t *src );
  57. #define x264_predict_8x8_dc_neon x264_template(predict_8x8_dc_neon)
  58. void x264_predict_8x8_dc_neon( uint8_t *src, uint8_t edge[36] );
  59. #define x264_predict_8x8_ddl_neon x264_template(predict_8x8_ddl_neon)
  60. void x264_predict_8x8_ddl_neon( uint8_t *src, uint8_t edge[36] );
  61. #define x264_predict_8x8_ddr_neon x264_template(predict_8x8_ddr_neon)
  62. void x264_predict_8x8_ddr_neon( uint8_t *src, uint8_t edge[36] );
  63. #define x264_predict_8x8_vl_neon x264_template(predict_8x8_vl_neon)
  64. void x264_predict_8x8_vl_neon( uint8_t *src, uint8_t edge[36] );
  65. #define x264_predict_8x8_vr_neon x264_template(predict_8x8_vr_neon)
  66. void x264_predict_8x8_vr_neon( uint8_t *src, uint8_t edge[36] );
  67. #define x264_predict_8x8_v_neon x264_template(predict_8x8_v_neon)
  68. void x264_predict_8x8_v_neon( uint8_t *src, uint8_t edge[36] );
  69. #define x264_predict_8x8_h_neon x264_template(predict_8x8_h_neon)
  70. void x264_predict_8x8_h_neon( uint8_t *src, uint8_t edge[36] );
  71. #define x264_predict_8x8_hd_neon x264_template(predict_8x8_hd_neon)
  72. void x264_predict_8x8_hd_neon( uint8_t *src, uint8_t edge[36] );
  73. #define x264_predict_8x8_hu_neon x264_template(predict_8x8_hu_neon)
  74. void x264_predict_8x8_hu_neon( uint8_t *src, uint8_t edge[36] );
  75. #define x264_predict_16x16_dc_neon x264_template(predict_16x16_dc_neon)
  76. void x264_predict_16x16_dc_neon( uint8_t *src );
  77. #define x264_predict_16x16_dc_top_neon x264_template(predict_16x16_dc_top_neon)
  78. void x264_predict_16x16_dc_top_neon( uint8_t *src );
  79. #define x264_predict_16x16_dc_left_neon x264_template(predict_16x16_dc_left_neon)
  80. void x264_predict_16x16_dc_left_neon( uint8_t *src );
  81. #define x264_predict_16x16_h_neon x264_template(predict_16x16_h_neon)
  82. void x264_predict_16x16_h_neon( uint8_t *src );
  83. #define x264_predict_16x16_v_neon x264_template(predict_16x16_v_neon)
  84. void x264_predict_16x16_v_neon( uint8_t *src );
  85. #define x264_predict_16x16_p_neon x264_template(predict_16x16_p_neon)
  86. void x264_predict_16x16_p_neon( uint8_t *src );
  87. #define x264_predict_4x4_init_arm x264_template(predict_4x4_init_arm)
  88. void x264_predict_4x4_init_arm( int cpu, x264_predict_t pf[12] );
  89. #define x264_predict_8x8_init_arm x264_template(predict_8x8_init_arm)
  90. void x264_predict_8x8_init_arm( int cpu, x264_predict8x8_t pf[12], x264_predict_8x8_filter_t *predict_filter );
  91. #define x264_predict_8x8c_init_arm x264_template(predict_8x8c_init_arm)
  92. void x264_predict_8x8c_init_arm( int cpu, x264_predict_t pf[7] );
  93. #define x264_predict_8x16c_init_arm x264_template(predict_8x16c_init_arm)
  94. void x264_predict_8x16c_init_arm( int cpu, x264_predict_t pf[7] );
  95. #define x264_predict_16x16_init_arm x264_template(predict_16x16_init_arm)
  96. void x264_predict_16x16_init_arm( int cpu, x264_predict_t pf[7] );
  97. #endif