Hi all: I have a apinion about voice data, but I don't know whether it is correct or not. Please give me some comments. If we type "hciconfig hci0 voice" and it will appear this on my PC: [root@bluez root]# hciconfig hci0 voice hci0: Type: USB BD Address: 00:09:DD:xx:xx:xx ACL MTU: 192:8 SCO MTU: 64:8 Voice setting: 0x0060 (Default Condition) Input Coding: Linear Input Data Format: 2's complement Input Sample Size: 16 bit # of bits padding at MSB: 0 Air Coding Format: CVSD And my viewpoint is as below: 1. Input Coding : Linear --> quantification and frequency are a ratio of equality. 2. Input Data Format: 2's complement --> ???? I don't know what's mean. 3. Input Sample Size: 16 bit --> per sample is used 16 bit to indicate. 4. Air Coding Format: CVSD --> Voice is sampled by soundcard , then Baseband covert these data using CVSD codec and translate these data on air. As above, I give a conclusion: I can extract voice datas from SCO socket, and these data are coded by PCM (linear, 16 bit/per sample, sample rate = 8k). ex: outgoing voice data: soundcard sco socket Baseband | | | | 8k sample rate | | | ,16bit/sample | | voice --->|-------------------->|----------->|---->CVSD data | | | | | | incoming voice data: Baseband sco socket soundcard Application | | | | | linear PCM | | 8k sample rate | | ,16bit/sample | | 16 bit/sample | CVSD ---->|------------------->|---------->|------------------->|---->analogy voice | | | | | | | | As above , that are my concept, Is my concept correct? Please give me some comments. Thank you .