# HG changeset patch # User michael # Date 1152312212 0 # Node ID 3ccec186532f64bb69f5eee72ceebdafa3579fe2 # Parent ffa9e863f3be336b58795bc3218ea02884826cc1 moving utf8 reading function to libavutil diff -r ffa9e863f3be -r 3ccec186532f flac.c --- a/flac.c Fri Jul 07 22:42:36 2006 +0000 +++ b/flac.c Fri Jul 07 22:43:32 2006 +0000 @@ -85,53 +85,12 @@ 256<<0, 256<<1, 256<<2, 256<<3, 256<<4, 256<<5, 256<<6, 256<<7 }; -static int64_t get_utf8(GetBitContext *gb) -{ - uint64_t val; - int ones=0, bytes; - - while(get_bits1(gb)) - ones++; - - if (ones==0) bytes=0; - else if(ones==1) return -1; - else bytes= ones - 1; - - val= get_bits(gb, 7-ones); - while(bytes--){ - const int tmp = get_bits(gb, 8); - - if((tmp>>6) != 2) - return -1; - val<<=6; - val|= tmp&0x3F; - } +static int64_t get_utf8(GetBitContext *gb){ + int64_t val; + GET_UTF8(val, get_bits(gb, 8), return -1;) return val; } -#if 0 -static int skip_utf8(GetBitContext *gb) -{ - int ones=0, bytes; - - while(get_bits1(gb)) - ones++; - - if (ones==0) bytes=0; - else if(ones==1) return -1; - else bytes= ones - 1; - - skip_bits(gb, 7-ones); - while(bytes--){ - const int tmp = get_bits(gb, 8); - - if((tmp>>6) != 2) - return -1; - } - return 0; -} -#endif - static void metadata_streaminfo(FLACContext *s); static void dump_headers(FLACContext *s);