1 /***************************************************************************** 2 * analyse.h: macroblock analysis 3 ***************************************************************************** 4 * Copyright (C) 2003-2014 x264 project 5 * 6 * Authors: Laurent Aimar <fenrir@via.ecp.fr> 7 * Loren Merritt <lorenm@u.washington.edu> 8 * 9 * This program is free software; you can redistribute it and/or modify 10 * it under the terms of the GNU General Public License as published by 11 * the Free Software Foundation; either version 2 of the License, or 12 * (at your option) any later version. 13 * 14 * This program is distributed in the hope that it will be useful, 15 * but WITHOUT ANY WARRANTY; without even the implied warranty of 16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 17 * GNU General Public License for more details. 18 * 19 * You should have received a copy of the GNU General Public License 20 * along with this program; if not, write to the Free Software 21 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111, USA. 22 * 23 * This program is also available under a commercial proprietary license. 24 * For more information, contact us at licensing@x264.com. 25 *****************************************************************************/ 26 27 #ifndef X264_ANALYSE_H 28 #define X264_ANALYSE_H 29 30 float *x264_analyse_prepare_costs( x264_t *h ); 31 int x264_analyse_init_costs( x264_t *h, float *logs, int qp ); 32 void x264_analyse_free_costs( x264_t *h ); 33 void x264_analyse_weight_frame( x264_t *h, int end ); 34 void x264_macroblock_analyse( x264_t *h ); 35 void x264_slicetype_decide( x264_t *h ); 36 37 void x264_slicetype_analyse( x264_t *h, int intra_minigop ); 38 39 int x264_weighted_reference_duplicate( x264_t *h, int i_ref, const x264_weight_t *w ); 40 41 int x264_lookahead_init( x264_t *h, int i_slicetype_length ); 42 int x264_lookahead_is_empty( x264_t *h ); 43 void x264_lookahead_put_frame( x264_t *h, x264_frame_t *frame ); 44 void x264_lookahead_get_frames( x264_t *h ); 45 void x264_lookahead_delete( x264_t *h ); 46 47 #endif 48