原始**不詳
typedef struct x264_param_t
/* cpu 標誌位 */
unsigned int cpu;
int i_threads; /* 並行編碼多幀 */
int b_deterministic; /*是否允許非確定性時執行緒優化*/
int i_sync_lookahead; /* 執行緒超前緩衝 */
int i_width; /* 寬度*/
int i_height; /* 高度*/
int i_csp; /* 編碼位元流的csp,僅支援i420,色彩空間設定 */
int i_level_idc; /* level值的設定*/
int i_frame_total; /* 編碼幀的總數, 預設 0 */
struct
/* they will be reduced to be 0 < x <= 65535 and prime */
int i_sar_height;
int i_sar_width; /* 設定長寬比 */
int i_overscan; /* 0=undef, 1=no overscan, 2=overscan 過掃瞄線,預設"undef"(不設定),可選項:show(**)/crop(去除)*/
/*見以下的值h264附件e */
int b_fullrange; /*specify full range samples setting,預設"off",可選項:off/on*/
int i_colorprim; /*原始色度格式,預設"undef",可選項:undef/bt709/bt470m/bt470bg,smpte170m/smpte240m/film*/
int i_transfer; /*轉換方式,預設"undef",可選項:undef/bt709/bt470m/bt470bg/linear,log100/log316/smpte170m/smpte240m*/
int i_colmatrix; /*色度矩陣設定,預設"undef",undef/bt709/fcc/bt470bg,smpte170m/smpte240m/gbr/ycgco*/
int i_chroma_loc; /* both top & bottom色度樣本指定,範圍0~5,預設0 */
} vui;
int i_fps_num;
int i_fps_den;
/*這兩個引數是由fps幀率確定的,賦值的過程見下:
*/int b_psnr; /* 計算和列印psnr資訊 */
int b_ssim; /*計算和列印ssim資訊*/
} analyse;
/* 位元速率控制引數 */
struct
int i_rc_method; /* x264_rc_* */
int i_qp_constant; /* 0-51 */
int i_qp_min; /*允許的最小量化值 */
int i_qp_max; /*允許的最大量化值*/
int i_qp_step; /*幀間最大量化步長 */
int i_bitrate; /*設定平均位元速率 */
float f_rf_constant; /* 1pass vbr, nominal qp */
float f_rate_tolerance;
int i_vbv_max_bitrate; /*平均位元速率模式下,最大瞬時位元速率,預設0(與-b設定相同) */
int i_vbv_buffer_size; /*位元速率控制緩衝區的大小,單位kbit,預設0 */
float f_vbv_buffer_init; /* <=1: fraction of buffer_size. >1: kbit位元速率控制緩衝區資料保留的最大資料量與緩衝區大小之比,範圍0~1.0,預設0.9*/
float f_ip_factor;
float f_pb_factor;
int i_aq_mode; /* psy adaptive qp. (x264_aq_*) */
float f_aq_strength;
int b_mb_tree; /* macroblock-tree ratecontrol. */
int i_lookahead;
/* 2pass 多次壓縮位元速率控制 */
int b_stat_write; /* enable stat writing in psz_stat_out */
char *psz_stat_out;
int b_stat_read; /* read stat from psz_stat_in and use it */
char *psz_stat_in;
/* 2pass params (same as ffmpeg ones) */
float f_qcompress; /* 0.0 => cbr, 1.0 => constant qp */
float f_qblur; /*時間上模糊量化 */
float f_complexity_blur; /* 時間上模糊複雜性 */
x264_zone_t *zones; /* 位元速率控制覆蓋 */
int i_zones; /* number of zone_t's */
char *psz_zones; /*指定區的另一種方法*/
} rc;
/* muxing parameters */
int b_aud; /*生成訪問單元分隔符*/
int b_repeat_headers; /* 在每個關鍵幀前放置sps/pps*/
int i_sps_id; /* sps 和 pps id 號 */
/*切片(像條)引數 */
int i_slice_max_size; /* 每片位元組的最大數,包括預計的nal開銷. */
int i_slice_max_mbs; /* 每片巨集塊的最大數,重寫 i_slice_count */
int i_slice_count; /* 每幀的像條數目: 設定矩形像條. */
/* optional callback for freeing this x264_param_t when it is done being used.
* only used when the x264_param_t sits in memory for an indefinite period of time,
* i.e. when an x264_param_t is passed to x264_t in an x264_picture_t or in zones.
* not used when x264_encoder_reconfig is called directly. */
void (*param_free)( void* );
} x264_param_t;
x264 param t引數註解
typedef struct x264 param t vui int i fps num int i fps den 這兩個引數是由fps幀率確定的,賦值的過程見下 else b error 1 value的值就是fps。流引數int i frame reference 參考幀最大數目 int i...
x264引數設定
引數名稱 對應x264引數 引數說明 預設值引數範圍 最大idr幀間隔 i keyint max 250最小idr幀間隔 i keyint min 該引數設定過小可能導致錯誤地插入idr幀,引數限制了插入idr幀的最小距離。建議設定等於幀速率。25最 幀數 i frame reference 表示p...
X264的引數設定
原始 不詳 i keyint 整數 最大idr幀間距,預設250 i min keyint 整數 最小idr幀間距,預設25 scenecut 整數 畫面動態變化限,當超出此值時插入i幀,預設40 pre scenecut 更快,但低精度的畫面動態檢測,需要多執行緒,並且在啟用多執行緒時自動開啟。b...