xref: /aosp_15_r20/external/libavc/examples/svcenc/psnr.h (revision 495ae853bb871d1e5a258cb02c2cc13cde8ddb9a)
1*495ae853SAndroid Build Coastguard Worker /******************************************************************************
2*495ae853SAndroid Build Coastguard Worker  *
3*495ae853SAndroid Build Coastguard Worker  * Copyright (C) 2022 The Android Open Source Project
4*495ae853SAndroid Build Coastguard Worker  *
5*495ae853SAndroid Build Coastguard Worker  * Licensed under the Apache License, Version 2.0 (the "License");
6*495ae853SAndroid Build Coastguard Worker  * you may not use this file except in compliance with the License.
7*495ae853SAndroid Build Coastguard Worker  * You may obtain a copy of the License at:
8*495ae853SAndroid Build Coastguard Worker  *
9*495ae853SAndroid Build Coastguard Worker  * http://www.apache.org/licenses/LICENSE-2.0
10*495ae853SAndroid Build Coastguard Worker  *
11*495ae853SAndroid Build Coastguard Worker  * Unless required by applicable law or agreed to in writing, software
12*495ae853SAndroid Build Coastguard Worker  * distributed under the License is distributed on an "AS IS" BASIS,
13*495ae853SAndroid Build Coastguard Worker  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14*495ae853SAndroid Build Coastguard Worker  * See the License for the specific language governing permissions and
15*495ae853SAndroid Build Coastguard Worker  * limitations under the License.
16*495ae853SAndroid Build Coastguard Worker  *
17*495ae853SAndroid Build Coastguard Worker  *****************************************************************************
18*495ae853SAndroid Build Coastguard Worker  * Originally developed and contributed by Ittiam Systems Pvt. Ltd, Bangalore
19*495ae853SAndroid Build Coastguard Worker  */
20*495ae853SAndroid Build Coastguard Worker /****************************************************************************/
21*495ae853SAndroid Build Coastguard Worker /*                                                                          */
22*495ae853SAndroid Build Coastguard Worker /*  File Name         : psnr.h                                              */
23*495ae853SAndroid Build Coastguard Worker /*                                                                          */
24*495ae853SAndroid Build Coastguard Worker /*  Description       : Contains functions for psnr computation             */
25*495ae853SAndroid Build Coastguard Worker /*                                                                          */
26*495ae853SAndroid Build Coastguard Worker /*  List of Functions :                                                     */
27*495ae853SAndroid Build Coastguard Worker /*                        compute_psnr                                      */
28*495ae853SAndroid Build Coastguard Worker /*                        print_average_psnr                                */
29*495ae853SAndroid Build Coastguard Worker /*  Issues / Problems :                                                     */
30*495ae853SAndroid Build Coastguard Worker /*                                                                          */
31*495ae853SAndroid Build Coastguard Worker /*  Revision History  :                                                     */
32*495ae853SAndroid Build Coastguard Worker /*                                                                          */
33*495ae853SAndroid Build Coastguard Worker /*       DD MM YYYY      Author(s)        Changes (Describe the changes)    */
34*495ae853SAndroid Build Coastguard Worker /*                                                                          */
35*495ae853SAndroid Build Coastguard Worker /****************************************************************************/
36*495ae853SAndroid Build Coastguard Worker #ifndef _SVCE_APP_PSNR_H_
37*495ae853SAndroid Build Coastguard Worker #define _SVCE_APP_PSNR_H_
38*495ae853SAndroid Build Coastguard Worker 
39*495ae853SAndroid Build Coastguard Worker /*****************************************************************************/
40*495ae853SAndroid Build Coastguard Worker /*  Function Declarations                                                    */
41*495ae853SAndroid Build Coastguard Worker /*****************************************************************************/
42*495ae853SAndroid Build Coastguard Worker void init_psnr(app_ctxt_t *ps_app_ctxt);
43*495ae853SAndroid Build Coastguard Worker 
44*495ae853SAndroid Build Coastguard Worker void compute_psnr(app_ctxt_t *ps_app_ctxt, iv_raw_buf_t *ps_buf1, iv_raw_buf_t *ps_buf2);
45*495ae853SAndroid Build Coastguard Worker 
46*495ae853SAndroid Build Coastguard Worker void print_average_psnr(app_ctxt_t *ps_app_ctxt);
47*495ae853SAndroid Build Coastguard Worker 
48*495ae853SAndroid Build Coastguard Worker #if COMPUTE_PSNR
49*495ae853SAndroid Build Coastguard Worker 
50*495ae853SAndroid Build Coastguard Worker #define GET_AVERAGE_PSNR_Y(print) print_average_psnr(print)
51*495ae853SAndroid Build Coastguard Worker 
52*495ae853SAndroid Build Coastguard Worker #else /* COMPUTE_PSNR */
53*495ae853SAndroid Build Coastguard Worker 
54*495ae853SAndroid Build Coastguard Worker #define GET_AVERAGE_PSNR_Y(print) 0
55*495ae853SAndroid Build Coastguard Worker 
56*495ae853SAndroid Build Coastguard Worker #endif /* COMPUTE_PSNR */
57*495ae853SAndroid Build Coastguard Worker 
58*495ae853SAndroid Build Coastguard Worker #endif
59