91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

  • 大小: 23.31MB
    文件類型: .rar
    金幣: 1
    下載: 0 次
    發布日期: 2023-07-15
  • 語言: C/C++
  • 標簽: C++??VC??wav??MP3??MFC??

資源簡介

VS2010編譯,可運行?;?K 16BIT轉換的! 需要其他頻率更改下參數就行!

資源截圖

代碼片段和文件信息

#include?“StdAfx.h“
#include?“MPEGAudioframe.h“


CMPEGAudioframe::CMPEGAudioframe(void)
{
memset(&m_MpegInfo?0?sizeof(m_MpegInfo));
}

CMPEGAudioframe::~CMPEGAudioframe(void)
{
}


int?CMPEGAudioframe::calDuration(unsigned?char?*?buf?int?bufSize)
{
unsigned?char?*?pDataHead; //音頻數據頭
DWORD?dwDataSize; //音頻數據長度

//查找數據幀的位置
MPEGAudioRet?ret?=?findMpegAudioframeFirst(buf?bufSize);
if?(ret.mErrCode?==?MPEG_AUDIO_OK)
{
pDataHead?=?buf?+?ret.mNextPos;
dwDataSize?=?bufSize?-?ret.mNextPos;
}
else
{
pDataHead?=?buf;
dwDataSize?=?bufSize;
}

//查找第一個幀的位置
ret?=?findMpegAudioframePos(pDataHead?dwDataSize?true);

return?ret.mErrCode?==?MPEG_AUDIO_OK???m_MpegInfo.mDuration?:?0;
}


MPEGAudioRet?CMPEGAudioframe::findMpegAudioframeFirst(unsigned?char?*?buf?int?bufSize)
{
ASSERT(buf?!=?NULL?&&?bufSize?>?0);

MPEGAudioRet?ret;
ret.mErrCode?=?MPEG_AUDIO_NEED_MORE;
ret.mNextPos?=?0;

//為了減少搜索ID3的時間,如果能確定搜索范圍,時間更少
int?seeklen?=?1000000;
if?(seeklen?>?bufSize)
{
seeklen?=?bufSize;
}

ID3V2?*?id3v2?=?(ID3V2?*)_memstr(buf?seeklen?“ID3“);

if?(id3v2?==?NULL)
{
ret.mErrCode?=?MPEG_AUDIO_ERR;
return?ret;
}
if?(id3v2->Ver?!=?2?&&?id3v2->Ver?!=?3?&&?id3v2->Ver?!=?4)
{
ret.mErrCode?=?MPEG_AUDIO_ERR;
return?ret;
}
if?(id3v2->Revision?!=?0)
{
ret.mErrCode?=?MPEG_AUDIO_ERR;
return?ret;
}

int?ID3V2_frame_size?=??(int)(id3v2->Size[0]?&?0x7F)?< (int)(id3v2->Size[1]?&?0x7F)?< (int)(id3v2->Size[2]?&?0x7F)?< (int)(id3v2->Size[3]?&?0x7F)?+?10;

ret.mErrCode?=?MPEG_AUDIO_OK;
ret.mNextPos?=?ID3V2_frame_size;
return?ret;
}

MPEGAudioRet?CMPEGAudioframe::findMpegAudioframePos(?unsigned?char?*?buf?int?bufSize?bool?firstframe?)
{
ASSERT(buf?!=?NULL);
ASSERT(bufSize?>?0);

m_dwMpegDataSize?=?bufSize;

MPEGAudioRet?ret;
ret.mErrCode?=?MPEG_AUDIO_NEED_MORE;
ret.mNextPos?=?0;

if?(buf?==?NULL?||?bufSize?<=?0)
{
ret.mErrCode?=?MPEG_AUDIO_ERR;
return?ret;
}

MPEGAudioframeInfo?*?pframeInfo?=?&m_MpegInfo;

int?loopSize?=?bufSize?-?1;
int?i?=?0;
for?(i?=?0;?i? {
//?幀同步標識:?1111?1111?111x?xxxxb
if?(buf[i]?==?0xff?&&?(buf[i+1]&0xe0)?==?0xe0)
{
memset(pframeInfo?0?sizeof(*pframeInfo));

ret.mErrCode?=?_parseMpegframeHdr(buf+i?bufSize-i?pframeInfo?firstframe);
if(?MPEG_AUDIO_OK?==?ret.mErrCode?||?MPEG_AUDIO_NEED_MORE?==?ret.mErrCode)
{
break;
}
}
else?if?(i?==?loopSize-1?&&?buf[i+1]?!=?0xff)
{
i++;
}
}

ret.mNextPos?=?i;
if?(i?>?0?&&?ret.mErrCode?!=?MPEG_AUDIO_OK)
{
memset(pframeInfo?0?sizeof(MPEGAudioframeInfo));
}

return?ret;
}


int?CMPEGAudioframe::_parseMpegframeHdr(?unsigned?char?*?hdrBuf?int?bufSize?MPEGAudioframeInfo?*?info?bool?firstframe?)
{
if(bufSize? {
return?MPEG_AUDIO_NEED_MORE;
}

FHEADER?*?pFrmHdr?=?(FHEADER?*)hdrBuf;

//

?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----

?????文件?????196608??2018-04-02?09:59??WavToMp3\Debug\WavToMp3.exe

?????文件????1318764??2018-04-02?09:59??WavToMp3\Debug\WavToMp3.ilk

?????文件????5270528??2018-04-02?09:59??WavToMp3\Debug\WavToMp3.pdb

?????文件???????7931??2013-02-05?18:37??WavToMp3\mpeg\BladeMP3EncDLL.h

?????文件??????50174??2012-10-15?11:03??WavToMp3\mpeg\lame.h

?????文件?????210432??2012-03-23?14:39??WavToMp3\mpeg\lame_enc.dll

?????文件??????14137??2015-08-27?12:53??WavToMp3\mpeg\MPEGAudioframe.cpp

?????文件???????6434??2015-08-11?15:18??WavToMp3\mpeg\MPEGAudioframe.h

?????文件?????????64??2015-08-31?19:40??WavToMp3\mpeg\vssver.scc

?????文件???????3440??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\cl.command.1.tlog

?????文件??????60946??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\CL.read.1.tlog

?????文件???????3070??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\CL.write.1.tlog

?????文件??????21985??2018-03-30?16:59??WavToMp3\WavToMp3\Debug\Lame_WavToMp3.obj

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link-cvtres.read.1.tlog

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link-cvtres.write.1.tlog

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.9828-cvtres.read.1.tlog

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.9828-cvtres.write.1.tlog

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.9828.read.1.tlog

?????文件??????????2??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.9828.write.1.tlog

?????文件???????1762??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.command.1.tlog

?????文件???????5204??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.read.1.tlog

?????文件???????1056??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\link.write.1.tlog

?????文件???????7931??2013-02-05?18:37??WavToMp3\WavToMp3\Debug\mpeg\BladeMP3EncDLL.h

?????文件??????50174??2012-10-15?11:03??WavToMp3\WavToMp3\Debug\mpeg\lame.h

?????文件?????210432??2012-03-23?14:39??WavToMp3\WavToMp3\Debug\mpeg\lame_enc.dll

?????文件??????14137??2015-08-27?12:53??WavToMp3\WavToMp3\Debug\mpeg\MPEGAudioframe.cpp

?????文件???????6434??2015-08-11?15:18??WavToMp3\WavToMp3\Debug\mpeg\MPEGAudioframe.h

?????文件?????????64??2015-08-31?19:40??WavToMp3\WavToMp3\Debug\mpeg\vssver.scc

?????文件??????24203??2018-03-30?16:50??WavToMp3\WavToMp3\Debug\MPEGAudioframe.obj

?????文件????????644??2018-04-02?09:59??WavToMp3\WavToMp3\Debug\mt.command.1.tlog

............此處省略60個文件信息

評論

共有 條評論