亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關于我們
? 蟲蟲下載站

?? vbr-g726.c

?? G.726協議的C源碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/*                                                           21.Mar.2000 V1.3  ============================================================================  VBR-G726.C   ~~~~~~~~~~  Description:   ~~~~~~~~~~~~    Demonstration program for UGST/ITU-T G.726 module using the variable  bit rate feature. This version accepts either linear or G.711 A/u-law  input. Since this implementation of the G.726 requires G.711 compressed  samples, linear samples are converted to G.711 format before being  processed. Therefore, the same ammount of quantization distortion should  be expect either way.    The modules called have been originally written in Fortran, and were  translated into C by the converter f2c, version of October 15, 1990  at 19:58:17.    Input data is supposed to be aligned at word boundaries, i.e.,  organized in 16-bit words, following the operating system normal  organization (low-byte first for VMS and DOS; high byte first for most  Unix systems). Linear samples are supposed to be 16-bit right-adjusted.   G711 compressed data is supposed to be in the 8 LEAST  significant bits of the word and the ADPCM data is in the LEAST 5  bits. Both are without sign extension.    Output data will be generated in the same format as decribed above for  the input data.    Usage:  ~~~~~~  $ VBR-G726 [-options] InpFile OutFile              [FrameSize [1stBlock [NoOfBlocks [Reset]]]]  where:  InpFile     is the name of the file to be processed;  OutFile     is the name with the processed data;  FrameSize   is the frame size, in number of samples; the bitrate               will only change in the boundaries of a frame               [default: 16 samples]  1stBlock    is the number of the first block of the input file              to be processed [default: 1st block]  NoOfBlocks  is the number of blocks to be processed, starting on    	      block "1stBlock" [default: all blocks]  Options:  -law #      the letters A or a for G.711 A-law, letter u for               G.711 u-law, or letter l for linear. If linear is	      chosen, A-law is used to compress/expand samples to/from	      the G.726 routines. Default is A-law.  -rate #     is the bit-rate (in kbit/s): 40, 32, 24 or 16 (in kbit/s);               or a combination of them using dashes (e.g. 32-24 or	      16-24-32). Default is 32 kbit/s.  -frame #    Number of samples per frame for switching bit rates.              Default is 16 samples (or 2ms)   -enc        run only the G.726 encoder on the samples               [default: run encoder and decoder]  -dec        run only the G.726 decoder on the samples               [default: run encoder and decoder]  -noreset    don't apply reset to the encoder/decoder  -?/-help    print help message  Example:  $ vbr-G726 -law u -enc -rate 32 voice.ref voice.adp 256 3 45  The command above takes the samples in file "voice.ref", already  in mu law format, processes the data through the G726 encoder  only at a rate of 32 bkit/s, saving them into the file  "voice.rel". The processing starts at block 3 for 45 blocks,  each block being 256 samples wide.  Variables:  ~~~~~~~~~~  law  	  law to use (either A or u)  conv    desired processing  rate    desired rate  inpfil  input file name;  outfil  output file name;  N  	  block size;  N1  	  first block to process;  N2  	  no. of blocks to process;  Exit values:  ~~~~~~~~~~~~  0  success (all but VMS);  1  success (only in VMS);  2  error opening input file;  3  error creating output file;  4  error moving pointer to desired start of conversion;  5  error reading input file;  6  error writing to file;  7  invalid law  8  invalid conversion  9  invalid rate  Original author:  ~~~~~~~~~~~~~~~~  Simao Ferraz de Campos Neto  Comsat Laboratories                  Tel:    +1-301-428-4516  22300 Comsat Drive                   Fax:    +1-301-428-9287  Clarksburg MD 20871 - USA            E-mail: simao@ctd.comsat.com  History:  ~~~~~~~~  10/Mar/1995 v1.0  Created based on vbr-g726.c  22/Feb/1996 v1.1  Removed compilation warnings, included headers as                    suggested by Kirchherr (FI/DBP Telekom) to run under		    OpenVMS/AXP <simao@ctd.comsat.com>  22/Jul/1997 v1.2  Changed static allocation for data arrays to allow longer                     frame sizes. Fix based on modifications by R. Kirchherr                     <kirchherr@tzd.telekom.de>  21.Mar.2000 v1.3  Corrected bug when the bitrate is not specified by                     the user. Corrected bug that made incorrect                    calculation on total number of blocks to process                    when the block size is not a multiple of the file                    size. <simao.campos@labs.comsat.com>  ============================================================================*//* ..... General definitions for UGST demo programs ..... */#include "ugstdemo.h"/* ..... General include ..... */#include <stdio.h>#include <stdlib.h>#include <string.h>#include <math.h>#include <ctype.h>#if defined(VMS)#include <unixio.h>#include <stat.h>#else				/* Unix/DOS */#include <sys/stat.h>#endif/* ..... G.726 module as include functions ..... */#include "g726.h"#include "g711.h"/* ------------------------------------------------------------------------- void parse_rate(char *str, short *rate); ~~~~~~~~~~~~~~~ Parses string str with a list of bitrates for the operation of the G726 algorithm and return a list of them in rate, and the number of rates read. Parameters: ~~~~~~~~~~~ str ..... string pointing to a list of dash-separated bitrates to be used.           Valid examples are: 16 (single rate), 32-24 (duo-rate), etc. rate .... string of short numbers with each of the specified rates. Return: ~~~~~~~ Returns the number of bitrates for the ADPCM operation, 0 if str is  empty or improper, and -1 if there are too many rates requested. History: ~~~~~~~~ 10.Mar.95 v1.0 Created <simao@ctd.comsat.com> -------------------------------------------------------------------------*/int parse_rate(str, rate)char *str;short **rate;{  char *s=str;  int count=1, i;  if(str==NULL)   return 0;      while((s=strchr(s,'-'))!=NULL)  {     s++;    count++;  }  /* Allocates memory for the necessary number of rates */  *rate = (short *)calloc(sizeof(short), count);  if (*rate==NULL)     return(-1);  /* Save rates in the array */  for(s=strtok(str,"-"), i=0; i<count; i++)  {    /* Convert to short & save */    (*rate)[i] = atoi(s);    /* Classification of rate - return 0 if invalid rate was specified */    if ((*rate)[i] > 5)    {      if ((*rate)[i] == 40)	(*rate)[i] = 5;      else if ((*rate)[i] == 32)	(*rate)[i] = 4;      else if ((*rate)[i] == 24)	(*rate)[i] = 3;      else if ((*rate)[i] == 16)	(*rate)[i] = 2;      else	return(0);    }    /* Update s to the next valid rate number */    s = strtok(NULL,"-");  }  /* Return the number of rates */  return(count);}/* .................... End of parse_rate() ........................... *//* ------------------------------------------------------------------------- void display_usage(void); ~~~~~~~~~~~~~~~~~~ Display proper usage for the demo program. Generated automatically from program documentation. History: ~~~~~~~~ 10.Mar.95 v1.0 Created <simao>. -------------------------------------------------------------------------*/#define P(x) printf xvoid display_usage(){  P(("Version 1.3 of 21/Mar/2000 \n\n"));   P(("  VBR-G726.C \n"));  P(("  Demonstration program for UGST/ITU-T G.726 module using the variable\n"));  P(("  bit rate feature. This version accepts either linear or G.711 A/u-law\n"));  P(("  input. Since this implementation of the G.726 requires G.711 compressed\n"));  P(("  samples, linear samples are converted to G.711 format before being\n"));  P(("  processed. Therefore, the same ammount of quantization distortion should\n"));  P(("  be expect either way.\n"));  P(("  Input data is supposed to be aligned at word boundaries, i.e.,\n"));  P(("  organized in 16-bit words, following the operating system normal\n"));  P(("  organization (low-byte first for VMS and DOS; high byte first for most\n"));  P(("  Unix systems). Linear samples are supposed to be 16-bit right-adjusted. \n"));  P(("  G711 compressed data is supposed to be in the 8 LEAST\n"));  P(("  significant bits of the word and the ADPCM data is in the LEAST 5\n"));  P(("  bits. Both are without sign extension.\n"));  P(("  \n"));  P(("  Output data will be generated in the same format as decribed above for\n"));  P(("  the input data.\n"));  P(("  \n"));  P(("  Usage:\n"));  P(("  VBR-G726 [-options] InpFile OutFile \n"));  P(("             [FrameSize [1stBlock [NoOfBlocks [Reset]]]]\n"));  P(("  where:\n"));  P(("  InpFile     is the name of the file to be processed;\n"));  P(("  OutFile     is the name with the processed data;\n"));  P(("  FrameSize   is the frame size, in number of samples; the bitrate \n"));  P(("              will only change in the boundaries of a frame \n"));  P(("              [default: 16 samples]\n"));  P(("  1stBlock    is the number of the first block of the input file\n"));  P(("              to be processed [default: 1st block]\n"));  P(("  NoOfBlocks  is the number of blocks to be processed, starting on\n"));  P(("              block \"1stBlock\" [default: all blocks]\n"));  P(("\n"));  P(("  Options:\n"));  P(("  -law #      the letters A or a for G.711 A-law, letter u for \n"));  P(("              G.711 u-law, or letter l for linear. If linear is\n"));  P(("              chosen, A-law is used to compress/expand samples to/from\n"));  P(("              the G.726 routines. Default is A-law.\n"));  P(("  -rate #     is the bit-rate (in kbit/s): 40, 32, 24 or 16 (in kbit/s); \n"));  P(("              or a combination of them using dashes (e.g. 32-24 or\n"));  P(("              16-24-32). Default is 32 kbit/s.\n"));  P(("  -frame #    Number of samples per frame for switching bit rates.\n"));  P(("              Default is 16 samples (or 2ms) \n"));  P(("  -enc        run only the G.726 encoder on the samples \n"));  P(("              [default: run encoder and decoder]\n"));  P(("  -dec        run only the G.726 decoder on the samples \n"));  P(("              [default: run encoder and decoder]\n"));  P(("  -noreset    don't apply reset to the encoder/decoder\n"));  P(("  -?/-help    print help message\n"));  P(("\n"));  /* Quit program */  exit(-128);}#undef P/* .................... End of display_usage() ........................... *//*   **************************************************************************   ***                                                                    ***   ***        Demo-Program for testing the correct implementation         ***   ***               and to show how to use the programs                  ***   ***                                                                    ***   **************************************************************************

?? 快捷鍵說明

復制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
国产一区二区不卡老阿姨| 精品国一区二区三区| 国产精品久久久久一区| 国产一区999| 国产欧美一区二区三区网站 | 中文字幕第一区| 国产成人综合视频| 中文无字幕一区二区三区| 成人av电影免费在线播放| 最新国产成人在线观看| 91久久久免费一区二区| 亚洲电影一级黄| 日韩一区二区三区免费观看| 91丨porny丨户外露出| 亚洲人吸女人奶水| 在线观看欧美日本| 日本美女一区二区三区| 久久久久久久久久电影| 99久久久无码国产精品| 亚洲一区二区三区不卡国产欧美| 欧美精品一二三四| 狠狠久久亚洲欧美| 亚洲视频图片小说| 5566中文字幕一区二区电影| 国产一区二区三区观看| 亚洲丝袜另类动漫二区| 在线播放亚洲一区| 国产99精品国产| 亚洲尤物在线视频观看| 欧美mv日韩mv国产网站app| 成人av网站在线观看免费| 天堂久久一区二区三区| 久久久777精品电影网影网 | 黄页视频在线91| 中文字幕一区二区三区乱码在线| 欧美视频一区在线| 国产精品亚洲人在线观看| 一二三四社区欧美黄| 久久久久国产精品人| 欧美亚一区二区| 国产精品夜夜爽| 亚洲午夜久久久久中文字幕久| 欧美精品一区二区在线播放| 色偷偷久久人人79超碰人人澡 | 欧美日韩国产成人在线免费| 精品系列免费在线观看| 亚洲精品免费一二三区| 天天做天天摸天天爽国产一区 | 午夜国产精品一区| 日韩一区二区三区电影 | 欧美mv日韩mv国产网站app| 中文字幕乱码亚洲精品一区| 紧缚奴在线一区二区三区| 欧美日本在线播放| 一区二区三区欧美视频| 91在线精品一区二区| 欧美国产精品一区二区| 久久不见久久见免费视频7| 9191成人精品久久| 午夜精品成人在线视频| 欧美三级欧美一级| 日日欢夜夜爽一区| 日韩精品综合一本久道在线视频| 丝袜美腿高跟呻吟高潮一区| 欧美一级片在线看| 天天操天天色综合| 欧美精品一区二区三区高清aⅴ| 麻豆91在线播放免费| 国产婷婷一区二区| 91视频xxxx| 亚洲国产精品尤物yw在线观看| 91精品啪在线观看国产60岁| 精品一区二区国语对白| 精品欧美乱码久久久久久| 午夜精品福利一区二区三区av| 国产高清不卡二三区| 中文字幕精品在线不卡| 欧美艳星brazzers| 色噜噜狠狠色综合中国 | 日韩午夜在线观看视频| 国产成人av一区二区三区在线观看| 天堂成人免费av电影一区| 亚洲欧美成aⅴ人在线观看 | 91麻豆精品国产91久久久久久| 91成人在线观看喷潮| 色天使色偷偷av一区二区| 99久久久久久99| 99久久免费国产| 一本一本大道香蕉久在线精品| 91在线观看高清| 色综合av在线| 欧美日韩久久久| 91精品久久久久久久91蜜桃| 欧美浪妇xxxx高跟鞋交| 国产亚洲综合性久久久影院| 精品粉嫩超白一线天av| 久久久久久久久蜜桃| 亚洲国产成人私人影院tom| 中文字幕在线观看一区| 亚洲欧美精品午睡沙发| 亚洲国产视频一区二区| 青青草视频一区| 国产一区在线精品| 不卡免费追剧大全电视剧网站| 99精品视频一区二区| 欧美三级一区二区| 欧美成人一区二区| 国产精品久久久久久福利一牛影视 | 亚洲小少妇裸体bbw| 日韩高清欧美激情| 国产精品综合av一区二区国产馆| 国产盗摄一区二区三区| 91婷婷韩国欧美一区二区| 欧美天堂亚洲电影院在线播放| 在线综合视频播放| 国产精品污www在线观看| 依依成人综合视频| 麻豆国产精品官网| 粉嫩aⅴ一区二区三区四区| 色噜噜狠狠一区二区三区果冻| 日韩一本二本av| 一区二区中文视频| 日韩二区三区四区| 99久久久久久99| 日韩一区二区三区高清免费看看| 久久―日本道色综合久久| 亚洲综合视频在线| 精品在线你懂的| 在线观看免费亚洲| 国产欧美一区视频| 日韩不卡手机在线v区| 成人国产精品免费| 日韩欧美在线一区二区三区| 亚洲欧美二区三区| 国产麻豆欧美日韩一区| 欧美卡1卡2卡| 亚洲少妇30p| 色婷婷综合久色| xnxx国产精品| 亚洲午夜激情网站| av成人免费在线| 精品成人私密视频| 亚洲成av人片| 99re6这里只有精品视频在线观看| 日韩欧美国产麻豆| 亚洲国产sm捆绑调教视频| 波多野结衣中文字幕一区 | 日韩有码一区二区三区| 99视频国产精品| 久久久午夜电影| 奇米888四色在线精品| 欧美在线色视频| 亚洲欧洲另类国产综合| 国产精品一二二区| 欧美刺激午夜性久久久久久久| 亚洲国产精品综合小说图片区| 成人高清免费在线播放| 2023国产精品| 久久爱www久久做| 欧美一区二区三区性视频| 亚洲图片有声小说| 在线一区二区观看| 亚洲欧美另类久久久精品2019| 成人高清视频免费观看| 国产欧美在线观看一区| 国产高清精品网站| 久久久av毛片精品| 国产综合色精品一区二区三区| 日韩欧美高清在线| 蜜桃av一区二区三区| 日韩免费高清av| 久久精品国产在热久久| 日韩精品一区二区三区四区视频| 男女激情视频一区| 日韩精品一区二区在线| 日本韩国欧美一区| 国产精品全国免费观看高清 | 国产99一区视频免费| 久久久久久电影| 粉嫩av一区二区三区| 中文字幕国产一区二区| 99精品欧美一区| 亚洲精品综合在线| 欧美日韩在线播放一区| 日本中文字幕一区二区有限公司| 7777精品伊人久久久大香线蕉经典版下载 | 看片网站欧美日韩| 久久在线免费观看| 成人激情校园春色| 亚洲猫色日本管| 欧美日韩一区二区三区免费看| 五月婷婷综合网| 欧美tickling挠脚心丨vk| 国产精品91一区二区| 国产精品电影一区二区| 91福利在线免费观看| 日韩1区2区日韩1区2区| 久久在线观看免费| 一本久久综合亚洲鲁鲁五月天 | 欧美在线观看18|