X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Fvp56data.h;h=39bb36d3ebc724b6128ce2fa423fc4f16c8a88e8;hb=58e1032d8fddab10fc2cae845aa84c5772d4cdca;hp=d784b9803a513929fe83fcf6919d9ce5f7605156;hpb=704a2881bc7787592889a5c3d48ef4ce8398214d;p=ffmpeg diff --git a/libavcodec/vp56data.h b/libavcodec/vp56data.h index d784b9803a5..39bb36d3ebc 100644 --- a/libavcodec/vp56data.h +++ b/libavcodec/vp56data.h @@ -1,37 +1,42 @@ -/** - * @file vp56data.h - * VP5 and VP6 compatible video decoder (common data) - * +/* * Copyright (C) 2006 Aurelien Jacobs * - * This file is part of FFmpeg. + * This file is part of Libav. * - * FFmpeg is free software; you can redistribute it and/or + * Libav is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * - * FFmpeg is distributed in the hope that it will be useful, + * Libav is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public - * License along with FFmpeg; if not, write to the Free Software - * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA + * License along with Libav; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + */ + +/** + * @file + * VP5 and VP6 compatible video decoder (common data) */ -#ifndef VP56DATA_H -#define VP56DATA_H +#ifndef AVCODEC_VP56DATA_H +#define AVCODEC_VP56DATA_H -#include "common.h" +#include "libavutil/common.h" typedef enum { + VP56_FRAME_NONE =-1, VP56_FRAME_CURRENT = 0, VP56_FRAME_PREVIOUS = 1, VP56_FRAME_GOLDEN = 2, - VP56_FRAME_UNUSED = 3, -} vp56_frame_t; + VP56_FRAME_GOLDEN2 = 3, + VP56_FRAME_UNUSED = 4, + VP56_FRAME_UNUSED2 = 5, +} VP56Frame; typedef enum { VP56_MB_INTER_NOVEC_PF = 0, /**< Inter MB, no vector, from previous frame */ @@ -44,23 +49,23 @@ typedef enum { VP56_MB_INTER_4V = 7, /**< Inter MB, 4 vectors, from previous frame */ VP56_MB_INTER_V1_GF = 8, /**< Inter MB, first vector, from golden frame */ VP56_MB_INTER_V2_GF = 9, /**< Inter MB, second vector, from golden frame */ -} vp56_mb_t; +} VP56mb; typedef struct { int8_t val; int8_t prob_idx; -} vp56_tree_t; - -extern const uint8_t vp56_b6to3[]; -extern const uint8_t vp56_b6to4[]; -extern const uint8_t vp56_coeff_parse_table[6][11]; -extern const uint8_t vp56_def_mb_types_stats[3][10][2]; -extern const vp56_tree_t vp56_pva_tree[]; -extern const vp56_tree_t vp56_pc_tree[]; -extern const uint8_t vp56_coeff_bias[]; -extern const uint8_t vp56_coeff_bit_length[]; - -static const vp56_frame_t vp56_reference_frame[] = { +} VP56Tree; + +extern const uint8_t ff_vp56_b2p[]; +extern const uint8_t ff_vp56_b6to4[]; +extern const uint8_t ff_vp56_coeff_parse_table[6][11]; +extern const uint8_t ff_vp56_def_mb_types_stats[3][10][2]; +extern const VP56Tree ff_vp56_pva_tree[]; +extern const VP56Tree ff_vp56_pc_tree[]; +extern const uint8_t ff_vp56_coeff_bias[]; +extern const uint8_t ff_vp56_coeff_bit_length[]; + +static const VP56Frame vp56_reference_frame[] = { VP56_FRAME_PREVIOUS, /* VP56_MB_INTER_NOVEC_PF */ VP56_FRAME_CURRENT, /* VP56_MB_INTRA */ VP56_FRAME_PREVIOUS, /* VP56_MB_INTER_DELTA_PF */ @@ -209,7 +214,7 @@ static const uint8_t vp56_mb_type_model_model[] = { 171, 83, 199, 140, 125, 104, }; -static const vp56_tree_t vp56_pmbtm_tree[] = { +static const VP56Tree vp56_pmbtm_tree[] = { { 4, 0}, { 2, 1}, {-8}, {-4}, { 8, 2}, @@ -218,7 +223,7 @@ static const vp56_tree_t vp56_pmbtm_tree[] = { { 2, 5}, {-24}, {-20}, {-16}, {-12}, {-0}, }; -static const vp56_tree_t vp56_pmbt_tree[] = { +static const VP56Tree vp56_pmbt_tree[] = { { 8, 1}, { 4, 2}, { 2, 4}, {-VP56_MB_INTER_NOVEC_PF}, {-VP56_MB_INTER_DELTA_PF}, @@ -246,4 +251,4 @@ static const int8_t vp56_candidate_predictor_pos[12][2] = { { 2, -2 }, }; -#endif /* VP56DATA */ +#endif /* AVCODEC_VP56DATA_H */