summaryrefslogtreecommitdiffstats
path: root/media/ffmpeg/ffmpeg_common.h
diff options
context:
space:
mode:
authordalecurtis@google.com <dalecurtis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-21 19:54:00 +0000
committerdalecurtis@google.com <dalecurtis@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2014-05-21 19:54:00 +0000
commite93d44311b3888ac73a768a59b709e4eb5c21a36 (patch)
tree0a2d001864615272b9034b268fa8c877bfeabe07 /media/ffmpeg/ffmpeg_common.h
parent81e92dc00d14f9a4351e66f69e37399cb523c27c (diff)
downloadchromium_src-e93d44311b3888ac73a768a59b709e4eb5c21a36.zip
chromium_src-e93d44311b3888ac73a768a59b709e4eb5c21a36.tar.gz
chromium_src-e93d44311b3888ac73a768a59b709e4eb5c21a36.tar.bz2
Roll FFmpeg for M37.
Syncs to head as of bebce653e5601ceafa004db0eb6b2c7d4d16f0c0. The roll requires us to stop using some deprecated features: - Replaces av_get_frame_defaults() with av_frame_unref() per docs. - Switches FFmpegVideoDecoder to use ref-counted frames. - Removes error concealment settings and disables error resilience for all platforms except ChromeOS (since it's required for mpeg4). Avoiding these also allows us to disable some deprecated features wholesale via #defines. BUG=119020,236611 TEST=all tests (and regression tests) pass under asan NOTRY=true R=jrummell@chromium.org, wolenetz@chromium.org Review URL: https://codereview.chromium.org/286953005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@271945 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'media/ffmpeg/ffmpeg_common.h')
-rw-r--r--media/ffmpeg/ffmpeg_common.h10
1 files changed, 9 insertions, 1 deletions
diff --git a/media/ffmpeg/ffmpeg_common.h b/media/ffmpeg/ffmpeg_common.h
index c697bee..ef1a7b6 100644
--- a/media/ffmpeg/ffmpeg_common.h
+++ b/media/ffmpeg/ffmpeg_common.h
@@ -19,6 +19,14 @@
// Include FFmpeg header files.
extern "C" {
+// Disable deprecated features which result in spammy compile warnings. This
+// list of defines must mirror those in the 'defines' section of the ffmpeg.gyp
+// file or the headers below will generate different structures.
+#define FF_API_PIX_FMT_DESC 0
+#define FF_API_OLD_DECODE_AUDIO 0
+#define FF_API_DESTRUCT_PACKET 0
+#define FF_API_GET_BUFFER 0
+
// Temporarily disable possible loss of data warning.
// TODO(scherkus): fix and upstream the compiler warnings.
MSVC_PUSH_DISABLE_WARNING(4244);
@@ -61,7 +69,7 @@ inline void ScopedPtrAVFreeContext::operator()(void* x) const {
inline void ScopedPtrAVFreeFrame::operator()(void* x) const {
AVFrame* frame = static_cast<AVFrame*>(x);
- avcodec_free_frame(&frame);
+ av_frame_free(&frame);
}
// Converts an int64 timestamp in |time_base| units to a base::TimeDelta.