• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1 /*
2  * Copyright (c) 2016, Alliance for Open Media. All rights reserved.
3  *
4  * This source code is subject to the terms of the BSD 2 Clause License and
5  * the Alliance for Open Media Patent License 1.0. If the BSD 2 Clause License
6  * was not distributed with this source code in the LICENSE file, you can
7  * obtain it at www.aomedia.org/license/software. If the Alliance for Open
8  * Media Patent License 1.0 was not distributed with this source code in the
9  * PATENTS file, you can obtain it at www.aomedia.org/license/patent.
10  */
11 
12 /*!\file
13  * \brief Describes film grain synthesis
14  *
15  */
16 #ifndef AOM_AV1_DECODER_GRAIN_SYNTHESIS_H_
17 #define AOM_AV1_DECODER_GRAIN_SYNTHESIS_H_
18 
19 #ifdef __cplusplus
20 extern "C" {
21 #endif
22 
23 #include <stdint.h>
24 
25 #include "aom_dsp/grain_params.h"
26 #include "aom/aom_image.h"
27 
28 /*!\brief Add film grain
29  *
30  * Add film grain to an image
31  *
32  * Returns 0 for success, -1 for failure
33  *
34  * \param[in]    grain_params     Grain parameters
35  * \param[in]    src              Source image
36  * \param[out]   dst              Resulting image with grain
37  */
38 int av1_add_film_grain(const aom_film_grain_t *grain_params,
39                        const aom_image_t *src, aom_image_t *dst);
40 
41 #ifdef __cplusplus
42 }  // extern "C"
43 #endif
44 
45 #endif  // AOM_AV1_DECODER_GRAIN_SYNTHESIS_H_
46