资源简介
mp3格式软件解码的C源程序

代码片段和文件信息
/*____________________________________________________________________________
MP3 Decoding Libraries
Lanuguages used: C C++ ASM
As much as I would love to I cannot take
full credit for writing this code.
Xing Technology made MPEG-layer 3 for us
to decode. =)
- ULTiMaTuM -
MPEG-layer 3 (MP3)
Copyright (C) 1995-1997 Xing Technology
NOTE: I only edited the bare-minimum. 90%
of this is original decoding code...
Hmm... that sounds strange =)
____________________________________________________________________________*/
/**** cdct.c ***************************************************
MPEG audio decoder
dct format
Original revisions:
mod 5/16/95 first stage in 8 pt dct does not drop last sb mono
******************************************************************/
#include “config.h“
#include
#include
#include
#include
/* external assembler (don‘t you just LOVE multi-
language code? =) */
#ifdef ASM_X86
extern void fdct32_asm(float*a float*b);
extern void fdct32_dual_asm(float*a float*b);
#elif defined(ASM_X86_OLD)
extern void asm_fdct32(float *in float *out);
#endif /* ASM_X86 */
float coef32[31]; /* 32 pt dct coefs */
/*------------------------------------------------------------*/
float *dct_coef_addr()
{
return coef32;
}
/*------------------------------------------------------------*/
static void forward_bf(int m int n float x[] float f[] float coef[])
{
int i j n2;
int p q p0 k;
p0 = 0;
n2 = n >> 1;
for (i = 0; i < m; i++ p0 += n)
{
k = 0;
p = p0;
q = p + n - 1;
for (j = 0; j < n2; j++ p++ q-- k++)
{
f[p] = x[p] + x[q];
f[n2 + p] = coef[k] * (x[p] - x[q]);
}
}
}
/*------------------------------------------------------------*/
static void back_bf(int m int n float x[] float f[])
{
int i j n2 n21;
int p q p0;
p0 = 0;
n2 = n >> 1;
n21 = n2 - 1;
for (i = 0; i < m; i++ p0 += n)
{
p = p0;
q = p0;
for (j = 0; j < n2; j++ p += 2 q++)
f[p] = x[q];
p = p0 + 1;
for (j = 0; j < n21; j++ p += 2 q++)
f[p] = x[q] + x[q + 1];
f[p] = x[q];
}
}
/*------------------------------------------------------------*/
#ifdef _EQUALIZER_ENABLE_
extern float equalizer[32];
extern int enableEQ;
#endif
void fdct32(float x[] float c[])
{
#if (!defined(ASM_X86) && !defined(ASM_X86_OLD) || defined(_EQUALIZER_ENABLE_))
float a[32]; /* ping pong buffers */
float b[32];
int p q;
#endif
float *src = x;
#ifdef _EQUALIZER_ENABLE_
int i;
float b[32];
if (enableEQ) {
for(i=0; i<32; i++)
b[i] = x[i] * equalizer[i];
src = b;
}
#endif /* _EQUALIZER_ENABLE_ */
#undef _EQUALIZER_ENABLE_
#ifdef ASM_X86
fdct32_asm(src c);
#elif defined(ASM_X86_OLD)
asm_fdct32(src c);
#else
/*
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
目录 0 2005-01-11 19:45 mp3解码源程序
文件 7061 2000-04-23 07:32 mp3解码源程序\xing.plg
文件 16489 1999-12-03 13:07 mp3解码源程序\xing.001
文件 148 1998-10-13 19:48 mp3解码源程序\xing.def
文件 16532 2000-04-23 08:22 mp3解码源程序\xing.dsp
文件 531 1998-10-13 05:44 mp3解码源程序\xing.dsw
文件 51985 1999-12-21 12:31 mp3解码源程序\xing.mak
文件 254976 2000-04-23 08:57 mp3解码源程序\xing.ncb
文件 49664 2000-04-23 08:57 mp3解码源程序\xing.opt
文件 2785 2000-04-23 08:57 mp3解码源程序\xing.rc
文件 32712 2000-04-23 08:57 mp3解码源程序\xing.aps
文件 9479 2000-04-23 08:11 mp3解码源程序\cdct.c
文件 10102 2000-04-23 08:09 mp3解码源程序\cdctasm.asm
文件 8796 2000-04-23 08:15 mp3解码源程序\csbt.c
文件 7232 2000-04-23 08:44 mp3解码源程序\csbtb.c
文件 7224 2000-04-23 08:45 mp3解码源程序\csbtL3.c
文件 17701 2000-04-23 08:35 mp3解码源程序\cup.c
文件 12428 2000-04-23 08:45 mp3解码源程序\cupini.c
文件 8270 2000-04-23 08:45 mp3解码源程序\cupL1.c
文件 35796 2000-04-23 08:36 mp3解码源程序\cupl3.c
文件 10463 2000-04-23 08:46 mp3解码源程序\cwin.c
文件 14117 2000-04-23 09:19 mp3解码源程序\cwin8asm.asm
文件 13612 2000-04-23 09:20 mp3解码源程序\cwinasm.asm
文件 11081 2000-04-23 08:46 mp3解码源程序\cwinb.c
文件 1287 2000-04-23 08:36 mp3解码源程序\cwinm.c
文件 8703 2000-04-23 08:37 mp3解码源程序\dec8.c
文件 7045 2000-04-23 08:38 mp3解码源程序\hwin.c
文件 10117 2000-04-23 08:38 mp3解码源程序\icdct.c
文件 11319 2000-04-23 08:39 mp3解码源程序\isbt.c
文件 7937 2000-04-23 08:47 mp3解码源程序\isbtb.c
............此处省略38个文件信息
相关资源
- 仿知乎界面小程序源代码
- 贪吃蛇源代码.fla
- 2017款解码软件v1.0.0.6
- dotnet 写字板 实验 源代码 不好请要不
- 图像二维小波变换的实现源代码
- 八三编码器设计 VHDL代码 简单,包附
- linux应用层的华容道游戏源代码
- 网上拍卖系统完整源代码
- CSMA/CD等动画演示加源代码
- 一种红外遥控编解码仿真
- silicon lab公司的收音IC SI47XX全套开发工
- mp3解析文档及其分析工具
- 合同管理系统的源代码(附数据库)
- 用VC 编写的仿QQ聊天室程序源代码
- STM32F103 串口程序(完整版)
- VPC3_DPV1源代码,Profibus
- PB做的托盘程序(最小化后在左下角显
- 透明加密源码及说明
- 排队机叫号 源代码
- 五子棋C 源代码
- CAD LISP24个源代码
- 二叉树基本操作源代码
- MP3文件ID3v2ID3v2APEv2标签读取
- 推箱子及人工智能寻路C 源代码
- opengl轮廓字体源代码
- 冈萨雷斯 数字图像处理 源代码(m文
- 直流伺服电机电路原理图(内附单片
- 曼彻斯特编解码_同步QuartusII工程
- 哈哈冒险岛登入器源代码
- midi电子琴简单设计(附源代码).ra
评论
共有 条评论