Linux下音效卡程式設計(錄製音訊檔案)

2021-07-09 07:56:17 字數 1082 閱讀 2368

具體**如下:

音效卡錄音功能

#include

#include

#include

#include

#include

#include

#include

//錄音時間

#define length 3

//取樣頻率

#define rate 8000

//量化位數

#define size 16

//聲道數目

#define channels 2

//儲存錄音的音訊資料

unsigned char buf[length*rate*size*channels/8];

int main(void)

//以下設定音效卡引數

//設定取樣時的量化位數

arg=size;

status=ioctl(fd,sound_pcm_write_bits,&arg);

if(status==-1)

//設定取樣聲道數目

arg=channels;

status=ioctl(fd,sound_pcm_write_channels,&arg);

if(status==-1)

//設定取樣頻率

arg=rate;

status=ioctl(fd,sound_pcm_write_rate,&arg);

if(status==-1)

//一直錄音,直到按下「 control-c」停止

while(1)

printf("play ...:\n");

status=write(fd,buf,sizeof(buf));

if(status != sizeof(buf)) perror("wrote wrong number of bytes");

//在繼續錄音前等待回放結束

status=ioctl(fd,sound_pcm_sync,0);

if(status==-1) perror("cannot set sound_pcm_sync");

}return 0;

}

linux下的音訊裝置檔案程式設計

1.linux下的音訊裝置檔案 dev audio 與 dev dsp類似。使用的編碼方式為mu law。dev mixer 音效卡中混音器的軟體介面,用於將多個聲音頻號組合或進行疊加。對混音器的程式設計包括如何設定增益,以及如何在不同的音源之間進行切換。dev sequencer 用於提供對音效卡...

Linux音訊程式設計指南 二

四 應用框架在linux下進行音訊程式設計時,重點在於如何正確地操作音效卡驅動程式所提供的各種裝置檔案,由於涉及到的概念和因素比較多,所以遵循乙個通用的框架無疑將有助於簡化應用程式的設計。4.1 dsp程式設計 對音效卡進行程式設計時首先要做的是開啟與之對應的硬體裝置,這是借助於open系統呼叫來完...

Linux音訊程式設計指南(1)

什麼是音訊?取樣和量化。取樣就是每隔一定時間就讀一次聲音頻號的幅度,而量化則是將取樣得到的聲音頻號幅度轉換為數字值.1 取樣頻率 是指將模擬聲音波形進行數位化時,每秒鐘抽取聲波幅度樣本的次數。取樣頻率的選擇應該遵循奈奎斯特 harrynyquist 取樣理論 如果對某一模擬訊號進行取樣,則取樣後可還...