Òѽâ¾ö£ºLinuxÖÐÓÃsocketʵÏÖÊÓÆµ¡¢ÒôƵµÄͬ²½´«Êä
Òѽâ¾ö£ºLinuxÖÐÓÃsocketʵÏÖÊÓÆµ¡¢ÒôƵµÄͬ²½´«Êä
Posted on ÐÇÆÚËÄ, 4ÔÂ 23rd, 2009 at 1:55 ÉÏÎç
Ô´ÎÄÀ´×Ôhttp://www.isongzi.com/2009/04/23/Òѽâ¾ö£ºlinuxÏÂÓÃsocketʵÏÖÊÓÆµ¡¢ÒôƵµÄͬ²½´«Êä/
ÔÚ֮ǰµÄһƪÎÄÕÂÀïÒѾÌáµ½¹ýÊÓÆµ¡¢ÉùÒôµÄͬ²½´«ÊäÎÊÌ⣬µ±Ê±ÏëÁ˼¸¸ö·½°¸£¬µ±È»¶¼ÊǺܲ»³ÉÊìµÄÏë·¨¡£ÓÐЩÊÂÇéÖ»ÓÐ×öÁ˲ÅÖªµÀµ½µ×Ðв»ÐеÃͨ£¬ÓÐʱºòʵ¼ÊÇé¿ö±ÈÏëÏóµÃÒª¼òµ¥¡£
1¡¢´´½¨Á½¸öÏß³Ì-ÊÓÆµÏ̡߳¢ÒôƵÏ̡߳£
¹ØÓÚÊÓÆµ²¿·ÖµÄʵÏֲο¼ÕâÀÒôƵ²¿·ÖµÄʵÏֲο¼ÕâÀï¡£ÆäÖУ¬ÊÓÆµÊµÏÖµ¥Ïò´«Ê䣬ÒôƵʵÏÖË«Ïò´«Êä¡£Á½¸öÏß³ÌÖ®¼ä²¢Ã»ÓÐ×öÈκÎÀàËÆÓÚ“ÐźÅÁ¿“µÄͬ²½´ëÊ©¡£ÒòΪֻҪ±£Ö¤ÊÓÆµºÍÒôƵÊǔͬʱ“·¢ËÍ£¬ÔÚ½ÓÊն˾ͿÉÒÔ”¼¸ºõ“ͬʱÏÔʾºÍ²¥·Å¡£ÒòΪÊÇÔÚ¾ÖÓòÍøÖд«Ê䣬ËÙ¶ÈÓб£Ö¤£¬ÔÚÒªÇó²»ÊǺܿÁ¿ÌµÄÇé¿öÏ£¬Í¬²½ÊÇ¿ÉÒÔÂú×ãµÄ¡£¶øÇÒ£¬ÊÂʵҲ֤Ã÷ÁË£¬ÕâÖÖºÜÆÓËØµÄ·½·¨ÊÇÐеÃͨµÄ¡£
/*creat video and audio thread*/
pthread_create(&enc_tid,NULL,(void *)video_send, (void *)&arg);
//ÊÓÆµµÄÏêϸ½éÉܲο´ÕâÀï
pthread_create(&audio_tid,NULL,(void *)audio_encdec,(void *)&sockfd_audio);
//ÉùÒôµÄÏêϸ½éÉܲο´ÕâÀï
2¡¢¼ÈȻҪÓÃÁ½¸öÏß³ÌÀ´ÊµÏÖ´«Ê䣬һ¸öºÜ×ÔÈ»µÄÎÊÌâ¾ÍÊÇ£ºÊÓÆµÁ÷ºÍÒôƵÁ÷ÊÇÈçºÎ´¦ÀíµÄ£¿´ð°¸ÊÇ£º½¨Á¢ÓÃÁ½Ìõ¶ÀÁ¢µÄÁ÷£¬Ò»Ìõ´«ÊäÊÓÆµ£¬Ò»Ìõ´«ÊäÉùÒô¡£ÎÒÃÇÖªµÀ£¬socketÔÚ·þÎñÆ÷¶Ë´´½¨Ò»¸ösockfd_serverÖ®ºó£¬Õâ¸ösockfd_server¿ÉÒÔÒ»Ö±¼àÌýÊÇ·ñÓÐÁ¬½ÓÇëÇó¡£Ò²¾ÍÊÇ˵£¬ÎÒÃÇ¿ÉÒÔÔÚ·þÎñÆ÷¶Ë´´½¨Ò»¸öserver_fd£¬È»ºóÁ¬½Ó¿Í»§¶ËµÄÁ½¸öÁ¬½ÓÇëÇó-ÊÓÆµ¡¢ÒôƵ¡£
»¹ÊÇ´úÂë±íʾ¸üÖ±¹Û£º
·¢ËͶˣº£¨×÷Ϊ·þÎñÆ÷¶Ë£¬ºÍÉϴαÈ×öÁ˵÷»»£©
//socketÃèÊö·û
#define port 8000
int sockfd_server;
int sockfd_video;
int sockfd_audio;
//server_initº¯ÊýÒ²¾ÍÊÇÕâÀïµÄrecv_init£¬Ö»ÊÇ»»Á˸öÃû×Ö¡£
sockfd_video=server_init(&sockfd_server,port);
//sockfd_server¼ÌÐø¼àÌýÏÂÒ»¸öÇëÇó¡£
sockfd_audio=accept(sockfd_server,(struct sockaddr *)NULL,NULL);
½ÓÊÕ¶Ë£º£¨×÷Ϊ¿Í»§¶Ë£¬Í¬Ñù×öÁ˵÷»»£©
#define port 8000
int err;
int sockfd_video;
int sockfd_audio;
const char *host_addr=”192.168.1.110″;
/*video socket init */
err=client_init(&sockfd_video,host_addr,port);
if(err==-1){
printf(”socket_video init failed!\
Ïà¹ØÎĵµ£º
Service Discovery Protocol(SDP)ÌṩһÖÖÄÜÁ¦£¬ÈÃÓ¦ÓóÌÐòÓз½·¨·¢ÏÖÄÄÖÖ·þÎñ¿ÉÓÃÒÔ¼°ÕâÖÖ·þÎñµÄÌØÐÔ¡£
·þÎñ·¢ÏÖÐÒé(SDP»òBluetooth SDP)ÔÚÀ¶ÑÀÐÒéÕ»ÖжÔÀ¶ÑÀ»·¾³ÖеÄÓ¦ÓóÌÐòÓÐÌØÊâµÄº¬Ò⣬·¢ÏÖÄĸö·þÎñÊÇ¿ÉÓõĺÍÈ·¶¨ÕâЩ¿ÉÓ÷þÎñµÄÌØÕ÷¡£SDP¶¨ÒåÁËbluetooth client·¢ÏÖ¿ÉÓÃbluetooth server·þÎñºÍËüÃǵÄÌØÕ÷µÄ·½·¨¡£ ......
ÿ¸öÖжÏÏòÁ¿¶¼ÓÐ×Ô¼ºµÄirq_desc_tÃèÊö·û£¬ËùÓеÄÕâЩÃèÊö·û×éÖ¯ÔÚÒ»ÆðÐγÉirq_descÊý×é¡£
typedef struct irq_desc {
hw_irq_controller *handler;Ö¸Ïòpic¶ÔÏó£¨hw_irq_controllerÃèÊö·û£©£¬·þÎñÓÚirqÏß
void *handler_data;Ö¸ ......
ÐÞ¸Ä linux ϵͳ/ect/profile Îļþ
ÔÚ×îºóÃæ¼Ó
export LC_ALL="zh_CN.GB18030"
ÐÞ¸Ä /etc/sysconfig/i18nÎļþ
LANG="zh_CN.GB18030"
LANGUAGE="zh_CN.GB18030:zh_CN.GB2312:zh_CN"
SUPPORTED="zh_CN.GB18030:zh_CN:zh:en_US.UTF-8:en_US:en"
SYSFONT="lat0-sun16"
SYSFONTACM="iso01"
ÕâÑù¾Í¿ÉÒÔ½â¾ölinuxÏÂÖÐÎÄ ......
Shell: bash¡£Ëü½áºÏÁË csh ºÍ ksh µÄÓŵ㣬²¢ÇÒÓÐ readline ¹¦ÄÜ£¬Äã¿ÉÒÔËæÒâ°ó¶¨×Ô¼ºµÄ¼üÅÌ¡£
±à¼Æ÷£º VIM, Emacs¡£
³ÌÐò¿ª·¢£º GCC, make, ld, Scheme48, j2sdk, Perl, Python, Tcl/Tk ...
ÂÛÎÄ£¬»ÃµÆ¹¤¾ß£ºLaTeX, ConTeXt
»æÍ¼¹¤¾ß£ºMetaPost¡£Õâ¸öÓïÑÔ̫ǿÁË£¬ÒÔÖÁÓÚÎÒÖ»ÓÃËüÁË¡£Äã²»ÊìϤµÄ»°¿ÉÒÔÓÃxfig,dia À´ ......
Today is the last day in 2009, I have no idea what should I do but just want to pray that my family, relatives and bosom friends would have a sweet life in the next year. Linux is a 2nd OS in my life, there are always something new can make me feel awesome, so I think that with continuou ......