MacでASFRecorder

MacでASFRecorder



mmsやrtspプロトコルで送られてくる動画はブラウザやHTTP/FTPのダウンローダでは保存できません。
WindowsならStreamBoxと言うソフトで保存できますがMacでは使えません。
ただmmsで送られてくるWindowsMediaファイルはASFRecorderでも保存できます。
ASFRecorderはANSI Cで書かれたソースがあるのでMacでもコンパイルすれば使えます。
ということでコンパイルの仕方を非常におおざっぱに説明します。
Mac OS Xでは以下の手順で使えます。

1. ソースを落としてくる。
ASFRecoder.zip で検索すれば色んなところにあります。ここには置かないので適当に探しましょう。
落としたら解凍して中のsourceというフォルダにあるasfrecorder.cというファイルをホームディレクトリに
コピーします。
2. DeveloperToolをインストールする。
OSのパッケージ買った人ならDeveloperCDがついてたはずです。プリインストールの人はADCに入れば
無料で落とせるらしいです。
3. コンパイルする。
Terminalを起動して
cc asfrecorder.c -o asfrecorder
でリターンを押せば直ちにasfrecorderというファイルができます。自分のホームディレクトリにbinと言うフォルダ
を作ってそこに入れておきましょう。使うにはTerminalでasfrecorder のあとに動画のURLを入れます。
たとえば
asfrecorder http://www4.wakwak.com/newstar/asahi/726.asx
asfrecorder mms://stream1.portal.wakwak.com/newstar2/726.wmv
などです。asfrecorderとだけ打てば英語の簡単なヘルプが出てきます。


動画を落とすたびに毎回Terminalで打ち込むのが嫌なら、Script Editorを使って新規書類に
display dialog "URL" default answer "mms://~"
set argv to (text returned of result)

tell application "Terminal"
do script with command "asfrecorder " & argv
end tell
と打ち込んでアプリケーションとして保存すれば少しは楽かもしれません。


OS 9以下でASFRecorderを使おうと思ったらAppleのFTPサーバーにあるMPW(もしくはCodeWarrior)と
フリーで入手できるバークレーソケット互換ライブラリー(GUSI)をとってきてコンパイルする必要があります。
ソースはそのまま書き換えずに使えますが設定などが色々とややこしいので詳しくは書きません。(もううろ覚え)
興味のある人は自分で調べてみてください。

StreamBoxみてるとrtspも基本的に同じ様なことしてるみたいなんだけどだれかMac版作ってくれないかな....


02/08/01
気が変わったのでコンパイル済みバイナリupしました。
ASFRecorderOSX.dmg.gz
ASFRecorderPPC.lzh
asfrecorder.zip元にしたソース
OS Xの方はasfrecorderのファイルを、自分のホームの下にbinフォルダを作ってその中か、あるいは。/usr/local/binの下(Finderでは見えません)などに入れて
パスを通してください。
シェルの設定など全くした事がないというひとは、terminalでOS 10.2の場合は
echo 'source /usr/share/tcsh/examples/login' >> ~/.login
OS 10.1の場合は
echo 'source /usr/share/init/tcsh/login' >> ~/.login
と一回だけ打ち込んでみて下さい。何回も打ち込むとTerminalの起動が遅くなります。そのあと
cat ~/.tcshrc
と打ち込んでみると''の中身が表示されるはずです。''の中身が何行も続いている場合は
open ~/.loginでテキストエディタが開くはずですので重複している行を削除して保存して下さい。
上手くいったらterminalを再起動してみて下さい。
~/binにパスが通るはずです。
IDとパスワードがいるところでは-aのオプションをつかって、
asfrecorder -a userID:password mms://○○.asf
の形で入力してみて下さい。
おまけのApplescriptを使うと保存されたストリームは自分のホームに置かれます。
PPC版の方はfgets()でオプションを入力するSIOWアプリにしてあります。
手を抜いて一部MITのライブラリを使ってるので同じフォルダに入れておいてください。
LZHがStuffItで正しく解凍できない場合、MacLHAなどで解凍して下さい。
起動したらURIやオプションを入力します。例えば「-m 30」のオプションを入れたい場合は「-m」で改行、つぎに「30」で改行です。
普通はプロンプトがでたらURI(「mms://○○.asf」とか「http://××.asx」)を打ち込んで二回改行すればOKです。
SIOWのバッファの都合上ログは1%おきにしか表示しません。
PPC版は保存されるファイルのサイズが少しおかしいです。使ったライブラリのバグかもしれません。
私には手の出し様がないので諦めてください。

たまにMediaPlayerでは見れるのにasfrecorderでは404-not foundになる場合ありますがそのときは諦めてください。
くわしくは元のソースに付いてたREADME.TXTを見てください。
それとは別にうちの環境では読売新聞の所の動画が正常に保存されませんでした。ただ、Win上でも同様だったので
うちのネットワークの問題かあるいは読売新聞のサーバーが何か特殊な事をしている可能性もあります。

最近、unix系でmmsを保存できるmmsclientと言うソフトがでてきました。
これもOS Xでコンパイルすれば動かす事ができます。
具体的には、ソースのmms_client-0.0.3.tar.gzをとってきてStuffitなどで解凍、Terminalで
できたフォルダまで移動して「./configure」とうちます。しばらくずらずらと文字が出てきて
終わったら「make」とうち、またしばらく待つとmmsclientのできあがりです。
後は同様にパスの通ったところにおいてmmsclient mms://〜〜/○○.wmvなどと打てばダウンロードできます。
mmsclientの方がダウンロードできる場合がおおそうな気がするけど実際はどうなんだろう?




戻る