テキストエディットのエンコーディングとか [Mac]
UTF-8なテキストファイルをダブルクリックで開こうととすると、こんな感じ
どの辺が「自動」なのかと。(エンコーディングリストをカスタマイズとかいぢっても挙動変わらず...)
がっかりな感じで。
radiko録音その3(Mac) [Mac]
2010/05/29追記: 05/26くらいからradiko.jpに蹴られるのでrtmpdumpのパラメータ(-f 'LNX 10,0,45,2')追加。(RTMPDump v2.2e)
2010/06/03追記: 06/02からradiko.jpにまたまた蹴られる。rtmpdumpのパラメータ(-f 'LNX 10,0,45,2')を指定しても -f を外してもダメダメ。-f '1234(適当な文字列)'でOK! (RTMPDump v2.2e)って...そこまでして純正Apl以外の接続を排除したいのかなぁ。radikoに負荷かけてるようなリトライもしてないのにね。
2010/06/10追記: イタチごっこ。 -s '1234' を追加でok
id3v2をわざわざ使わなくなくてもffmpegでaacやmp3ファイルに「タイトル」とか 「ジャンル」とかを付けられようなのでスクリプトを修正してみた。 iTunesのスマートプレイリスト振り分けが楽になったかも。 ※cron登録が長ったらしいけど、こんな感じで. ※portでインストールしたffmpgeg 0.5.1では"アーティスト"設定が"-metadata author=hogehoge" となり、svnで持ってきたソースをコンパイルしたffmpgeg SVN-r22687では "アーティスト"設定が"-metadata artist=hogehoge"になる。ふむ。面倒だから両方書いとくw 1.スクリプトを配置 以下のスクリプトをホームディレクトリに置いて、chmod 755 radiko.kshを実行 radiko.ksh#!/bin/ksh #----------------------------------------------------------------- # $1:SID (必須) # $2:OFILE (必須) # 任意のファイル名(UTF-8可) # $3:TIME (必須) # 録音時間(分) # # -t "VALUE" (省略可) # タイトル # -a "VALUE" (省略可) # アーティスト # -A "VALUE" (省略可) # アルバム # -g "VALUE" (省略可) # ジャンル #----------------------------------------------------------------- export LANG="ja_JP.UTF-8" export LC_ALL="ja_JP.UTF-8" USAGE=\ "Usage:$0 SID OFILE TIME [-t \"TITLE\"] [-a \"ARTIST\"] [-A \"ALBUM\"] [-g \"GENRE\"]" if [ $# -lt 3 ];then echo ${USAGE} 1>&2 exit 1 fi STA="$1" FBASE="$2" FTIME=0 FTIME=$3 TOUT=1800 #### タイムアウト(秒) CODEC=libmp3lame ####CODEC=libfaac DATE1=$(date +%Y-%m-%d_%H.%M.%S) DATE2=$(echo ${DATE1} | cut -c1-10) YEAR=$(echo ${DATE1} | cut -c1-4) shift 3 while getopts a:g:t:A: opt do case ${opt} in t) TITLE="${OPTARG} ${DATE2}";; a) AUTHOR="${OPTARG}";; g) GENRE="${OPTARG}";; A) ALBUM="${OPTARG}";; *) echo ${USAGE} 1>&2 exit 1;; esac done RDIR="${HOME}/radiko_dat" if [ "${CODEC}" = "libmp3lame" ];then RFILE="${RDIR}/${STA}_${FBASE}_${DATE1}.mp3" else RFILE="${RDIR}/${STA}_${FBASE}_${DATE1}.m4a" fi iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d | grep -vi trash` let FTIME=" $FTIME * 60 + 10" if [ ! -d "${RDIR}" ]; then mkdir "${RDIR}" fi /opt/local/bin/rtmpdump -B ${FTIME} -m ${TOUT} -qvr \ rtmpe://radiko.smartstream.ne.jp/${STA}/_defInst_/simul-stream -f '1234' -s '1234' \ -o - 2>/dev/null | \ /opt/local/bin/ffmpeg \ -metadata author="${AUTHOR}" \ -metadata artist="${AUTHOR}" \ -metadata title="${TITLE}" \ -metadata album="${ALBUM}" \ -metadata genre="${GENRE}" \ -metadata year="${YEAR}" \ -y -i - -vn -acodec ${CODEC} -ar 44100 -ab 196608 -ac 2 "${RFILE}" > /dev/null 2>&1 cp "${RFILE}" "${iTunes_DIR}" if [ "$?" = "0" ]; then rm -f "${RFILE}" fi※"iTunes_DIR"はスクリプト内でホームディレクトリ下の”iTunes に自動的に追加"ディレクトリを 探して設定してますがiTunesの設定で「環境設定 → 詳細 "iTunes Media"フォルダの場所」を ホームディレクトリ下以外に設定変更している場合は、スクリプトの"iTunes_DIR"を ベタで書き換えてください。 2.cron登録 例) ・毎週火曜1:00からTBSラジオをファイル名"TBS_ijuin_YYYY-MM-DD_hh.mm.ss.xxx" として120分録音(xxxは"CODEC=libmp3lame"の場合mp3、CODEC=libfaacの場合":m4a) ・毎週月~金曜13:00からTBSラジオをファイル名"TBS_kirakira_YYYY-MM-DD_hh.mm.ss.xxx" として150分録音(xxxは"CODEC=libmp3lame"の場合mp3、CODEC=libfaacの場合":m4a)
0 1 * * 2 ~/radiko.ksh TBS ijuin 120 -t "深夜の馬鹿力" -a "伊集院光" -A "TBSラジオ" -g "ラジオ" >/dev/null 2>&1
0 13 * * 1-5 ~/radiko.ksh TBS kirakira 150 -t "キラ☆キラ" -a "小島慶子" -A "TBSラジオ" -g "ラジオ" >/dev/null 2>&1
ラジオ届いた! [ラジオ]
時代に逆行したアナログなポータブルラジオw
このチューニングメーター気に入ってます。
思ったよりもちゃちじゃないし、感度も予想よりは良かった。
radiko録音その2(Mac) [Mac]
1.スクリプトを配置 以下のスクリプトをホームディレクトリに置いて、chmod 755 radiko.kshを実行 radiko.ksh#!/bin/ksh #----------------------------------------------------------------- # $1:ID # $2:任意のファイル名(ja_JP.UTF-8可) # $3:録音時間(分) #----------------------------------------------------------------- export LANG="ja_JP.UTF-8" export LC_ALL="ja_JP.UTF-8" STA="$1" FBASE="$2" FTIME=0 FTIME=$3 RDIR="${HOME}/radiko_dat" RFILE="${RDIR}/${STA}_${FBASE}_$(date +%Y-%m-%d_%H.%M.%S)" iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d | \ grep -vi trash` TOUT=1800 #### タイムアウト(秒) let FTIME=" $FTIME * 60 + 10" if [ ! -d "${RDIR}" ]; then mkdir -p "${RDIR}" fi /opt/local/bin/rtmpdump -B ${FTIME} -m ${TOUT} -qvr \ rtmpe://radiko.smartstream.ne.jp/${STA}/_defInst_/simul-stream -f '1234' -s '1234' -o - \ 2>/dev/null | \ /opt/local/bin/ffmpeg -y -i - -vn -acodec libfaac \ -ar 44100 -ab 131072 -ac 2 "${RFILE}".aac > /dev/null 2>&1 /opt/local/bin/MP4Box -add "${RFILE}".aac -new "${RFILE}".m4a ## cp -p "${FILE}".mp3 "${iTunes_DIR}" cp "${RFILE}".m4a "${iTunes_DIR}" if [ "$?" = "0" ]; then rm -f "${RFILE}".aac "${RFILE}".m4a fi※"iTunes_DIR"はスクリプト内でホームディレクトリ下の”iTunes に自動的に追加"ディレクトリを 探して設定してますがiTunesの設定で「環境設定 → 詳細 "iTunes Media"フォルダの場所」を ホームディレクトリ下以外に設定変更している場合は、スクリプトの"iTunes_DIR"を ベタで書き換えてください。 2.cron登録 例) ・毎週火曜1:00からTBSラジオをファイル名"TBS_深夜の馬鹿力_YYYY-MM-DD_hh.mm.ss.m4a" として120分録音 ・毎週月~金曜13:00からTBSラジオをファイル名"TBS_キラ☆キラ_YYYY-MM-DD_hh.mm.ss.m4a" として150分録音0 1 * * 2 ~/radiko.ksh TBS "深夜の馬鹿力" 120 > /dev/null 2>&1 0 13 * * 1-5 ~/radiko.ksh TBS "キラ☆キラ" 150 > /dev/null 2>&1
※cron登録にマルチバイト文字はどうかと思うが、問題なく動くので良しってことで。
でも、GUIベースのcron編集アプリ(CronniX)が使えないみたい。
radiko録音(Mac) [Mac]
2011/03/22追記
以下「radiko録音(Mac)」、「radiko録音その2(Mac)」、「radiko録音その3(Mac)」の内容ではradikoに
繋がりません。最新はこちらです。⇒ 「radiko録音その4(Mac)」
おっ、rtmpdumpがOS X(10.6.2)で問題無く動くようなので
TBS JUNK 伊集院録音用でテストwww
2010/03/17追記: iTunesに自動登録とか追加
※"iTunes_DIR"はスクリプト内でホームディレクトリ下の”iTunes に自動的に追加"ディレクトリを
探して設定してますがiTunesの設定で「環境設定 → 詳細 "iTunes Media"フォルダの場所」を
ホームディレクトリ下以外に、設定変更している場合は、スクリプトの"iTunes_DIR"をベタで
書き換えてください。
2010/03/20追記: radiko録音(Mac)を少しだけ使いやすくしてみた。
2010/03/23追記: mp3ファイルに"タイトル、アーティスト、アルバム"を追加(要 sudo port install id3v2)
2010/03/24追記: おっ、頑張っている方がおられます。GUIのradiko録音 radikoro(ラジコロ)※10.6.2ではまだ問題があるようす。
2010/03/26追記: iTunes登録などの修正追加(※←基本、こちらが最新! 快適に運用中w)
2010/04/08追記: 昨日のradikoメンテでプロトコルが変わったもようー rtmp → rtmpe
2010/04/09追記: タイムアウトをデフォ2分から30分に変更しちゃう(試験放送メンテ時の切断対応な感じでw)
2010/06/03追記: -f 'LNX 10,0,45,2'が蹴られるし。 -f '1234' (適当な文字列)に変更すればOK
2010/06/10追記: イタチごっこ。 -s '1234' を追加でok
【安上がり設定メモ】
1.rtmpdumpの最新ソースゲット&コンパイル(要Xcode)
# svn co svn://svn.mplayerhq.hu/rtmpdump/trunk rtmpdump
# cd rtmpdump
# make posix
# cp -p rtmpdump /usr/bin
# ffmpegを/usr/bin辺りに置いておく(PMSを導入しているのでそちらのffmpegを流用)※PMSにセットで入っているffmpeg(staticバイナリ)は"libmp3lame"や"libfaac"が
使えなかったので
# port install ffmpeg が必要かも
2.radiko接続スクリプトTBS.ksh(例:TBSに接続しflv形式でDL開始 → 7210秒後に終了 →
→ flvから音声をmp3に変換 → iTunesライブラリにに登録(※AAC v4ではiTunesに登録できないのでmp3形式に変更してみた)
(1)/Users/hogehoge/TBS.kshの内容(flv→mp3→iTunes登録の場合)
#!/bin/ksh
export LANG="ja_JP.UTF-8"
export LC_ALL="ja_JP.UTF-8"
FBASE="JUNK伊集院光 深夜の馬鹿力"
TOUT=1800 #### タイムアウト(秒)
#### mp3 id
TITLE="${FBASE} $(date +%Y年%m月%d日)"
ARTIST="伊集院光"
ALBUM="JUNK"
TITLE=`echo "${TITLE}" | iconv -f UTF-8 -t CP932`
ARTIST=`echo "${ARTIST}" | iconv -f UTF-8 -t CP932`
ALBUM=`echo "${ALBUM}" | iconv -f UTF-8 -t CP932`
FUSER="hogehoge"
#### DL秒数
FTIME="7210"
DATE=`date +%Y%m%d`
FILE="/Users/${FUSER}/${FBASE}_${DATE}"
#### iTunes自動登録のためのコピー先ディレクトリ名(要iTunes 9.X)
iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d |grep -vi trash`
rtmpdump -B ${FTIME} -m ${TOUT} -qvr \
rtmpe://radiko.smartstream.ne.jp/TBS/_defInst_/simul-stream -f '1234' -s '1234' -o - 2>/dev/null | \
ffmpeg -y -i - -vn -acodec libmp3lame -ac 2 -ar 48000 \
-ab 131072 -f mp3 "${FILE}".mp3 >/dev/null 2>&1
#### mp3 id
id3v2 -t "${TITLE}" -a "${ARTIST}" -A "${ALBUM}" "${FILE}".mp3
## cp -p "${FILE}".mp3 "${iTunes_DIR}"
cp "${FILE}".mp3 "${iTunes_DIR}"
if [ "$?" = "0" ]; then
rm -f "${FILE}".mp3
fi
(2)ついでにMP4コンテナ化とか
/Users/hogehoge/TBS2.kshの内容(flv→aac→m4a→iTunesの場合)
※要mp4box
http://www.tkn.tu-berlin.de/research/evalvid/からmp4boxをDL
#!/bin/ksh
export LANG="ja_JP.UTF-8"
export LC_ALL="ja_JP.UTF-8"
FBASE="JUNK伊集院光 深夜の馬鹿力"
TOUT=1800 #### タイムアウト(秒)
FUSER="hogehoge"
#### DL秒数
FTIME="7210"
DATE=`date +%Y%m%d`
FILE="/Users/${FUSER}/${FBASE}_${DATE}"
#### iTunes自動登録のためのコピー先ディレクトリ名(要iTunes 9.X)
iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d |grep -vi trash`
rtmpdump -B ${FTIME} -m ${TOUT} -qvr \
rtmpe://radiko.smartstream.ne.jp/TBS/_defInst_/simul-stream -f '1234' -s '1234' -o - 2>/dev/null | \
ffmpeg -y -i - -vn -acodec libfaac -ar 44100 -ab 131072 \
-ac 2 "${FILE}".aac > /dev/null 2>&1
MP4Box -add "${FILE}".aac -new "${FILE}".m4a
## cp -p "${FILE}".mp3 "${iTunes_DIR}"
cp "${FILE}".m4a "${iTunes_DIR}"
if [ "$?" = "0" ]; then
rm -f "${FILE}".aac "${FILE}".m4a
fi
3.cronに2.のシェルスクリプトを登録(毎週火曜1時に実行)
crontab -e なviでの編集が面倒! とか各フィールドの意味がワカンネ! と言う方は
便利なGUIベースのcron編集アプリ(CronniX)を使うと良いかもです。
0 1 * * 2 /Users/hogehoge/TBS.ksh > /dev/null 2>&1
上記の設定で火曜1:00AMに録音を開始し、7210秒後(2時間10秒後)に終了し、iTunesライブラリに自動登録
※ 2時間+radikoのタイムラグ(適当に10秒ってことで)
その他: TBS キラ☆キラ(2時間30分)でためしたところflv→mp3変換に5分29秒、ファイルサイズ144MByte
んー、時間かかりすぎ、ファイルでかすぎっ!!、ffmpegのパラメータは要調整ってことで....
(AACのままなら54MByte程度)
参考URL:iTunes 9:「iTunes に自動的に追加」フォルダについて
参考URL:Linuxでの録音方法
Audio Hijack Proを使ってる人はこちらの方が詳細な設定を書かれていますので、そちらを参照
参考URL:http://desireforwealth.com/diary/201003_radiko_audio_hijack.shtml
IPサイマルラジオ試験放送始まった(radiko) [ラジオ]
radiko重すぎ。トップページがまともに表示されないw
アクセス集中? 単にサーバがショボイのか?
繋がってもセッション切られたりと、まだ不安定な感じ。
音質は「MonsterTV 1DR」の方が良い。
タイムラグは結構あるかも。
しばらくはAMデジタルラジオ「MonsterTV 1DR」と併用かな。
やっと見つけた! [ラジオ]
で、かなり前に「TBS Radio & Communications Report」の表紙や、
テレビドラマ 相棒 season2 第19話 「器物誘拐」などで気になっていたラジオを見つけたので、速攻で購入してしまった。
最近はもっぱらPC録音用としてMACで「radio shark2」、NotePCで「MonsterTV 1DR」などを使用してます。
あとコンデンサが容量抜けてしまった、ICF-SW7600等は放置中
今更MacのWOLとかsleepとか [Mac]
Macの場合sleepモードからのWOLにしか対応していない...なんか嫌な感じ...
とは言えリモートからの操作はやっぱ楽なので、超手抜きな設定など
基本は全てThinkPad T60から操作する。
<Mac本体設定>
1. 「システム環境設定」→「省エネルギー」→
「Ethernet ネットワークアクセスによってスリープ解除」にチェックを入れる。
2. 「システム環境設定」→「共有」→「サービス」の「リモートログイン」に
チェックを入れる。
<WOL>
WOL.exeをbatファイルに組み込むとか、GuiWakeOnLanなんかをThinkPad T60に突っ込んで
そこからWOLパケットを投げてMacを起こす。
<sleep>
1. Mac にシェル・スクリプトを2本配置
(1) Macをsleepさせるスクリプト本体
/usr/local/sbin/ssleep
#!/bin/ksh
sleep 5
osascript -e 'tell application "System Events"' -e 'sleep' -e 'end tell'
(2) (1)のスクリプトをnohupかつバックグラウンドでキックして速攻終了するスクリプト
/usr/local/sbin/syssleep
#!/bin/ksh
nohup /usr/local/sbin/ssleep >/dev/null 2>&1 &
exit
(3)実行権とか
# cd /usr/local/sbin
# chmod 755 ssleep syssleep
2. sudo パスワードなし実行設定
上記のスクリプトをsudoコマンドパスワードなしで
root権実行(※1)させるためsudo設定ファイルに以下を追加
/etc/sudoers
hogeuser ALL=(ALL) NOPASSWD: /usr/local/sbin/syssleep
※1 sleepさせようとするMacに一般ユーザーがGUIログインしていない(Login画面の状態)
まはた他のユーザーがGUIログインしている場合に、sleepさせるにはrootで実行する
必要がある。
3. Teratermマクロの設定
ThinkPad T60からssh2でMacに対して一般ユーザ
(/etc/sudoersに登録したユーザ:例ではhogeuser)でloginし、
マクロ内からsudoして/usr/local/sbin/syssleepをキックする。
以下のマクロは最初だけユーザー名、とパスワードを聞かれ、2回目以降は聞かれない。
(暗号化されてファイルに保持される。)
sleep Mac.ttl
show 0
hostname = '192.168.1.233'
getpassword 'C:\Program Files\teraterm\myserver.dat' 'UserName' myname
getpassword 'C:\Program Files\teraterm\myserver.dat' 'Password' mypassword
conn_str = hostname
strconcat conn_str ':22 /ssh /2 /auth=password /user='
strconcat conn_str myname
strconcat conn_str ' /passwd='
strconcat conn_str mypassword
connect conn_str
wait '@MBP'
sendln 'sudo /usr/local/sbin/syssleep'
sendln 'sleep 2'
sendln 'exit'
4. Teratermマクロ実行(sleep実行)
"C:\Program Files\teraterm\ttpmacro.exe" "C:\ctrl\sleep Mac.ttl"
これで、ようやくMacがsleepします。
がぁ、Mac設定「セキュリティ設定」→「一般」の
「スリープの後、またはスクリーンセーバが開始した後XXXXパスワード要求」に
チェックが入っていて、Macにパスワードロックがかかった状態の場合は
どう頑張ってもsleepしませんでした。
T60 BIOS update とバッテリー [PC]
以下の感じ
ってな訳で、適用NG!!
なぜNGって、バッテリーがT60購入から2年も経たずにヘタってしまって、全く
充電されない状態になったため、T60からとっとと外して廃棄してしまったからなのさ。
※ThinkPad がIBMからLenovoに変わって何が酷いかって、バッテリーのヘタり速さが
一番酷い。会社で使ってる数台のLenovo Note PCも、ほぼ2年も経たずに
軒並みバッテリーが充電されない状態になってる。
全然昔に購入したThinkPad T41、T42、X31はまだバッテリーは100%きちんと
充電されていると言うのに...
話がそれてしまったが、肝心のT60はバッテリーを新規に購入するまでBIOS の
update不可ってことで....買わないけど