fix compilation for older ffmpeg

fixes #732

Change-Id: I3e0ed5b889034718e1a19f537e738f734842484d
pull/734/head
Richard Fuchs 7 years ago
parent 6df650ce54
commit f01568ed95

@ -220,6 +220,13 @@ void send_timer_push(struct send_timer *st, struct codec_packet *cp) {
#ifdef WITH_TRANSCODING
#if LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(57, 26, 0)
#define CODECPAR codecpar
#else
#define CODECPAR codec
#endif
static int __ensure_codec_handler(struct media_player *mp, AVStream *avs) {
if (mp->handler)
return 0;
@ -227,14 +234,14 @@ static int __ensure_codec_handler(struct media_player *mp, AVStream *avs) {
// synthesise rtp payload type
struct rtp_payload_type src_pt = { .payload_type = -1 };
// src_pt.codec_def = codec_find_by_av(avs->codec->codec_id); `codec` is deprecated
src_pt.codec_def = codec_find_by_av(avs->codecpar->codec_id);
src_pt.codec_def = codec_find_by_av(avs->CODECPAR->codec_id);
if (!src_pt.codec_def) {
ilog(LOG_ERR, "Attempting to play media from an unsupported file format/codec");
return -1;
}
src_pt.encoding = src_pt.codec_def->rtpname_str;
src_pt.channels = avs->codecpar->channels;
src_pt.clock_rate = avs->codecpar->sample_rate;
src_pt.channels = avs->CODECPAR->channels;
src_pt.clock_rate = avs->CODECPAR->sample_rate;
codec_init_payload_type(&src_pt, mp->media);
// find suitable output payload type
@ -298,9 +305,9 @@ static void media_player_read_packet(struct media_player *mp) {
// scale pts and duration according to sample rate
long long duration_scaled = mp->pkt.duration * avs->codecpar->sample_rate
long long duration_scaled = mp->pkt.duration * avs->CODECPAR->sample_rate
* avs->time_base.num / avs->time_base.den;
unsigned long long pts_scaled = mp->pkt.pts * avs->codecpar->sample_rate
unsigned long long pts_scaled = mp->pkt.pts * avs->CODECPAR->sample_rate
* avs->time_base.num / avs->time_base.den;
long long us_dur = mp->pkt.duration * 1000000LL * avs->time_base.num / avs->time_base.den;
@ -311,7 +318,7 @@ static void media_player_read_packet(struct media_player *mp) {
pts_scaled,
duration_scaled,
us_dur,
avs->codecpar->sample_rate,
avs->CODECPAR->sample_rate,
avs->time_base.num, avs->time_base.den);
// synthesise fake RTP header and media_packet context

Loading…
Cancel
Save