「プログラミング」に関する日記(19)

プログラミング関係の話題。プログラミングコーナーを更新したとか、プログラミングの内容に踏み込んだ話とか。

<前 次>

無題

明日アンパンマンの新しい映画が上映開始ですね。
公式ブログでも「お友達やお母さん、お父さん、おじいちゃん、おばあちゃんも誘って、ぜひ劇場へお越し下さい。」なんて言ってます。
お友達に「大きいお友達」は入るんでしょうかね。

個人的に旬な話題のMSWMMの構造についても少しずつ調べています。
MSWMMのファイルを自分で作るというよりは、MSWMMファイルを解析してそれを元に別なものを作りたいという気持ちがあります。

無題

MSWMMのページを更新しました。
XMLの中身に深く立ち入る前にまず形式的にサンプルに含まれている要素を列挙してみました。
また、情報量が結構多くなってきたのでページの分割もしておきました。

無題

NeoMuplのDLL作ってました。
DirectMusicはとりあえず再生はできるようになりました。再生状態の取得がまだできない状態ですが。
まあ、再生状態の取得は以前にもやっていたことなのでたいした負担ではなかろうと思います。
で、NeoMuplの本体を使ってテストするのはやっぱりテストの自由度に制約が出るので、テスト専用のプログラムを作成しました。
DLLに渡すパラメータを設定するだけの簡素なもので、テストプログラムのほうでは例外処理なんかは一切行っていません。
そして、DirectShowとストリーミング再生の仕組みもだんだん分かってきたので、そろそろDirectShowの再生にも着手できそうです。
多分DirectMusicとDirectShowの間でDirectSoundを共有すればエラーで落ちるなんてことはなくなくはず…。確証はないけど。
あと、従来のNeoMuplはDirectShowでの再生ではループ位置の設定が非常にいい加減でまともなループ再生ができなかったので、今度はサンプル単位で精密なループ処理ができるようにしようと考えています。実現可能かはまだ未知数ですが。

無題

MSWMMのページを更新しました。
とりあえず実例ということで実際に動画の編集に使ったプロジェクトから抜き出したXMLを。
結構いろんなファイルや演出を使っているので意外とサンプルに向いているのかもしれません。
いずれはこのファイルを使って分析とか解説をやっていきたいですね。

無題

というわけでC#版の読み込みプログラムをアップしました。

あと、TGscriptのプロフィールシステムに手を入れています。
アンパンマンDBにもTGscriptのユーザー情報を使えるようにしたいのです。

無題

とりあえずMSWMMからXML部分を抽出するプログラムはできているのでそのあたりをアップしてみましょうかね。
実際のプログラムはXMLのパースを作っているところです。

無題

MSWMMのページもいっぱい書き足したいのですが、そうなると解析用とかサンプル用の動画ファイルやサウンドファイルを用意したほうがよさそうな気がして、そうなると用意するのが面倒で、そうなると結局更新が先送りになってしまうわけで。

無題

MSWMMのXML部分の各要素のつながりを調べています。
UID同士でいろいろ繋がっているようですな。

無題

MSWMMのXML部分の解析を行っています。
ここからいろんな情報をぶっこ抜いて何かできないかと考えております。

無題

とりあえずSilverlightをいじってます。
なんだかいろいろとWindowsアプリケーションと勝手が違いますね。

無題

むむむ!VC#Expressには試用期限があった!
なんだか今回はダウンロード前の情報が少なかったんですよね…。
オフラインインストールもまだできないようだし…。

無題

Visual Studio 2010 Expressインストールしてみました。
まだ起動していませんが、まあ何かに使うことはあるでしょう。
うちのパソコンは一応曲がりなりにもマルチコアなので、並列処理系が楽しみなのです。

無題

明日の更新のために当たり判定のプログラムを書いています。
線分と線分の距離のプログラムです。

無題

スカラーでも配列の配列でも1次元配列に変換してしまうPHPの関数を作ってみました。
実質的には配列のマージに過ぎないのですが、入力がどうあれ必ずスカラーを要素とした1次元配列になるので例外処理が減って便利なのです。

無題

なんかExcelで出力したPHPスクリプトの調子が悪いので調べてみたら、BOMが付いてました。
ファイル先頭にBOMが付いてる→勝手にPHPからBOMが出力される→エラー起こす、という流れでおかしくなっていたようです。
で、BOM無しで出力する方法を探してみたらこんなの見つけました。
http://hpcgi1.nifty.com/MADIA/VBBBS2/wwwlng.cgi?print+200702/07020055.txt
ExcelではADODB.Streamを使って出力しているので、ちょうどいい感じです。

というわけで、アンパンマンDBリニューアルの状況を。
タイトルにしか反応しませんが総合検索ができます。

1261925877.png

無題

UTF-8での保存は意外と簡単でした。
http://d.hatena.ne.jp/so_blue/20080617/1213670472
CreateObject("ADODB.Stream")を使うといいみたいですね。
VB標準のファイル出力とは異なる方法ですが、こだわらなければなかなか楽です。

無題

microtimeの差分についてのページを更新しました。
呼び出し方による精度の違いなんかも出てなかなかいい感じの記事になりましたのです。

OpenOffice Baseのフォームの取り扱いのほうも分かってきたところです。
なんだかんだでAccessを使っていたときの経験は役に立っているようです。

<前 次>