X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=libavcodec%2Frangecoder.h;h=7ad1bd2e5591fdfb071a4578ddb095453aba43f9;hb=51c24838625ab58341bee0e45e3d168d6f4a98fe;hp=68bd3b60e4ec601eb851a61edb27ddbd8905d1e9;hpb=b78e7197a81e193827cf2408fe25bc1f14843a72;p=ffmpeg diff --git a/libavcodec/rangecoder.h b/libavcodec/rangecoder.h index 68bd3b60e4e..7ad1bd2e559 100644 --- a/libavcodec/rangecoder.h +++ b/libavcodec/rangecoder.h @@ -2,29 +2,35 @@ * Range coder * Copyright (c) 2004 Michael Niedermayer * - * 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 + * License along with Libav; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA - * */ /** - * @file rangecoder.h + * @file * Range coder. */ +#ifndef AVCODEC_RANGECODER_H +#define AVCODEC_RANGECODER_H + +#include +#include +#include "libavutil/common.h" + typedef struct RangeCoder{ int low; int range; @@ -66,6 +72,13 @@ static inline void renorm_encoder(RangeCoder *c){ } } +static inline int get_rac_count(RangeCoder *c){ + int x= c->bytestream - c->bytestream_start + c->outstanding_count; + if(c->outstanding_byte >= 0) + x++; + return 8*x - av_log2(c->range); +} + static inline void put_rac(RangeCoder *c, uint8_t * const state, int bit){ int range1= (c->range * (*state)) >> 8; @@ -96,7 +109,7 @@ static inline void refill(RangeCoder *c){ static inline int get_rac(RangeCoder *c, uint8_t * const state){ int range1= (c->range * (*state)) >> 8; - int attribute_unused one_mask; + int av_unused one_mask; c->range -= range1; #if 1 @@ -125,3 +138,4 @@ static inline int get_rac(RangeCoder *c, uint8_t * const state){ #endif } +#endif /* AVCODEC_RANGECODER_H */