2008年9月アーカイブ

Googleは、ガイドラインに違反した場合(インデックスから削除される可能性がある場合)、Googleウェブマスターツール内のメッセージセンターに警告を送ってくれる。Googleウェブマスターツールへの登録は必須。

FFmpegでH.264/AVC FullHD動画を変換しようとすると、下記が何度か出力され、セグメンテーション違反に。

[h264 @ 0x470188]AVC: Consumed only 180915 bytes instead of 180924
[h264 @ 0x470188]PAFF interlacing is not implemented
[h264 @ 0x470188]AVC: nal size 0
[h264 @ 0x470188]concealing 4080 DC, 4080 AC, 4080 MV errors

2行目、「PAFFインターレースは未実装」というのが原因。FFmpegが使用するlibavcodecのH.264デコーダがPAFFインターレースに対応していないらしい。現在使用しているFFmpegはバージョン0.4.9、libavcodecはバージョン51.40.4。
最悪、ローカルでソフトを起動して変換してWeb用にアップ、とすればいいんだけど、やはりサーバに放り込んだら自動的に変換するのがベスト。

FFmpegの現状を調べてみると、次期リリースにちゃんとPAFFデコードの実装予定が入ってる。

version <next>
(中略)
- H.264 PAFF decoding

ただ、0.4.9-pre1の時点でも実装予定だったものらしいので、次で出てくるかどうか...。

現時点で何とかするには、CoreAVCを使うといいらしい事がちらほら書いてあった。CoreAVCは元々Windows用で$15らしいけど、下記のLinux版は無償。ただ、どうもプレイヤーのパッチだけっぽい。

参考

追記:2009.4.9

バージョン0.5でPAFFデコードに対応。これで手元のHD動画も変換できる。自前のビデオライブラリー作ろうっと。

MTEntriesブロックタグにおいて、子カテゴリに属する記事も出力するためのinclude_subcategoriesモディファイア。
これは、MTEntriesタグにcategoryもしくはcategoriesモディファイアを用いた場合のみ機能する。

カテゴリインデックスの場合、MTEntriesタグによって該当のカテゴリの記事のみが出力されるのがデフォルトなので、わざわざcategoryもしくはcategoriesモディファイアを用いたりしない。しかし、Aというカテゴリインデックスにおいて、その子カテゴリであるAA、ABカテゴリの記事をまとめて出力したい場合、include_subcategoriesを用いても機能しない。記事それぞれの、第2所属カテゴリとして、カテゴリAを指定しないと望んだように表示されない。categoryもしくはcategoriesモディファイアを用いてしまうと、今度はカテゴリAおよびAA、ABそれぞれのテンプレートを用意しないといけない。

イマイチな実装だなぁ。それとも理解不足なのか?普通、カテゴリAにおいてMTEntriesを用いたら、それだけでAA、ABの記事が出そうなものだけど。

追記:2009.01.19

categoryもしくはcategoriesモディファイアが無くても機能するが、Aカテゴリに記事が1件もない場合、AA、ABカテゴリの記事も出力されない、という不具合の様子。AAもしくはABカテゴリの記事を、1件でもAカテゴリに属させると表示される。

MTCategoriesやMTSubCategoriesには、MTEntriesのようなsort_byモディファイアがない。それを解決し、任意の順序でカテゴリーやフォルダを出力できるプラグイン。

PHPコア関数

  • getopt()
  • gc_collect_cycles()
  • gc_enabled()
  • gc_enable()
  • gc_disable()
  • class_alias()
  • get_called_class()
  • get_extension_funcs()
  • forward_static_call()
  • forward_static_call_array()
  • quoted_printable_encode()

Array

  • array_replace()
  • array_replace_recursive()

Date

  • date_add()
  • date_sub()
  • date_diff()
  • date_parse_from_format()
  • date_create_from_format()
  • date_get_last_errors()

MovableTypeには、タイプごとに様々な拡張ソリューションパックが付属し、それぞれの機能を実現している。

Commercial Pack
Movable Type Commercialのみに付属と思われる(明確な記述がない)。これがないと、MTEntriesのsort_byにカスタムフィールドを使用できない。
Community Pack
Movable Type、Movable Type Enterpriseに付属と思われる。多数の投稿者によるグループ・ブログや、ユーザー参加型のブログ・サイトを運営することが可能になる。
Professional Pack
MTOS以外の全てに付属と思われる。ブログではなく汎用ウェブサイトに向いたテンプレートなどが含まれる。
Enterprise Pack
Movable Type Enterpriseのみに付属。Enterprise版の機能を実現するパックと思われる。

もっと細かく調べたかったものの、総じて、MovableType、Six Apartのサイトはあるべき場所に情報がなく、情報も部分的だったりして、非常に分かりづらい。

この場合、値の区切りにカンマが必要となる。カンマの出力にはMTEntriesタグのglueモディファイアを使用する。

<mt:Entries glue=","><$mt:EntryID$></mt:Entries>

出力結果は以下のようになる。

10,9,8,7,6,5,4,3,2,1

IE PNG Alpha Fix v1.0

| カテゴリ:JavaScript | コメント(0) | トラックバック(0)

MSIE 5.5、6.0でPNGを使えるようにするビヘイビア。IE PNG Fix - TwinHelixからダウンロード可能。これはダウンロードZipに含まれているiepngfix.htmlの和訳かつ要約。

1. IDを変数としてセット。ウェブページの場合はPageID。
<mt:SetVarBlock name="nav_on"><$mt:PageID$></mt:SetVarBlock>
2. mt:Ifで条件分岐。このように、ElseをElseIfの中に、その2つをIfの中に入れないと正常に機能しない。
<mt:If name="nav_on" eq="11">
	<$mt:Include module="トップページの詳細"$>
<mt:ElseIf name="nav_on" eq="12">
	<$mt:Include module="トップページの詳細"$>
<mt:Else>
	<$mt:Include module="ウェブページの詳細"$>
</mt:Else>
</mt:ElseIf>
</mt:If>

TwitThis

今読んでいる記事をTwitterに投稿