diff --git a/src/codec/audio/AudioDecoder.cpp b/src/codec/audio/AudioDecoder.cpp index 52a13970..3947a38b 100644 --- a/src/codec/audio/AudioDecoder.cpp +++ b/src/codec/audio/AudioDecoder.cpp @@ -76,7 +76,8 @@ bool AudioDecoder::decode(const Packet &packet) if (!isAvailable()) return false; DPTR_D(AudioDecoder); - int ret = avcodec_decode_audio4(d.codec_ctx, d.frame, &d.got_frame_ptr, packet.asAVPacket()); + // const AVPacket*: ffmpeg >= 1.0. no libav + int ret = avcodec_decode_audio4(d.codec_ctx, d.frame, &d.got_frame_ptr, (AVPacket*)packet.asAVPacket()); d.undecoded_size = qMin(packet.data.size() - ret, packet.data.size()); if (ret == AVERROR(EAGAIN)) { return false; diff --git a/src/codec/video/VideoDecoder.cpp b/src/codec/video/VideoDecoder.cpp index 948144bb..b30e74a1 100644 --- a/src/codec/video/VideoDecoder.cpp +++ b/src/codec/video/VideoDecoder.cpp @@ -127,7 +127,8 @@ bool VideoDecoder::decode(const Packet &packet) return false; DPTR_D(VideoDecoder); // some decoders might in addition need other fields like flags&AV_PKT_FLAG_KEY - int ret = avcodec_decode_video2(d.codec_ctx, d.frame, &d.got_frame_ptr, packet.asAVPacket()); + // const AVPacket*: ffmpeg >= 1.0. no libav + int ret = avcodec_decode_video2(d.codec_ctx, d.frame, &d.got_frame_ptr, (AVPacket*)packet.asAVPacket()); //qDebug("pic_type=%c", av_get_picture_type_char(d.frame->pict_type)); d.undecoded_size = qMin(packet.data.size() - ret, packet.data.size()); if (ret < 0) {