青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品

asm, c, c++ are my all
-- Core In Computer
posts - 139,  comments - 123,  trackbacks - 0

[轉(zhuǎn)貼]音頻錄入

一、數(shù)字音頻基礎(chǔ)知識(shí)
Fourier級(jí)數(shù):
任何周期的波形可以分解成多個(gè)正弦波,這些正弦波的頻率都是整數(shù)倍。級(jí)數(shù)中其他正線波的頻率是基礎(chǔ)頻率的整數(shù)倍。基礎(chǔ)頻率稱為一級(jí)諧波。

PCM:
pulse code modulation,脈沖編碼調(diào)制,即對(duì)波形按照固定周期頻率采樣。為了保證采樣后數(shù)據(jù)質(zhì)量,采樣頻率必須是樣本聲音最高頻率的兩倍,這就是Nyquist頻率。
樣本大小:采樣后用于存儲(chǔ)振幅級(jí)的位數(shù),實(shí)際就是脈沖編碼的階梯數(shù),位數(shù)越大表明精度越高,這一點(diǎn)學(xué)過數(shù)字邏輯電路的應(yīng)該清楚。

聲音強(qiáng)度:
波形振幅的平方。兩個(gè)聲音強(qiáng)度上的差常以分貝(db)為單位來度量,

計(jì)算公式如下:
20*log(A1/A2)分貝。A1,A2為兩個(gè)聲音的振幅。如果采樣大小為8位,則采樣的動(dòng)態(tài)范圍為20*log(256)分貝=48db。如果樣本大小為16位,則采樣動(dòng)態(tài)范圍為20*log(65536)大約是96分貝,接近了人聽覺極限和痛苦極限,是再線音樂的理想范圍。windows同時(shí)支持8位和16位的采樣大小。

二、相關(guān)API函數(shù),結(jié)構(gòu),消息
對(duì)于錄音設(shè)備來說,windows 提供了一組wave***的函數(shù),比較重要的有以下幾個(gè):

打開錄音設(shè)備函數(shù)
MMRESULT waveInOpen(
LPHWAVEIN phwi, //輸入設(shè)備句柄
UINT uDeviceID, //輸入設(shè)備ID
LPWAVEFORMATEX pwfx, //錄音格式指針
DWORD dwCallback, //處理MM_WIM_***消息的回調(diào)函數(shù)或窗口句柄,線程ID
DWORD dwCallbackInstance,
DWORD fdwOpen //處理消息方式的符號(hào)位
);
為錄音設(shè)備準(zhǔn)備緩存函數(shù)
MMRESULT waveInPrepareHeader( HWAVEIN hwi, LPWAVEHDR pwh, UINT bwh );
給輸入設(shè)備增加一個(gè)緩存
MMRESULT waveInAddBuffer( HWAVEIN hwi, LPWAVEHDR pwh, UINT cbwh );
開始錄音
MMRESULT waveInStart( HWAVEIN hwi );
清除緩存
MMRESULT waveInUnprepareHeader( HWAVEIN hwi,LPWAVEHDR pwh, UINT cbwh);
停止錄音
MMRESULT waveInReset( HWAVEIN hwi );
關(guān)閉錄音設(shè)備
MMRESULT waveInClose( HWAVEIN hwi );
Wave_audio數(shù)據(jù)格式
typedef struct {
WORD wFormatTag; //數(shù)據(jù)格式,一般為WAVE_FORMAT_PCM即脈沖編碼
WORD nChannels; //聲道
DWORD nSamplesPerSec; //采樣頻率
DWORD nAvgBytesPerSec; //每秒數(shù)據(jù)量
WORD nBlockAlign;
WORD wBitsPerSample;//樣本大小
WORD cbSize;
} WAVEFORMATEX;
waveform-audio 緩存格式 
typedef struct {
LPSTR lpData; //內(nèi)存指針
DWORD dwBufferLength;//長度
DWORD dwBytesRecorded; //已錄音的字節(jié)長度
DWORD dwUser;
DWORD dwFlags;
DWORD dwLoops; //循環(huán)次數(shù)
struct wavehdr_tag * lpNext;
DWORD reserved;
} WAVEHDR;
相關(guān)消息 
MM_WIM_OPEN:打開設(shè)備時(shí)消息,在此期間我們可以進(jìn)行一些初始化工作
MM_WIM_DATA:當(dāng)緩存已滿或者停止錄音時(shí)的消息,處理這個(gè)消息可以對(duì)緩存進(jìn)行重新分配,實(shí)現(xiàn)不限長度錄音
MM_WIM_CLOSE:關(guān)閉錄音設(shè)備時(shí)的消息。
相對(duì)于錄音來說,回放就簡單的多了,用到的函數(shù)主要有以下幾個(gè):
打開回放設(shè)備 
MMRESULT waveOutOpen(LPHWAVEOUT phwo, UINT uDeviceID, LPWAVEFORMATEX pwfx, DWORD dwCallback, DWORD dwCallbackInstance, DWORD fdwOpen );
為回放設(shè)備準(zhǔn)備內(nèi)存塊 
MMRESULT waveOutPrepareHeader(HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh );

寫數(shù)據(jù)(放音) 
MMRESULT waveOutWrite(HWAVEOUT hwo, LPWAVEHDR pwh, UINT cbwh );
相應(yīng)的也有三個(gè)消息,用法跟錄音的類似:

三、程序設(shè)計(jì)

一個(gè)錄音程序的簡單流程: 打開錄音設(shè)備waveInOpen===>準(zhǔn)備wave數(shù)據(jù)頭waveInPrepareHeader===>
準(zhǔn)備數(shù)據(jù)塊waveInAddBuffer===>開始錄音waveInStart===>停止錄音(waveInReset) ===>
關(guān)閉錄音設(shè)備(waveInClose)
當(dāng)開始錄音后當(dāng)buffer已滿時(shí),將收到MM_WIM_DATA消息,處理該消息可以保存已錄好數(shù)據(jù)。

回放程序比這個(gè)要簡單的多: 打開回放設(shè)備waveOutOpen===>準(zhǔn)備wave數(shù)據(jù)頭waveOutPrepareHeader===>寫wave數(shù)據(jù)waveOutWrite===>
停止放音(waveOutRest) ===>關(guān)閉回放設(shè)備(waveOutClose)
如何處理MM消息: MSDN告訴我們主要有 CALLBACK_FUNCTION、CALL_BACKTHREAD、CALLBACK_WINDOW 三種方式,常用的是
Thread,window方式。
線程模式
waveInOpen(&hWaveIn,WAVE_MAPPER,&waveform,m_ThreadID,NULL,CALLBACK_THREAD),我們可以繼承MFC的CwinThread類,只要相應(yīng)的處理線程消息即可。
MFC線程消息的宏為:

ON_THREAD_MESSAGE,
可以這樣添加消息映射: ON_THREAD_MESSAGE(MM_WIM_CLOSE, OnMM_WIM_CLOSE)
窗口模式
類似于線程模式,參見源程序即可

posted on 2006-06-15 06:57 Jerry Cat 閱讀(1190) 評(píng)論(0)  編輯 收藏 引用

只有注冊(cè)用戶登錄后才能發(fā)表評(píng)論。
網(wǎng)站導(dǎo)航: 博客園   IT新聞   BlogJava   博問   Chat2DB   管理



<2025年11月>
2627282930311
2345678
9101112131415
16171819202122
23242526272829
30123456

常用鏈接

留言簿(7)

隨筆檔案

最新隨筆

搜索

  •  

最新評(píng)論

閱讀排行榜

評(píng)論排行榜

青青草原综合久久大伊人导航_色综合久久天天综合_日日噜噜夜夜狠狠久久丁香五月_热久久这里只有精品
  • <ins id="pjuwb"></ins>
    <blockquote id="pjuwb"><pre id="pjuwb"></pre></blockquote>
    <noscript id="pjuwb"></noscript>
          <sup id="pjuwb"><pre id="pjuwb"></pre></sup>
            <dd id="pjuwb"></dd>
            <abbr id="pjuwb"></abbr>
            伊人伊人伊人久久| 国产精品午夜在线观看| 欧美日韩国产片| 在线不卡中文字幕| 久久只精品国产| 99精品视频一区| 欧美日韩国产色综合一二三四| 欧美成人四级电影| 亚洲精品午夜精品| 久久夜色精品亚洲噜噜国产mv| 欧美一区二区精品在线| 欧美新色视频| 久久精品91久久久久久再现| 久久激情视频| 亚洲综合三区| 午夜欧美精品| 欧美日韩在线亚洲一区蜜芽| 亚洲欧美日韩网| 一本色道久久| 亚洲日本电影在线| 欧美一区二区三区在线观看视频 | 免费的成人av| 欧美www视频在线观看| 鲁大师影院一区二区三区| 国产日韩欧美高清| 男女精品网站| 欧美日韩播放| 久久久久国产一区二区| 久久综合九色欧美综合狠狠| 亚洲一区免费视频| 久久久亚洲成人| 欧美亚洲一区二区在线| 久久精品综合| 欧美激情亚洲综合一区| 久久一二三四| 欧美日韩免费| 亚洲国产成人精品女人久久久| 欧美调教视频| 欧美福利影院| 国产日韩欧美综合在线| 亚洲精品综合| 亚洲成人直播| 久久亚洲二区| 久久精品免费| 欧美黄网免费在线观看| 老司机67194精品线观看| 久久久99爱| 亚洲国产老妈| 欧美在线日韩在线| 亚洲永久在线观看| 欧美黄色aa电影| 欧美大片国产精品| 国产一区二区日韩| 久久激情视频免费观看| 亚洲欧美日韩在线高清直播| 欧美日韩一区二区三区四区在线观看| 久久婷婷人人澡人人喊人人爽| 欧美日韩一区二区三区在线| 国产精品久久久久国产精品日日| 亚洲日本一区二区三区| 日韩亚洲欧美成人| 亚洲第一主播视频| 欧美视频精品在线| 欧美视频中文字幕| 欧美国产丝袜视频| 精品不卡视频| 欧美成人高清视频| 香港久久久电影| 欧美黄色aa电影| 亚洲二区视频在线| 亚洲日本电影在线| 久久婷婷久久| 欧美亚洲视频| 国产精品毛片大码女人| 中文在线一区| 亚洲午夜一级| 欧美三级电影网| 亚洲美女视频网| 亚洲一区二区成人| 国产精品99免费看| 久久国产88| 久久午夜精品| 伊人久久综合| 蜜臀av在线播放一区二区三区| 亚洲三级免费观看| 国产精品福利久久久| 这里只有精品视频在线| 亚洲欧洲综合另类在线| 欧美福利视频在线| 亚洲国产欧美精品| 一区二区激情小说| 国产精品欧美日韩一区| 久久久久久亚洲精品不卡4k岛国| 国产亚洲欧美一级| 久久夜色精品国产欧美乱| 欧美v日韩v国产v| 亚洲特级毛片| 国产乱码精品一区二区三区忘忧草 | 国产精品美女久久久久久久| 99国产成+人+综合+亚洲欧美| 一区二区免费在线播放| 欧美性生交xxxxx久久久| 亚洲欧美经典视频| 久久亚洲精品伦理| 狠狠色综合网| 欧美成人tv| 99精品视频免费观看视频| 欧美一区二区女人| 1000部精品久久久久久久久| 欧美福利影院| 性色av一区二区三区| 欧美成人四级电影| 亚久久调教视频| 亚洲国产精品久久久久婷婷884| 欧美韩国日本综合| 亚洲欧美日韩一区在线观看| 欧美电影免费观看大全| 亚洲午夜日本在线观看| 在线看日韩av| 国产精品乱码一区二区三区| 欧美另类69精品久久久久9999| 亚洲欧美在线免费| 亚洲全部视频| 免费在线观看日韩欧美| 99国产精品私拍| 欧美国产激情| 久久这里有精品视频| 欧美午夜视频在线观看| 国产精品99久久久久久www| 亚洲一区二区三区国产| 在线成人黄色| 一本色道久久精品| 亚洲国产精品黑人久久久| 欧美在线黄色| 欧美亚洲日本国产| 亚洲激情一区二区三区| 亚洲国产精品欧美一二99| 国产精品一区二区久久国产| 久久久亚洲午夜电影| 亚洲午夜成aⅴ人片| 亚洲国产第一页| 久久尤物电影视频在线观看| 久久精品麻豆| 亚洲一区二区三区欧美| 99精品视频一区| 亚洲国产精品电影| 欧美亚男人的天堂| 欧美国产极速在线| 欧美成年人在线观看| 久久久青草青青国产亚洲免观| 亚洲欧美日韩中文播放| 一本色道久久99精品综合| 在线日韩精品视频| 国产欧美日韩中文字幕在线| 老司机免费视频一区二区| 久久久综合香蕉尹人综合网| 久久综合久久综合九色| 欧美在线精品一区| 国产一区二区三区av电影 | 欧美激情片在线观看| 亚洲激情电影在线| 欧美激情视频在线播放| 亚洲综合二区| 亚洲天天影视| 在线看欧美视频| 亚洲久久一区| 欧美亚洲第一页| 欧美三级日本三级少妇99| 国产精品乱码一区二区三区| 欧美日韩一级大片网址| 国产精品日韩久久久| 国产欧美日韩视频| 影音先锋日韩资源| 一区精品在线| 国产精品人人做人人爽| 欧美色123| 国产精品视频成人| 国产精品手机在线| 国产一区二区三区在线观看网站| 国产午夜亚洲精品羞羞网站| 国产精品jvid在线观看蜜臀| 欧美性感一类影片在线播放| 欧美网站在线观看| 国产欧美日韩三级| 在线免费观看欧美| 亚洲精品一区二| 亚洲国产精品一区二区www在线| 亚洲国产成人精品久久| 亚洲精品日韩在线| 麻豆亚洲精品| 亚洲日本成人| 亚洲国语精品自产拍在线观看| 99精品视频网| 亚洲一区二区在线看| 久久久久久九九九九| 免费在线观看日韩欧美| 中文在线资源观看网站视频免费不卡 | 欧美久久一区| 国产综合色一区二区三区| 在线观看91精品国产入口|