星期五, 三月 28, 2014

与穆斯林近距离

某年我在香山开会,同去的有一位穆斯林女孩子,很漂亮,但是不能吃猪肉,因此坐哪里都不合适,一个人坐又太孤单,于是我自告奋勇。猪肉可以不吃,但总不能不喝酒吧,于是我就和服务员要。服务员说那哪里行,那本来是给穆斯林的桌子。没想到我们这位穆斯林姑娘说没关系。场面于是挺滑稽,我和该穆斯林女一张大桌,吃的是回民饭,但我还喝酒。

我导师远远看见,很着急,说那谁不是已有女朋友么。那时候我的女友也就是我现在的领导就是我导师介绍给我的。

开饭前,有一位以色列人,就是据说提出QTL概念的那位 Soller 也遇到了坐哪里的问题。饭店的服务员想把他安排过来,他过来转了一圈后表示不同意。我现在想,大约当时的国际政治环境还不成熟,犹太人和穆斯林坐在一起机会还不到吧。

『按』
原先这些在微薄上为了要压缩到140字,搞得白不白,古不古,也没有说清楚。原先是评论某人与穆斯林坐在一起吃饭、穆斯林的忌讳如何尊重等等。

星期日, 三月 16, 2014

打球和下棋的闲话

我忽然发现打羽毛球也有助于提高棋力,这个不是玩笑。以前我在 IGS 上偶尔能打到 2k+,但往往很快掉到 4k,之后看到 3k,2k 心里都发憷。今年我明显感觉不一样,可以稳定地赢1k(对方让先并让 6.5 目)。我棋下得不勤,不过照此应该很快升级至2k+或者1k。之间我从没有看别人的棋和书,但羽毛球运动的进退章法与下棋颇有相通之处。

下面是笑话一则:

我有一个朋友复旦数学系毕业,听说我下围棋,昨天大老远拿棋到我家来要与我切磋。坐定之后他才发现原来没带棋盘,怎么办呢。赶巧客厅里有一张包装纸,用我家的卷尺一量,刚好 19 英寸见方,于是我们就找了一块长木板画将起来。我本科学过的几堂机械制图功夫都用上了。画毕,朋友说要不咱们把星位标上吧。我说随便。结果角上四星好标,边上四星无论如何不能标到中间 :-)。

我这位朋友下棋也和我一样,有一搭没一搭,棋力似乎比我还差,是奕城 5k。他主动要求我让两子,我居然连续三盘中盘胜。前两盘依我水平看纯属侥幸,第三盘还好。朋友说面对面下棋比网上下感觉好多了。我看也是,朋友伸手捏子的时候指头都在抖。我对抗的场面经历得多了,反倒平静的多。

之后一起聊天。原来朋友家里有棋原是想让孩子也下的。我觉得这个有些困难,无他,只是没有群众基础。比如羽毛球,挪威的甲级队相当于瑞典的乙级队,丹麦的丙级队。水平越低,参差不齐的现象越明显。但不管怎么差,挪威注册的羽毛球手也有 5500,120 个俱乐部。联赛组织得也很频繁。个位数的围棋与这个也没法比,更不用说足球和手球这两项挪威大众运动了。

挪威的孩子们不管男女,小时候几乎都玩过足球和手球。我以前在村里住时,两个儿子就参加了村里的足球队。他们十一、二岁的队我看和我们本科队水平不相上下,甚至还好。当然在中国高考的重压之下,我们中学体育课基本不上,各种体育运动水平差那是自然了。然而我们全家去年进城之后,城里的足球水平又远远高于村里。两个儿子露怯,死活不肯再去踢球了。

联赛多,面对面对抗的机会也多,这非常锻炼人。我儿子们对此深有体会。老二不消多说,他的前教练,原先执教过加拿大国家队,说明年他就会是全挪威 U11 最好的选手。他现在还小,岁数小,身材也瘦,但动作十分协调,打球肯用脑也知道往哪里用。老大相比老二开始得有些晚了,而且一般人的弱点他打球初期表现得淋漓尽致:碰上弱的打球懈怠,不严谨;碰上硬一些的很快便慌了手脚,而且慌得什么话都听不进去了。然而几次比赛之后,这些毛病几乎都不见了。

其实,普通人有一两样体育爱好很重要。自从进城参加俱乐部以来,昨天我忽然发现我的裤腰松了好几寸。做事情时体力感觉像年轻时候,脑子也更好使了。至于儿子们,除了性格的改变,他们现在生活也变得更有条理。从开始打球至今一年不到得时间里面,儿子们已经可以频繁地拿冠军了。另外,联赛也是一个社会活动圈子,经常参加比赛,认识的人也多。孩子们参加比赛,已经认识很多朋友了。

星期四, 三月 13, 2014

Split an m4b file into chapters

An audio book in m4b format usually contains meta information and is usually very large. It is not suitable to be played in a car audio system. To split it:

#!/usr/bin/env bash
# This script need below software to be installed
#  faad2 lame ffmpeg sox
# e.g., sudo yum install blah blah

if [ $# -ne 1 ]
then
    echo
    echo Usage: $0 file.m4b
    echo
    exit 1
fi
info=`mktemp -u -p .`
segs=`mktemp -u -p .`
twav=`mktemp -u -p .`.wav
faad "$1" -o $twav

ffprobe "$1" 2>$info

grep end $info | \
    sed 's/,//' | \
    gawk '{print $4, $6-$4}' \
     > $segs

nch=`wc -l $segs | gawk '{print $1}'`

for i in `seq -w $nch`
do
    echo
    echo
    echo Dealing with Chapter $i
    echo
    sox "$twav" $i.wav --show-progress trim `head -$i $segs | tail -1`
    lame $i.wav $i.mp3
    rm $i.wav
done
rm $info $segs $twav
Save this code in, e.g., m4bsplt.sh
chmod u+x m4bsplt.sh
pathto/m4bsplit.sh file.m4b
You can then see the mp3 files created.