linux ¼Òô·ÅÒô³ÌÐò£¨´ÓÍøÉÏÕÒÀ´µÄ£©
/*
Name: SndKit.c
Copyright: GPLv2
Author: rockins(ybc2084@163.com)
Date: 15-10-06 18:22
Description: implent raw sound record/play
run: ./SndKit [-h] [-d device] [-c channel] [-b bits] [-f hz] [-l len] <-r|-p file>
e.g.:
./SndKit -h show help information
./SndKit -r record.wav record audio from microphone(/dev/dsp)
./SndKit -d /dev/dsp -p record.wav playback record.wav via /dev/dsp
./SndKit -b 8 -f 22 -r reacord.wav record audio in 8 bit & 22k hz
./SndKit -d /dev/dsp -c 2 -r record.wav record audio in /dev/dsp and stereo
./SndKit -r -l 40 record.wav record 40k audio data
*/
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <fcntl.h>
#include <errno.h>
#include <sys/ioctl.h>
#include <linux/soundcard.h> /*for OSS style sound programing */
#define TRUE 1
#define FALSE 0
#define FMT8BITS AFMT_U8 /*unsigned 8 bits(for almost PC) */
#define FMT16BITS AFMT_S16_LE /*signed 16 bits,little endian */
#define FMT8K 8000 /*default sampling rate */
#define FMT11K 11025 /*11,22,44,48 are three pop rate */
#define FMT22K 22050
#define FMT44K 44100
#define FMT48K 48000
#define MONO 1
#define STEREO 2
#define ACT_RECORD 0
#define ACT_PLAY 1
#define DFT_SND_DEV "/dev/dsp"
#define DFT_SND_FMT FMT8BITS
#define DFT_SND_SPD FMT8K
#define DFT_SND_CHN MONO
#define DFT_LEN 1024 /*default record length:40k */
#define BUFF_SIZE 512 /*buffer size:512 Bytes */
/************** function prototype ********************/
v
Ïà¹ØÎĵµ£º
£¨L2CAPÐÒé¼ò½é£¬L2CAPÔÚBlueZÖеÄʵÏÖÒÔ¼°L2CAP±à³Ì½Ó¿Ú£©
Ò»£ºL2CAPÐÒé¼ò½é£º
Logical Link Control and Adaptation Protocol(L2CAP)
Âß¼Á¬½Ó¿ØÖƺÍÊÊÅäÐÒé (L2CAP) ΪÉϲãÐÒéÌá¹©ÃæÏòÁ¬½ÓºÍÎÞÁ¬½ÓµÄÊý¾Ý·þÎñ£¬²¢Ìṩ¶àÐÒ鹦ÄܺͷָîÖØ×é²Ù×÷¡£L2CAP ³äÐíÉϲãÐÒéºÍÓ¦ÓÃÈí¼þ´«ÊäºÍ½ÓÊÕ×î´ó³¤¶ÈΪ 64K µÄ L2CAP Ê ......
Ò»¡¢°²×°
´´½¨°²×°Ä¿Â¼£¬ÔÚ/usr/local/javaϽ¨Á¢°²×°Â·¾¶£¬²¢½«Îļþ¿¼µ½¸Ã·¾¶Ï£º
# mkdir /usr/local/java
1¡¢jdk-6u11-linux-i586.bin
Õâ¸öÊÇ×Ô½âѹµÄÎļþ£¬ÔÚlinuxÉϰ²×°ÈçÏ£º
# chmod 755 jdk-6u11-linux-i586.bin
# ./jdk-6u11-linux-i586.bin
ÔÚ°´ÌáʾÊäÈëyesºó£¬jdk±»½âѹ¡£
......
ÏÖ´úLinux²ÉÓÃELF×öΪÆä¿ÉÁ¬½ÓºÍ¿ÉÖ´ÐÐÎļþµÄ¸ñʽ£¬Òò´ËELF¸ñʽҲÏòÎÒÃÇ͸³öÁËÒ»µãLinuxºËÄÚµÄÇé¾°£¬¾ÍÏñϷ̨άĻÁôϵÄÒ»ÌõδÀÑϵķ졣PCÊÀ½ç32ÈÔÊÇÖ÷Á÷£¬µ«64λµÄ½Å²½È´ÒÑÈç´ËµÄ±Æ½ü¡£±¾ÎÄ×ÅÖØ½²Êö32λELFµÄͬʱ¸½´øÁË64λµÄÐÅÏ¢£¬ÕâÁ½ÖÖ¸ñʽÈç´ËÀ×ͬ£¬ÒÔÖÂÓÚ³õ´Î½Ó´¥ELFµÄ¶ÁÕß²»±Ø¼æ¹Ë×óÓÒ¡£Èç¹ûÄã¶ÔWindows±È½ÏÊ ......
Å£½ò×ÖµäÖжÔ"kernel"Ò»´ÊµÄ¶¨ÒåÊÇ£º"½ÏÈíµÄ¡¢Í¨³£ÊÇÒ»¸ö¼á¹û¿ÉʳÓõIJ¿·Ö¡£"µ±È»»¹ÓеڶþÖÖ¶¨Ò壺"ij¸ö¶«Î÷ºËÐÄ»òÕß×îÖØÒªµÄ²¿·Ö¡£"¶ÔLinuxÀ´Ëµ£¬ËüµÄKernelÎÞÒÉÊôÓÚµÚ¶þÖÖ½âÊÍ¡£ÈÃÎÒÃÇÀ´¿´¿´Õâ¸öÖØÒªµÄ¶«Î÷ÊÇÈçºÎ¹¤×÷µÄ£¬ÏÈ´ÓÒ»µãÀíÂÛ˵Æð¡£
¹ãÒ嵨À´Ëµkernel¾ÍÊÇÒ»¸öÈí¼þ£¬ËüÔÚÓ²¼þºÍÔËÐ ......