--- a/IO/FFMPEG/vtkFFMPEGWriter.cxx 2014-01-22 16:55:41.000000000 +0100 +++ b/IO/FFMPEG/vtkFFMPEGWriter.cxx.new 2016-07-12 10:49:35.569696418 +0200 @@ -143,11 +143,11 @@ if (this->Writer->GetCompression()) { //choose a codec that is easily playable on windows - this->avOutputFormat->video_codec = CODEC_ID_MJPEG; + this->avOutputFormat->video_codec = AV_CODEC_ID_MJPEG; } else { - this->avOutputFormat->video_codec = CODEC_ID_RAWVIDEO; + this->avOutputFormat->video_codec = AV_CODEC_ID_RAWVIDEO; } //assign the format to the context @@ -184,11 +184,11 @@ c->height = this->Dim[1]; if (this->Writer->GetCompression()) { - c->pix_fmt = PIX_FMT_YUVJ422P; + c->pix_fmt = AV_PIX_FMT_YUVJ422P; } else { - c->pix_fmt = PIX_FMT_BGR24; + c->pix_fmt = AV_PIX_FMT_BGR24; } //to do playback at actual recorded rate, this will need more work see also below @@ -267,13 +267,13 @@ #endif //for the output of the writer's input... - this->rgbInput = avcodec_alloc_frame(); + this->rgbInput = av_frame_alloc(); if (!this->rgbInput) { vtkGenericWarningMacro (<< "Could not make rgbInput avframe." ); return 0; } - int RGBsize = avpicture_get_size(PIX_FMT_RGB24, c->width, c->height); + int RGBsize = avpicture_get_size(AV_PIX_FMT_RGB24, c->width, c->height); unsigned char *rgb = new unsigned char[RGBsize]; if (!rgb) { @@ -281,10 +281,10 @@ return 0; } //The rgb buffer should get deleted when this->rgbInput is. - avpicture_fill((AVPicture *)this->rgbInput, rgb, PIX_FMT_RGB24, c->width, c->height); + avpicture_fill((AVPicture *)this->rgbInput, rgb, AV_PIX_FMT_RGB24, c->width, c->height); //and for the output to the codec's input. - this->yuvOutput = avcodec_alloc_frame(); + this->yuvOutput = av_frame_alloc(); if (!this->yuvOutput) { vtkGenericWarningMacro (<< "Could not make yuvOutput avframe." ); @@ -342,12 +342,12 @@ //convert that to YUV for input to the codec #ifdef VTK_FFMPEG_HAS_IMG_CONVERT img_convert((AVPicture *)this->yuvOutput, cc->pix_fmt, - (AVPicture *)this->rgbInput, PIX_FMT_RGB24, + (AVPicture *)this->rgbInput, AV_PIX_FMT_RGB24, cc->width, cc->height); #else //convert that to YUV for input to the codec SwsContext* convert_ctx = sws_getContext( - cc->width, cc->height, PIX_FMT_RGB24, + cc->width, cc->height, AV_PIX_FMT_RGB24, cc->width, cc->height, cc->pix_fmt, SWS_BICUBIC, NULL, NULL, NULL);