comparison x264.c @ 4114:903017d72ffe libavcodec

CODEC_CAP_DELAY support
author mru
date Wed, 01 Nov 2006 18:18:48 +0000
parents ffe1b004ecc7
children 4e1b1a37e9d6
comparison
equal deleted inserted replaced
4113:4ce3923d5806 4114:903017d72ffe
76 x264_picture_t pic_out; 76 x264_picture_t pic_out;
77 77
78 x4->pic.img.i_csp = X264_CSP_I420; 78 x4->pic.img.i_csp = X264_CSP_I420;
79 x4->pic.img.i_plane = 3; 79 x4->pic.img.i_plane = 3;
80 80
81 if (frame) {
81 for(i = 0; i < 3; i++){ 82 for(i = 0; i < 3; i++){
82 x4->pic.img.plane[i] = frame->data[i]; 83 x4->pic.img.plane[i] = frame->data[i];
83 x4->pic.img.i_stride[i] = frame->linesize[i]; 84 x4->pic.img.i_stride[i] = frame->linesize[i];
84 } 85 }
85 86
86 x4->pic.i_pts = frame->pts; 87 x4->pic.i_pts = frame->pts;
87 x4->pic.i_type = X264_TYPE_AUTO; 88 x4->pic.i_type = X264_TYPE_AUTO;
88 89 }
89 if(x264_encoder_encode(x4->enc, &nal, &nnal, &x4->pic, &pic_out)) 90
91 if(x264_encoder_encode(x4->enc, &nal, &nnal, frame? &x4->pic: NULL,
92 &pic_out))
90 return -1; 93 return -1;
91 94
92 bufsize = encode_nals(buf, bufsize, nal, nnal); 95 bufsize = encode_nals(buf, bufsize, nal, nnal);
93 if(bufsize < 0) 96 if(bufsize < 0)
94 return -1; 97 return -1;
289 .id = CODEC_ID_H264, 292 .id = CODEC_ID_H264,
290 .priv_data_size = sizeof(X264Context), 293 .priv_data_size = sizeof(X264Context),
291 .init = X264_init, 294 .init = X264_init,
292 .encode = X264_frame, 295 .encode = X264_frame,
293 .close = X264_close, 296 .close = X264_close,
297 .capabilities = CODEC_CAP_DELAY,
294 .pix_fmts = (enum PixelFormat[]) { PIX_FMT_YUV420P, -1 } 298 .pix_fmts = (enum PixelFormat[]) { PIX_FMT_YUV420P, -1 }
295 }; 299 };