media/libvpx/vp8/common/postproc.h

Thu, 15 Jan 2015 15:59:08 +0100

author
Michael Schloh von Bennewitz <michael@schloh.com>
date
Thu, 15 Jan 2015 15:59:08 +0100
branch
TOR_BUG_9701
changeset 10
ac0c01689b40
permissions
-rw-r--r--

Implement a real Private Browsing Mode condition by changing the API/ABI;
This solves Tor bug #9701, complying with disk avoidance documented in
https://www.torproject.org/projects/torbrowser/design/#disk-avoidance.

     1 /*
     2  *  Copyright (c) 2010 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  */
    12 #ifndef POSTPROC_H
    13 #define POSTPROC_H
    15 #include "vpx_ports/mem.h"
    16 struct postproc_state
    17 {
    18     int           last_q;
    19     int           last_noise;
    20     char          noise[3072];
    21     int           last_base_qindex;
    22     int           last_frame_valid;
    23     DECLARE_ALIGNED(16, char, blackclamp[16]);
    24     DECLARE_ALIGNED(16, char, whiteclamp[16]);
    25     DECLARE_ALIGNED(16, char, bothclamp[16]);
    26 };
    27 #include "onyxc_int.h"
    28 #include "ppflags.h"
    29 int vp8_post_proc_frame(struct VP8Common *oci, YV12_BUFFER_CONFIG *dest,
    30                         vp8_ppflags_t *flags);
    33 void vp8_de_noise(struct VP8Common           *oci,
    34                   YV12_BUFFER_CONFIG         *source,
    35                   YV12_BUFFER_CONFIG         *post,
    36                   int                         q,
    37                   int                         low_var_thresh,
    38                   int                         flag);
    40 void vp8_deblock(struct VP8Common           *oci,
    41                  YV12_BUFFER_CONFIG         *source,
    42                  YV12_BUFFER_CONFIG         *post,
    43                  int                         q,
    44                  int                         low_var_thresh,
    45                  int                         flag);
    47 #define MFQE_PRECISION 4
    49 void vp8_multiframe_quality_enhance(struct VP8Common *cm);
    50 #endif

mercurial