J言語でのデータ編集&保存

J言語でのデータ編集&保存をする方法のメモ

##実行方法
#スクリプトのロード
load 'files'         #これがないとfwritesが実行できない
load 'misc'        #これがないとchopが実行できない

#行列から一列目を取り去る方法
hoge2 =: }."1 hoge
#行列から最後の一列目を取り去る方法
hoge2 =: }:"1 hoge

#行列から一行目を取り去る方法
hoge2 =: }."2 hoge
#行列から最後の一行目を取り去る方法
hoge2 =: }:"2 hoge

#boxから数値に直す方法
hoge2 =: ".&> hoge

#テキストデータなどからTABや,やスペースを取り去る方法
hoge2=: TAB chop "1 hoge
hoge2=: ',' chop "1 hoge
hoge2=: chop "1 hoge    #デフォルトではスペースを取り去る

#制作したデータをセーブする方法
hoge fwrites 'hogehoge'
これでユーザーディレクトリ以下に保存される



J言語でムービーファイルを扱う

Jでムービーファイルを扱う方法のメモ





##実行方法
#参考WebSite
http://ww2.lafayette.edu/~reiterc/j/image3help/movie3.html

#注意
ムービーファイルに特殊なコーデック(H.264とか)が入っていたり,色データが特殊だったりする場合はエラーが出て読み込めない
対処法としてはQuickTimeProなどを用いて読み込めるデータに変換するなどの方法がある
お奨めの変換設定としては
+++++++++++++++
データ形式:QuickTimeムービー(*.mov)
サウンド:なし
ビデオ…
圧縮:PNG
色の深さ:約1670万色
+++++++++++++++
で読み込めるはず.対応する圧縮形式などは上記のWebSiteを参照のこと

#addonsのロード(image3が必要なので,事前にダウンロードしておく)
load'~addons/media/image3/movie3.ijs'
#ムービーファイルの読み込み
all_frames=.qt_get_all_frames '/hogehoge/hoge.mov'
#スクリプトファイルの読み込み
require'~addons/media/image3/view_m.ijs'

#動画情報の表示
$all_frames
26 400 400 3

意味としては
26フレーム・動画サイズ(400*400)・1670万色(RGB)
な感じだと思う

#第一フレームの表示
view_image 0{all_frames

#第二フレームの表示
view_image 1{all_frames

#動画情報の表示
qt_track_info '/hogehoge/hoge.mov'
400 400 3 26

#フレーム数の表示
mov_l '/hogehoge/hoge.mov'

#動画サイズの表示
mov_wh '/hogehoge/hoge.mov'
400 400

trackの概念がよく分からないけど,多分DVDのチャプターみたいなイメージなのだろうか?
数秒のデータならそれなりに扱えるけど,フレームごとに色情報見てるみたいだから,数分~数時間だとデータ量が多くなるだろうし…
数分おきにtrackに分けて,何トラックの何フレーム目を表示みたいな感じかな?