2012年7月11日水曜日

perl の sort の比較関数で strcmp したい。

よくC言語では、quck sort を使うのだが、perl の場合、なんとなくデフォルトの sort コマンドで事足りていた。ここは、改めて真摯に。。。といいつつ何時もの如くC言語でいう所の strcmp に相当する機能ではまった。www だめっすね。
#! /usr/bin/perl

%LIST=(
"abc",1,
"abb",2,
);

foreach $key (sort comp(keys %LIST)) {
    printf("[%s][%d]n",$key,$LIST{$key});
}

sub comp {
   return($a cmp $b);
}

2012年7月8日日曜日

いつの間にか m4a に

itunes で取り込んでる音楽データを車についてるカーナビ用に usb メモリに転送して使っている。久しぶりに cd を購入したので、早速取り込んでお出かけの際に聞こうとおもったら一覧にでてこない。カーナビを色々いじってみると、入っているはずのアルバムがいくつか 見つからない。比較的新しくかったCD達だ。(itunes や amozonなどで曲だけかうのはどうも馴染めないww) しかたなく、カーナビの説明書ひっくりかえしてみると、5XX曲以上だったりすると認識しない 旨の注意書きある。え〜、32Gのusb メモリの1割位しかつかってないのに残念な仕様だ。などと思いながら、カーナビで聞けない曲にマウスをあわせてみると、m4a と表示される。???、確かすべてmp3 で取り込む設定をしたはずなのに、itunes 様がいつの間にかデフォルトにお戻りになられていたのですね。。。という訳で mp3 に変換してめでたくご認識に成功したわけだが、早晩、カーナビの曲数の上限にあたるのだろうなと思う。仕様もよくよまずに、進められるままにカーナビつけ た私がいけないのは重々承知だが、呑気にいくなら徹底してアナログでいることなのかもしれない。あちこちの仕様変更やリミットの地雷を踏まぬように注意深 く渡り歩ける性格ではないのだが、思いつきで弄りたがり性なのがいけないんだろうなぁ。

2012年6月14日木曜日

DDNS っていうのがあったんだね

ドメインを取得するのって面倒臭そうっていう意識がずっとあったけど、今は ddns っていうのがあるんだね。時代は変わっていたよ。
  1. http://www.mydns.jp に接続して join us をクリックしてユーザ登録
  2. メールで送られてきたユーザ、パスワードでログイン
  3. DOMAIN INFO 選択して好きなドメイン名を取得
  4. linuxにfetchmail をインストール
  5. $HOME/.fetchmailrc に以下を登録
    defaults
    protocol pop3
    poll mail.mydns.jp
    password *********
    is account here
    ※ account は、$HOME の所有者
  6. chmod 710 $HOME/.fetchmailrc
  7. fetchmail で以下のメッセージが返却されれば成功
    〜宛にメッセージは届いていません
  8. crontab -e
    0 * * * * /usr/bin/fetchmail -f $HOME/.fetchmailrc 1> /dev/null 2>&1
※ダイナミックDNS

2012年6月8日金曜日

創造主と解析者

コンピュータのことを何もしらなかったあの頃、「UNIXの創造主」と双璧な人物として崇めていたのが脇英世さんであった。ブルーバックスの「MS-DOSとは何か」という本を一字一句が呪文にしかおもえないのに毎日数ページずつ読んでいた。しかし、解からなさという意味では筆頭であった本も時が経るに連れ、創造主の書き記した本と資料をまとめて平易に説明した本くらいの差があるように思えるようになった。創造主が書いていると思えるような本に、また出会いたいなぁ。

2012年1月29日日曜日

MPEG2-TSの計算範囲とCRC

1.CRCの計算対象範囲
2.CRCの計算方法
true:最終的に確認のとれたCRC
musi:wiki の説明から自作
samp1:wiki 参照リンクからのアルゴリズム1
samp2:wiki 参照リンクからのアルゴリズム2
samp1改:samp1 のリターンのビット反転を削除(MPEG2仕様に一致)
samp2改:samp2 の入力時と出力時のビット反転を削除(自作に一致)
注)samp2 は、4バイト以下はエラーとする仕様なので、上記crcは4バイト目から表示