?? intercom.c
字號:
#include <sys/types.h>#include <stdio.h>#include <stdlib.h>#include <strings.h>#include <sys/ioctl.h>#include <unistd.h>#include <fcntl.h>#include "ixjuser.h"int main(int argc, char *argv[]){ int ixj1,ixj2; int b1, b2, codec; char pname1[80], pname2[80]; sprintf(pname1, "/dev/ixj%s", argv[1]); sprintf(pname2, "/dev/ixj%s", argv[2]); codec = atoi(argv[3]); ixj1 = open(pname1, O_RDWR); ixj2 = open(pname2, O_RDWR); b1 = atoi(argv[1]); b2 = atoi(argv[2]); if(ixj1 <= 0) { printf("Open failed %s\n", pname1); exit(0); } if(ixj2 <= 0) { printf("Open failed %s\n", pname2); exit(0); } if(!ioctl(ixj1, IXJCTL_RING)) { exit(0); } if(!ioctl(ixj2, IXJCTL_RING)) { exit(0); } ioctl(ixj1, IXJCTL_REC_CODEC, codec); ioctl(ixj1, IXJCTL_PLAY_CODEC, codec); ioctl(ixj2, IXJCTL_REC_CODEC, codec); ioctl(ixj2, IXJCTL_PLAY_CODEC, codec); if(!ioctl(ixj1, IXJCTL_INTERCOM_START, b2)) { printf("Intercom mode on %d to %d\n", b1, b2); while(ioctl(ixj1, IXJCTL_HOOKSTATE) && ioctl(ixj2, IXJCTL_HOOKSTATE)){}// getchar(); ioctl(ixj1, IXJCTL_INTERCOM_STOP, b2); printf("Intercom mode off\n"); } else { printf("Intercom Failure\n"); } close(ixj1); close(ixj2);}
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -