我正在使用x264对从iphone摄像头捕获的原始数据进行编码。但是编码非常慢,.Can,有人能帮我加快编码速度吗?
我使用了以下设置来构建x264库:
//用于armv6
/configure --host=arm-apple-darwin --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -- CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc =‘dist’--sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk=‘-arch armv6’--extra-ldflags=-L/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/system/ --extra-armv6=‘-arch armv6’--enable-pic --disable asm
//用于armv7
/configure --host=arm-apple-darwin --sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk -- CC=/Developer/Platforms/iPhoneOS.platform/Developer/usr/bin/gcc =‘dist’--sysroot=/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk=‘-arch armv7’--extra-ldflags=-L/Developer/Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS4.3.sdk/usr/lib/system/ --extra-ldflags='-arch armv7‘--enable-armv7
我使用默认预设,如下所示:
x264_param_default_preset(param, "slow", "zerolatency");并设置几个参数:
param->i_bframe = 0;
param->analyse.i_me_method = X264_ME_HEX;
param->analyse.i_subpel_refine = 2;
param->i_frame_reference = 1;
param->analyse.b_mixed_references = 0;
param->analyse.i_trellis = 0;
param->rc.b_mb_tree = 0;
param->analyse.i_weighted_pred = X264_WEIGHTP_NONE;
param->rc.i_bitrate = 180;
param->rc.i_qp_min = 20;
param->rc.i_qp_max = 26;
param->i_keyint_max = 15;
param->i_keyint_min = 15;
param->i_width = w;
param->i_height = h;
x264_param_apply_profile(param, "baseline");
x264_picture_alloc( &(enc->pic), X264_CSP_I420, param->i_width, param->i_height );发布于 2012-08-08 04:48:47
如果将默认预设用作:
x264_param_default_preset(param, "veryfast", "zerolatency");也许你会在速度上有所提升。然而,我不认为iPhone能够以非常高的速度使用x264对视频进行编码。我从来没有为iPhone开发过任何东西,但通常这些嵌入式系统都有一个硬件编码器,您的应用程序可以使用该编码器。
https://stackoverflow.com/questions/11448827
复制相似问题