| Index: media/filters/omx_video_decode_engine.h
 | 
| diff --git a/media/filters/omx_video_decode_engine.h b/media/filters/omx_video_decode_engine.h
 | 
| index 7b5e0134c41523d27c65535de015a7a80906046d..da3fe52d4cd17b5f196182c7ac9d17a5e7193973 100644
 | 
| --- a/media/filters/omx_video_decode_engine.h
 | 
| +++ b/media/filters/omx_video_decode_engine.h
 | 
| @@ -5,8 +5,6 @@
 | 
|  #ifndef MEDIA_FILTERS_OMX_VIDEO_DECODE_ENGINE_H_
 | 
|  #define MEDIA_FILTERS_OMX_VIDEO_DECODE_ENGINE_H_
 | 
|  
 | 
| -#include <functional>
 | 
| -#include <list>
 | 
|  #include <queue>
 | 
|  #include <vector>
 | 
|  
 | 
| @@ -20,15 +18,8 @@
 | 
|  #include "third_party/openmax/il/OMX_Core.h"
 | 
|  #include "third_party/openmax/il/OMX_Video.h"
 | 
|  
 | 
| -class MessageLoop;
 | 
| -
 | 
| -// FFmpeg types.
 | 
| -struct AVStream;
 | 
| -
 | 
|  namespace media {
 | 
|  
 | 
| -class Buffer;
 | 
| -
 | 
|  class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|   public:
 | 
|    OmxVideoDecodeEngine();
 | 
| @@ -80,9 +71,6 @@ class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|  
 | 
|    // calls into other classes
 | 
|    void FinishEmptyBuffer(scoped_refptr<Buffer> buffer);
 | 
| -  void OnFormatChange(
 | 
| -      const OmxConfigurator::MediaFormat& input_format,
 | 
| -      const OmxConfigurator::MediaFormat& output_format);
 | 
|    void FinishFillBuffer(OMX_BUFFERHEADERTYPE* buffer);
 | 
|    // Helper method to perform tasks when this object is stopped.
 | 
|    void OnStopDone();
 | 
| @@ -135,9 +123,6 @@ class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|    // Method to send input buffers to component
 | 
|    void EmptyBufferTask();
 | 
|  
 | 
| -  // Take one decoded buffer to fulfill one read request.
 | 
| -  void FulfillOneRead();
 | 
| -
 | 
|    // Method doing initial reads to get bit stream from demuxer.
 | 
|    void InitialReadBuffer();
 | 
|  
 | 
| @@ -186,6 +171,10 @@ class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|    void (OmxVideoDecodeEngine::*OnStateSetEventFunc)(OMX_STATETYPE state);
 | 
|    void (OmxVideoDecodeEngine::*OnFlushEventFunc)(int port);
 | 
|  
 | 
| +  // Helper function
 | 
| +  scoped_refptr<VideoFrame> CreateOmxBufferVideoFrame(
 | 
| +      OMX_BUFFERHEADERTYPE* omx_buffer);
 | 
| +
 | 
|    size_t width_;
 | 
|    size_t height_;
 | 
|  
 | 
| @@ -201,10 +190,11 @@ class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|    bool input_has_fed_eos_;
 | 
|    bool input_port_flushed_;
 | 
|  
 | 
| -  std::vector<OMX_BUFFERHEADERTYPE*> output_buffers_;
 | 
|    int output_buffer_count_;
 | 
|    int output_buffer_size_;
 | 
|    int output_port_;
 | 
| +  int output_buffers_at_component_;
 | 
| +  int output_pending_request_;
 | 
|    bool output_eos_;
 | 
|    bool output_port_flushed_;
 | 
|    bool uses_egl_image_;
 | 
| @@ -230,19 +220,20 @@ class OmxVideoDecodeEngine : public VideoDecodeEngine {
 | 
|    // OMX_EmptyThisBuffer() call.
 | 
|    std::queue<OMX_BUFFERHEADERTYPE*> available_input_buffers_;
 | 
|  
 | 
| -  // flag for freeing input buffers
 | 
| +  // flag for freeing input/output buffers
 | 
|    bool need_free_input_buffers_;
 | 
| +  bool need_free_output_buffers_;
 | 
| +
 | 
| +  // for calling flush callback only once.
 | 
| +  bool flush_pending_;
 | 
|  
 | 
|    // For output buffer recycling cases.
 | 
|    typedef std::pair<scoped_refptr<VideoFrame>,
 | 
|                      OMX_BUFFERHEADERTYPE*> OutputFrame;
 | 
|    std::vector<OutputFrame> output_frames_;
 | 
| -  std::queue<OMX_BUFFERHEADERTYPE*> available_output_frames_;
 | 
| -  std::queue<OMX_BUFFERHEADERTYPE*> output_frames_ready_;
 | 
|    bool output_frames_allocated_;
 | 
|  
 | 
|    // port related
 | 
| -  bool input_port_enabled_;
 | 
|    bool need_setup_output_port_;
 | 
|    OmxIlPortState output_port_state_;
 | 
|    VideoDecodeEngine::EventHandler* event_handler_;
 | 
| 
 |