ファイルの分別(中)

ドロップレットAfter Effectsで出力した連番やQTを整理するスクリプト。実は、運用やワークフローがどれだけ考え抜かれているかを示す「試金石」のようなものです。

スクリプトでうまく処理できない運用ルールやワークフローは、未発達で穴が多い、もしくは、理路整然としてなくて複雑である証拠です。複雑怪奇な運用ルールは、コンピュータだけでなく、人間も往々にしてミスを連発します。「IF分岐が多過ぎる」と言いますか。

誰もが短時間でルールを理解できる運用方針は、その運用の過程で働く人間に優しいのはもちろんの事、コンピュータでも処理しやすいのです。

複雑で大風呂敷を広げたフローは、素人さんは「すげー」とか関心しがちですが、多様な現場に接してきたプロの目からすると、「メンテが大変そう。もっとシンプルにできなかったんだろうか‥‥」と気の毒になるフローです。複雑なフローはそれだけで、時間やお金、体力とメンタルに、負荷を及ぼすからです。
*納得ずくで背負い込む覚悟の作品もあるでしょう。その場合は金と人と時間に対して覚悟する‥‥という事ですネ。

シンプルで澱みがなく、INOUTが明確であるのが理想ですが、「一生懸命取り組むほどに、フローや運用を複雑にしてしまう」事も少なくありません。運用上の笑い話で「チェックが甘いからこのようなミスが出るのだ。ならば、ちゃんとチェックしたか、さらにチェックするようにしよう。」なんてのがあります。「なぜミスが出たか」を解消しようとはせず、チェックだけを何重にも上乗せしていく‥‥のは、誰もが「馬鹿っぽいやり方」だと感じるはずなんですが、結構、ありますよネ、そういうの。

さて‥‥。「地獄絵図のようなごちゃ混ぜのフォルダ」内から、連番ファイルを抜き出し、カットごとのフォルダにまとめるスクリプトですが、まずはファイル名から「カット名」(今回の場合「クリップ名」と呼んでも)を抜き出す方法から。

anime_01_123_t1_0001.dpx

上記のファイル名は、「anime」という作品略号の、「01」話、カット「123」、テイク「1」の、連番1フレーム目のDPXファイルです。

まず、ドットで分解すると、

anime_01_123_t1_0001 dpx

‥‥の2要素になり、さらに分解した1番目の要素を、アンダーバーで分解すると、

anime 01 123 t1

‥‥のように、カットの情報をカテゴリで分解できます。

今回の分別処理は、「作品、話数、カット番号、テイク」をひとかたまりとして扱い、分別しようと思います。つまり、

anime_01_123_t1_0001.dpx から anime_01_123_t1 を抽出したい

‥‥わけです。

何が入っているか特定できない状況において、ファイル名から「作品_話数_カット番号_テイク」を抽出し、その文字列をキッカケにしてファイルを収集する‥‥わけですネ。


さらに次。

何千項目入っているか数がわからないフォルダを相手に、Finderでファイル数を数えようとして「count of files」なんてやったら、またレインボーカーソルかも知れません。ここはひとつ、「ファイルの総数なんて数えないで、先頭のファイルからどんどん喰っていく」やりかたで処理します。「わんこそば」のように、「目の前にある項目を処理していく」やりかたです。

何度も書いてきた通り、大量の項目を処理しようとすると、Finderは破綻するわけですから、Finderには項目を1つだけ渡して順次処理するようにすれば、破綻せずに済みます。あくまで「使いよう」を考えます。

処理ルーチン上で、ファイルをひとつずつ処理し、条件に合った場合は、ファイルを収集して新規フォルダに移動します。これを、ファイルに全部目を通しきるまで、繰り返して処理します。

処理に適合する条件は、

  1. DPXファイルであること
  2. カット名を含んでいると予測できるもの

‥‥の2種です。もっと条件を増やしても良いでしょうが、カット名(らしき)を含んでいて、DPXファイルであれば、かなり特定できますから、今回はシンプルなこの2つの条件だけで処理します。

  • DPXファイル→ファイル名が「.dpx」で終わる
  • カット名を含んでいる→アンダーバーで文字列分解して要素数が5以上のもの

‥‥まあ、条件が甘いような気もしますが、運用とワークフローの前提が「そこそこ、要素を絞り込んでくれてる」ので、これでも充分上手くいきます。



‥‥と思ったら、またこんなに文がかさんでおる。なので、締めは次回に。




calendar

S M T W T F S
  12345
6789101112
13141516171819
20212223242526
2728293031  
<< August 2017 >>

selected entries

categories

archives

profile

search this site.

others

mobile

qrcode

powered

無料ブログ作成サービス JUGEM