Merge branch 'v0.19.x'

This commit is contained in:
Max Kellermann 2016-04-13 09:56:45 +02:00
commit 33fdaa5b6d
3 changed files with 17 additions and 2 deletions

6
NEWS
View File

@ -52,6 +52,12 @@ ver 0.20 (not yet released)
* update
- apply .mpdignore matches to subdirectories
ver 0.19.15 (not yet released)
* decoder
- ffmpeg: support FFmpeg 3.0
- ffmpeg: use as fallback instead of "mad" if no plugin matches
* fix more build failures on non-glibc builds due to constexpr Mutex
ver 0.19.14 (2016/03/18)
* decoder
- dsdiff: fix off-by-one buffer overflow

View File

@ -236,7 +236,11 @@ decoder_run_stream_fallback(Decoder &decoder, InputStream &is)
{
const struct DecoderPlugin *plugin;
#ifdef HAVE_FFMPEG
plugin = decoder_plugin_from_name("ffmpeg");
#else
plugin = decoder_plugin_from_name("mad");
#endif
return plugin != nullptr && plugin->stream_decode != nullptr &&
decoder_stream_decode(*plugin, decoder, is);
}

View File

@ -185,7 +185,7 @@ PtsToPcmFrame(uint64_t pts, const AVStream &stream,
*/
static DecoderCommand
ffmpeg_send_packet(Decoder &decoder, InputStream &is,
AVPacket packet,
AVPacket &&packet,
AVCodecContext &codec_context,
const AVStream &stream,
AVFrame &frame,
@ -560,7 +560,8 @@ FfmpegDecode(Decoder &decoder, InputStream &input,
if (packet.stream_index == audio_stream) {
cmd = ffmpeg_send_packet(decoder, input,
packet, codec_context,
std::move(packet),
codec_context,
av_stream,
*frame,
min_frame, audio_format.GetFrameSize(),
@ -569,7 +570,11 @@ FfmpegDecode(Decoder &decoder, InputStream &input,
} else
cmd = decoder_get_command(decoder);
#if LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(56, 25, 100)
av_packet_unref(&packet);
#else
av_free_packet(&packet);
#endif
}
#if LIBAVUTIL_VERSION_MAJOR >= 53