media/libvpx/vp8/common/debugmodes.c

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 #include <stdio.h>
    13 #include "blockd.h"
    16 void vp8_print_modes_and_motion_vectors(MODE_INFO *mi, int rows, int cols, int frame)
    17 {
    19     int mb_row;
    20     int mb_col;
    21     int mb_index = 0;
    22     FILE *mvs = fopen("mvs.stt", "a");
    24     /* print out the macroblock Y modes */
    25     mb_index = 0;
    26     fprintf(mvs, "Mb Modes for Frame %d\n", frame);
    28     for (mb_row = 0; mb_row < rows; mb_row++)
    29     {
    30         for (mb_col = 0; mb_col < cols; mb_col++)
    31         {
    33             fprintf(mvs, "%2d ", mi[mb_index].mbmi.mode);
    35             mb_index++;
    36         }
    38         fprintf(mvs, "\n");
    39         mb_index++;
    40     }
    42     fprintf(mvs, "\n");
    44     mb_index = 0;
    45     fprintf(mvs, "Mb mv ref for Frame %d\n", frame);
    47     for (mb_row = 0; mb_row < rows; mb_row++)
    48     {
    49         for (mb_col = 0; mb_col < cols; mb_col++)
    50         {
    52             fprintf(mvs, "%2d ", mi[mb_index].mbmi.ref_frame);
    54             mb_index++;
    55         }
    57         fprintf(mvs, "\n");
    58         mb_index++;
    59     }
    61     fprintf(mvs, "\n");
    63     /* print out the macroblock UV modes */
    64     mb_index = 0;
    65     fprintf(mvs, "UV Modes for Frame %d\n", frame);
    67     for (mb_row = 0; mb_row < rows; mb_row++)
    68     {
    69         for (mb_col = 0; mb_col < cols; mb_col++)
    70         {
    72             fprintf(mvs, "%2d ", mi[mb_index].mbmi.uv_mode);
    74             mb_index++;
    75         }
    77         mb_index++;
    78         fprintf(mvs, "\n");
    79     }
    81     fprintf(mvs, "\n");
    83     /* print out the block modes */
    84     mb_index = 0;
    85     fprintf(mvs, "Mbs for Frame %d\n", frame);
    86     {
    87         int b_row;
    89         for (b_row = 0; b_row < 4 * rows; b_row++)
    90         {
    91             int b_col;
    92             int bindex;
    94             for (b_col = 0; b_col < 4 * cols; b_col++)
    95             {
    96                 mb_index = (b_row >> 2) * (cols + 1) + (b_col >> 2);
    97                 bindex = (b_row & 3) * 4 + (b_col & 3);
    99                 if (mi[mb_index].mbmi.mode == B_PRED)
   100                     fprintf(mvs, "%2d ", mi[mb_index].bmi[bindex].as_mode);
   101                 else
   102                     fprintf(mvs, "xx ");
   104             }
   106             fprintf(mvs, "\n");
   107         }
   108     }
   109     fprintf(mvs, "\n");
   111     /* print out the macroblock mvs */
   112     mb_index = 0;
   113     fprintf(mvs, "MVs for Frame %d\n", frame);
   115     for (mb_row = 0; mb_row < rows; mb_row++)
   116     {
   117         for (mb_col = 0; mb_col < cols; mb_col++)
   118         {
   119             fprintf(mvs, "%5d:%-5d", mi[mb_index].mbmi.mv.as_mv.row / 2, mi[mb_index].mbmi.mv.as_mv.col / 2);
   121             mb_index++;
   122         }
   124         mb_index++;
   125         fprintf(mvs, "\n");
   126     }
   128     fprintf(mvs, "\n");
   131     /* print out the block modes */
   132     mb_index = 0;
   133     fprintf(mvs, "MVs for Frame %d\n", frame);
   134     {
   135         int b_row;
   137         for (b_row = 0; b_row < 4 * rows; b_row++)
   138         {
   139             int b_col;
   140             int bindex;
   142             for (b_col = 0; b_col < 4 * cols; b_col++)
   143             {
   144                 mb_index = (b_row >> 2) * (cols + 1) + (b_col >> 2);
   145                 bindex = (b_row & 3) * 4 + (b_col & 3);
   146                 fprintf(mvs, "%3d:%-3d ", mi[mb_index].bmi[bindex].mv.as_mv.row, mi[mb_index].bmi[bindex].mv.as_mv.col);
   148             }
   150             fprintf(mvs, "\n");
   151         }
   152     }
   153     fprintf(mvs, "\n");
   156     fclose(mvs);
   157 }

mercurial