1 /* 2 * Copyright(c) 2019 Intel Corporation 3 * SPDX - License - Identifier: BSD - 2 - Clause - Patent 4 */ 5 6 #ifndef EbSourceBasedOperations_h 7 #define EbSourceBasedOperations_h 8 9 #include "EbDefinitions.h" 10 #include "EbSystemResourceManager.h" 11 #include "EbNoiseExtractAVX2.h" 12 13 /************************************** 14 * Context 15 **************************************/ 16 17 typedef struct SourceBasedOperationsContext 18 { 19 EbFifo *initial_rate_control_results_input_fifo_ptr; 20 EbFifo *picture_demux_results_output_fifo_ptr; 21 22 // local zz cost array 23 uint32_t picture_num_grass_sb; 24 uint32_t high_contrast_num; 25 26 EB_BOOL high_dist; 27 uint8_t *y_mean_ptr; 28 uint8_t *cr_mean_ptr; 29 uint8_t *cb_mean_ptr; 30 31 } SourceBasedOperationsContext; 32 33 /*************************************** 34 * Extern Function Declaration 35 ***************************************/ 36 37 extern EbErrorType eb_vp9_source_based_operations_context_ctor( 38 SourceBasedOperationsContext **context_dbl_ptr, 39 EbFifo *initial_rate_control_results_input_fifo_ptr, 40 EbFifo *picture_demux_results_output_fifo_ptr); 41 42 extern void* eb_vp9_source_based_operations_kernel(void *input_ptr); 43 44 #endif // EbSourceBasedOperations_h 45