⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 common_m4a.c

📁 MPEG2/MPEG4编解码参考程序(实现了MPEG4的部分功能)
💻 C
字号:
/**********************************************************************MPEG-4 Audio VMCommon moduleThis software module was originally developed byHeiko Purnhagen (University of Hannover / ACTS-MoMuSys)and edited byin the course of development of the MPEG-2 NBC/MPEG-4 Audio standardISO/IEC 13818-7, 14496-1,2 and 3. This software module is animplementation of a part of one or more MPEG-2 NBC/MPEG-4 Audio toolsas specified by the MPEG-2 NBC/MPEG-4 Audio standard. ISO/IEC givesusers of the MPEG-2 NBC/MPEG-4 Audio standards free license to thissoftware module or modifications thereof for use in hardware orsoftware products claiming conformance to the MPEG-2 NBC/ MPEG-4 Audiostandards. Those intending to use this software module in hardware orsoftware products are advised that this use may infringe existingpatents. The original developer of this software module and his/hercompany, the subsequent editors and their companies, and ISO/IEC haveno liability for use of this software module or modifications thereofin an implementation. Copyright is not released for non MPEG-2NBC/MPEG-4 Audio conforming products. The original developer retainsfull right to use the code for his/her own purpose, assign or donatethe code to a third party and to inhibit third party from using thecode for non MPEG-2 NBC/MPEG-4 Audio conforming products. Thiscopyright notice must be included in all copies or derivative works.Copyright (c) 1996.Source file: common.c$Id: common_m4a.c,v 1.3 1999/07/22 17:55:35 purnhage Exp $Authors:HP    Heiko Purnhagen, Uni Hannover <purnhage@tnt.uni-hannover.de>Changes:06-jun-96   HP    new module based on ErrorMsg() from cmdline module25-jun-96   HP    added CommonFreeAlloc()26-aug-96   HP    CVS25-jun-97   HP    added random()16-oct-98   HP    fflush(stderr) in warning/exit**********************************************************************/#include <stdio.h>#include <stdlib.h>#include <stdarg.h>#include "resilienceHandle.h"    /* handler, defines, enums */#include "buffersHandle.h"       /* handler, defines, enums */#include "concealmentHandle.h"   /* handler, defines, enums */#include "common_m4a.h"		/* common module *//* ---------- variables ---------- */static char *CMprogName = "<progname>";		/* program name *//* ---------- functions ---------- *//* CommonFreeAlloc() *//* Free previously allocated memory if present, then allocate new memory. */void *CommonFreeAlloc (  void **ptr,			/* in/out: addr of memory pointer */  size_t size)			/* in: memory size */				/* returns: memory pointer */				/*          or NULL if error*/{  if (*ptr != NULL)    free(*ptr);  return *ptr = malloc(size);}/* CommonProgName() *//* Set program name for error/warning message. */void CommonProgName (  char *progName)		/* in: program name */{  CMprogName = progName;}/* CommonWarning() *//* Print program name and warning message to stderr. */void CommonWarning (  char *message,		/* in: warning message */  ...)				/* in: args as for printf */{  va_list args;  va_start(args,message);  fflush(stdout);  fprintf(stderr,"%s: WARNING: ",CMprogName);  vfprintf(stderr,message,args);  fprintf(stderr,"\n");  fflush(stderr);  va_end(args);}/* CommonExit() *//* Print program name and error message to stderr and exit program. */void CommonExit (  int errorCode,		/* in: error code for exit() */  char *message,		/* in: error message */  ...)				/* in: args as for printf */{  va_list args;  va_start(args,message);  fflush(stdout);  fprintf(stderr,"%s: ERROR[%d]: ",CMprogName,errorCode);  vfprintf(stderr,message,args);  fprintf(stderr,"\n");  fflush(stderr);  va_end(args);  exit (errorCode);}/* random1() *//* Generate random long (uniform distribution 0..RND_MAX). */long random1 (void){  static long randx = 1;    randx = (randx * 1103515245) + 12345;  return (randx & RND_MAX);}/* end of common.c */

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -