1/*
2 *  Copyright (c) 2014 The WebM project authors. All Rights Reserved.
3 *
4 *  Use of this source code is governed by a BSD-style license
5 *  that can be found in the LICENSE file in the root of the source
6 *  tree. An additional intellectual property rights grant can be found
7 *  in the file PATENTS.  All contributing project authors may
8 *  be found in the AUTHORS file in the root of the source tree.
9 */
10
11#ifndef VP9_ENCODER_VP9_RESIZE_H_
12#define VP9_ENCODER_VP9_RESIZE_H_
13
14#include <stdio.h>
15#include "vpx/vpx_integer.h"
16
17void vp9_resize_plane(const uint8_t *const input,
18                      int height,
19                      int width,
20                      int in_stride,
21                      uint8_t *output,
22                      int height2,
23                      int width2,
24                      int out_stride);
25void vp9_resize_frame420(const uint8_t *const y,
26                         int y_stride,
27                         const uint8_t *const u,
28                         const uint8_t *const v,
29                         int uv_stride,
30                         int height,
31                         int width,
32                         uint8_t *oy,
33                         int oy_stride,
34                         uint8_t *ou,
35                         uint8_t *ov,
36                         int ouv_stride,
37                         int oheight,
38                         int owidth);
39void vp9_resize_frame422(const uint8_t *const y,
40                         int y_stride,
41                         const uint8_t *const u,
42                         const uint8_t *const v,
43                         int uv_stride,
44                         int height,
45                         int width,
46                         uint8_t *oy,
47                         int oy_stride,
48                         uint8_t *ou,
49                         uint8_t *ov,
50                         int ouv_stride,
51                         int oheight,
52                         int owidth);
53void vp9_resize_frame444(const uint8_t *const y,
54                         int y_stride,
55                         const uint8_t *const u,
56                         const uint8_t *const v,
57                         int uv_stride,
58                         int height,
59                         int width,
60                         uint8_t *oy,
61                         int oy_stride,
62                         uint8_t *ou,
63                         uint8_t *ov,
64                         int ouv_stride,
65                         int oheight,
66                         int owidth);
67
68#endif    // VP9_ENCODER_VP9_RESIZE_H_
69