Fix build with newer FFmpeg versions.

This commit is contained in:
Gwenole Beauchesne 2011-07-22 15:55:47 +02:00
parent f2906b7ad0
commit a9a9d72e96

View file

@ -478,13 +478,18 @@ decode_frame(GstVaapiDecoderFfmpeg *ffdecoder, guchar *buf, guint buf_size)
GstVaapiDisplay * const display = GST_VAAPI_DECODER_DISPLAY(ffdecoder);
GstVaapiSurface *surface;
int bytes_read, got_picture = 0;
AVPacket pkt;
av_init_packet(&pkt);
pkt.data = buf;
pkt.size = buf_size;
GST_VAAPI_DISPLAY_LOCK(display);
bytes_read = avcodec_decode_video(
bytes_read = avcodec_decode_video2(
priv->avctx,
priv->frame,
&got_picture,
buf, buf_size
&pkt
);
GST_VAAPI_DISPLAY_UNLOCK(display);
if (!got_picture)
@ -530,12 +535,14 @@ gst_vaapi_decoder_ffmpeg_decode(GstVaapiDecoder *decoder, GstBuffer *buffer)
if (priv->pctx) {
do {
int parsed_size = av_parser_parse(
int parsed_size;
parsed_size = av_parser_parse2(
priv->pctx,
priv->avctx,
&outbuf, &outbuf_size,
GST_BUFFER_DATA(buffer) + inbuf_ofs, inbuf_size,
inbuf_ts, inbuf_ts
inbuf_ts, inbuf_ts,
AV_NOPTS_VALUE
);
got_frame = outbuf && outbuf_size > 0;