📄 vorbis.h.svn-base
字号:
#define ALT_BITSTREAM_READER_LE#include "avcodec.h"#include "bitstream.h"#include "dsputil.h"typedef struct { uint_fast8_t dimensions; uint_fast8_t lookup_type; uint_fast8_t maxdepth; VLC vlc; float *codevectors; unsigned int nb_bits;} vorbis_codebook;typedef union vorbis_floor_u vorbis_floor_data;typedef struct vorbis_floor0_s vorbis_floor0;typedef struct vorbis_floor1_s vorbis_floor1;struct vorbis_context_s;typedefuint_fast8_t (* vorbis_floor_decode_func) (struct vorbis_context_s *, vorbis_floor_data *, float *);typedef struct { uint_fast8_t floor_type; vorbis_floor_decode_func decode; union vorbis_floor_u { struct vorbis_floor0_s { uint_fast8_t order; uint_fast16_t rate; uint_fast16_t bark_map_size; int_fast32_t * map[2]; uint_fast32_t map_size[2]; uint_fast8_t amplitude_bits; uint_fast8_t amplitude_offset; uint_fast8_t num_books; uint_fast8_t * book_list; float * lsp; } t0; struct vorbis_floor1_s { uint_fast8_t partitions; uint_fast8_t maximum_class; uint_fast8_t partition_class[32]; uint_fast8_t class_dimensions[16]; uint_fast8_t class_subclasses[16]; uint_fast8_t class_masterbook[16]; int_fast16_t subclass_books[16][8]; uint_fast8_t multiplier; uint_fast16_t x_list_dim; uint_fast16_t *x_list; uint_fast16_t *x_list_order; uint_fast16_t *low_neighbour; uint_fast16_t *high_neighbour; } t1; } data;} vorbis_floor;typedef struct { uint_fast16_t type; uint_fast32_t begin; uint_fast32_t end; uint_fast32_t partition_size; uint_fast8_t classifications; uint_fast8_t classbook; int_fast16_t books[64][8]; uint_fast8_t maxpass;} vorbis_residue;typedef struct { uint_fast8_t submaps; uint_fast16_t coupling_steps; uint_fast8_t *magnitude; uint_fast8_t *angle; uint_fast8_t *mux; uint_fast8_t submap_floor[16]; uint_fast8_t submap_residue[16];} vorbis_mapping;typedef struct { uint_fast8_t blockflag; uint_fast16_t windowtype; uint_fast16_t transformtype; uint_fast8_t mapping;} vorbis_mode;typedef struct vorbis_context_s { AVCodecContext *avccontext; GetBitContext gb; MDCTContext mdct0; MDCTContext mdct1; uint_fast8_t first_frame; uint_fast32_t version; uint_fast8_t audio_channels; uint_fast32_t audio_samplerate; uint_fast32_t bitrate_maximum; uint_fast32_t bitrate_nominal; uint_fast32_t bitrate_minimum; uint_fast32_t blocksize_0; uint_fast32_t blocksize_1; const float * swin; const float * lwin; uint_fast16_t codebook_count; vorbis_codebook *codebooks; uint_fast8_t floor_count; vorbis_floor *floors; uint_fast8_t residue_count; vorbis_residue *residues; uint_fast8_t mapping_count; vorbis_mapping *mappings; uint_fast8_t mode_count; vorbis_mode *modes; uint_fast8_t mode_number; // mode number for the current packet float *channel_residues; float *channel_floors; float *saved; uint_fast16_t saved_start; float *ret; float *buf; float *buf_tmp;} vorbis_context;static const float vwin64[32] = { 0.0009460463F, 0.0085006468F, 0.0235352254F, 0.0458950567F, 0.0753351908F, 0.1115073077F, 0.1539457973F, 0.2020557475F, 0.2551056759F, 0.3122276645F, 0.3724270287F, 0.4346027792F, 0.4975789974F, 0.5601459521F, 0.6211085051F, 0.6793382689F, 0.7338252629F, 0.7837245849F, 0.8283939355F, 0.8674186656F, 0.9006222429F, 0.9280614787F, 0.9500073081F, 0.9669131782F, 0.9793740220F, 0.9880792941F, 0.9937636139F, 0.9971582668F, 0.9989462667F, 0.9997230082F, 0.9999638688F, 0.9999995525F,};static const float vwin128[64] = { 0.0002365472F, 0.0021280687F, 0.0059065254F, 0.0115626550F, 0.0190823442F, 0.0284463735F, 0.0396300935F, 0.0526030430F, 0.0673285281F, 0.0837631763F, 0.1018564887F, 0.1215504095F, 0.1427789367F, 0.1654677960F, 0.1895342001F, 0.2148867160F, 0.2414252576F, 0.2690412240F, 0.2976177952F, 0.3270303960F, 0.3571473350F, 0.3878306189F, 0.4189369387F, 0.4503188188F, 0.4818259135F, 0.5133064334F, 0.5446086751F, 0.5755826278F, 0.6060816248F, 0.6359640047F, 0.6650947483F, 0.6933470543F, 0.7206038179F, 0.7467589810F, 0.7717187213F, 0.7954024542F, 0.8177436264F, 0.8386902831F, 0.8582053981F, 0.8762669622F, 0.8928678298F, 0.9080153310F, 0.9217306608F, 0.9340480615F, 0.9450138200F, 0.9546851041F, 0.9631286621F, 0.9704194171F, 0.9766389810F, 0.9818741197F, 0.9862151938F, 0.9897546035F, 0.9925852598F, 0.9947991032F, 0.9964856900F, 0.9977308602F, 0.9986155015F, 0.9992144193F, 0.9995953200F, 0.9998179155F, 0.9999331503F, 0.9999825563F, 0.9999977357F, 0.9999999720F,};static const float vwin256[128] = { 0.0000591390F, 0.0005321979F, 0.0014780301F, 0.0028960636F, 0.0047854363F, 0.0071449926F, 0.0099732775F, 0.0132685298F, 0.0170286741F, 0.0212513119F, 0.0259337111F, 0.0310727950F, 0.0366651302F, 0.0427069140F, 0.0491939614F, 0.0561216907F, 0.0634851102F, 0.0712788035F, 0.0794969160F, 0.0881331402F, 0.0971807028F, 0.1066323515F, 0.1164803426F, 0.1267164297F, 0.1373318534F, 0.1483173323F, 0.1596630553F, 0.1713586755F, 0.1833933062F, 0.1957555184F, 0.2084333404F, 0.2214142599F, 0.2346852280F, 0.2482326664F, 0.2620424757F, 0.2761000481F, 0.2903902813F, 0.3048975959F, 0.3196059553F, 0.3344988887F, 0.3495595160F, 0.3647705766F, 0.3801144597F, 0.3955732382F, 0.4111287047F, 0.4267624093F, 0.4424557009F, 0.4581897696F, 0.4739456913F, 0.4897044744F, 0.5054471075F, 0.5211546088F, 0.5368080763F, 0.5523887395F, 0.5678780103F, 0.5832575361F, 0.5985092508F, 0.6136154277F, 0.6285587300F, 0.6433222619F, 0.6578896175F, 0.6722449294F, 0.6863729144F, 0.7002589187F, 0.7138889597F, 0.7272497662F, 0.7403288154F, 0.7531143679F, 0.7655954985F, 0.7777621249F, 0.7896050322F, 0.8011158947F, 0.8122872932F, 0.8231127294F, 0.8335866365F, 0.8437043850F, 0.8534622861F, 0.8628575905F, 0.8718884835F, 0.8805540765F, 0.8888543947F, 0.8967903616F, 0.9043637797F, 0.9115773078F, 0.9184344360F, 0.9249394562F, 0.9310974312F, 0.9369141608F, 0.9423961446F, 0.9475505439F, 0.9523851406F, 0.9569082947F, 0.9611289005F, 0.9650563408F, 0.9687004405F, 0.9720714191F, 0.9751798427F, 0.9780365753F, 0.9806527301F, 0.9830396204F, 0.9852087111F, 0.9871715701F, 0.9889398207F, 0.9905250941F, 0.9919389832F, 0.9931929973F, 0.9942985174F, 0.9952667537F, 0.9961087037F, 0.9968351119F, 0.9974564312F, 0.9979827858F, 0.9984239359F, 0.9987892441F, 0.9990876435F, 0.9993276081F, 0.9995171241F, 0.9996636648F, 0.9997741654F, 0.9998550016F, 0.9999119692F, 0.9999502656F, 0.9999744742F, 0.9999885497F, 0.9999958064F, 0.9999989077F, 0.9999998584F, 0.9999999983F,};static const float vwin512[256] = { 0.0000147849F, 0.0001330607F, 0.0003695946F, 0.0007243509F, 0.0011972759F, 0.0017882983F, 0.0024973285F, 0.0033242588F, 0.0042689632F, 0.0053312973F, 0.0065110982F, 0.0078081841F, 0.0092223540F, 0.0107533880F, 0.0124010466F, 0.0141650703F, 0.0160451800F, 0.0180410758F, 0.0201524373F, 0.0223789233F, 0.0247201710F, 0.0271757958F, 0.0297453914F, 0.0324285286F, 0.0352247556F, 0.0381335972F, 0.0411545545F, 0.0442871045F, 0.0475306997F, 0.0508847676F, 0.0543487103F, 0.0579219038F, 0.0616036982F, 0.0653934164F, 0.0692903546F, 0.0732937809F, 0.0774029356F, 0.0816170305F, 0.0859352485F, 0.0903567428F, 0.0948806375F, 0.0995060259F, 0.1042319712F, 0.1090575056F, 0.1139816300F, 0.1190033137F, 0.1241214941F, 0.1293350764F, 0.1346429333F, 0.1400439046F, 0.1455367974F, 0.1511203852F, 0.1567934083F, 0.1625545735F, 0.1684025537F, 0.1743359881F, 0.1803534820F, 0.1864536069F, 0.1926349000F, 0.1988958650F, 0.2052349715F, 0.2116506555F, 0.2181413191F, 0.2247053313F, 0.2313410275F, 0.2380467105F, 0.2448206500F, 0.2516610835F, 0.2585662164F, 0.2655342226F, 0.2725632448F, 0.2796513950F, 0.2867967551F, 0.2939973773F, 0.3012512852F, 0.3085564739F, 0.3159109111F, 0.3233125375F, 0.3307592680F, 0.3382489922F, 0.3457795756F, 0.3533488602F, 0.3609546657F, 0.3685947904F, 0.3762670121F, 0.3839690896F, 0.3916987634F, 0.3994537572F, 0.4072317788F, 0.4150305215F, 0.4228476653F, 0.4306808783F, 0.4385278181F, 0.4463861329F, 0.4542534630F, 0.4621274424F, 0.4700057001F, 0.4778858615F, 0.4857655502F, 0.4936423891F, 0.5015140023F, 0.5093780165F, 0.5172320626F, 0.5250737772F, 0.5329008043F, 0.5407107971F, 0.5485014192F, 0.5562703465F, 0.5640152688F, 0.5717338914F, 0.5794239366F, 0.5870831457F, 0.5947092801F, 0.6023001235F, 0.6098534829F, 0.6173671907F, 0.6248391059F, 0.6322671161F, 0.6396491384F, 0.6469831217F, 0.6542670475F, 0.6614989319F, 0.6686768267F, 0.6757988210F, 0.6828630426F, 0.6898676592F, 0.6968108799F, 0.7036909564F, 0.7105061843F, 0.7172549043F, 0.7239355032F, 0.7305464154F, 0.7370861235F, 0.7435531598F, 0.7499461068F, 0.7562635986F, 0.7625043214F, 0.7686670148F, 0.7747504721F, 0.7807535410F, 0.7866751247F, 0.7925141825F, 0.7982697296F, 0.8039408387F, 0.8095266395F, 0.8150263196F, 0.8204391248F, 0.8257643590F, 0.8310013848F, 0.8361496236F, 0.8412085555F, 0.8461777194F,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -