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

? 歡迎來到蟲蟲下載站! | ?? 資源下載 ?? 資源專輯 ?? 關(guān)于我們
? 蟲蟲下載站

?? audio.c

?? JPEG-MPEG編解碼技術(shù)書集的代碼
?? C
?? 第 1 頁 / 共 2 頁
字號:
/**********************************************************************
MPEG-4 Audio VM
Audio i/o module



This software module was originally developed by

Heiko Purnhagen (University of Hannover / ACTS-MoMuSys)

and edited by

in the course of development of the MPEG-2 NBC/MPEG-4 Audio standard
ISO/IEC 13818-7, 14496-1,2 and 3. This software module is an
implementation of a part of one or more MPEG-2 NBC/MPEG-4 Audio tools
as specified by the MPEG-2 NBC/MPEG-4 Audio standard. ISO/IEC gives
users of the MPEG-2 NBC/MPEG-4 Audio standards free license to this
software module or modifications thereof for use in hardware or
software products claiming conformance to the MPEG-2 NBC/ MPEG-4 Audio
standards. Those intending to use this software module in hardware or
software products are advised that this use may infringe existing
patents. The original developer of this software module and his/her
company, the subsequent editors and their companies, and ISO/IEC have
no liability for use of this software module or modifications thereof
in an implementation. Copyright is not released for non MPEG-2
NBC/MPEG-4 Audio conforming products. The original developer retains
full right to use the code for his/her own purpose, assign or donate
the code to a third party and to inhibit third party from using the
code for non MPEG-2 NBC/MPEG-4 Audio conforming products. This
copyright notice must be included in all copies or derivative works.

Copyright (c) 1996, 1999.



Source file: audio.c

$Id: audio.c,v 1.3 2002/07/08 15:02:34 mvillari Exp $

Required libraries:
libtsp.a		AFsp audio file library

Required modules:
common.o		common module
austream.o		audio i/o streams (.au format)

Authors:
HP    Heiko Purnhagen, Uni Hannover <purnhage@tnt.uni-hannover.de>
BT    Bodo Teichmann, FhG/IIS <tmn@iis.fhg.de>

Changes:
21-jan-97   HP    born (using AFsp-V2R2)
27-jan-97   HP    set unavailable samples to 0 in AudioReadData()
03-feb-97   HP    fix bug AudioInit formatString=NULL
19-feb-97   HP    made internal data structures invisible
21-feb-97   BT    raw: big-endian
12-sep-97   HP    fixed numSample bug for mch files in AudioOpenRead()
30-dec-98   HP    uses austream for stdin/stdout, evaluates USE_AFSP
07-jan-99   HP    AFsp-v4r1 (AFsp-V3R2 still supported)
11-jan-99   HP    clipping & seeking for austream module
17-jan-99   HP    fixed quantisation to 16 bit
26-jan-99   HP    improved output file format evaluation
17-may-99   HP    improved output file format detection
**********************************************************************/


#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <ctype.h>

#ifdef USE_AFSP
#include <libtsp.h>		/* AFsp audio file library */
#include <libtsp/AFpar.h>	/* AFsp audio file library - definitions */
#endif

#include "audio.h"		/* audio i/o module */
#include "common_m4a.h"		/* common module */
#include "austream.h"		/* audio i/o streams (.au format) */
#include "bitstream.h"

/* ---------- declarations ---------- */

#define SAMPLE_BUF_SIZE 16384	/* local sample buffer size */

#define min(a,b) ((a) < (b) ? (a) : (b))
#define max(a,b) ((a) > (b) ? (a) : (b))

#ifdef USE_AFSP
#ifdef FW_SUN
/* only AFsp-V3R2 available: map AFsp-V3R2 to AFsp-v4r1 */
#define AFsetNHpar AFsetNH
#define FTW_AU (FW_SUN/256)
#define FTW_WAVE (FW_WAVE/256)
#define FTW_AIFF_C (FW_AIFF_C/256)
#define FTW_NH_EB (FW_NH_EB/256)
#endif
#endif


/* ---------- declarations (structures) ---------- */

struct AudioFileStruct		/* audio file handle */
{
#ifdef USE_AFSP
  AFILE *file;			/* AFILE handle */
#else
  int *file;
#endif
  AuStream *stream;		/* AuStream handle */
				/*   NULL if AFsp used */
  int numChannel;		/* number of channels */
  long currentSample;		/* number of samples read/written */
				/* (samples per channel!) */
  int write;			/* 0=read  1=write */
  long numClip;			/* number of samples clipped */
};


/* ---------- variables ---------- */

static int AUdebugLevel = 0;	/* debug level */


/* ---------- local functions ---------- */

int isfmtstr (char *filename, char *fmtstr)
/* isfmtstr returns true if filename has extension fmtstr */
{
  int i;

  i = strlen(filename)-strlen(fmtstr);
  if (i<0)
    return 0;
  filename += i;
  while (*filename) {
    if (tolower(*filename) != *fmtstr)
      return 0;
    filename++;
    fmtstr++;
  }
  return 1;
}


/* ---------- functions ---------- */


/* AudioInit() */
/* Init audio i/o module. */
/* formatString options: see AFsp documentation */

void AudioInit (
  char *formatString,		/* in: file format for headerless files */
  int debugLevel)		/* in: debug level */
				/*     0=off  1=basic  2=full */
{
  AUdebugLevel = debugLevel;
  if (AUdebugLevel >= 1) {
    printf("AudioInit: formatString=\"%s\"\n",
	   (formatString!=NULL)?formatString:"(null)");
    printf("AudioInit: debugLevel=%d\n",AUdebugLevel);
#ifdef USE_AFSP
    printf("AudioInit: all AFsp file formats supported\n");
#else
    printf("AudioInit: only 16 bit .au format supported\n");
#endif
  }
#ifdef USE_AFSP
  if (formatString!=NULL)
    AFsetNHpar(formatString);   /* headerless file support */
#endif
}


/* AudioOpenRead() */
/* Open audio file for reading. */

AudioFile *AudioOpenRead (
  char *fileName,		/* in: file name */
				/*     "-": stdin (only 16 bit .au) */
  int *numChannel,		/* out: number of channels */
  float *fSample,		/* out: sampling frequency [Hz] */
  long *numSample)		/* out: number of samples in file */
				/*      (samples per channel!) */
				/*      or 0 if not available */
				/* returns: */
				/*  audio file (handle) */
				/*  or NULL if error */
{
  AudioFile *file;
#ifdef USE_AFSP
  AFILE *af;
#else
  int *af;
#endif
  AuStream *as;
  long ns;
  long nc;
  int nci;
  float fs;

  if (AUdebugLevel >= 1)
    printf("AudioOpenRead: fileName=\"%s\"\n",fileName);

  if ((file=(AudioFile*)malloc(sizeof(AudioFile))) == NULL)
    CommonExit(1,"AudioOpenRead: memory allocation error");


#ifdef USE_AFSP
  if (strcmp(fileName,"-")) {
    af = AFopenRead(fileName,&ns,&nc,&fs,
		    AUdebugLevel?stdout:(FILE*)NULL);
    as = NULL;
  }
  else {
#endif
    af = NULL;
    as = AuOpenRead(fileName,&nci,&fs,&ns);
    nc = nci;
    ns = max(0,ns);
#ifdef USE_AFSP
  }
#endif

  if (as==NULL && af==NULL) {
    CommonWarning("AudioOpenRead: error opening audio file %s",fileName);
   FREE(file);
    return (AudioFile*)NULL;
  }

  file->file = af;
  file->stream = as;
  file->numChannel = nc;
  file->currentSample = 0;
  file->write = 0;
  file->numClip = 0;
  *numChannel = nc;
  *fSample = fs;
  *numSample = ns/nc;

  if (AUdebugLevel >= 1)
    printf("AudioOpenRead: numChannel=%d  fSample=%.1f  numSample=%ld\n",
	   *numChannel,*fSample,*numSample);

  return file;
}


/* AudioOpenWrite() */
/* Open audio file for writing. */
/* Sample format: 16 bit twos complement, uniform quantisation */
/* Supported file formats: (matching substring of format) */
/*  au, snd:  Sun (AFsp) audio file */
/*  wav:      RIFF WAVE file */
/*  aif:      AIFF-C audio file */
/*  raw:      headerless (raw) audio file (native byte order) */

AudioFile *AudioOpenWrite (
  char *fileName,		/* in: file name */
				/*     "-": stdout (only 16 bit .au) */
  char *format,			/* in: file format (ignored if stdout) */
				/*     (au, snd, wav, aif, raw) */
  int numChannel,		/* in: number of channels */
  float fSample)		/* in: sampling frequency [Hz] */
				/* returns: */
				/*  audio file (handle) */
				/*  or NULL if error */
{
  AudioFile *file;
#ifdef USE_AFSP
  AFILE *af;
  int fmt;
  int fmti;
  struct {
    char *str;
    int fmt;
  } fmtstr[] = {
    {"au",FTW_AU*256},
    {"snd",FTW_AU*256},
    {"wav",FTW_WAVE*256},
    {"wave",FTW_WAVE*256},
    {"aif",FTW_AIFF_C*256},
    {"aiff",FTW_AIFF_C*256},
    {"aifc",FTW_AIFF_C*256},
    {"raw",FTW_NH_EB*256},	/* no header big-endian */
    {NULL,-1}
  };
#else
  int *af;
  int fmti;
  struct {
    char *str;
    int fmt;
  } fmtstr[] = {
    {"au",1},
    {"snd",1},
    {NULL,-1}
  };
#endif

?? 快捷鍵說明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號 Ctrl + =
減小字號 Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
激情都市一区二区| 久国产精品韩国三级视频| 欧美大片在线观看一区二区| 成人一区二区在线观看| www.欧美色图| 日本三级亚洲精品| 亚洲精选在线视频| 久久久久久久综合日本| 欧美剧情片在线观看| 成人精品视频一区二区三区尤物| 日韩成人av影视| 亚洲丝袜另类动漫二区| 欧美精品一区二区三区很污很色的| 91麻豆产精品久久久久久| 国产一区二区三区四| 欧美aaaaaa午夜精品| 亚洲线精品一区二区三区| 中文字幕在线观看一区二区| 久久综合丝袜日本网| 日韩欧美一区二区在线视频| 欧美伊人精品成人久久综合97| 国产精品一卡二| 国产综合一区二区| 美女在线观看视频一区二区| 亚洲成人1区2区| 亚洲国产日韩av| 亚洲午夜一区二区| 亚洲激情中文1区| 亚洲欧美另类在线| 中文字幕在线观看不卡视频| 国产视频911| 亚洲精品一区二区三区香蕉| 日韩亚洲国产中文字幕欧美| 日韩一区二区三区三四区视频在线观看| 欧美在线视频不卡| 一本久久a久久精品亚洲| av一区二区三区在线| 成人午夜在线免费| 丁香六月久久综合狠狠色| 国产精品77777竹菊影视小说| 麻豆精品精品国产自在97香蕉| 免费在线视频一区| 久久99热这里只有精品| 久久99精品网久久| 国产麻豆精品在线观看| 国产成人综合在线| 东方aⅴ免费观看久久av| 粉嫩av一区二区三区在线播放| 国产美女视频91| 国产不卡视频在线观看| 成人高清视频在线| 一本色道**综合亚洲精品蜜桃冫| 日本高清不卡一区| 成人欧美一区二区三区小说| 亚洲欧洲日产国码二区| 亚洲欧美激情在线| 亚欧色一区w666天堂| 日本三级亚洲精品| 国产毛片一区二区| 91在线一区二区| 精品污污网站免费看| 日韩一级二级三级精品视频| 精品国产一区二区三区忘忧草 | 日韩精品乱码免费| 免费成人av在线| 国产精品一品二品| 色偷偷久久人人79超碰人人澡| 欧美性感一类影片在线播放| 欧美一区二区精品| 国产精品网站在线| 亚洲小说春色综合另类电影| 日韩电影在线一区二区| 黑人巨大精品欧美黑白配亚洲| 成人蜜臀av电影| 欧美日韩国产在线观看| 久久伊人蜜桃av一区二区| 中文字幕在线观看一区二区| 午夜精品爽啪视频| 国产成人亚洲精品青草天美| 日本乱人伦一区| 精品成人在线观看| 亚洲综合免费观看高清完整版在线| 日韩电影网1区2区| 成人av动漫网站| 日韩欧美国产系列| 亚洲欧洲综合另类| 韩国午夜理伦三级不卡影院| 在线观看一区不卡| 久久精品一区蜜桃臀影院| 亚洲图片一区二区| 国产一区欧美二区| 欧美老女人第四色| 中文字幕亚洲精品在线观看| 日韩经典中文字幕一区| 国产三级精品视频| 婷婷丁香久久五月婷婷| 成人aaaa免费全部观看| 日韩免费高清av| 一区二区免费在线| 成人网页在线观看| 精品久久久久久久久久久久久久久| 亚洲免费电影在线| 国产成人亚洲综合色影视| 欧美日韩精品久久久| 国产精品久久久久久福利一牛影视 | 日韩精品成人一区二区在线| 波多野结衣91| 精品99999| 丝袜脚交一区二区| 色综合久久中文综合久久牛| 久久久久久久综合| 日本欧美在线看| 欧美日精品一区视频| 亚洲欧美激情视频在线观看一区二区三区 | 日韩免费电影网站| 天天综合天天综合色| 色婷婷久久久久swag精品| 欧美国产日本韩| 国产精品一区一区三区| 日韩精品一区二区三区在线观看| 性做久久久久久免费观看欧美| 91在线你懂得| 国产成人av电影在线播放| 欧美成人艳星乳罩| 日韩精品电影在线| 欧美电影一区二区| 天堂成人国产精品一区| 日本大香伊一区二区三区| 中文字幕中文字幕中文字幕亚洲无线| 国产乱人伦偷精品视频不卡| 精品免费国产二区三区| 美女一区二区久久| 日韩视频免费观看高清完整版在线观看| 亚洲成a人片在线观看中文| 日本韩国一区二区| 伊人性伊人情综合网| 色诱视频网站一区| 亚洲免费毛片网站| 欧洲在线/亚洲| 亚洲网友自拍偷拍| 欧美一区永久视频免费观看| 日韩va亚洲va欧美va久久| 91精品国模一区二区三区| 日韩高清在线电影| 日韩免费视频线观看| 国产一区高清在线| 欧美激情中文字幕一区二区| 成人午夜av在线| 亚洲品质自拍视频网站| 欧美性感一区二区三区| 日日夜夜精品视频天天综合网| 欧美一区二区三区在线看| 久久精品国产一区二区三| 久久丝袜美腿综合| 成人丝袜高跟foot| 一区二区视频在线| 欧美理论在线播放| 国产一区亚洲一区| 综合中文字幕亚洲| 在线播放一区二区三区| 精品综合免费视频观看| 中文字幕第一区二区| 色综合中文字幕国产| 亚洲国产欧美在线人成| 日韩美女一区二区三区| 成人黄色综合网站| 午夜欧美大尺度福利影院在线看| 欧美电影免费观看高清完整版在线 | 天天免费综合色| 精品福利视频一区二区三区| 成人免费高清在线| 亚洲一卡二卡三卡四卡 | 久久婷婷久久一区二区三区| 9l国产精品久久久久麻豆| 亚洲大片免费看| 精品国产91亚洲一区二区三区婷婷| 国产白丝网站精品污在线入口| 亚洲色欲色欲www在线观看| 69av一区二区三区| 成人一区二区三区| 亚洲国产另类精品专区| 久久综合九色综合97_久久久| 97久久精品人人爽人人爽蜜臀| 天天综合日日夜夜精品| 国产婷婷色一区二区三区四区 | 国产亚洲一区二区在线观看| 一本大道久久a久久精品综合| 老司机一区二区| 亚洲伦理在线精品| 精品国产免费视频| 欧美亚洲日本国产| 国产成人高清在线| 亚洲国产毛片aaaaa无费看| 中文字幕成人在线观看| 91精品黄色片免费大全| 日本韩国精品一区二区在线观看| 九九视频精品免费| 视频一区二区中文字幕| 亚洲精选视频在线| 欧美国产禁国产网站cc|