void-packages/srcpkgs/hedgewars/patches/ffmpeg3.patch

77 lines
2.9 KiB
Diff

Description: Replace deprecated FFmpeg API
Author: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com>
Last-Update: <2015-11-02>
--- QTfrontend/util/LibavInteraction.cpp
+++ QTfrontend/util/LibavInteraction.cpp
@@ -106,8 +106,8 @@ LibavInteraction::LibavInteraction() : Q
if (!pCodec->pix_fmts)
continue;
bool yuv420Supported = false;
- for (const PixelFormat* pfmt = pCodec->pix_fmts; *pfmt != -1; pfmt++)
- if (*pfmt == PIX_FMT_YUV420P)
+ for (const AVPixelFormat* pfmt = pCodec->pix_fmts; *pfmt != -1; pfmt++)
+ if (*pfmt == AV_PIX_FMT_YUV420P)
{
yuv420Supported = true;
break;
--- hedgewars/avwrapper/avwrapper.c
+++ hedgewars/avwrapper/avwrapper.c
@@ -158,7 +158,7 @@ static void AddAudioStream()
else
g_NumSamples = g_pAudio->frame_size;
g_pSamples = (int16_t*)av_malloc(g_NumSamples*g_Channels*sizeof(int16_t));
- g_pAFrame = avcodec_alloc_frame();
+ g_pAFrame = av_frame_alloc();
if (!g_pAFrame)
{
Log("Could not allocate frame\n");
@@ -241,7 +241,7 @@ static int AddVideoStream()
g_pVideo->time_base.den = g_Framerate.num;
g_pVideo->time_base.num = g_Framerate.den;
//g_pVideo->gop_size = 12; /* emit one intra frame every twelve frames at most */
- g_pVideo->pix_fmt = PIX_FMT_YUV420P;
+ g_pVideo->pix_fmt = AV_PIX_FMT_YUV420P;
// set quality
if (g_VQuality > 100)
@@ -299,7 +299,7 @@ static int AddVideoStream()
#endif
return FatalError("Could not open video codec %s", g_pVCodec->long_name);
- g_pVFrame = avcodec_alloc_frame();
+ g_pVFrame = av_frame_alloc();
if (!g_pVFrame)
return FatalError("Could not allocate frame");
@@ -317,10 +317,10 @@ static int WriteFrame(AVFrame* pFrame)
// write interleaved audio frame
if (g_pAStream)
{
- VideoTime = (double)g_pVStream->pts.val*g_pVStream->time_base.num/g_pVStream->time_base.den;
+ VideoTime = (double)av_stream_get_end_pts(g_pVStream)*g_pVStream->time_base.num/g_pVStream->time_base.den;
do
{
- AudioTime = (double)g_pAStream->pts.val*g_pAStream->time_base.num/g_pAStream->time_base.den;
+ AudioTime = (double)av_stream_get_end_pts(g_pAStream)*g_pAStream->time_base.num/g_pAStream->time_base.den;
ret = WriteAudioFrame();
}
while (AudioTime < VideoTime && ret);
@@ -526,14 +526,14 @@ AVWRAP_DECL int AVWrapper_Close()
avcodec_close(g_pVideo);
av_free(g_pVideo);
av_free(g_pVStream);
- av_free(g_pVFrame);
+ av_frame_free(&g_pVFrame);
}
if (g_pAStream)
{
avcodec_close(g_pAudio);
av_free(g_pAudio);
av_free(g_pAStream);
- av_free(g_pAFrame);
+ av_frame_free(&g_pAFrame);
av_free(g_pSamples);
fclose(g_pSoundFile);
}