Author: jpuyy

  • 在python中使用syslog

    在开始记录前,调用openlog()函数初始化syslog

    openlog([ident[, logopt[, facility]]])

    ident标识字符串

    logopt代表选项

    现在初始化之后

    syslog([priority], message)

    message是想记录的简单字符串。priority表明这条信息的重要性。它被syslog配置文件用来确定对一个给定的信息该如何处理。

    http://docs.python.org/library/syslog.html

  • linux的inetd和xinetd

    unix类和unix的操作系统提供了一具叫做inetd或xinetd的程序管理大多数入网连接。

    将inetd或xinetd打开,绑定、侦听和接受来自服务器每一个端口的请求。

    当有客户端连接的时候,inetd知道它请求的是哪个服务器程序。接着inetd会调用服务器程序并把socket传给它。

  • 显示电脑所安装python所支持的socket选项列表

    setsockopt()和getsockopt()

    用如下程序

    #!/usr/bin/env python
    #for use:
    #author: jpuyy date  jpuyy.com [email protected]
    #modified by xx at date
    #version:
    #history:
    #relate on:
    
    import socket
    solist = [x for x in dir(socket) if x.startswith('SO_')]
    solist.sort()
    for x in solist:
        print x

    执行后显示

    SO_ACCEPTCONN
    SO_BROADCAST
    SO_DEBUG
    SO_DONTROUTE
    SO_ERROR
    SO_KEEPALIVE
    SO_LINGER
    SO_OOBINLINE
    SO_RCVBUF
    SO_RCVLOWAT
    SO_RCVTIMEO
    SO_REUSEADDR
    SO_SNDBUF
    SO_SNDLOWAT
    SO_SNDTIMEO
    SO_TYPE

    setsockopt()用法

    socket.setsockopt(level, optname, value)

    getsockopt()用法

    socket.getsockopt(level, optname[, buflen])

    参见

    http://docs.python.org/library/socket.html

    :)EOT

  • python的socket中的getservbyname()函数

    getservbyname()函数

    可以根据端口名,如tcp,udp 和端口名,如http 。找到这个端口的端口号。

    如下程序

    #!/usr/bin/env python
    
    import socket
    port = socket.getservbyname('http','tcp')
    print "http's port is %d" % port

    运行后会显示

    http’s port is 80

    参见:http://docs.python.org/library/socket.html

    :)EOT

  • 用icecast2和m3w提供网络音频直播

    学校广播站的调音台可以输出音频信号,用音频线RCA双莲花转成3.5mm

    3.5mm 音频线

    这样,把3.5mm的那一头插到电脑的line-in,获得音源

    接下来由m3w将音源传给icecast2,由icecast2来直播流媒体

    icecast2主页 http://www.icecast.org/

    设置icecast2来接收m3w传过来的声音,并提供流媒体服务

    icecast2的configuration是一个xml文件

    icecast2有windows和linux两个版本,debian/ubuntu可以直接apt-get

    主要在于其设置文件,设置好以后可以用m3w broadcast过来。测试时什么暂时都用默认的,这里我用windows版本,先启动好。

    icecast2

    m3w的主页 http://m3w.sourceforge.net/

    broadcast

    A 接收端的地址

    B 挂载点,可以理解为频道

    C 接收端的端口

    D 通信用的密码

    E 通信用的账号

    F 传输模式,在m3w的文档中写的清清楚楚,HTTP支持最好的是icecast2

    以上A-F设置全部是根据icecast2的configuration设置

    m3w windows

    当设置成功后

    A 有声音的输入,显示LISTENING

    B 可以选择播放mp3来提供音源

    C 当和icecast2通信成功后,显示SENDING状态

    这时打开http://localhost:8000/会显示当前的live频道

    用media player打开

    http://localhost:8000/live  或   http://localhost:8000/live.m3u

    就可以收听实时或播放的广播节目了

    :)EOT

  • 正在执行例行维护,请一分钟后回来。

    升级wordpress

    提示

    正在执行例行维护,请一分钟后回来。

    七八分钟都没反应

    从网上搜了一下

    将博客根目录下的

    .maintenance 删除

    还好,这时候我的已经升级成功为3.3了

    :)EOT