From ec5cad96ad0c3cf307699733f6fc04f1bea8461a Mon Sep 17 00:00:00 2001 From: dalecurtis Date: Fri, 18 Sep 2015 18:48:02 -0700 Subject: [PATCH] Roll ffmpeg for M47. Updates the DEPS to include the ffmpeg roll. BUG=none TEST=bots and local asan runs pass. TBR=rkaplow Review URL: https://codereview.chromium.org/1348973003 Cr-Commit-Position: refs/heads/master@{#349836} --- DEPS | 2 +- media/ffmpeg/ffmpeg_regression_tests.cc | 5 ++++- media/filters/ffmpeg_demuxer.cc | 2 +- media/filters/ffmpeg_video_decoder_unittest.cc | 9 +++------ tools/metrics/histograms/histograms.xml | 6 ++++++ 5 files changed, 15 insertions(+), 9 deletions(-) diff --git a/DEPS b/DEPS index 00269b129191..27e442e398fb 100644 --- a/DEPS +++ b/DEPS @@ -192,7 +192,7 @@ deps = { Var('chromium_git') + '/webm/libvpx.git' + '@' + 'c5f11912ae328a912ef087fdcd074ff07e96d8f9', 'src/third_party/ffmpeg': - Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '67cde45fbfa5145bd7ebfe0fb811ae7a80902d43', + Var('chromium_git') + '/chromium/third_party/ffmpeg.git' + '@' + '382b031ebab06b25df0708dd44aafad235657d2c', 'src/third_party/libjingle/source/talk': Var('chromium_git') + '/external/webrtc/trunk/talk.git' + '@' + '15e5120c8fa279eaaf113a638288a002172b6abb', # commit position 9991 diff --git a/media/ffmpeg/ffmpeg_regression_tests.cc b/media/ffmpeg/ffmpeg_regression_tests.cc index 475037fbccef..dcc406cc6384 100644 --- a/media/ffmpeg/ffmpeg_regression_tests.cc +++ b/media/ffmpeg/ffmpeg_regression_tests.cc @@ -126,7 +126,10 @@ FFMPEG_TEST_CASE(Cr242786, "security/242786.webm", PIPELINE_OK, PIPELINE_OK); // Test for out-of-bounds access with slightly corrupt file (detection logic // thinks it's a MONO file, but actually contains STEREO audio). FFMPEG_TEST_CASE(Cr275590, "security/275590.m4a", PIPELINE_OK, PIPELINE_OK); -FFMPEG_TEST_CASE(Cr444522, "security/444522.mp4", PIPELINE_OK, PIPELINE_OK); +FFMPEG_TEST_CASE(Cr444522, + "security/444522.mp4", + DEMUXER_ERROR_COULD_NOT_OPEN, + DEMUXER_ERROR_COULD_NOT_OPEN); FFMPEG_TEST_CASE(Cr444539, "security/444539.m4a", DEMUXER_ERROR_COULD_NOT_OPEN, diff --git a/media/filters/ffmpeg_demuxer.cc b/media/filters/ffmpeg_demuxer.cc index 84b02c4a35db..155e98079af0 100644 --- a/media/filters/ffmpeg_demuxer.cc +++ b/media/filters/ffmpeg_demuxer.cc @@ -1035,7 +1035,7 @@ void FFmpegDemuxer::OnFindStreamInfoDone(const PipelineStatusCB& status_cb, stream->codec->coded_height = stream->codec->height; } if (stream->codec->pix_fmt == AV_PIX_FMT_NONE) { - stream->codec->pix_fmt = PIX_FMT_YUV420P; + stream->codec->pix_fmt = AV_PIX_FMT_YUV420P; } } #endif diff --git a/media/filters/ffmpeg_video_decoder_unittest.cc b/media/filters/ffmpeg_video_decoder_unittest.cc index 4b8afe72d292..f8a954a48180 100644 --- a/media/filters/ffmpeg_video_decoder_unittest.cc +++ b/media/filters/ffmpeg_video_decoder_unittest.cc @@ -400,15 +400,12 @@ TEST_F(FFmpegVideoDecoderTest, DecodeFrame_DecodeError) { EXPECT_TRUE(output_frames_.empty()); } -// Multi-threaded decoders have different behavior than single-threaded -// decoders at the end of the stream. Multithreaded decoders hide errors -// that happen on the last |codec_context_->thread_count| frames to avoid -// prematurely signalling EOS. This test just exposes that behavior so we can -// detect if it changes. +// A corrupt frame followed by an EOS buffer should raise a decode error. TEST_F(FFmpegVideoDecoderTest, DecodeFrame_DecodeErrorAtEndOfStream) { Initialize(); - EXPECT_EQ(VideoDecoder::kOk, DecodeSingleFrame(corrupt_i_frame_buffer_)); + EXPECT_EQ(VideoDecoder::kDecodeError, + DecodeSingleFrame(corrupt_i_frame_buffer_)); } // Decode |i_frame_buffer_| and then a frame with a larger width and verify diff --git a/tools/metrics/histograms/histograms.xml b/tools/metrics/histograms/histograms.xml index 1cc4c308156f..afd93fb6f832 100644 --- a/tools/metrics/histograms/histograms.xml +++ b/tools/metrics/histograms/histograms.xml @@ -61056,6 +61056,7 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. + @@ -61170,6 +61171,7 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. + @@ -61288,10 +61290,12 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. + + @@ -61352,9 +61356,11 @@ http://cs/file:chrome/histograms.xml - but prefer this file for new entries. + + -- 2.11.4.GIT