| Index: third_party/openh264/testing/h264_codec_tester.h | 
| diff --git a/third_party/openh264/testing/h264_codec_tester.h b/third_party/openh264/testing/h264_codec_tester.h | 
| new file mode 100644 | 
| index 0000000000000000000000000000000000000000..a02457f4867a934655f12ee554e1ae2f53c16f47 | 
| --- /dev/null | 
| +++ b/third_party/openh264/testing/h264_codec_tester.h | 
| @@ -0,0 +1,41 @@ | 
| +// Copyright 2015 The Chromium Authors. All rights reserved. | 
| +// Use of this source code is governed by a BSD-style license that can be | 
| +// found in the LICENSE file. | 
| + | 
| +#ifndef OPENH264_TESTING_H264_CODEC_TESTER_H_ | 
| +#define OPENH264_TESTING_H264_CODEC_TESTER_H_ | 
| + | 
| +#include "openh264/src/codec/api/svc/codec_api.h" | 
| +#include "openh264/src/codec/api/svc/codec_app_def.h" | 
| +#include "openh264/src/codec/api/svc/codec_def.h" | 
| +#include "openh264/testing/h264_encoder_impl.h" | 
| +#include "openh264/testing/h264_decoder_impl.h" | 
| + | 
| +namespace openh264 { | 
| + | 
| +class H264CodecTester : public EncodedImageCallback, | 
| +                        public DecodedImageCallback { | 
| + public: | 
| +  H264CodecTester(); | 
| +  ~H264CodecTester(); | 
| + | 
| +  bool Init(unsigned short width, unsigned short height); | 
| + | 
| +  bool Encode(const VideoFrame& frame); | 
| +  VideoFrame* Decode(); | 
| + | 
| + private: | 
| +  int32_t Encoded(const EncodedImage& encoded_image, | 
| +                  const CodecSpecificInfo* codec_specific_info, | 
| +                  const RTPFragmentationHeader* fragmentation) override; | 
| +  int32_t Decoded(VideoFrame& decoded_image) override; | 
| + | 
| +  H264EncoderImpl encoder_; | 
| +  H264DecoderImpl decoder_; | 
| +  const EncodedImage* last_encoded_image_; | 
| +  VideoFrame* last_decoded_image_; | 
| +}; | 
| + | 
| +}  // namespace openh264 | 
| + | 
| +#endif  // OPENH264_TESTING_H264_CODEC_TESTER_H_ | 
|  |