fix, supplement to 6045e1082c

This commit is contained in:
Jacek Jendrzej
2021-10-27 14:24:33 +02:00
parent 6045e1082c
commit 95a9258217
4 changed files with 49 additions and 0 deletions

View File

@@ -251,6 +251,17 @@ void cDvbSubtitleConverter::Reset(void)
Timeout.Set(0xFFFF*1000);
}
#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(58, 133, 100)
static void get_packet_defaults(AVPacket *pkt)
{
memset(pkt, 0, sizeof(*pkt));
pkt->pts = AV_NOPTS_VALUE;
pkt->dts = AV_NOPTS_VALUE;
pkt->pos = -1;
}
#endif
int cDvbSubtitleConverter::Convert(const uchar *Data, int Length, int64_t pts)
{
AVPacket avpkt;
@@ -268,6 +279,8 @@ int cDvbSubtitleConverter::Convert(const uchar *Data, int Length, int64_t pts)
AVSubtitle * sub = Bitmaps->GetSub();
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 133, 100)
av_init_packet(&avpkt);
#else
get_packet_defaults(&avpkt);
#endif
avpkt.data = (uint8_t*) Data;
avpkt.size = Length;

View File

@@ -233,6 +233,16 @@ void CFfmpegDec::DeInit(void)
}
in = NULL;
}
#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(58, 133, 100)
static void get_packet_defaults(AVPacket *pkt)
{
memset(pkt, 0, sizeof(*pkt));
pkt->pts = AV_NOPTS_VALUE;
pkt->dts = AV_NOPTS_VALUE;
pkt->pos = -1;
}
#endif
CBaseDec::RetCode CFfmpegDec::Decoder(FILE *_in, int /*OutputFd*/, State* state, CAudioMetaData* _meta_data, time_t* time_played, unsigned int* secondsToSkip)
{
@@ -288,6 +298,8 @@ CBaseDec::RetCode CFfmpegDec::Decoder(FILE *_in, int /*OutputFd*/, State* state,
AVPacket rpacket;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 133, 100)
av_init_packet(&rpacket);
#else
get_packet_defaults(&rpacket);
#endif
c->channel_layout = c->channel_layout ? c->channel_layout : AV_CH_LAYOUT_STEREO;

View File

@@ -2314,6 +2314,16 @@ bool CStreamRec::Open(CZapitChannel * channel)
#endif
return true;
}
#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(58, 133, 100)
static void get_packet_defaults(AVPacket *pkt)
{
memset(pkt, 0, sizeof(*pkt));
pkt->pts = AV_NOPTS_VALUE;
pkt->dts = AV_NOPTS_VALUE;
pkt->pos = -1;
}
#endif
void CStreamRec::run()
{
@@ -2332,6 +2342,8 @@ void CStreamRec::run()
while (!stopped) {
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 133, 100)
av_init_packet(&pkt);
#else
get_packet_defaults(&pkt);
#endif
if (av_read_frame(ifcx, &pkt) < 0)
break;

View File

@@ -946,6 +946,16 @@ bool CStreamStream::Stop()
interrupt = false;
return (ret == 0);
}
#if LIBAVCODEC_VERSION_INT > AV_VERSION_INT(58, 133, 100)
static void get_packet_defaults(AVPacket *pkt)
{
memset(pkt, 0, sizeof(*pkt));
pkt->pts = AV_NOPTS_VALUE;
pkt->dts = AV_NOPTS_VALUE;
pkt->pos = -1;
}
#endif
void CStreamStream::run()
{
@@ -960,6 +970,8 @@ void CStreamStream::run()
while (!stopped) {
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 133, 100)
av_init_packet(&pkt);
#else
get_packet_defaults(&pkt);
#endif
if (av_read_frame(ifcx, &pkt) < 0)
break;