unify AV_VERSION_INT defines; fix cst build

Origin commit data
------------------
Branch: ni/coolstream
Commit: d1ff68dc54
Author: vanhofen <vanhofen@gmx.de>
Date: 2021-08-29 (Sun, 29 Aug 2021)

Origin message was:
------------------
- unify AV_VERSION_INT defines; fix cst build

------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
vanhofen
2021-08-29 19:22:49 +02:00
parent f8d2330214
commit ba26796925
6 changed files with 28 additions and 26 deletions

View File

@@ -32,7 +32,7 @@ private:
pthread_mutex_t mutex;
cList<cDvbSubtitleBitmaps> *bitmaps;
AVCodecContext * avctx;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,0,100)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 0, 100)
AVCodec *avcodec;
#else
const AVCodec *avcodec;

View File

@@ -1,5 +1,3 @@
/*
Neutrino-GUI - DBoxII-Project
@@ -167,7 +165,7 @@ bool CFfmpegDec::Init(void *_in, const CFile::FileType /*ft*/)
return false;
}
avc->pb = avioc;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,0,100)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 0, 100)
avc->flags |= AVFMT_FLAG_CUSTOM_IO|AVFMT_FLAG_KEEP_SIDE_DATA;
#else
avc->flags |= AVFMT_FLAG_CUSTOM_IO;
@@ -247,7 +245,7 @@ CBaseDec::RetCode CFfmpegDec::Decoder(FILE *_in, int /*OutputFd*/, State* state,
Status=DATA_ERR;
return Status;
}
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
c = avc->streams[best_stream]->codec;
#else
c = avcodec_alloc_context3(codec);
@@ -370,7 +368,7 @@ CBaseDec::RetCode CFfmpegDec::Decoder(FILE *_in, int /*OutputFd*/, State* state,
} else{
av_frame_unref(frame);
}
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57,37,100)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 37, 100)
int len = avcodec_decode_audio4(c, frame, &got_frame, &packet);
if (len < 0) {
// skip frame
@@ -491,7 +489,7 @@ bool CFfmpegDec::SetMetaData(FILE *_in, CAudioMetaData* m, bool save_cover)
if (!is_stream) {
GetMeta(avc->metadata);
for(unsigned int i = 0; i < avc->nb_streams; i++) {
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
if (avc->streams[i]->codec->codec_type == AVMEDIA_TYPE_AUDIO)
#else
if (avc->streams[i]->codecpar->codec_type == AVMEDIA_TYPE_AUDIO)
@@ -512,7 +510,7 @@ bool CFfmpegDec::SetMetaData(FILE *_in, CAudioMetaData* m, bool save_cover)
DeInit();
return false;
}
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
if (!codec)
codec = avcodec_find_decoder(avc->streams[best_stream]->codec->codec_id);
samplerate = avc->streams[best_stream]->codec->sample_rate;
@@ -542,7 +540,7 @@ bool CFfmpegDec::SetMetaData(FILE *_in, CAudioMetaData* m, bool save_cover)
printf("CFfmpegDec: format %s (%s) duration %ld\n", avc->iformat->name, type_info.c_str(), total_time);
for(unsigned int i = 0; i < avc->nb_streams; i++) {
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
if (avc->streams[i]->codec->bit_rate > 0)
bitrate += avc->streams[i]->codec->bit_rate;
#else

View File

@@ -54,7 +54,7 @@ private:
size_t buffer_size;
unsigned char *buffer;
AVFormatContext *avc;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,0,100)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 0, 100)
AVCodec *codec;
#else
const AVCodec *codec;

View File

@@ -66,7 +66,9 @@
extern "C" {
#include <libavformat/avformat.h>
#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101)
#include <libavcodec/bsf.h>
#endif
}
#if (LIBAVCODEC_VERSION_MAJOR > 55)
@@ -80,7 +82,7 @@ class CStreamRec : public CRecordInstance, OpenThreads::Thread
private:
AVFormatContext *ifcx;
AVFormatContext *ofcx;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
AVBitStreamFilterContext *bsfc;
#else
AVBSFContext *bsfc;
@@ -2091,7 +2093,7 @@ void CStreamRec::Close()
avformat_free_context(ofcx);
}
if (bsfc){
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
av_bitstream_filter_close(bsfc);
#else
av_bsf_free(&bsfc);
@@ -2113,7 +2115,7 @@ void CStreamRec::FillMovieInfo(CZapitChannel * /*channel*/, APIDList & /*apid_li
for (unsigned i = 0; i < ofcx->nb_streams; i++) {
AVStream *st = ofcx->streams[i];
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
AVCodecContext * codec = st->codec;
#else
AVCodecParameters * codec = st->codecpar;
@@ -2312,7 +2314,7 @@ bool CStreamRec::Open(CZapitChannel * channel)
printf("%s: Cannot find stream info [%s]!\n", __FUNCTION__, channel->getUrl().c_str());
return false;
}
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58,27,102)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 27, 102)
const char *hls = "applehttp";
#else
const char *hls = "hls";
@@ -2337,7 +2339,7 @@ bool CStreamRec::Open(CZapitChannel * channel)
#endif
std::string tsfile = std::string(filename) + ".ts";
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59,0,100)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(59, 0, 100)
AVOutputFormat *ofmt = av_guess_format(NULL, tsfile.c_str(), NULL);
#else
const AVOutputFormat *ofmt = av_guess_format(NULL, tsfile.c_str(), NULL);
@@ -2365,7 +2367,7 @@ bool CStreamRec::Open(CZapitChannel * channel)
stream_index = -1;
int stid = 0x200;
for (unsigned i = 0; i < ifcx->nb_streams; i++) {
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
AVCodecContext * iccx = ifcx->streams[i]->codec;
AVStream *ost = avformat_new_stream(ofcx, iccx->codec);
avcodec_copy_context(ost->codec, iccx);
@@ -2389,7 +2391,7 @@ bool CStreamRec::Open(CZapitChannel * channel)
av_dump_format(ofcx, 0, ofcx->url, 1);
#endif
av_log_set_level(AV_LOG_WARNING);
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
bsfc = av_bitstream_filter_init("h264_mp4toannexb");
if (!bsfc)
printf("%s: av_bitstream_filter_init h264_mp4toannexb failed!\n", __FUNCTION__);
@@ -2425,14 +2427,14 @@ void CStreamRec::run()
break;
if (pkt.stream_index < 0)
continue;
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
AVCodecContext *codec = ifcx->streams[pkt.stream_index]->codec;
#else
AVCodecParameters *codec = ifcx->streams[pkt.stream_index]->codecpar;
#endif
if (bsfc && codec->codec_id == AV_CODEC_ID_H264) {
AVPacket newpkt = pkt;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
if (av_bitstream_filter_filter(bsfc, codec, NULL, &newpkt.data, &newpkt.size, pkt.data, pkt.size, pkt.flags & AV_PKT_FLAG_KEY) >= 0) {
av_packet_unref(&pkt);
newpkt.buf = av_buffer_create(newpkt.data, newpkt.size, av_buffer_default_free, NULL, 0);

View File

@@ -791,7 +791,7 @@ void CStreamStream::Close()
av_free(avio_ctx);
if (bsfc){
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
av_bitstream_filter_close(bsfc);
#else
av_bsf_free(&bsfc);
@@ -846,7 +846,7 @@ bool CStreamStream::Open()
printf("%s: Cannot find stream info [%s]!\n", __FUNCTION__, channel->getUrl().c_str());
return false;
}
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58,27,102)
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(58, 27, 102)
const char *hls = "applehttp";
#else
const char *hls = "hls";
@@ -890,7 +890,7 @@ bool CStreamStream::Open()
av_dict_copy(&ofcx->metadata, ifcx->metadata, 0);
int stid = 0x200;
for (unsigned i = 0; i < ifcx->nb_streams; i++) {
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
AVCodecContext * iccx = ifcx->streams[i]->codec;
AVStream *ost = avformat_new_stream(ofcx, iccx->codec);
avcodec_copy_context(ost->codec, iccx);
@@ -910,7 +910,7 @@ bool CStreamStream::Open()
av_dump_format(ofcx, 0, ofcx->url, 1);
#endif
av_log_set_level(AV_LOG_WARNING);
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
bsfc = av_bitstream_filter_init("h264_mp4toannexb");
if (!bsfc)
printf("%s: av_bitstream_filter_init h264_mp4toannexb failed!\n", __FUNCTION__);
@@ -967,14 +967,14 @@ void CStreamStream::run()
if (pkt.stream_index < 0)
continue;
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT( 57,25,101 )
#if LIBAVFORMAT_VERSION_INT < AV_VERSION_INT(57, 25, 101)
AVCodecContext *codec = ifcx->streams[pkt.stream_index]->codec;
#else
AVCodecParameters *codec = ifcx->streams[pkt.stream_index]->codecpar;
#endif
if (bsfc && codec->codec_id == AV_CODEC_ID_H264 ) {
AVPacket newpkt = pkt;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
if (av_bitstream_filter_filter(bsfc, codec, NULL, &newpkt.data, &newpkt.size, pkt.data, pkt.size, pkt.flags & AV_PKT_FLAG_KEY) >= 0) {
av_packet_unref(&pkt);
newpkt.buf = av_buffer_create(newpkt.data, newpkt.size, av_buffer_default_free, NULL, 0);

View File

@@ -33,7 +33,9 @@
extern "C" {
#include <libavformat/avformat.h>
#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(57, 48, 101)
#include <libavcodec/bsf.h>
#endif
}
typedef std::set<int> stream_pids_t;
@@ -74,7 +76,7 @@ class CStreamStream : public CStreamInstance
private:
AVFormatContext *ifcx;
AVFormatContext *ofcx;
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT( 57,48,100 )
#if LIBAVCODEC_VERSION_INT < AV_VERSION_INT(57, 48, 100)
AVBitStreamFilterContext *bsfc;
#else
AVBSFContext *bsfc;