?? set.h
字號:
/***************************************************************************** * set.h: h264 encoder ***************************************************************************** * Copyright (C) 2003 Laurent Aimar * $Id: set.h,v 1.1 2004/06/03 19:27:07 fenrir Exp $ * * Authors: Laurent Aimar <fenrir@via.ecp.fr> * * This program is free software; you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation; either version 2 of the License, or * (at your option) any later version. * * This program is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU General Public License for more details. * * You should have received a copy of the GNU General Public License * along with this program; if not, write to the Free Software * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111, USA. *****************************************************************************/#ifndef _SET_H#define _SET_H 1enum profile_e{ PROFILE_BASELINE = 66, PROFILE_MAIN = 77, PROFILE_EXTENTED = 88, PROFILE_HIGH = 100, PROFILE_HIGH10 = 110, PROFILE_HIGH422 = 122, PROFILE_HIGH444 = 144};enum cqm4_e{ CQM_4IY = 0, CQM_4PY = 1, CQM_4IC = 2, CQM_4PC = 3};enum cqm8_e{ CQM_8IY = 0, CQM_8PY = 1};typedef struct{ int i_id; int i_profile_idc; int i_level_idc; int b_constraint_set0; int b_constraint_set1; int b_constraint_set2; int i_log2_max_frame_num; int i_poc_type; /* poc 0 */ int i_log2_max_poc_lsb; /* poc 1 */ int b_delta_pic_order_always_zero; int i_offset_for_non_ref_pic; int i_offset_for_top_to_bottom_field; int i_num_ref_frames_in_poc_cycle; int i_offset_for_ref_frame[256]; int i_num_ref_frames; int b_gaps_in_frame_num_value_allowed; int i_mb_width; int i_mb_height; int b_frame_mbs_only; int b_mb_adaptive_frame_field; int b_direct8x8_inference; int b_crop; struct { int i_left; int i_right; int i_top; int i_bottom; } crop; int b_vui; struct { int b_aspect_ratio_info_present; int i_sar_width; int i_sar_height; int b_overscan_info_present; int b_overscan_info; int b_signal_type_present; int i_vidformat; int b_fullrange; int b_color_description_present; int i_colorprim; int i_transfer; int i_colmatrix; int b_chroma_loc_info_present; int i_chroma_loc_top; int i_chroma_loc_bottom; int b_timing_info_present; int i_num_units_in_tick; int i_time_scale; int b_fixed_frame_rate; int b_bitstream_restriction; int b_motion_vectors_over_pic_boundaries; int i_max_bytes_per_pic_denom; int i_max_bits_per_mb_denom; int i_log2_max_mv_length_horizontal; int i_log2_max_mv_length_vertical; int i_num_reorder_frames; int i_max_dec_frame_buffering; /* FIXME to complete */ } vui; int b_qpprime_y_zero_transform_bypass;} x264_sps_t;typedef struct{ int i_id; int i_sps_id; int b_cabac; int b_pic_order; int i_num_slice_groups; int i_num_ref_idx_l0_active; int i_num_ref_idx_l1_active; int b_weighted_pred; int b_weighted_bipred; int i_pic_init_qp; int i_pic_init_qs; int i_chroma_qp_index_offset; int b_deblocking_filter_control; int b_constrained_intra_pred; int b_redundant_pic_cnt; int b_transform_8x8_mode; int i_cqm_preset; const uint8_t *scaling_list[6]; /* could be 8, but we don't allow separate Cb/Cr lists */} x264_pps_t;/* default quant matrices */static const uint8_t x264_cqm_jvt4i[16] ={ 6,13,20,28, 13,20,28,32, 20,28,32,37, 28,32,37,42};static const uint8_t x264_cqm_jvt4p[16] ={ 10,14,20,24, 14,20,24,27, 20,24,27,30, 24,27,30,34};static const uint8_t x264_cqm_jvt8i[64] ={ 6,10,13,16,18,23,25,27, 10,11,16,18,23,25,27,29, 13,16,18,23,25,27,29,31, 16,18,23,25,27,29,31,33, 18,23,25,27,29,31,33,36, 23,25,27,29,31,33,36,38, 25,27,29,31,33,36,38,40, 27,29,31,33,36,38,40,42};static const uint8_t x264_cqm_jvt8p[64] ={ 9,13,15,17,19,21,22,24, 13,13,17,19,21,22,24,25, 15,17,19,21,22,24,25,27, 17,19,21,22,24,25,27,28, 19,21,22,24,25,27,28,30, 21,22,24,25,27,28,30,32, 22,24,25,27,28,30,32,33, 24,25,27,28,30,32,33,35};static const uint8_t x264_cqm_flat16[64] ={ 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16, 16,16,16,16,16,16,16,16};static const uint8_t * const x264_cqm_jvt[6] ={ x264_cqm_jvt4i, x264_cqm_jvt4p, x264_cqm_jvt4i, x264_cqm_jvt4p, x264_cqm_jvt8i, x264_cqm_jvt8p};void x264_cqm_init( x264_t *h );int x264_cqm_parse_file( x264_t *h, const char *filename );#endif
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -