資源簡介
音頻采集端(麥克風(fēng))采集的speex音頻,轉(zhuǎn)成pcm,pcm轉(zhuǎn)成aac,也可直接由speex轉(zhuǎn)成aac,另加了一個鏈表的類。可直接編譯使用。speex轉(zhuǎn)pcm,pcm轉(zhuǎn)aac,speex轉(zhuǎn)aac

代碼片段和文件信息
/*************************************************************************
??????????????????Copyright?(C)?2012???Shanghai?Surfing
????????????????????????????????All?Rights?Reserved
??????????????????????????????????????R&D?Dept.????????????????????????????????????????????
*************************************************************************/
/*************************************************************************
Filename:????????? basic_func.cpp
Description:???? basic??Function?Define?Source?File.
Author:?????????? gaoyang
Date:????????????? 2012-11-17?
Version:??? V1.0.0
Modified:??????
*************************************************************************/
#include?“basic_func.h“
using?namespace?pure_baselib;
using?namespace?pure_livegw;
CBasic_func::CBasic_func()
{
m_port?=0;
memset(m_ipaddr0MAX_HEADER_SIZE);
m_client_fd=NULL;
m_phostent=NULL;
m_bconnected=false;
}
CBasic_func::~CBasic_func()
{
}
//A-Za-z0-9這些字符的識別
s32?CBasic_func::hex_it(s8?c)?
{
if?(c?>=?‘0‘?&&?c?<=?‘9‘)
return?c?-?‘0‘;
else?if?(c?>=?‘a(chǎn)‘?&&?c?<=?‘f‘)
return?c?-?‘a(chǎn)‘?+?10;
else?if?(c?>=?‘A‘?&&?c?<=?‘F‘)
return?c?-?‘A‘?+?10;
else
return?0;
}
//字符檢查,看送進(jìn)來的一行請求信息是否合法
s32?CBasic_func::sanitize_file(const?s8?*i_pbuf)?
{
s32?len?i;
//Don‘t?accept?anything?not?starting?with?a?/?
if?(*i_pbuf?!=?‘/‘)?
return?0;
len?=?strlen(i_pbuf);
for?(i?=?0;?i? {
//Check?for?“/.“?i.e.?don‘t?send?files?starting?with?a?.
if?(i_pbuf[i]?==?‘/‘?&&?i_pbuf[i+1]?==?‘.‘)?
return?0;
}
return?1;
}
//字符檢查,返回host地址。
s32?CBasic_func::sanitize_host(s8?*i_pbuf)
{
while?(*i_pbuf?!=?‘\0‘)?
{
//Handle?the?port?
if?(*i_pbuf?==?‘:‘)?
{
*i_pbuf?=?‘\0‘;
return?1;
}
//Enforce?some?basic?URL?rules...?
if?((isalnum(*i_pbuf)?==?0?&&?*i_pbuf?!=?‘-‘?&&?*i_pbuf?!=?‘.‘)?||(*i_pbuf?==?‘.‘?&&?*(i_pbuf+1)?==?‘.‘)?||
(*i_pbuf?==?‘.‘?&&?*(i_pbuf+1)?==?‘-‘)?||(*i_pbuf?==?‘-‘?&&?*(i_pbuf+1)?==?‘.‘))
return?0;
i_pbuf++;
}
????return?1;
}
//封裝了strncpy()防止出現(xiàn)非‘\0‘結(jié)尾的字符串帶來的問題
s8?*CBasic_func::my_strncpy(s8?*o_pdest?const?s8?*i_psrc?size_t?n)?
{
strncpy(o_pdest?i_psrc?n);
o_pdest[n-1]?=?‘\0‘;
return?o_pdest;
}
//socket?讀寫函數(shù)
s32?CBasic_func::special_read(s32?i_fd?void?*i_pbuf?size_t?i_count)
{
s32?res;
res?=?read(i_fd?i_pbuf?i_count);//
return?res;
}
s32?CBasic_func::special_write(s32?i_fdconst?s8?*i_pbuf?size_t?i_count)
{
return?write(i_fd?i_pbuf?i_count);//
}
//判斷tpbuf代表的路徑是否是目錄
s32?CBasic_func::isdir(const?s8?*i_pbuf)?
{
//printf(“%s???%d??i_pbuf=%s\n“__func____LINE__i_pbuf);
struct?stat?st;
s8?path[MAXREQUESTLENGTH];
strcpy(path?i_pbuf);
if?(stat(path?&st)?==?-1)?
{
//printf(“%s???%d??not?dir\n“__func____LINE__);
return?0;
}
if?((st.st_mode?&?S_IFMT)?==?S_IFDIR)?
{
//printf(“%s???%d??is??dir\n“__func____LINE__);
return?1;
}
return?0;
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1076??2013-01-15?10:47??speex2aac\makefile
?????文件?????162392??2013-01-09?22:39??speex2aac\full.spx
????.......?????29984??2013-01-15?10:50??speex2aac\obj\basic_func.o
????.......?????63312??2013-01-15?10:50??speex2aac\obj\pure_speex.o
????.......?????21752??2013-01-15?10:50??speex2aac\obj\mem_pool.o
?????文件???????9883??2012-12-22?12:01??speex2aac\src\mem_pool.cpp
?????文件??????26785??2013-01-15?10:48??speex2aac\src\pure_speex.cpp
?????文件??????11843??2012-12-21?16:24??speex2aac\src\basic_func.cpp
????.......????237348??2013-01-15?10:51??speex2aac\out.aac
?????文件???????2491??2012-12-21?16:24??speex2aac\include\basic_func.h
?????文件???????3168??2012-12-22?06:34??speex2aac\include\basic_type.h
?????文件??????13011??2013-01-15?09:31??speex2aac\include\pure_speex.h
?????文件????????717??2012-12-20?15:41??speex2aac\include\c_headers.h
?????文件???????1799??2012-12-22?12:01??speex2aac\include\mem_pool.h
?????文件???????4353??2012-12-22?06:38??speex2aac\include\basic_define.h
?????文件??????77172??2013-01-15?10:50??speex2aac\sbin\speex_to_aac
?????目錄??????????0??2013-01-15?10:50??speex2aac\obj
?????目錄??????????0??2013-01-15?10:49??speex2aac\src
?????目錄??????????0??2013-01-15?10:49??speex2aac\include
?????目錄??????????0??2013-01-15?10:50??speex2aac\sbin
?????目錄??????????0??2013-01-15?10:51??speex2aac
-----------?---------??----------?-----??----
???????????????667086????????????????????21
評論
共有 條評論