Now I found a method to collect every frame picture of phone's camera and write them into a file. Then I read these data from the file, and use x264_encoder_encode( x264_t *, x264_nal_t **pp_nal, int *pi_nal, x264_picture_t *pic_in, x264_picture_t *pic_out ); to do the compression. However, the *pi_nal always return 0 when processing the first frame, and the output video is full of green pictures. Does anyone encounter this problem? Thank you~ Below is my setting.<div>
<br></div><div><div>        x264_param_default(param); //set default param</div><div><span class="Apple-tab-span" style="white-space:pre">    </span>param->i_width = width; //set frame width</div><div><span class="Apple-tab-span" style="white-space:pre"> </span>param->i_height = height; //set frame height</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>param->rc.i_lookahead =0;</div><div><br></div><div><span class="Apple-tab-span" style="white-space:pre">        </span>param->i_fps_num = fps;</div><div><span class="Apple-tab-span" style="white-space:pre">   </span>param->i_fps_den = 1;</div>
<div><span class="Apple-tab-span" style="white-space:pre">      </span>x264_param_apply_profile(param,"baseline");</div><br><div class="gmail_quote"><br></div><div><br></div>-- <br>Zhang Qing (张卿)<br><a href="http://about.me/zhang_qing" target="_blank">http://about.me/zhang_qing</a><br>

</div>