So-net無料ブログ作成

radiko録音 HE-AAC (Mac) [Mac]

HE-AACな感じで。多分radikoスクリプト関連の更新は最後

・iTunes 11.1.5 /iPod touch 5G iOS 7.1/AK120/VLC etc...で普通にシーク&再生かくにんOK
要MP4box X11のインストールは不要

・rtmpdump → ffmpegでaudio(aac)データを無劣化で抜いて、MP4box -sbrでaacをmp4(m4a)なコンテナに
 突っ込んで、ffmpegでaudioデータはそのままcopyでmetadataを書き込む感じで。
・サブシェル(get_auth.sh)は変更無しなので、radiko録音その4(Mac)あたりを参照
・イメージファイル埋め込みなど mp4v2
$ svn checkout https://mp4v2.googlecode.com/svn/releases/2.0.0 mp4v2
$ cd mp4v2
$ autoreconf -fiv
$ rm -fr build/
$ mkdir build/
$ cd build/
$ ../configure --enable-shared -enable-static --disable-debug
$ make
$ sudo make install

・その他
 (1) 最初からこうしておくんだった。サイズも小さいし。
 (2) HE-AACなファイルはplayerによって音質が凄く変化する。
   iTunesやiPod touch 5Gはほぼオリジナルっぽい音だけど、AK120は凄くこもった音...

MP4Box -sbr の効能
forces importing the AAC-ADTS file as AAC SBR (aka HE-AAC, aka aacPlus) with backward compatible signaling (eg non SBR aware decoders should play the file).

でスクリプト
#!/bin/ksh
#-----------------------------------------------------------------
# $1:ID (必須)
#       TBS      TBSラジオ
#       QRR      文化放送
#       LFR      ニッポン放送
#       NSB      ラジオNIKKEI
#       INT      INTERFM
#       FMT      TOKYO FM
#       BAYFM78  BayFm
#       NACK5    NACK5
#       JORF     ラジオ日本
#       YFM      FM yokohama
#       ---------------------
#       ABC      ABCラジオ
#       MBS      MBSラジオ
#       OBC      ラジオ大阪
#       CCL      FM COCOLO
#       802      FM802
#       FMO      FM大阪
#
# $2:OFILE (必須)
#       任意のファイル名(UTF-8可)
# $3:TIME (必須)
#       録音時間(分)
#
# -t "VALUE" (省略可)
#       タイトル
# -a "VALUE" (省略可)
#       アーティスト
# -A "VALUE" (省略可)
#       アルバム
# -g "VALUE" (省略可)
#       ジャンル
# -I "埋め込みイメージファイル名(Artwoyk)" (省略可)
#       FULL PATH
#-----------------------------------------------------------------
export LANG="ja_JP.UTF-8" LC_ALL="ja_JP.UTF-8"

USAGE=\
"Usage:$0 ID OFILE TIME [-t \"TITLE\"] [-a \"ARTIST\"] [-A \"ALBUM\"] [-g \"GENRE\"] [ -I IMAGE(Artwork) ]"

if [ $# -lt 3 ];then
    print "${USAGE}\n`head -n37 $0 | grep -v ksh | sed 's/^#//g' `" 1>&2
    exit 1
fi

ID="$1"
OFILE="$2"
TIME=$3
#------------------------------------------#
GetAuth_SRC="${HOME}/get_auth.sh"
#------------------------------------------#
TOUT=1800  # sec
DELAY=20   # sec
RDIR=/tmp
((TIME=TIME*60+DELAY))

date "+%Y %m %d %H %M %S" | read YYYY MM DD hh mm ss
RYEAR="${YYYY}-${MM}-${DD}T${hh}:${mm}:${ss}Z"
DATE1="${YYYY}-${MM}-${DD}_${hh}${mm}${ss}"
DATE2="${YYYY}-${MM}-${DD}"

shift 3
while getopts a:g:t:A:I: opt
do
    case ${opt} in
        t) TITLE="${OPTARG} ${DATE2}";;
        a) AUTHOR="${OPTARG}";;
        g) GENRE="${OPTARG}";;
        A) ALBUM="${OPTARG}";;
        I) IMAGE="${OPTARG}";;
        *) echo ${USAGE} 1>&2
           exit 1;;
    esac
done

RFILE1="${RDIR}/${ID}_${OFILE}_${DATE1}.aac"
RFILE2="${RDIR}/${ID}_${OFILE}_${DATE1}_nh.m4a"
RFILE3="${RDIR}/${ID}_${OFILE}_${DATE1}.m4a"

### authentication
${GetAuth_SRC} | read playerurl authtoken

/opt/local/bin/rtmpdump -B ${TIME} -m ${TOUT} -qvr \
    rtmpe://w-radiko.smartstream.ne.jp/${ID}/_definst_/simul-stream.stream \
    -W ${playerurl} -C S:"" -C S:"" -C S:"" -C S:${authtoken} \
    -o - 2>/dev/null | \
/opt/local/bin/ffmpeg -y -i - -vn  -acodec copy "${RFILE1}"
/Applications/Osmo4.app/Contents/MacOS/MP4Box -add "${RFILE1}#audio" "${RFILE2}" -sbr
/opt/local/bin/ffmpeg -y -i "${RFILE2}" -vn -acodec copy \
    -metadata author="${AUTHOR}" \
    -metadata artist="${AUTHOR}" \
    -metadata title="${TITLE}" \
    -metadata album="${ALBUM}" \
    -metadata genre="${GENRE}" \
    -metadata date="${RYEAR}" \
    "${RFILE3}"

if [ "${IMAGE}" ] && [ -f "${IMAGE}" ]; then
    /usr/local/bin/mp4art --add "${IMAGE}" "${RFILE3}"
fi

if (( $(sw_vers -productVersion | awk -F"." '{ print $1$2}') >= 107 )); then
    F_DIR="Automatically Add to iTunes.localized"
else
    F_DIR="iTunes に自動的に追加"
fi
### iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d | grep -vi trash`
iTunes_DIR=`find ${HOME} -name "${F_DIR}" -type d | grep -vi trash`

if [ "${iTunes_DIR}" ]; then
    cp "${RFILE3}" "${iTunes_DIR}"
    if [ "$?" = "0" ]; then
        rm -f "${RFILE1}" "${RFILE2}" "${RFILE3}"
    fi
fi


iTunesに取り込み時の「概要」表示など。(プロファイルと、謎のビットレート:46 kbps に注目w)
he.png
イメージ(Artwork)埋め込み実行例
~/radiko.ksh TBS tokyopod 60 -t "東京ポッド許可局" -a "マキタスポーツ,プチ鹿島,サンキュータツオ" -A "TBSラジオ" -g "ラジオ" -I ~/IMAGES/tpod.jpg >/dev/null 2>&1
スクリーンショット 2014-04-06 02.24.38.png


iPod touch 5GをUSB DACにグサっと刺してFLACとかDSD再生とか。PHA-2 [Mac]

勢い余ってSONY PHA-2にグサッと刺して、HF Playerで確認とか。

Apple Lightning - USBカメラアダプタ
・USB[A]オス - mini USB[B]オス ケーブル
 → こんなケーブル
・USB[A]オス - micro USB[B]オス 7cmケーブル(秋葉で売ってたやつ)
・セルフパワーのUSB HUBは不要!

<ポイント>
・左 mini USB-B(Walkman接続用)
  ⇒ DSD(DoP出力)再生は不可かも...
   ※Mac + SONY Hi-Res Audio Player or Audirvana PlusでもNGだったよ(PHA-2交換後も)
   ※Windowsは繋いでなので不明...

   ---- 2013/11/12 -------------------------------------------------------------------
   やっぱり mini USB-B(Walkman接続用)はDSD未対応ってことで。
   SONYのPHA-2単体のpageには書いてないけど、
   「製品情報>総合サポート>ハイレゾリューション・オーディオ>対応フォーマット」に書いてあった....
   ------------------------------------------------------------------------------------

・中央 USB-A
  ⇒ 48kまで。
   ※ケーブルが1本で済むので楽
・右 micro USB-B(PC 接続用)
  ⇒ 2.8MHz/1bit DSD(DoP)再生OK (iPod tpuch 5G + Apple Lightning - USBカメラアダプタ)
   ※電源ON/OFF順序性あり。(iPod tpuch 5GをPHA-2より先に上げると、
    「接続したデバイスは消費電力が大き過ぎます。」でNG、後からPHA-2を上げても
    認識されない場合あり)

で、まず【mini USB-B(Walkman接続用)】にぶすっと。
IMG_0014.png

★FLAC 192kHz/24bit 良い感じ。
2013-11-03 00.59.55.jpgjavascript:;

★DSF 2.8MHz/1bit (DSD設定 DoP) んー、HF Playerには「2.82 MHz DSD」と表示されるものの...
 ヘッドホンからは、さーーーーっと言う静かなノイズの後ろで僅かに曲が聞こえる。
 昔のラジオかよw(mini USB-B)

で、次に【micro USB-B(PC接続用)】にぶすっと。
 ---------- 2103/11/9 追記 ---------------------------------------------------------
 micro USB-Bに接続時はDSD DoP出力OK
 ※結局、初期不良で交換してもらったらOKとか。
 ddd.png
 -----------------------------------------------------------------------------------

★DSF 2.8MHz/1bit (DSD設定 PCM) 192kHzでOK
IMG_0015.png
 ---------- 2014/1/6 追記 ---------------------------------------------------------
 micro USB-B 接続時のDevice認識画面を追加
IM.png
2014-01-06 12.32.01.png
 -----------------------------------------------------------------------------------

<その他>
・CCKじゃなかったよ... Lightning - USBカメラアダプタだったよ。混同して書いてた。
・昨日は障害対応連絡で叩き起こされたので、今日は平和でありますように..

------ 悩ましいケーブル繋ぎ (親ガメ子ガメ)------
んー、不細工だけどこれ以上は無理
001.png

002.png

003.png

iPod touch 5GをUSB DACにグサっと刺してFLACとかDSD再生とか。 [Mac]

雨降りジメジメな土曜の暇つぶしなど。

使ったもの
・Apple iPod touch 5G (iOS 7.0.3)
・ONKYO iOS 用の音楽プレーヤーアプリ ONKYO HF Player
 オプションの「HD Player Pack」(1000円)を購入
Apple Lightning - USBカメラアダプタ
・USB-DAC TEAC UD-501
・USBはぶ(ACアダプタ付きのやつ)
 ※直にDAC接続したいところだけど、ほとんどの場合バスパワーが足りないかと。
  TEAC UD-501はMENUで「USB POWER」を「ON」に設定しても
  2013-10-26 14.03.08.png
  な感じなので、ELECOMのやつを噛ませて...
  で、デバイス認識OK
  2013-10-26 12.38.09.png

で、再生
★FLAC 192kHz/24bitな曲 普通にノイズも音飛びのなく良い感じ。
  2013-10-26 12.38.46.png
  2013-10-26 11.49.34.jpg
  
★DSF 2.8MHz/1bitな曲 (DSDの出力形式はDoPに設定) おー、ちゃんと再生されてるw
  2013-10-26 12.39.10.png
  2013-10-26 12.58.25.jpg
  
・その他
 1.ONKYO HF Playerの操作性は普通。リピートの種類が少ないのと再生時間が3桁分数の曲になると、
  表示が切れちゃうところが少し残念
 2.USB HUBとかUSB DACとの相性が有るようで、TEACのAI-501DAでは、
  最初の5秒程度は普通に再生されるものの、それ以後ノイズ(同期外れ?)が
  酷く全然NGっすね。(Apple 純正のミュージックアプリも同様)
 3.ONKYO HF PlayerのiPad版は無いのね。横向き対応してほしー。
 4.バッテリー減りは早い気がする。
 5.遠くに行きたい。

MacBook Air (Mid 2012) GbE USB3.0 いろいろ [Mac]

GbE USB3.0のしっぽが多少は増えたようなので、またMacBook Air (Mid 2012) に繋いでiperfで確認など。
どれも同じchip(AX88179)なんで似たり寄ったり。
実売価格だとUSB3.0の口が3つ付いて3,980円でゲットしたLogitec LAN-GTJU3H3、小ささならGREEN HOUSE GH-ULA30BWな感じ。

サイズ比較
左からKanex USB3GBIT3X、Logitec LAN-GTJU3H3、GREEN HOUSE GH-ULA30BW、玄人志向 GbE-USB3.0、Apple Thunderbolt - ギガビットEthernetアダプタ、Apple USB Ethernet アダプタ
2013-05-05 21.23.46.jpg

< Kanex USB3GBIT3X>
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.127 port 50857 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 886 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.127 port 50877 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 886 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.127 port 50896 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 889 Mbits/sec


<Logitec LAN-GTJU3H3>
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.96 port 50163 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 886 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.96 port 50182 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.5 GBytes 884 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.96 port 50195 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 887 Mbits/sec


<GREEN HOUSE GH-ULA30BW>
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.100 port 49853 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.4 GBytes 876 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.100 port 49867 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.4 GBytes 877 Mbits/sec
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.100 port 49883 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 886 Mbits/sec

Mac radiko録音 スクリプトめも [Mac]

-----------------------------------------------------------------------------------------------------------------------
Mac radiko 録音シェル・スクリプト(radiko4.ksh)をちょいといじって、iOS device 同期とかを
ダラダラーっと追加(黄色文字部分)
※1 OS X 10.8.3 + iTunes 11.0.2 + iPod touch G1,G5、iPad miniなんかで動作を確認
※2 ファストユーザスイッチには未対応(TTY =console を異なるユーザで複数使用している場合など)
-----------------------------------------------------------------------------------------------------------------------
  radiko5.ksh
#!/bin/ksh #----------------------------------------------------------------- # $1:ID (必須) # TBS TBSラジオ # QRR 文化放送 # LFR ニッポン放送 # NSB ラジオNIKKEI # INT INTERFM # FMT TOKYO FM # BAYFM78 BayFm # NACK5 NACK5 # JORF ラジオ日本 # YFM FM yokohama # --------------------- # ABC ABCラジオ # MBS MBSラジオ # OBC ラジオ大阪 # CCL FM COCOLO # 802 FM802 # FMO FM大阪 # # $2:OFILE (必須) # 任意のファイル名(UTF-8可) # $3:TIME (必須) # 録音時間(分) # # -t "VALUE" (省略可) # タイトル # -a "VALUE" (省略可) # アーティスト # -A "VALUE" (省略可) # アルバム # -g "VALUE" (省略可) # ジャンル #----------------------------------------------------------------- export LANG="ja_JP.UTF-8" LC_ALL="ja_JP.UTF-8" USAGE=\ "Usage:$0 ID OFILE TIME [-t \"TITLE\"] [-a \"ARTIST\"] [-A \"ALBUM\"] [-g \"GENRE\"]" if [ $# -lt 3 ];then print "${USAGE}\n`head -n36 $0 | grep -v ksh | sed 's/^#//g' `" 1>&2 exit 1 fi ID="$1" OFILE="$2" TIME=$3 CHK_INT=3 # shellキックユーザーGUI login チェック間隔(sec) WAIT=60 # shellキックユーザーGUI login からiTunes起動実行までの待ち(sec) ISWAIT=3 # iTunes ライブラリ追加待ち間隔(sec) (iTunes_DIRからファイルが消えるまで) STAT=0 # shellキックユーザーlogin 内部フラグ #------------------------------------------# GetAuth_SRC="${HOME}/get_auth.sh" #------------------------------------------# TOUT=1800 # sec DELAY=20 # sec RDIR=/tmp CODEC=libmp3lame ####CODEC=libfaac ((TIME=TIME*60+DELAY)) 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 if [ "${CODEC}" = "libmp3lame" ];then RFILE="${RDIR}/${ID}_${OFILE}_${DATE1}.mp3" else RFILE="${RDIR}/${ID}_${OFILE}_${DATE1}.m4a" fi ### authentication RAuth=`${GetAuth_SRC}` set -- ${RAuth} playerurl=$1 authtoken=$2 /usr/local/bin/rtmpdump -B ${TIME} -m ${TOUT} -qvr \ rtmpe://w-radiko.smartstream.ne.jp/${ID}/_definst_/simul-stream.stream \ -W ${playerurl} -C S:"" -C S:"" -C S:"" -C S:${authtoken} \ -o - 2>/dev/null | \ /opt/local/bin/ffmpeg -y -i - -vn -acodec ${CODEC} -ar 44100 -ab 196608 -ac 2 \ -metadata author="${AUTHOR}" \ -metadata artist="${AUTHOR}" \ -metadata title="${TITLE}" \ -metadata album="${ALBUM}" \ -metadata genre="${GENRE}" \ -metadata year="${YEAR}" \ "${RFILE}" > /dev/null 2>&1 #---- Lion 10.7.X 2012/03/19 if (( $(sw_vers -productVersion | awk -F"." '{ print $1$2}') >= 107 )); then F_DIR="Automatically Add to iTunes.localized" else F_DIR="iTunes に自動的に追加" fi ### iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d | grep -vi trash` iTunes_DIR=`find ${HOME} -name "${F_DIR}" -type d | grep -vi trash` if [ "${iTunes_DIR}" ]; then cp "${RFILE}" "${iTunes_DIR}" if [ "$?" = "0" ]; then rm -f "${RFILE}" ### console login check ### Me=`who am i | awk '{ print $1}'` while true do who | awk '{ print $1" "$2}' | while read U C do ### U=console login user, C=tty ### if [ "${U}" = "${Me}" ] && [ "${C}" = "console" ]; then STAT=1 break fi done if [ "${STAT}" = "1" ]; then break else ### login wait ### sleep ${CHK_INT} fi done sleep ${WAIT} ### iTunes 起動 ### open /Applications/iTunes.app while true do #### iTunes ライブラリ追加待ち ### if [ ! -f "${iTunes_DIR}/`basename \"${RFILE}\"`" ]; then break else sleep ${ISWAIT} fi done #### iOS deviceの同期など ### osascript \ -e 'tell application "iTunes"' \ -e 'set so to sources whose kind = iPod' \ -e 'repeat with t in so' \ -e 'update t' \ -e 'end repeat' \ -e 'end tell' fi fi

iOSデバイス同期とか。 [Mac]

メモ: iOSデバイス同期とか。
※ユーザーがloginしてないと意味ないけど。つかiTunes bgで動かないの仕方なし。

--- sync_iosdev.sh ---
#!/bin/sh
open /Applications/iTunes.app
sleep 10

osascript \
    -e 'tell application "iTunes"' \
    -e 'set so to sources whose kind = iPod' \
    -e 'repeat with t in so' \
    -e 'update t' \
    -e 'end repeat' \
    -e 'end tell'
なんか"sleep"とか"open"とかがFirefox 19.0で表示されない..けど気にしない。

MacBook Air (Mid 2012) に GbE-USB3.0を繋いでみた [Mac]

玄人志向からUSB3.0接続のGigabit Etherアダプター(GbE-USB3.0)が発売されったことで、
早速MacBook Air (Mid 2012) に繋いでみた。
普段はApple Thunderbolt - ギガビットEthernetアダプタを使用しいるけど、
これ繋いじゃうとthunderbolt(Mini DisplayPort)の口が塞がっちゃうので
どうしたモノかと思っていたころに発売ってことでアキバで即ゲット

Apple Thunderbolt - ギガビットEthernetアダプタとの比較
n0.png
N2.png

SC01.png

Driver CDにMac用も入ってますが...AX88179用のドライバは本家からDL

で、簡単なパフォーマンステストとか(iperf 180sec を3回)

<玄人志向 GbE-USB3.0>

$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 49994 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 890 Mbits/sec
$
$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 50105 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.4 GBytes 878 Mbits/sec
$
$
$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 50169 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 18.6 GBytes 889 Mbits/sec
$

<Apple Thunderbolt - ギガビットEthernetアダプタ>

$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 50518 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 19.6 GBytes 934 Mbits/sec
$
$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 50528 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 19.7 GBytes 938 Mbits/sec
$
$ iperf -c macpro -t 180
------------------------------------------------------------
Client connecting to macpro, TCP port 5001
TCP window size: 129 KByte (default)
------------------------------------------------------------
[ 5] local 192.168.1.95 port 50539 connected with 192.168.1.106 port 5001
[ ID] Interval Transfer Bandwidth
[ 5] 0.0-180.0 sec 19.7 GBytes 938 Mbits/sec
$

Apple Thunderbolt - ギガビットEthernetアダプタよりは若干遅いけど、
個人的には全然問題無さげ。

<その他>
デザイン&サイズが残念

radiko録音その4(Mac) [Mac]

--- 2013/12/13 追記----------------------
AK120はmp3タグがid3v2.4 (ffmpeg default) だと文字化け起こすのでid3v2.3に設定とか。(緑文字)
--- 2013/04/14 追記----------------------
iOS device 同期とかはこっち 
--- 2013/01/08 追記----------------------
いつの間にやらffmpegの-metadataに
設定した文字列が反映されなくなってる!!
※ffmpegのパラメータ順序を変更したら直ったよw(黄色部分)
  -metadata XX=zzz の後に出力ファイル意外のパラメータを指定するとNGっぽい
 (真面目に調べた訳ではないのでまぁ、こんな感じで)

 ・Mountain Lion 10.8.2 
 ・Xcode 4.5.2
 ・ffmpeg version 1.0.1
--- 2012/10/26 追記----------------------
googleやら掲示板やら見て修正 (赤ぢ部分)
-----------------------------------------

なんかradikoの認証方式がかなり変わったようです...。

0.前提
 (1) 要 Xcode
 (2) 要 rtmpdump、ffmpeg、wget、base64、swftools
 (3) スクリプトのPATHは適宜置換えでよろ。(/opt/local/bin;/usr/local/binなど...)

1.スクリプトを配置(その1)
  以下のスクリプトをホームディレクトリに置いて、chmod 755 radiko4.kshを実行
  radiko4.ksh
#!/bin/ksh #----------------------------------------------------------------- # $1:ID (必須) # TBS TBSラジオ # QRR 文化放送 # LFR ニッポン放送 # NSB ラジオNIKKEI # INT INTERFM # FMT TOKYO FM # BAYFM78 BayFm # NACK5 NACK5 # JORF ラジオ日本 # YFM FM yokohama # --------------------- # ABC ABCラジオ # MBS MBSラジオ # OBC ラジオ大阪 # CCL FM COCOLO # 802 FM802 # FMO FM大阪 # # $2:OFILE (必須) # 任意のファイル名(UTF-8可) # $3:TIME (必須) # 録音時間(分) # # -t "VALUE" (省略可) # タイトル # -a "VALUE" (省略可) # アーティスト # -A "VALUE" (省略可) # アルバム # -g "VALUE" (省略可) # ジャンル #----------------------------------------------------------------- export LANG="ja_JP.UTF-8" LC_ALL="ja_JP.UTF-8" USAGE=\ "Usage:$0 ID OFILE TIME [-t \"TITLE\"] [-a \"ARTIST\"] [-A \"ALBUM\"] [-g \"GENRE\"]" if [ $# -lt 3 ];then print "${USAGE}\n`head -n36 $0 | grep -v ksh | sed 's/^#//g' `" 1>&2 exit 1 fi ID="$1" OFILE="$2" TIME=$3 #------------------------------------------# GetAuth_SRC="${HOME}/get_auth.sh" #------------------------------------------# TOUT=1800 # sec DELAY=20 # sec RDIR=/tmp CODEC=libmp3lame ####CODEC=libfaac ((TIME=TIME*60+DELAY)) 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 if [ "${CODEC}" = "libmp3lame" ];then RFILE="${RDIR}/${ID}_${OFILE}_${DATE1}.mp3" ID3V="-id3v2_version 3" else RFILE="${RDIR}/${ID}_${OFILE}_${DATE1}.m4a" fi ### authentication RAuth=`${GetAuth_SRC}` set -- ${RAuth} playerurl=$1 authtoken=$2 /usr/local/bin/rtmpdump -B ${TIME} -m ${TOUT} -qvr \ rtmpe://w-radiko.smartstream.ne.jp/${ID}/_definst_/simul-stream.stream \ -W ${playerurl} -C S:"" -C S:"" -C S:"" -C S:${authtoken} \ -o - 2>/dev/null | \ /opt/local/bin/ffmpeg -y -i - ${ID3V} -vn -acodec ${CODEC} -ar 44100 -ab 196608 -ac 2 \ -metadata author="${AUTHOR}" \ -metadata artist="${AUTHOR}" \ -metadata title="${TITLE}" \ -metadata album="${ALBUM}" \ -metadata genre="${GENRE}" \ -metadata year="${YEAR}" \ "${RFILE}" > /dev/null 2>&1 #---- Lion 10.7.X 2012/03/19 if (( $(sw_vers -productVersion | awk -F"." '{ print $1$2}') >= 107 )); then F_DIR="Automatically Add to iTunes.localized" else F_DIR="iTunes に自動的に追加" fi ### iTunes_DIR=`find "${HOME}" -name "iTunes に自動的に追加" -type d | grep -vi trash` iTunes_DIR=`find ${HOME} -name "${F_DIR}" -type d | grep -vi trash` if [ "${iTunes_DIR}" ]; then cp "${RFILE}" "${iTunes_DIR}" if [ "$?" = "0" ]; then rm -f "${RFILE}" fi fi
2.スクリプトを配置(その2) 以下のスクリプトをホームディレクトリに置いて、chmod 755 get_auth.shを実行 ※1 上記 radiko4.kshから実行されるサブシェル ※2 参考にさせて頂いたのはこちらのスクリプト ⇒ 簡易radiko録音ツール  get_auth.shはPCに一時ファイルを一切吐かないように上記で参考にしたスクリプト内容を変更してます。  (某pngファイルの表示内容に対するささやかな抵抗?w) get_auth.sh
#!/bin/sh playerurl=http://radiko.jp/player/swf/player_3.0.0.01.swf # # access auth1_fms # auth1_fms=`/usr/local/bin/wget -q \ --header="pragma: no-cache" \ --header="X-Radiko-App: pc_1" \ --header="X-Radiko-App-Version: 2.0.1" \ --header="X-Radiko-User: test-stream" \ --header="X-Radiko-Device: pc" \ --post-data='\r\n' \ --no-check-certificate \ --save-headers \ https://radiko.jp/v2/api/auth1_fms \ -O -` if [ $? -ne 0 -o ! "${auth1_fms}" ]; then echo "failed auth1 process" 1>&2 exit 1 fi # get keydata # get partial key # authtoken=`echo ${auth1_fms} | perl -ne 'print $1 if(/x-radiko-authtoken: ([\w-]+)/i)'` offset=`echo ${auth1_fms} | perl -ne 'print $1 if(/x-radiko-keyoffset: (\d+)/i)'` length=`echo ${auth1_fms} | perl -ne 'print $1 if(/x-radiko-keylength: (\d+)/i)'` partialkey=`/usr/local/bin/wget -q -O - ${playerurl} 2>/dev/null | \ /opt/local/bin/swfextract -b 14 /dev/stdin -o /dev/stdout | \ dd bs=1 skip=${offset} count=${length} 2> /dev/null | \ /opt/local/bin/base64` if [ $? -ne 0 -o ! "${partialkey}" ]; then echo "failed auth1 process" 1>&2 exit 1 fi # # access auth2_fms # auth2_fms=`/usr/local/bin/wget -q \ --header="pragma: no-cache" \ --header="X-Radiko-App: pc_1" \ --header="X-Radiko-App-Version: 2.0.1" \ --header="X-Radiko-User: test-stream" \ --header="X-Radiko-Device: pc" \ --header="X-Radiko-Authtoken: ${authtoken}" \ --header="X-Radiko-Partialkey: ${partialkey}" \ --post-data='\r\n' \ --no-check-certificate \ https://radiko.jp/v2/api/auth2_fms \ -O -` if [ $? -ne 0 -o ! "${auth2_fms}" ]; then echo "failed auth2 process" 1>&2 exit 1 fi ### echo "authentication success" 1>&2 areaid=`echo ${auth2_fms} | perl -ne 'print $1 if(/^([^,]+),/i)'` ### echo "areaid: ${areaid}" 1>&2 echo "${playerurl}" "${authtoken}"
3.スクリプトの実行方法  ⇒ 面倒なので省略 ⇒ 「radiko録音(Mac)」、「radiko録音その2(Mac)」、「radiko録音その3(Mac)」    あたりを参照してください。

MacでDDNSの設定など [Mac]

キャリアをUCOMからNTTに変更してみた。で、フレッツ 光ネクスト マンション・ハイスピードタイプにしたってことで
スピードに関しては全然不満は無いんだけど、NTTからのレンタル物品 PR-S300SE(ONU+Router)には今時どこのRouterにもあるようなDDNSのIPアドレス登録更新機能が無いのねぇー。
ってことで、普段電源入れっぱのMac miniにDynDNSのIPアドレス登録更新をさせましょっ!

まぁ、この手の内容はググれは山ほど情報があるので備忘録な感じで。

1.DDNS更新ツールをげっと
$ svn co https://ddclient.svn.sourceforge.net/svnroot/ddclient/trunk ddclient
2.必要なファイルの配置など
$ sudo mkdir /var/cache/ddclient /etc/ddclient $ cd ddclient $ sudo cp -p ddclient /usr/sbin $ sudo chown root:wheel /usr/sbin/ddclient

3.DynDNS用の設定
※ http://www.dyndns.com/support/tools/clientconfig.html にアクセスしてコピった方が間違えなくて良いかも
(1) viで編集(/etc/ddclient/ddclient.conf)
$ sudo vi /etc/ddclient/ddclient.conf ## ddclient configuration file daemon=600 # check every 600 seconds syslog=yes # log update msgs to syslog mail-failure=xxxxxx@xxxxxx.xxxx.jp # Mail failed updates to user ←E-Mailアドレス pid=/var/run/ddclient.pid # record PID in file. ## Detect IP with our CheckIP server use=web, web=checkip.dyndns.com/, web-skip='IP Address' ## DynDNS username and password here login=xxxxxxxx ← DynDNSの登録ユーザ名 password=xxxxxxxx ← DynDNSの登録パスワード ## Default options protocol=dyndns2 server=members.dyndns.org ## Dynamic DNS hosts xxxx.xxxx.org ← 登録した Dynamic DNS hosts

(2) パーミッションの変更
$ sudo chmod 600 /etc/ddclient/ddclient.conf

4.起動方法など
 daemon起動かcron起動かってことですが、OS Xでdaemon起動設定は正直めんどい。ってゆーか個人的にOS X固有のlaunchd設定とか興味も無いのでcron起動な感じで。
$ sudo crontab -e * * * * * /usr/sbin/ddclient -daemon=0 -syslog retry

※ddclientのサンプルには「60 * * * * root /usr/sbin/ddclient -daemon=0 -syslog -quiet retry」とか
 書いてあるけどOS Xの場合、このままではcronから起動がかからないので実行ユーザー「root」を削除しちゃいましょ。
 あと、今時バツバツIPアドレスが切り替わることも無いのですが、とは言えssh使用中にIPアドレスが切り替わって、最長で一時間
 sshが使えないとか、悲しすぎるので1分間隔で起動するように設定。

5.動作確認
(1)PR-S300SEの「切断」ボタンおもむろにクリック、状態が「停止中」であることを確認後「接続」ボタンをクリック
(2)syslogの内容を確認
$ sudo grep ddclient /var/log/system.log | egrep -v "grep|cron" Dec 29 22:53:36 macmini ddclient[27716][27719]: SUCCESS: updating xxxx.xxxx.org: good:IP address set to xxx.xxx.xxx.xxx

(3)DNS正引き
$ nslookup xxxx.xxxx.org Server: 202.238.95.24 Address: 202.238.95.24#53 Non-authoritative answer: Name: xxxx.xxxx.org Address: xxx.xxx.xxx.xxx ← このIPアドレスがPR-S300SE 「情報」→「現在の情報」→                「PPPの状態」WAN側IPアドレス :xxx.xxx.xxx.xxx と等しければOK!

※概ね2分以内(So-netのDNSでためした場合)

6.おまけ
 Macでターミナルからコマンドなんか打ってらんねーよっ!! て方はGUIな「Macintosh/OS X Update Client」とかをどーぞ

Mac Pro (Early 2008)のディスプレイ・カードとか [Mac]

ATI Radeon HD 5870 Graphics Upgrade Kit for Mac Pro が Mac Pro (Early 2008)でも動いたそうで。
ますます欲しい!!

Apple's ATI Radeon HD 5870 Works in 2008 Mac Pro

後はこのカードのMini Display PortにHDMI変換コネクタ噛ませて、Vieraに音声含めて繋がれば完璧かも。でも、この変換コネクタって音声に関しては色々と制約があるみたいなので難しいかな。

この広告は前回の更新から一定期間経過したブログに表示されています。更新すると自動で解除されます。

×

この広告は1年以上新しい記事の更新がないブログに表示されております。