diff -ru mediastreamer-2.8.2.orig/src/h264dec.c mediastreamer-2.8.2/src/h264dec.c --- mediastreamer-2.8.2.orig/src/h264dec.c 2012-02-17 04:16:20.000000000 -0500 +++ mediastreamer-2.8.2/src/h264dec.c 2012-08-28 11:06:40.000000000 -0400 @@ -44,7 +44,9 @@ static void ffmpeg_init(){ static bool_t done=FALSE; if (!done){ +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) avcodec_init(); +#endif avcodec_register_all(); done=TRUE; } diff -ru mediastreamer-2.8.2.orig/src/videoenc.c mediastreamer-2.8.2/src/videoenc.c --- mediastreamer-2.8.2.orig/src/videoenc.c 2012-02-17 04:16:20.000000000 -0500 +++ mediastreamer-2.8.2/src/videoenc.c 2012-08-28 11:06:40.000000000 -0400 @@ -53,7 +53,9 @@ void ms_ffmpeg_check_init(){ if(!avcodec_initialized){ +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) avcodec_init(); +#endif avcodec_register_all(); avcodec_initialized=TRUE; #ifdef ENABLE_LOG_FFMPEG @@ -300,9 +302,13 @@ if (s->profile==0){ s->codec=CODEC_ID_H263; }else{ +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) c->flags|=CODEC_FLAG_H263P_UMV; +#endif c->flags|=CODEC_FLAG_AC_PRED; +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) c->flags|=CODEC_FLAG_H263P_SLICE_STRUCT; +#endif /* c->flags|=CODEC_FLAG_OBMC; c->flags|=CODEC_FLAG_AC_PRED; @@ -372,7 +378,11 @@ // assume video size is CIF or QCIF if (context->width == 352 && context->height == 288) header->b_wptr[1] = 0x60; else header->b_wptr[1] = 0x40; +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) if (context->coded_frame->pict_type != FF_I_TYPE) header->b_wptr[1] |= 0x10; +#else + if (context->coded_frame->pict_type != AV_PICTURE_TYPE_I) header->b_wptr[1] |= 0x10; +#endif header->b_wptr += 4; header->b_cont = *packet; *packet = header; @@ -779,7 +789,11 @@ s->req_vfu=TRUE; } if (s->req_vfu){ +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) pict.pict_type=FF_I_TYPE; +#else + pict.pict_type=AV_PICTURE_TYPE_I; +#endif s->req_vfu=FALSE; } comp_buf->b_rptr=comp_buf->b_wptr=comp_buf->b_datap->db_base; @@ -799,7 +813,11 @@ if (s->framenum==1){ video_starter_first_frame (&s->starter,f->ticker->time); } +#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(54, 0, 100) if (c->coded_frame->pict_type==FF_I_TYPE){ +#else + if (c->coded_frame->pict_type==AV_PICTURE_TYPE_I){ +#endif ms_message("Emitting I-frame"); } comp_buf->b_wptr+=error;