| OLD | NEW |
| 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2009 The Chromium Authors. All rights reserved. |
| 2 // Use of this source code is governed by a BSD-style license that can be | 2 // Use of this source code is governed by a BSD-style license that can be |
| 3 // found in the LICENSE file. | 3 // found in the LICENSE file. |
| 4 | 4 |
| 5 #include "media/base/mock_ffmpeg.h" | 5 #include "media/base/mock_ffmpeg.h" |
| 6 | 6 |
| 7 #include "base/logging.h" | 7 #include "base/logging.h" |
| 8 #include "media/filters/ffmpeg_common.h" | 8 #include "media/filters/ffmpeg_common.h" |
| 9 | 9 |
| 10 namespace media { | 10 namespace media { |
| (...skipping 39 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 50 extern "C" { | 50 extern "C" { |
| 51 | 51 |
| 52 AVCodec* avcodec_find_decoder(enum CodecID id) { | 52 AVCodec* avcodec_find_decoder(enum CodecID id) { |
| 53 return media::MockFFmpeg::get()->AVCodecFindDecoder(id); | 53 return media::MockFFmpeg::get()->AVCodecFindDecoder(id); |
| 54 } | 54 } |
| 55 | 55 |
| 56 int avcodec_open(AVCodecContext* avctx, AVCodec* codec) { | 56 int avcodec_open(AVCodecContext* avctx, AVCodec* codec) { |
| 57 return media::MockFFmpeg::get()->AVCodecOpen(avctx, codec); | 57 return media::MockFFmpeg::get()->AVCodecOpen(avctx, codec); |
| 58 } | 58 } |
| 59 | 59 |
| 60 int avcodec_close(AVCodecContext* avctx) { |
| 61 return media::MockFFmpeg::get()->AVCodecClose(avctx); |
| 62 } |
| 63 |
| 60 int avcodec_thread_init(AVCodecContext* avctx, int threads) { | 64 int avcodec_thread_init(AVCodecContext* avctx, int threads) { |
| 61 return media::MockFFmpeg::get()->AVCodecThreadInit(avctx, threads); | 65 return media::MockFFmpeg::get()->AVCodecThreadInit(avctx, threads); |
| 62 } | 66 } |
| 63 | 67 |
| 64 void avcodec_flush_buffers(AVCodecContext* avctx) { | 68 void avcodec_flush_buffers(AVCodecContext* avctx) { |
| 65 return media::MockFFmpeg::get()->AVCodecFlushBuffers(avctx); | 69 return media::MockFFmpeg::get()->AVCodecFlushBuffers(avctx); |
| 66 } | 70 } |
| 67 | 71 |
| 68 AVFrame* avcodec_alloc_frame() { | 72 AVFrame* avcodec_alloc_frame() { |
| 69 return media::MockFFmpeg::get()->AVCodecAllocFrame(); | 73 return media::MockFFmpeg::get()->AVCodecAllocFrame(); |
| 70 } | 74 } |
| 71 | 75 |
| 72 int avcodec_decode_video2(AVCodecContext* avctx, AVFrame* picture, | 76 int avcodec_decode_video2(AVCodecContext* avctx, AVFrame* picture, |
| 73 int* got_picture_ptr, AVPacket* avpkt) { | 77 int* got_picture_ptr, AVPacket* avpkt) { |
| 74 return media::MockFFmpeg::get()-> | 78 return media::MockFFmpeg::get()-> |
| 75 AVCodecDecodeVideo2(avctx, picture, got_picture_ptr, avpkt); | 79 AVCodecDecodeVideo2(avctx, picture, got_picture_ptr, avpkt); |
| 76 } | 80 } |
| 77 | 81 |
| 78 int av_open_input_file(AVFormatContext** format, const char* filename, | 82 int av_open_input_file(AVFormatContext** format, const char* filename, |
| 79 AVInputFormat* input_format, int buffer_size, | 83 AVInputFormat* input_format, int buffer_size, |
| 80 AVFormatParameters* parameters) { | 84 AVFormatParameters* parameters) { |
| 81 return media::MockFFmpeg::get()->AVOpenInputFile(format, filename, | 85 return media::MockFFmpeg::get()->AVOpenInputFile(format, filename, |
| 82 input_format, buffer_size, | 86 input_format, buffer_size, |
| 83 parameters); | 87 parameters); |
| 84 } | 88 } |
| 85 | 89 |
| 90 void av_close_input_file(AVFormatContext* format) { |
| 91 media::MockFFmpeg::get()->AVCloseInputFile(format); |
| 92 } |
| 93 |
| 86 int av_find_stream_info(AVFormatContext* format) { | 94 int av_find_stream_info(AVFormatContext* format) { |
| 87 return media::MockFFmpeg::get()->AVFindStreamInfo(format); | 95 return media::MockFFmpeg::get()->AVFindStreamInfo(format); |
| 88 } | 96 } |
| 89 | 97 |
| 90 int64 av_rescale_q(int64 a, AVRational bq, AVRational cq) { | 98 int64 av_rescale_q(int64 a, AVRational bq, AVRational cq) { |
| 91 // Because this is a math function there's little point in mocking it, so we | 99 // Because this is a math function there's little point in mocking it, so we |
| 92 // implement a cheap version that's capable of overflowing. | 100 // implement a cheap version that's capable of overflowing. |
| 93 int64 num = bq.num * cq.den; | 101 int64 num = bq.num * cq.den; |
| 94 int64 den = cq.num * bq.den; | 102 int64 den = cq.num * bq.den; |
| 95 return a * num / den; | 103 return a * num / den; |
| (...skipping 25 matching lines...) Expand all Loading... |
| 121 // Freeing NULL pointers are valid, but they aren't interesting from a mock | 129 // Freeing NULL pointers are valid, but they aren't interesting from a mock |
| 122 // perspective. | 130 // perspective. |
| 123 if (ptr) { | 131 if (ptr) { |
| 124 media::MockFFmpeg::get()->AVFree(ptr); | 132 media::MockFFmpeg::get()->AVFree(ptr); |
| 125 } | 133 } |
| 126 } | 134 } |
| 127 | 135 |
| 128 } // extern "C" | 136 } // extern "C" |
| 129 | 137 |
| 130 } // namespace media | 138 } // namespace media |
| OLD | NEW |