24,854
社区成员
发帖
与我相关
我的任务
分享
while(i*one_yuv420p_size<lAfterTransSize){
srcFile.read((char*)picture_buf,one_yuv420p_size); //读取one_yuv422p_size给Picture_buf
picture->data[0] = picture_buf; // 亮度Y
picture->data[1] = picture_buf+ y_size; // U
picture->data[2] = picture_buf+ y_size*5/4; // V
//PTS
picture->pts=i;
int got_picture=0;
//编码
int ret = avcodec_encode_video2(pCodecCtx, &pkt,picture, &got_picture);
if(ret < 0)
{
printf("编码错误!\n");
return -1;
}
if (got_picture==1)
{
printf("编码成功第%d帧!\n",i);
pkt.stream_index = video_st->index;
ret = av_write_frame(pFormatCtx, &pkt);
av_free_packet(&pkt);
}
i++;
}
i=0;