Ò׽ؽØÍ¼Èí¼þ¡¢µ¥Îļþ¡¢Ãâ°²×°¡¢´¿ÂÌÉ«¡¢½ö160KB

Linux»·¾³ÏÂÓÃcÓïÑÔдµÄ²¥·ÅwavÎļþµÄС³ÌÐò

http://blog.csdn.net/noah1987/archive/2008/10/21/3118934.aspx
±¾³ÌÐò¿ÉÒÔ¶ÁÈ¡.wavÎļþ£¬È»ºó½øÐв¥·Å¡£
ʹÓÃǰ£¬ÇëÈ·ÈÏÄúÊÇ·ñ°²×°ÒôƵÇý¶¯¡£
È·ÈÏ·½·¨£ºcat /etc/sndstat£¬Èç¹ûÏÔʾÎÞ´ËÉ豸£¬ÔòûÓа²×°Çý¶¯¡£
°²×°Çý¶¯ºÜ¼òµ¥£¬µ½oss.comÉÏÏÂÔØÒôƵÇý¶¯£¬È»ºó°´ÕÕÍøÉϵĽ̳̽øÐоͿÉÒÔÁË¡£
Ô´´úÂëÈçÏ£º
#include <unistd.h>
#include <fcntl.h>
#include <sys/types.h>
#include <sys/ioctl.h>
#include <stdlib.h>
#include <stdio.h>
#include <linux/soundcard.h>
/* ÏÂÃæµÄÈý¸ö²ÎÊýÊǸú¾ßÌåÎļþÏà¹ØµÄ£¬ÎļþʲôÑù£¬¾ÍÒªÉèÖóÉʲôÑù */
#define RATE 11025  
#define SIZE 16    
#define CHANNELS 1  // 1±íʾµ¥ÉùµÀ£¬2ΪÁ¢ÌåÉù
/* ................ */
unsigned 
char
 buf[RATE*SIZE/8]; //bufÀïÃæÕýºÃ·ÅÒ»ÃëÖÓµÄÒôƵ£¬ÏÂÃæµÄ¼ÆÊ±»¹ÒªÓÃ
int
 main()
{
    int
 fd;
    int
 wavfd; //wavÎļþµÄÃèÊö·û
    int
 arg;        
/* ..ioctl..... */
    int
 status;   
/* ........ */
                
/* ...... */
    fd = open(
"/dev/dsp"
, O_RDWR
);      
    if
 (fd < 0) {
        printf(
"open of /dev/dsp failed"
);
        exit(1);
}
    wavfd = open(
"12193767609.wav"
,O_RDONLY);
    if
 (wavfd < 0) {
        printf(
"open of wav failed"
);
       


Ïà¹ØÎĵµ£º

CÓïÑÔÊý×é


ÔÚ³ÌÐòÉè¼ÆÖУ¬ÎªÁË´¦Àí·½±ã£¬°Ñ¾ßÓÐÏàͬÀàÐ͵ÄÈô¸É±äÁ¿°´ÓÐÐòµÄÐÎʽ×éÖ¯ÆðÀ´¡£ÕâЩ°´ÐòÅÅÁеÄͬÀàÊý¾ÝÔªËØµÄ¼¯ºÏ³ÆÎªÊý×é¡£ÔÚ£ÃÓïÑÔÖУ¬Êý×éÊôÓÚ¹¹ÔìÊý¾ÝÀàÐÍ¡£Ò»¸öÊý×é¿ÉÒÔ·Ö½âΪ¶à¸öÊý×éÔªËØ£¬ÕâЩÊý×éÔªËØ¿ÉÒÔÊÇ»ù±¾Êý¾ÝÀàÐÍ»òÊǹ¹ÔìÀàÐÍ¡£Òò´Ë°´Êý×éÔªËØµÄÀàÐͲ»Í¬£¬Êý×éÓÖ¿É·ÖΪÊýÖµÊý×é¡¢×Ö·ûÊý×é¡¢Ö¸ÕëÊý×é¡¢½á¹ ......

CÓïÑÔº¯Êý£¨Ò»£©


ÔÚÇ°ÃæÒѾ­½éÉܹý£¬£ÃÔ´³ÌÐòÊÇÓɺ¯Êý×é³ÉµÄ¡£ËäÈ»ÔÚÇ°Ãæ¸÷ÕµijÌÐòÖдó¶¼Ö»ÓÐÒ»¸öÖ÷º¯Êýmain()£¬µ«ÊµÓóÌÐòÍùÍùÓɶà¸öº¯Êý×é³É¡£º¯ÊýÊÇ£ÃÔ´³ÌÐòµÄ»ù±¾Ä£¿é£¬Í¨¹ý¶Ôº¯ÊýÄ£¿éµÄµ÷ÓÃʵÏÖÌØ¶¨µÄ¹¦ÄÜ¡££ÃÓïÑÔÖеĺ¯ÊýÏ൱ÓÚÆäËü¸ß¼¶ÓïÑÔµÄ×Ó³ÌÐò¡££ÃÓïÑÔ²»½öÌṩÁ˼«Îª·á¸»µÄ¿âº¯Êý(ÈçTurbo C£¬MS C¶¼ÌṩÁËÈý°Ù¶à¸ö¿âº¯Êý)£¬» ......

CÓïÑÔÖ¸Õ루Èý£©

¡¾Àý10.21¡¿ÓÃÑ¡Ôñ·¨¶Ô10¸öÕûÊýÅÅÐò¡£
main()
{int *p,i,a[10]={3,7,9,11,0,6,7,5,4,2};
printf("The original array:\n");
for(i=0;i<10;i++)
   printf("%d,",a[i]);
printf("\n");
p=a;
sort(p,10);
for(p=a,i=0;i<10;i++)
{printf("%d ",*p);p++;}
printf("\n");
}
sort(int x[],int n)
......

ÉîÈëÀí½âextern "C"

Ò»¡¢´ÓCÓëC++±àÒëÁ¬½Ó·½Ê½ÉîÈëÀí½âextern "C"
<1>.CºÍC++¶Ôº¯ÊýµÄ´¦Àí·½Ê½ÊDz»Í¬µÄ.±»extern "C"ÐÞÊεıäÁ¿ºÍº¯ÊýÊǰ´ÕÕCÓïÑÔ·½Ê½±àÒëºÍÁ¬½ÓµÄ.extern "C"ÓÃÓÚʵÏÖC++ÓëC¼°ÆäËüÓïÑԵĻìºÏ±à³Ì¡£
<2>.δ¼Óextern “C”ÉùÃ÷ʱµÄ±àÒ뷽ʽ
Ê×ÏÈ¿´¿´C++ÖжÔÀàËÆCµÄº¯ÊýÊÇÔõÑù±àÒëµÄ¡£
×÷ΪһÖÖÃæÏò ......
© 2009 ej38.com All Rights Reserved. ¹ØÓÚE½¡ÍøÁªÏµÎÒÃÇ | Õ¾µãµØÍ¼ | ¸ÓICP±¸09004571ºÅ