您的位置: 旅游網 > 爆料 >> 春節

    操作系統的聲音設備編程實例計劃

    發布時間:2021-10-27 05:33:21

    除了羊水之外還有一層絨毛膜、子宮壁及腹壁 對聲卡編程 只要我們不是進行諸如驅動設備開發之類的工作,對聲卡的編程和上面對揚聲器的編程沒有什么本質的區別。當你試圖來編寫諸如CD播放器、MP3播放器之類的復雜的程序時,你的工作是取獲得與CDROM控制、MP3解碼之類的信息,而讀寫系統設備的這一步在Linux下超互想象的簡單。例如,Linux下最簡單的播放wav的程序只有一行:cp $ /dev/audio。將它寫成一個shell文件,同樣是一個程序(shell 編程)。 我們首先需要知道一臺機器上是否有聲卡,一個檢查的辦法是檢查文件/dev/sndstat文件,如果打開此文件錯誤,并且錯誤號是ENODEV,則說明此機器沒有安裝聲卡。除此之外,試著去打開文件/dev/dsp也可以來檢查是否安裝了聲卡。 Linux下和聲卡相關的文件有許多,如采集數字樣本的/dev/dsp文件,針對混音器的/dev/mixer文件以及用于音序器的/dev/sequencer等。文件/dev/audio是一個基于兼容性考慮的聲音設備文件,它實際是到上述數字設備的一個映射,它最大的特色或許是對諸如wav這類文件格式的直接支持。我們下面的例子即使用了此設備文件實現了一個簡單的錄音機:我們從聲卡設備(當然要用麥克風)讀取音頻數據,并將它存放到文件v中去。要播放這個wav文件,只要如前面所述,使用命令cp v /dev/audio即可,當然你也可以用Linux下其他的多媒體軟件來播放這個文件。 下面即是完整的程序清單: /* 此文件中定義了下面所有形如SND_的變量*/#include #include #include #include #include main(){/* id:讀取音頻文件描述符;fd:寫入的文件描述符。i,j為臨時變量*/int id,fd,i,j;/* 存儲音頻數據的緩沖區,可以調整*/char testbuf[4096];/* 打開聲卡設備,失敗則退出*/if ( ( id = open ( \"/dev/audio\", O_RDWR ) ) 0 ) {fprintf (stderr, \" Can\'t open sound device!\\n\");exit ( -1 ) ;}/* 打開輸出文件,失敗則退出*/if ( ( fd = open (\"v\",O_RDWR))0){fprintf ( stderr, \" Can\'t open output file!\\n\");exit (-1 );}/* 設置適當的參數,使得聲音設備工作正常*//* 詳細情況請參考Linux關于聲卡編程的文檔*/i=0;ioctl (id,SNDCTL_DSP_RESET,(char *)i) ;ioctl (id,SNDCTL_DSP_SYNC,(char *)i);i=1;ioctl (id,SNDCTL_DSP_NONBLOCK,(char *)i);i=8000;ioctl (id,SNDCTL_DSP_SPEED,(char *)i);i=1;ioctl (id,SNDCTL_DSP_CHANNELS,(char *)i);i=8;ioctl (id,SNDCTL_DSP_SETFMT,(char *)i);i=3;ioctl (id,SNDCTL_DSP_SETTRIGGER,(char *)i);i=3;ioctl (id,SNDCTL_DSP_SETFRAGMENT,(char *)i);i=1;ioctl (id,SNDCTL_DSP_PROFILE,(char *)i);/* 讀取一定數量的音頻數據,并將之寫到輸出文件中去*/for ( j=0; j10;){i=read(id,testbuf,4096);if(i0){write(fd,filebuf,i);j++;}}/* 關閉輸入、輸出文件*/close(fd);close(id);}

    衢州白癜風最好醫院
    武漢男科
    咸陽治療早泄陽痿醫院哪家好
    猜你會喜歡的
    猜你會喜歡的
    主站蜘蛛池模板: 色综合色天天久久婷婷基地| 99热在线精品国产观看| 欧美丰满白嫩bbwbbw| 免费高清日本中文| 黄瓜视频入口在线播放| 天天摸天天做天天爽天天弄| 久久亚洲av无码精品色午夜| 欧美片免费观看网址| 午夜精品一区二区三区在线观看 | sihu免费观看在线高清| 日本精品www色| 亚洲国产精品综合福利专区| 真实处破女系列全过程| 国产一在线精品一区在线观看| 日本xxxxx在线观看| 国产黄大片在线观| 《波多野结衣系列mkmp-305》| 日本一区二区三区欧美在线观看| 亚洲av永久无码精品三区在线4 | 男人桶女人视频30分钟看看吧| 国产三级精品三级在专区| 日产精品一二三四区国产| 在线观看免费国产视频| 一道本免费视频| 日本午夜精品一区二区三区电影| 亚洲乱色伦图片区小说| 波多野结衣电影免费在线观看| 午夜片在线观看| 草草影院私人免费入口| 国产成人综合日韩精品无| 51视频精品全部免费最新| 天天爱添天天爱添天天爱添| 中文字幕人妻无码一夲道| 日韩一区二区在线免费观看| 亚洲人成精品久久久久| 正在播放露脸一区| 免费久久人人爽人人爽AV| 翁熄性放纵交换高清视频| 国产呻吟久久久久久久92| 性短视频在线观看免费不卡流畅| 国内自拍成人网在线视频|