thank you for your access



 デジタル降魔録・更新情報



初めてのFlash PIC
【 初めてのFlash PIC 】詳細


【 肝とりカツ 】詳細



音ネタバイキング 5000
製作:D-space KEYOSS
販売:(株)アートグローブ

ゲットFlash クーリングオフ代行手続専門法務事務所 mayu search タウンネット・コム



当ホームページはリンクフリーです。

リンク後メールを頂けましたら、相互リンクさせていただきます。

ご感想などもございましたらこちらからお寄せください。

なお迷惑メールが大変多くて困っております。できましたら件名に『デジタル降魔録を見た』とお書き添えください。よろしくお願い申し上げます。


バナーは下記の物をご自由にお持ち帰りください



このたびは、D-space KEYOSSが運営するデジタル降魔録をご訪問いただき、誠にありがとうございます。ここはパソコンと日々を暮らす私が語る超ニッチなサイトとなっております。

2023年 5月21日(日)26℃(午前 8時 2分)

初カツオの銀づくり……

進む

昨日の夕刻前に映像に使用する素材待ちがおきてしまい、久しぶりにゆったりとした夕餉(ゆうげ)を迎えることになったのですが、さてこの時間どう過ごそうかと考えているところへ、カミさんがカツオの半身を買ってきたと告げて、しかもセミ(背身)は皮を引いて、ハラミ(腹身)はそのままにしてもらってきたとつけ加えたのです。

 おぉぉ、ワタシの好みをよくご存じで……。

 腹のほうの皮は銀色の光沢が美しく、思うほど硬くなくクチに残らないので、鮮度のいいのにあたると抜群にうまいのです。
 そして我が家ではカツオの刺身はニンニクのスライスと醤油のみでいただきます。他の薬味がどっさり載っているのはあまり好みません。

 ということで。

 それは、でかしたとばかりにさっそく調理。包丁を握るのは、ワタシでございます。
 普段キーボードとマウスしか握っていませんが、包丁もナタも鎌もにぎれるんです。何度も書きます。ワタシはソロキャンパーの先駆者だと自負しています。なのでナタを使っていて山中で大けがをしたこともあります。"刃物は怖いョ"
(この話はいつかどこかでまとめたいです)


ニンンクスライスと醤油のみでいただきます

銀の光沢が美しい季節感たっぷりの肴をあてに、ビール、冷酒、ウィスキーと夕餉のシーケンシャルアクセスはサクサクと進むのでした。
 ちなみにカミさんが拵えた山椒の佃煮も今年はとくに絶品で、これを添えて作られた鯛のアラ煮では、例外処理が起動したことがありません。


 どうしてもデジタルから離れられないのです。  ( ̄ω ̄;) アホ~





2023年 4月27日(金)20℃(午前 7時 2分)

缶詰から解放……

進む 戻る

東京ビッグサイトとインデックス大阪で開かれる 教育総合展 EDIXで使用されるプロモーション映像と製品の紹介動画を作るお仕事をいただき、ずっと缶詰生活を強いられていました。

 缶詰といっても、決してサンマを缶に詰めて空気を抜いていたのではありません。パソコンに向かって座っていました。3月後半からずっとです。朝4時から午後7時まで、サクラの開花時期は完全に缶詰め状態で、外の空気を吸うこともなく週休ゼロ日。その間に中学算数アニメーションを7本掛け持ちで作っていたこともあり、サクラが例年よりも早く咲いたことを知ったのも、満開だぁ、と騒いでいるのを知ったのもテレビのニュースです。ホンモノの花を見ることもなく、やっと仕事場から抜け出したときには葉っぱになっていました。

 展示会で使用されるプロモーション映像の制作をご依頼いただいたのは今年で 3回目です。続けさせていただくというのはありがたいことで、今回は張り切ってオープニングのシーンを 3Dで作りました。やはりリアルに奥行きが表現できる映像は、2Dとは異なる躍動感を加えることができますので、見ている人の視線を集めるのに、光と3Dは効果的なんだと痛感しました。
 もし展示会に足を運ばれることがありましたら、「超ぉぉ~~~」とかわいらしい声のするプロモーション映像を探して、ぜひご覧になってください。缶詰生活の結晶でございます。


 ステイホーム 命!    ( ̄ω ̄;) アホヤ~





2023年 3月27日(月)21℃(午後 4時25分)

APNGは使えるのか……?

進む 戻る

APNGがGIFアニメより優秀なのは解りました。ですがそれ以上に秀逸な mp4があるのになぜにここにきて APNGなのか。どこに利点があるのか……考えてみました。

 動きの滑らかさは mp4に負けますし、作った APNGデータを Wクリックしたって静止画として扱われるので動きません。特別なプレーヤーが必要ですが、それが無くても対応するブラウザ(Chromeや Edgeなど)でなら、誰でも動くところを見ることができます。つまりネット環境専用と言い切ってもいいかもしれません。

 そんな APNGですが、ホームページなどで動くアイテムとしての取り扱いが簡単なのです。なにしろ PNG素材の拡張ですから imgタグで括るだけで あとは cssで自由にレイアウトできます。

 mp4になると Videoタグを利用するのですが、それだけではなく再生に関するコントローラーをどうするかとか、シークバーが邪魔だとか、音が鳴る映像だと自動再生ができないとか、iPhoneだと "playsinline"を書かなきゃ動かんぞ、とかうるさいことがいっぱいです。

 APNGだと音は出ませんので自動再生します。ただループ再生にしたら止めることができないようなので、何回ループしたら止まる、などの設定をするしかなさそうです。

 そこで、どこまで画像と同じ感覚で使えるか試してみました。

 次のサンプルはマウスが載ると画像が換わる javaScriptの『onmouseover』と『onmouseout』イベントを利用したおなじみのものです。スマホはマウスオーバーがありませんので『onclick』も追加してあります。また htmlと cssはどちらも 指定するファイル名が異なるだけで他は全く同じものです。

 左のボタンが従来の静止画を利用したもので、右が APNGファイルを使っています。よければマウスを載せてみてください。あるいはタップしてみてください。

  

動かなかった画像が綺麗に回転しています。もちろんこの回転する映像は C4d Lで作ったもので、After Effectsでドロップシャドウを付けました。

 マウスオーバーとマウスアウトの画像ですが、動かないものは 27.4KBと13.5KBで、APNGは190KBと228KBです。お世辞にも軽いとは言えませんが、透明処理もありで自由に動かせて気軽に使えるという点は申し分なさそうです。





2023年 3月26日(日)18℃(午後 5時16分)

APNGとな……?

進む 戻る

先日、いつもの Kプロデュサーが率いる会社でデザイナーをしている Sさんと電話で話しをしているときのこと。
「――あ、そういえば、APNGって知ってますか?」と Sさん。
「なにそれ? 初めて聞くなぁ」
「このあいだクライアントさんに APNG作れますか? と尋ねられて困ったんですよ」

 Sさんも知らなかったようで、もちろんワタシも初耳。
「なんか、PNGを使ったアニメーションのようです」と Sさんから聞いたらじっとしていられない性分のワタシです。すぐに調べてみます、と電話を切りさっそくネットをさまようこと十数分。

 はやい話が、GIFアニメの PNG版で、APNG(Animated Portable Network Graphics:エーピング)だと判明しました。
 しかもずいぶん昔から登場していたらしいのですが、mp4の動画に落とすほどでもない小規模のアニメーションを動かすフォーマットで、ここ最近注目されてきたのは LINEなどに使われる動くアイコンにぴったりらしく、にわかに陽が射してきたようです。

 GIFアニメといえば、Flash全盛前から盛んに使われてきた GIFフォーマットを利用した簡易動画用ですが、それを再生する機材が パソコンだけでなくスマホやタブレットに広がり、画質が向上した今では、画像の輪郭が汚い、色数が少ない、透明処置もできない、など欠点ばかりが目立って敬遠される中での APNGの登場です。

 ネット上では APNG用のアニメーションを Adobe Animateで作る紹介ばかりが目立っていましたが、アニメーションを作って連番の PNGに落とせば、あとはそれを圧縮して APNG用にフォーマットしてくれるアプリを準備するだけなので、アニメーションが作れるものなら、なんでも APNG化することができるようでした。

 そこで早速やってみることに……。
 完成アニメーションはパソコンの中にゴロゴロ転がっていますので、とりあえず After Effectsで作ったモーションぽいのを Media Encoder経由で 連番PNGを作ってみました。
 ちなみに 連番 PNGデータというのは、ファイル名に連番が付けられたもので、ペラペラ漫画のページがその番号に相当します。
 今回テスト的に使ったのはフレームレートが 30fps(1秒間に 30枚の絵)で、6秒ちょっとのアニメーションですので、できあがった PNGデータは184枚でした。


Media EncoderのPNG設定です

Media Encoderの書き出し設定を PNGにして、プリセット欄をクリックすると Dynamic Linkの設定画面に切り換わりますので、その中にあるビデオ設定の【シーケンスとして書き出し】にチェックを入れて書き出せば、連番になったPNGが吐き出されます。


 次に 184枚の連番 PNGデータを APNGフォーマットに変換するソフトですが、いろいろなものが出回っているようで、ワタシは APNG Assemblerを選びました。

 APNG Assemblerは、https://apngasm.sourceforge.net/からダウンロードできます。
 ダウンロードされた exeファイルは、インストールいらずの実行型ファイルです。好きなフォルダに入れて起動させるだけです。念のためウイルス検査をしましたが問題なさそうでした。



APNG assemblerのフレームレート設定です

連番の PNGデータを全選択後、APNG assemblerの Input Files欄にドラッグして落とすだけです。
 フレームレートは改めて設定する必要があるらしく、Delays-All Frameのダイアログで 1/30にすると 30fpsに設定されました。
 出力先と出力ファイル名をセッティングできたら、Make Animated PNGボタンを押すとアセンブル開始(assemblerと謳ってますのでアセンブルしているんでしょう)。約 4分ちょっとで終了しました。

 映像のサイズは 400×400pxで、わざと透明部分を作ったうえに色を大量に使ってみました。

 APNGデータをエクスプローラーで見る限りただの PNGファイルですし、ビューワで見ても静止画のPNGとして扱われますので動きません。でも対応しているブラウザで見ると下のとおり。
 左が APNGで、右が GIFアニメです。左の APNGはバックが透明ですので黄色い背景が出ていますし、色も鮮やかですが、GIFアニメは透明部分が真っ黒なのと、色数が限られている GIFにはこの映像は酷でした。
 参考までに、3つ目の映像は mp4の動画です。

完成した APNGの容量は1.69MBでした。連番 PNGの総容量は 4.78MBもありましたので、かなり圧縮されているのがわかります。GIFアニメも意外と軽く、1.25MBと頑張ったのですが、透明処理ができないことと発色数が限られているのは、やはり今の時代にあっていないのかもしれません。

 3つ目の mp4は、VBR 2Pass、ターゲット 1.8Mbps、最大10Mbpsでエンコードして 902KBです。この滑らかさと色の鮮やかさでいて、かつこの中で最も軽いとは……。さすが mp4は秀逸ですね。
 ターゲットを 4Mbpsぐらいまで上げるともっと輪郭もきれいになると思いますが、今回は APNGの話ですので控えておきます。

 それにしても……。
 Flash全盛のころに 3つもぐるぐる回る動画を垂れ流していたら、重くてパソコンが動かんぞって、叱られたものですが、スマホで見てもサクサク動いてます。ああ、時代は変わったんですね。


 じじぃかっ!    ( ̄ω ̄;) アホヤ~



補足:
htmlでの扱いも PNGや Jpg画像と同じで imgタグを使うだけでした。ただし APNG非対応のブラウザに対しては JavaScriptの記載が必要だそうです。かといっても現時点での非対応なのは iEぐらいですが、詳しくは『Can I us』をご訪問ください。




2023年 3月22日(水)22.5℃(午後 1時15分)

いまはまっているもの……。

進む 戻る

今というか、ずっとはまっているものがあります。それは金属の光沢を表現することです。

 思えばン十年前。業務用のメダルゲームに使う各種のイラストを作る仕事をしていたときです。子供用のメダルゲームですので、絵のリアルさはそれほど必要なく、拙いワタシの技術力でも可能なほどの内容でしたが、その中で大当たりで登場するゴールドメダルの色出しがどうしてもできず、でき上るのはゴールドとは程遠い黄色い物体ばかり、

「これってミカンの輪切り?」と訊ねられる始末。
「いちおう金のメダルです……」
 と恥ずかしげもなく答えていました。

 ゴールドだけでなく金属の光沢を映像に再現するのって意外と難しいものです。実物の写真を使うわけにはいかず、それより写真であってもそれらしく輝いてくれないのが金属の光沢です。
 その後、PhotoShopなどを利用していろいろ研究したのですが、何しろ画才の無いただのエンジニアには尋ねる人もおらず、学習するのはネットと自力研究だけですので、えらく時間が掛かってしまいました。

 身の丈にあったツールとして利用できたのは After Effects(以降Aeと書きます)に搭載された Cinema4D Lite(C4d L)でした。

 でき具合はこんな感じです。


ツルツルに磨かれたメタル製のメダルです



銅製のメダルです



シルバーメダルです



ゴールドメダルです

Aeは使っているけど、C4d Lは使ったことが無いという方には強くお勧めしたいツールです。Aeのプラグインとは少し異なる本格的な 3Dソフトとして独立して使用可能ですし、Aeをお持ちの方ならすぐにでもスタートできる3Dツールで、Aeの 3Dモードとはまったく別格のものですので、ぜひ慣れていただきたいです。

 上のオブジェクトは反射チャンネルに『デフォルトスペキュラ』と『Beckmann』を重ねてあるだけで『Beckmann』は【減衰】を『平均』に、【表面粗さ】は『1%』ほど、【鏡面反射強度】は『26%』ほどです。ごく当たり前の設定値ですが、このマテリアルだけでは金属に見えません。やってみるとわかります。真っ黒い物体か、ミカンの輪切りになるのが落ちです。金属が金属らしい光沢を現すのは映り込みの美しさだとようやく悟りました。

 時間ができたら『CINEMA 4D やってます』 でまとめてみたいと思っています。





2023年 3月 1日(水)12.5℃(午前 7時 5分)

やっと終了(最終話)……。

進む 戻る

AdobeのPremiere(以降 PRと書きます)で行う、文字起こし作業の悪あがきを書き綴った最終話です。

 これまで、学年別の漢字だけをヒットしてくれる検索システムを作ったり、140個の置換作業を一度に行ったり、手打ちでしかできないと思われた句読点や小数点を、すぱららら~と、こなしたりして効率を上げる努力をしてきたのですが、自動文字起こし機能が吐き出した長文を、字幕として適度に切ってくれるキャプションの作成処理がうまく機能してくれないために、どうしても手直しをしなければいけないという作業が最後の難関となりました。

 例えばこのような文があったとします(教材なのでこのようなナレーションばかりです)
 さいしょに女の子が24人、男の子が28人いました。
 ふつうならこのままか、音声の切れ目に合わせて、
 さいしょに女の子が24人、
 男の子が28人いました。

 と二つの字幕に分かれてくれるといいのですが、そうではなくて。

 さいしょに女の子が
 24人、
 男の子が28人
 いました。

 とか、

 さいしょに女の子が24人、男の子が
 28人いました。

 となったりすることが多いです。

 原因はよくわかりません。音声が途切れているためにそうなるのでしたらそれでいいのですが、続けて喋っているにもかかわらず、変な位置で字幕が切れており、気づくと細切れの字幕が並ぶことがあります。

 何かいい方法はないのかと探っていると、字幕を切りたいところに全角のスペースを入れると、うまくその場所で切れることを発見しました。

 これはいいかも……。
 と笑んだのですが、単純に全角スペースが行頭へ移っただけでした。それでも確実にそうなるのでしたら、何らかの対策が打てると思って何度も試したのですが、結果は安定せず、常にバラバラでした。切れるときもあれば、切れないときもある、どちらかというともっとバラバラになる始末。

 どこで切るのかルールも発見できずで、これだけは今後のアップグレードを待つしかありません。仕方がないので、発生するたびにキャプションを連結していくこととしました。

 ただ、なんでも連結していくと、字幕が桁数をオーバーして改行されますので、適度なところで、こんどはキャプションの分割をして調整します。
 これらの作業に意外と時間を費やしてしまい、いままでやってきた時間短縮の努力が台無しです。

 そこで考えました。いま障害となっているのは何か。
 まず再生と停止を繰り返しつつ、日本語での文字修正をすること。そしてキャプションの分割、あるいは連結作業にマウスを多用することです。

 一つ一つ対策案を考えました。
 ふつうにやっていたら、PRの再生と停止はキーボードのスペースキーです。でも日本語モードになっていると、いったん英語半角モードに戻してからスペースキーを叩くことになり、日本語の修正するときは、また日本語モードにすることを強いられます。この動きが著しく効率を低下させます。

 そこでだいぶ前にも書きましたが、再生・停止はキーボードの『F1(ファンクションキーの1)』にキーボードショートカットを変更します。これだけで、日本語モードのままにしておいても再生と停止ができます。

 これで右手はマウス、左手はキーボードのF1キーに置いておき、キャプションパネルの任意のキャプションへマウスホイールで移動して、F1を押して再生。おかしな点があればF1を押して停止、すぐにマウスでそのキャプションをWクリックして修正モードに入って修正。終わればまたホイールをぐりぐり回して次へ移動、とまあ、かなり楽になります。

 おかしな字幕の切れを修正するときは、キャプションの分割、あるいは連結を利用します。起動アイコンはキャプションパネルの上にある二つのアイコンです。マウスを載せると 説明が出ますのですぐわかりますが、ちょっと問題になるのはキャプションの分割です。分割と謳(うた)ってますが、単純にキャプションを複製するだけです。
 同じキャプションが二つできるだけで、手動でそれぞれのキャプションの必要な部分を切り分ける作業を強いられます。しかも分割した部分が音声とずれることがほとんどですので、こんどはキャプショントラックをいじることになります。

 音声と字幕を合わせる作業を具体的に書きますと、キャプショントラックはシーケンスパネルの最も上のトラックに貼りついたオレンジ色のクリップなのですが、その分割した部分の前半のout(終了)位置と後半のin(開始)位置をマウスで動かすことになります。

 ふつうにやれば、out位置とin位置を交互にマウスでドラッグして修正するのですが、こんなチマチマしていたらノルマに達しなくなります。そこで『ローリングツール』を使います。これはほとんどすきまの無い二つのセグメントの接続部分を同時に動かすことができるツールです。これだけでも少しは効率が上がりますが、このツールも日本語モードになっているとキーボードショートカットがきかないので、これを『F3』に変更。もとの選択ツールに戻すキーボードショートカットを『F2』にしました。

 それよりキャプションの分割がけっこう時間を食いますので、できれば分割をせずに、必要な部分だけの文字列を切り取って、次の字幕の頭にペーストするほうが早いです。ただ、字幕の開始位置はやっぱり調整する必要があります。

 つぎにキャプションの連結です。
 変な位置に切れ目ができて、細切れになった字幕をキャプションの連結で繋ぐのがもっとも手っ取り早いですね。繋ぎたいキャプションどうしをキャプションパネルで選択して画面の上にある『キャプションの連結』アイコンを押せば何個あっても全部がつながって、一つの字幕として扱われ、inとoutの時間も自動的に変更されます。

 やってみるとわかりますが、キャプションの分割よりキャプションの連結のほうが頻繁に行うと思います。それぐらい字幕が細切れになることがあるようです。
 キャプションの連結にも少し癖があって、なぜか連結した文字列と文字列の間に半角のスペースがはいります。不必要なスペースなので削除するために、キャプションをWクリックして半角を削除して……という作業が増えてしまいます。

 一つの映像でキャプションの連結は十数回を超える回数になることもあります。
 そんなことを毎回繰り返すと思うと、げんなりです。小さなストレスですが、それが膨れ上がりやがて疲れてダウン、なんてことになるかもしれません。わずかなストレスが大きな病へと発展する前に何とかしなけれいけません(おおげさ~)。

 そこでこれもsrtファイルに書き出してから、MIFESにやらせることにしました。

 これはsrtファイルに書き出された一つの字幕部分のサンプルです。


00:00:00,633 --> 00:00:02,500
今日は雲一つない 良いお天気です。

この中に半角スペースが3つあります。
 字幕が表示される開始時間『00:00:00,633』と終了時間『00:00:02,500』との間にある『-->』マークの両端。そして字幕文字列の『雲一つない』と『良いお天気』とのあいだです。
 この字幕の半角スペースがキャプションの連結で追加された半角スペースで、これを消せばいいのですが、ふつうに半角スペースを消すだけの置換処理をすると、時間データの半角スペースまで消えて、このsrtファイルは破綻して字幕が出力されなくなります。

 ということで、時間データ内に混ざる半角スペースをスキップさせて、そこ以外の半角スペースを探し出す正規表現を考えたのですが、作業を止めてまでも作る余裕がなく、そう、これらの対策ツールは作業をしながら作っているのです。なので、最も簡単に解決できる、昔ふうの表現でいうところの 2パス方式としました。

 つまり 2回のコマンドで完了します。1パス目はすべての半角スペースを削除。2パス目は、削除されたタイムスタンプに必要な半角スペースを復帰させるコマンドです。
 ショートカットキーを 2回叩かないといけないのですが、キャプションの連結で追加された半角スペースだけが自動で削除されますので、なんの気兼ねもなくキャプションの連結を連発できます。

 ついでにキャプションの連結をキーボードショートカットできないか調べました。PRのウィンドウメニューから、編集→キーボードショートカットでキーボードショートカットパネルを出して、検索欄に『キャプション』と入れると『選択したキャプションセグメントを連結』というのが出てきました。さっそく空いているキーでやりやすそうな『Alt+E』を連結のショートカットとしました。

『再生ヘッドの下でキャプションセグメントを分割』もありましたので試してみましたが、やっぱり複製されるだけで、正式な分割ではないのでこれはやめました。

 これだけのことですが、左手で『Shift』キーを押したまま、右手のマウスでキャプションを複数選択、続いて左手を『Alt+E』に持ち替えて押すだけで、瞬時にキャプションの連結が完了します。字幕に追加される余分な半角スペースは、この後 MIFESが全部消してくれますので、何も考えなくていいのです。おかしなストレスが解消、いっそすがすがしい気分に。災い転じて福となす、の典型例でした。


 これは持論ですが、効率を上げるということは、人間のストレスを軽減させることにつながるように思います。パソコンでの単純作業はいかに人間が手を出さないようにするか、ではないでしょうか。もともとそういう理由でパソコンは進化してきたのですから。

 小さなことでも無駄と思わず積極的に回避していけば、いつかはゴールが見えてきます。
 おかげさまでノルマをこなし、いろいろと新しいことも覚えられました。もうsrtファイルの作成は怖くありません。

 そして中断していた NFTアートの制作を再開するために、今日もパソコンの電源ボタンを押すのでした。


 ポチっとな。  ( ̄ω ̄;)... あほや……。






2023年 2月28日(火)10.5℃(午前 7時43分)

やっと終了(3)……。

進む 戻る

AdobeのPremiere(以降 PRと書きます)で 文字起こし作業を 66日間続けた日記みたいなものを綴ろうという話の 3話目です。


 ナレーションの音声は短いもので 5分、長いものだと20分あります。これを文字に起こす作業を 1日15本というノルマをこなすために、さらなる効率アップを目指して、MIFESで文字の編集を行ったのですが、そのときに遭遇した問題点を挙げてみました。
 何かの参考にしていただければ幸いです。

【その一】
[...]マークは重要だった。

 自動文字起こし機能で吐き出されたテキストは、テキストパネルと呼ばれる場所にタイムブロックごとに並びます。その右下に[...]アイコンがあるのですが、マウスを載せると『一時停止を[…]として表示」』と出ます。マウスで押すと吐き出された文字列のところどころに[...]という青いものが点在すると思います。

 これは音声の間が空いた場所を示しているようで、この記号みたいなものが次の工程、キャプショントラックの文書切りにも影響するみたいです。この[...]を削除してしまうと字幕が適度に切れずに、ごっそり一つにくっついて出てしまい、後での修正が困難になります。ただ、PRだけで文字編集をしていたら、これが消えることはほとんどないと思いますが、MIFESからコピーした文字列をPRにペーストするときに失敗して、内容が消えたからといって再ペーストなどをすると[...]マークが全部消えてしまうことがあります。

 しかも消えた[...]マークを元に戻す方法が見当たりません。Undoして戻ってくれればいいのですが、最悪は文字起こしを最初からやり直す羽目になります。

 自動文字起こし機能を再度行うのなら右上、今度は右上です。そこにある『・・・』を押した先にある『シーケンスから自動文字起こし』を押せば再起動しますが、MIFESでやった作業がオジャンになります。その理由は、二度目の自動文字起こしの結果が一度目と同じになるとは限らないからです。それほど音声認識処理は微妙なのでしょうね。


 そういう理由ですので、MIFESからPRへコピペするときは次の手順で慎重に行うこととしました。

1.コピー元となる文字列は、MIFES側にある字幕の内容に関する部分だけです。時間表示や『不明』と書かれたスピーカー情報は不要ですので選択しません。

2.コピーしたら、PRの目的のタイムブロックのテキストをWクリックして、そのタイムブロックが自動スクロールして安定するまで待ちます。これがとてもタラタラした動きですが、動いている途中でペーストするとフリーズしたり、真っ黒のテキストパネルになったり、途中から後半が出てこなくなったり、いろいろと不具合が発生することがあります。まだまだ改良の余地がありそうですね。

3.動きが止まったら、"Ctrl+A"を押して文字列の全選択をおこない、続けて"Ctrl+V"でMIFESから持ってきた文字列と入れ替えます。

4.文字エリア外をクリックして、表示状態にもどします。このとき文章内に点在する[...]マークが消えていないことを確認します。全部消えてしまっていたら、Undoしてやり直します。現時点では消えた[...]マークを戻すすべは無いようですので、再ペーストは禁止です。Undoで戻すのが賢明だと思います。
 ほかにも別のタイムブロックの文字列を間違えてペーストするとアウトです。気づかずに作業を進めていったら、自動文字起こしから文字修正まですべてやり直しになって、ここまでの作業が水の泡になります。


【その二】
『、』と『。』(句読点)の処置はやってもほとんど無駄。

 というより、字幕では句読点を打たずに、読点は半角スペース、句点は全角スペースを用いるのが一般的ですが、今回は特殊な事例のようで、句読点をつけることになりましたので、ふつうの文章のように句読点を打ちたいところですが、大きな問題があります。

 自動文字起こし直後は『、』や『。』が適度に入っているのですが、CCボタンを押して、キャプションの作成を行うと『、』は残っていて『。』はすべて全角スペースに変換されます。
 それならあえて『。』となる部分に全角スペースを打ち込んでおけば。キャプションパネルから全角スペースを『。』と置換すればいいのではと思い試してみたら、これが見事に思惑から外れて『。』と置換したい全角スペースが、字幕の行頭にくることが多く『。』から始まる字幕ができあがってしまいます。

 あきらめる?
 いやいや、まだアイデアはあります。

 もういっちょう、悪あがきをします。最終のsrtファイルに書き出したあとにMIFESで開いて、行頭の全角スペースは削除、それ以外のスペースは『。』になるように正規表現置換でいっぺんにこなすこととしました。


【その三】
 小数点は認識されなかったり、全角スペースに変換されるときがある。

 例えば『42.195km』などは自動文字起こし直後は『42195km』となってしまっているのがほとんどで、小数点は変換されにくいようです。仕方がないので『42.195km』と直してからCCボタンを押して、キャプションの作成をすると、こんどは『42 195km』と全角のスペースに変えられてしまいます。【その二】と同じで、キャプションの作成を行うときに何らかの処置が施されるようです。

 これも面倒なのですが、小数点の代わりにめったに使わない全角の記号、例えば全角の『_』(アンダースコア)にしておいて、キャプションの作成後、こんどはPRの置換処理で『_』を『.』に全置換するようにして乗り切りました。
 小数点を『_』に変更する理由は単純で、全角スペースはMIFESで『。』と変換する記号として使っているからです。
 二度手間のように思えますが、置換する作業はパソコンがしてくれますので、人間が一つずつ手で打ち直すよりはるかに効率が上がります。おかげで最終的には1日15本のノルマを超えるほどの高効率になったのは喜ばしいことでした。

 ただ困ったのは字幕の切れ目が、どうみてもおかしな切り方になることです。

 こればかりは人間でしかできませんので、やむなく手動で行うのですが、ここでも悪あがきをしています。
 そんなこんなで、長くなりますので、この件に関しましては次回に持ち越しとさせてください。





2023年 2月27日(月)11.5℃(午前 9時30分)

やっと終了(2)……。

進む 戻る

AdobeのPremiere(以降 PRと書きます)で 980ファイルの文字起こし作業を 66日間続けた日記みたいなものを綴ろうという話の 2話目です。

 PRに搭載されている文章編集機能があまりにも力不足だと感じましたので、大量生産に向いた専用のテキストエディタを利用する方法を考えました。

 文章作成用のソフトといえば、ワードや一太郎などが一般的ですが、文章のレイアウトや装飾はこの場合関係なくて、いかに早く確実に正しい文章にまとめ上げるかが重要です。
 そこで登場するのがテキストエディタと呼ばれる専用の文章編集ソフトです。Windowsでいえば『メモ帳』もその一つですが、それだとPRのそれと大差ありません。
 しかも実務で使用するためには、効率よく作業できる高度な機能が必要で、動きが軽くて目に優しく極力暗いダークモードが使えるもの。常に文字を打ち込み続けるプログラマなどはそのあたりをとくに好むようで、案にたがわず、ワタシもその一人でして、メガソフトのマイフェス(以降 MIFESと書きます)を DOS-Vの時代から愛用しております。

 このMIFESにあるマクロコマンドやキーボードマクロを利用して漢字検索システムを作った話は最近掲載したばかりですので、興味のある方は2022年12月27日の記事をご覧ください。

 MIFESにはグローバル検索やグローバル置換と呼ばれる機能があり、これらは今回のように、大量の文字ファイルを相手にするときには重宝するものです。
 例えば、ある単語をひらがなに替えることとなったとしても、980のファイルからその部分を自動的にを探し出して一覧表示、あるいは直接連続置換をやってくれます。ファイルがいくらあったってまったく臆することはありません。思わず手を合わせます。

「ありがたや、ありがたや……」 とね

 それから『正規表現検索』も必須です。例えば正規表現検索ができるエディタをお持ちの方は、検索文字列入力欄に、

[亜-腕]

と入力してから検索してみてください。文章中にある漢字だけにヒットすると思います。

 もっと特殊な事例になると……。

[色紙分考計算何右頭丸今回前間多同数形九声止場合下合計答三広場時四形図数字少小
自分線千万高玉気白組赤組青組長方形直角点長辺方面帰来池二人中思買大出見方新聞文
食車台一十百画目学家朝日生活魚本道近左花公園絵五六七八九週切黒手半行名話上+×
遠入円通正会番星年毎水知工作用教科書]

これはどうですか。お経みたいですが、これはだいたい小学校2年生あたりで習う漢字だけにヒットします。ヒットしなかった漢字はそれ以降の学年で習う漢字となります。
 上記の文字列でのヒット率は完璧ではありませんが、新たな漢字を追加するだけでヒット率が上がり、どんどん賢くなっていきます。

 こういう特殊な検索方法で 980ファイルを自動的に開いて探し出してくれるとなったら、もう鬼に金棒、弁慶に薙刀です。PRの字幕編集にはMIFESを使うっきゃないでしょ。

 ということで、PRでは文字編集をせずにそれ専用のMIFESで行うことにしました。
 そのためには、この文字データを外部に出さないといけません。そして編集後のファイルをもう一度PRに戻さないといけません。

 しかしPRには吐き出した文字列データをテキストとして書き出す処理は、テキストパネルの右上にある『・・・』のアイコンを叩くと出てきますが、その中の『テキストファイルに書き出し』しかありません。ほかの書き出し処理は一般的ではなくて使えそうにありませんでした。そして最悪なのは、テキストファイルを逆にインポート(読み込む)する機能が作られていないことです。

「…………」

 さて……。暗礁に乗り上げましたね。

 長い文章を字幕として切り分けてくれる作業は、次の段階にある『キャプションの作成』が必須で、外部に出せても戻せないとなると、MIFESでやる意味がありません。

 しかしアプリ間のコピペは可能です。そこでPRの文字列を『テキストファイルに書き出し』でファイルに書き出し、それをMIFESで読み込んで修正した後に、タイムブロックごとにコピーして、PRのテキストパネル内ににある同じタイムブロックへペーストして戻すという、とても手間ですが、PRで文字編集するよりはるかに効率がいいと思われる方法に切り替えました。


 なにしろMIFESでは、PRには無い強力な文字の複数置換処理が備わっています。

 通常の文字置換処理は1回に1語の置換しかできません。例えばPRの自動文字起こし機能では『字を書く』という意味の文字が『描く』『欠く』『各』といろいろに出力されるときがあります。このように読みは正しくとも、使い方を間違った漢字は他にもゴロゴロしていますし、対象が小学生ですので、学年別にあえてひらがな表記の指定もあります。
 ここが通常の字幕作業と決定的に異なるところです。しかしこれらを手作業で一つずつ置換していたら、1日15本のノルマをこなすことはできません。

 そこで出てくるのが先にも書きました、MIFESの強力な複数置換処理です。
 これは1度に20個までのターゲット語と置換後の文字列を登録することができ、1回の処理でどさっと大量にやってしまうものです。さらにうれしいことに、20個の登録文字列を1グループとして、グループはいくらでも登録できますので、グループを選んで置換させることができます。

 さらにさらに……。
 通販番組のサービスみたいな掛け声になりましたが、MIFESではこれらの機能をカスタマイズして新しい機能を作ることができる、マクロコマンドと呼ばれる、猛烈にありがたい機能があります。詳しくは1月9日の記事をお読みください。

 どうなるのか例を挙げますと、
 20個の単語を1グループにして、7つの複数置換グループを作ったとします。
 この場合は7回複数置換処理を起動させることになりますが、1回に20個の処理が済みますので、手動と比べてたいへん効率が上がります。でも、まだまだ1日15本のノルマは厳しい壁なのです。

 で、マクロコマンドの登場です。
 これで7回の複数置換処理の起動をプログラム化します。すると1度起動するだけで 7回分がいっぺんに終わります。その間、1~2秒です。20個の単語が7回、140個の置換処理が2秒弱になります。もし手動でこの作業をしていたら、1回に10秒掛かったとして、140×10で、1400秒。ぬあんと23分。それをたったの2秒。

「ありがたや、ありがたや……」

 で、修正後のデータをPRに取り込めばこっちでの修正はすることがなく、すぐにキャプションの作成に掛かれるのですが、ここでワタシも陥った大きな罠が待ち構えていました。
 これが書きたくてこんなに長々とした文章になってしまったのですが、PR上で文字修正をしていたらこの罠に気づかなかったと思います。


 次回はPRと外部のテキストエディタとの連携で陥った問題に触れます。





2023年 2月26日(日)9.0℃(午前 10時30分)

やっと終了……。

進む 戻る

怒涛の作業が続くこと約 66日。ようやく昨夜終了しました。

 作業したファイルは980本。休みなしで1日15本です。なので、休日は正月の1日だけで、13時間労働は当たり前となりました。ピーク時は朝4時から夜7時まで、昼食も食べながら作業をするという、ここは労働基準法なんかクソくらえの異世界のこと。そんな世界で66日。やっとこそさ、人間界に復帰することができました。

 なーにをそんなにやっていたのか。
 映像の仕事といってもいろいろありまして、3Dだのアニメーションだの、あるいはモーショングラフィックスだとか、派手なのはいろいろありますが、中には地味だけど意外と注目されているのがあります。それが文字起こし作業。

 発端はユーチューブのような映像コンテンツですかね。映像の下に字幕が出るやつ。あると無いとではだいぶ違うようで、最近では字幕が入っているのが当たり前、じゃまだったら消せばいいようになっていますので、今では必需品といえるものですね。

 この文字起こしに、革命的な進歩を起こしたのが音声認識技術でしょう。これまでは人間が映像を聞きながらテキストエディタにパチパチ打ち込んで文字に変換していたのですが、これをスマホでおなじみの音声認識技術を使って文字変換部分を自動化しようということになったわけです。

 そこで出てくるのが、AdobeのPremiere(以降 PRと書きます)に搭載された文字起こし機能です。PRは AdobeのAfterEffects(以降 Ae)と似たような映像編集ソフトです。詳しくみるとAeは映像に多種の効果を入れてより一層極めた作品にすることを重視した編集ソフトで、PRは長編映像や業務的映像の最終部分を担うソフト……といった感じではないでしょうか。

 そのPRに搭載された文字起こし処理に使われている音声認識が秀逸だと巷で広がり、今のところトップではないかと……かってにワタシは思っています。

「ですがっ!」

 ここでは褒めちぎることは控えて、この地獄の黙示録にも登場しそうな過酷労働を強いられたワタシがPRの文字起こし機能を的確に評価してみようと、ここに立ち上がった次第であります。(なんか熱い……)

 これから文字起こしをPRで行おうと思っている諸兄姉さまが最も気になるのは、音声認識の質でしょうね。噂通りなのか、まずはここでしょう。

 10段階表記で、人間成人の認識率を『10』とします。認識するのが幼稚園児だとたぶん『3』ぐらいですかね。PRでそのような比較をすると『8』~『5』かな。

 大きな差があるみたいですが、これには理由があります。
 標準語ではっきり聞き取りやすい、アナウンサーのような人が語った場合は『9』に匹敵するほどスバ抜けています。ほぼ間違いなく日本語に変換されます。
 しかしこれが、へんな抑揚のある言葉遣いの人で、さらに舌足らずなしゃべり方をするととたんにアウト。出力される文字列はほぼ暗号化された意味不明の文章になってしまい、ほとんどを作業者がもういちど耳で聞きなおして、修正を強いられます。

 暗号みたいな文字列と書きましたが、でたらめな文章が出てくるのではなく、耳で聞いて比較すると確かにそう聴こえても仕方がないよな、と思える部分が多々出てきます。ようするに音をそのまま文字に変換していて、文章の前後を吟味して正しい文字列に変換していないとうことです。

 たまに笑わせてもらったのは、

「電話かけましょう」と出ることがよくあります。
 こんなところでどこへ電話をかけるんだろう、と首を捻ってもう一度よく聞くと、
「では確認しましょう」でした。
 ある意味見事だなと、ここは笑わせてもらいました。


 ということで、はっきりとしゃべる人が話者の場合は、まちがいなく巷の噂通りの最良の評価が出せます。

「しか~し!」

 問題点がいくつかあります。もちろん100%正しく出力されるわけではないので、ある程度の修正が必要で、その作業はPRで出力されたテキストエリアでキーボードから打ち込んで直すのですが、この機能が今回のような大量生産には向いていません。

 検索と置換はあるものの、Windowsについてくるメモ帳と大差ない状態で、しかも動きが鈍い。自動スクロールをオンにしておくと、修正したい文章がもたもたと動いて、入力状態になるまで少し時間が掛かります。なにしろ1つの映像は5~10分程度ですが、1日15本がノルマです。タラタラやってられません。

 そこで同じ作業を強いられている諸兄姉さまに朗報です。文字列に出力された文字データを外部のそれ専用のテキストエディタで作業をして、またPRに戻す方法を見つけました。

 ただし、お読みください。ワタシは、PRだけで作業を終わらせたものと、専用のテキストエディタを併用させたものとで、できあがりに差がないかという実験を繰り返して、問題ないだろうと決断してから、この方法で難局を乗り越えたのですが、あなたの作業環境で同じことができるかの保証は致しかねます。ここは自己の責任において試してください。


 書き忘れましたが、今回は字幕付きの映像を作るのではなく、映像の音声から字幕に変換して、それをデータ化した『srtファイル』と呼ばれるものを大量に作ることです。
『srtファイル』の構造はとても簡単。まず字幕一つ一つに連番を付け、次に表示を開始する時間と終了する時間が書かれていて、そして字幕の文字列が付きます。それが映像の終わりまで続いた単なるテキストファイルです。拡張子は『.srt』ですが、Windowsのメモ帳でも編集ができます。

『srtファイル』の利点は映像プレーヤー側で字幕のコントロールができるとこです。字幕付きの映像にしてしまうと、それだけを消すことができません。ところが『srtファイル』が使えるプレーヤーでは字幕のオン・オフ以外にも文字色やフォント変更なども可能になります。


 では話を戻します。
 PRでsrtファイルを作成するまでの工程は大きく分けて3段階に分かれています。

 1段階目は、対象の映像をシーケンスパネルにセットして『シーケンスから自動文字起こし』をさせること。だいたい30秒から1分ほどでに終了して、テキストパネルにタイムブロックごとに変換された文字列が出ます。

 ここで注意があります。映像データが可変フレームレートでエンコードされていると、字幕と映像の同期が取れなくなります。可変フレームレートは Vimeoでも推奨されていません。ズレがひどいときは、PRで再エンコードして固定フレームレートにする必要があります。またVimeoでの記事はこちらです

 可変フレームレートかどうかは、プロジェクトパネルにインポートした映像ファイルを右クリック→プロパティ、でメッセージの最後に『可変フレームレートが検出されました』と出るとそれです。固定の場合は何も出ませんのでチェックができます。


 2段階目は、テキストパネルに出た文字データを修正した後に、それをキャプショントラックに並べる作業です。テキストパネルの上にある『CC』ボタンを押すと始まります。時間にして約数秒です。

 設定はデフォルトのままでまず問題ないです。なにしろ文書の切り方とかの指定はできませんので、すべてPRまかせになります。これがちょっと悲しい。
「今日はいい天気です。空は雲一つありません」という文章があったら、

「今日はいい」
「天気です」
「空は」
「雲一つありません」
 と切られます。かと思えば、

「今日はいい天気です」
「空は雲一つありません」
 と正しいときもあります。どのようなアルゴリズムで構成されているのかわかりませんが、同じような文章はすべてそうなっていますので、何かしらのルールがあるような気がします。

 キャプショントラックに並んだ文字列の切れ目を修正していくのが、2段階目の作業となります。
 これもかなり機能不足です。『キャプションの分割』と『キャプションの連結』で切ったり貼ったりしますが、この作業もかなり熟練が必要です。
 これらの作業をいかに効率よくこなすかが、この仕事の重要なポイントになることだと痛感しました。

 そして 3段階目は『srtファイル』の作成です。
 通常なら、この字幕に装飾を付ける作業に移るのですが、今回は『srtファイル』を作って終了です。文字列の体裁は必要ありません。
 でき上った字幕をキャプションパネルの「・・・」にある『書き出し』→『srtファイルに書き出し』で完了。
 再びMIFESでそれを開いて、句読点の追加や不要な句読点の削除をしておしまい、となります。

 補足ですが、通常では字幕に句読点はつけないのですが、たぶん映像の対象が小学生なので、あえてつけるのではないかと思います。そういう指示でした。



 ところでPRによる文字起こし機能の私見ですが、話者が美しい日本語を話してくれる限り、素晴らしい変換率だと思います。あと漢字も正しく出力されるようになると、なおいいですね。一般的な漢字は完璧ですが、人の名前とか専門的な部分は当て字みたいなものがいっぱい出ます。ま、これは仕方がないことかもしれません。

 文字の編集機能と文章の切れ目はまだまだ改良の余地があります。いまは人間が手を出さないと使えません。しかしこのあたりは、今後改善されてくるでしょう。次回のからのアップデートが楽しみです。

 次回はPRが吐き出した文章を外部のテキストエディタに移し替え、作業後もとのPRにもどす方法を説明したいと思います。





2023年 1月 9日(月)14.5℃(午後 5時 4分)

アクセル ベタ踏みっす(最終話)……。

進む 戻る

キーボードマクロだけの検索ツールでは、カナ混じりの漢字や、あえてひらがな表記のときも、すべて漢字でオーケーと出てしまい、どうしても特殊な漢字検索機能が欲しくなりました。
 もちろん時間はありません。でも少しでも効率を上げるためにはやむを得ないのです。仕事をこなしつつマクロ言語を使ったツールを急きょ拵えることにしました。

 エディタで行う作業工程をあらかじめ作ったプログラムで自動化するためには、その動きをプログラム化する必要があります。通常ならリファレンスを見て必要な命令を探し出し、それを組み立てていくのですが、MIFESにはキーボードマクロの記録をマクロ言語に変換する機能があります。これって昔風の言い方だと逆アセンブラとでもいうのでしょうか。例えば行頭へカーソルを移動するときは、通常なら『HOME』キーを押します。この動きをキーボードマクロで記録させて、それをマクロ言語に変換できるのです。

 ふつうの文字入力のできるソフトにはこんな機能はありませんが、プログラマが好んで利用するテキストエディタにはだいたいこのような機能がついています。
 それにしても時間が無いときに、手っ取り早く作るにはこれはありがたい機能です。思わず手を合わせました。

 ありがたや、ありがたや。
 とね。


 方法はとても簡単。
 まず、キーボードマクロの記録を開始して『HOME』キーを押して、キーボードマクロの記録を停止します。
【キーボードマクロのライブラリ登録】が出ますが、何もせずに閉じます。
 続いて、白紙のファイルを出してから【マクロ】→【マクロソースに変換】を押します。
 すると以下のようなテキストが出ます。


*マクロコマンド名 マクロコマンドの内容のコメント
	move("(")
*

これが行頭へカーソルを移動させる動きをマクロ言語に変換したプログラムです。これをコンパイルしてマクロコマンドに登録すると、同じ仕事を別のキーで動かすことができるようになります。もちろんこんな単純な仕事をマクロ化する意味はありませんけど、このような命令語を組み合わせて新しいツールを作るのが今回の目的です。

 ちなみにコンパイルという言葉になじみがない方に説明します。
【マクロソースに変換】で出力されたプログラムをソースファイルと呼び、人間には理解できますが、このままではコンピュータは理解してくれません。そこでコンピュータが理解できる言葉に変換する作業が必要で、それをコンパイルといいます。

 ソースファイルを修正したら、再コンパイルする必要があります。
 またソースファイルは今後のメンテナンスのため、あるいはデバグのために保存することを推奨します。
 このあたりは MIFESのヘルプに詳しく載っていますので一読されるといいと思います。


 もう少しソースファイルについて説明しましょう。さきほどのカーソルを行頭へ移動させるプログラムを見てください。コメントも加えてわかりやすくしてあります。


*マクロコマンド名	マクロコマンドの内容のコメント
	move("(")	;行の先頭にカーソルを移動
*

まず『*』から『*』が一つのマクロコマンドとして記載する部分です。先頭の『*』の次にある『マクロコマンド名』は自分で決めるコマンド名を半角英語で入れます。次の『マクロコマンドの内容のコメント』はコマンド一覧に出る何のコマンドかを記載する部分です。コマンド名とのあいだは、Tabか半角スペースを1つ以上空けます。
 そして次の行からマクロ言語で命令を入れます。『;』から行の終わりまではコメントになります。記載した命令の説明を書いておくと便利です。

 このソースファイルをコンパイルして、エラーが無ければ MIFESのマクロコマンドライブラリーに登録します。するとライブラリー一覧の中に、コマンド名と内容の説明とともに追加されますので、それ以降、ライブラリーから起動してもいいですし、キーボードショートカットに登録してオリジナルツールとして起動することもできます。

 実際に作ったカナ混じり漢字検索ツールのソースファイルです。
 キーボードマクロでは変数の取り扱いなどが記録できませんので、マクロリファレンスを調べて追加してあります。


*selSearch 辞書ファイルに切り替えて選択文字を検索する ;選択文字列を @str3変数へ入れる。@2は文字列の Lengthがはいる変数。 @2=getselstring(@str3) ;ウィンドウ切り替え execmd(50) ;@str3変数に入っている文字列をファイルの先頭から正規表現検索する search(4,0x0006,@str3) ;ファイルの先頭へ飛ぶ jump(2,1) ;↓方向再検索(再検索するのはヒット文字をすべてハイライトさせるため execmd(36) *

このツールは『学年別漢字の辞書ファイル』とプレミアが吐き出した漢字混じりのテキストファイルの二つをペアで開いて使います。
 辞書となる『学年別漢字の辞書ファイル』の構造もとても簡単で、その学年で使用できる漢字には『○』を、ダメなものには『×』を付けたものをずらっと並べるだけです。


○学しゅう×学習 〇とく点×得点 〇くらべる×比べる 〇入れる×いれる

こんな感じで、横一列にずらっと並べるだけです。体裁なんていりません。ヒットすればその文字がハイライトしますので、目に飛び込んできます。
 新たなデータの登録も最後尾に並べるだけなのでメンテナンスも楽々。学年が上がればそのまま移植も可能です。

 例えば小学2年生の作業ファイルに『得点』という漢字があったとします。使えるか使えないか、あるいはカナ混じりかどうかを、これまでは資料を見たり、実際の教科書から拾い出したりしていましたが、このツールでは『得点』の部分を選択してから『Ctrl+M』(コマンドをキーボードショートカットに登録しています)と押すだけ、瞬時に『学年別漢字の辞書ファイル』が開き、


実際の MIFESの画面です

このような表示になって、結果は一目瞭然。カナ混じり漢字だということが分かります。そして……。

 あ~。ありがたや、ありがたや。
 となります。


 前回のキーボードマクロによる学年別漢字検索と、このカナ混じり漢字検索の成果はすこぶる好調で、サクサク作業をこなしています。


 めでたしめでたし……。   ( ´艸`)ムフフ...






2023年 1月 7日(土)9.5℃(午前 9時44分)

アクセル ベタ踏みっす(3)……。

進む 戻る

MIFES(テキストエディタ)をカスタマイズして、ケツかっちんになった仕事をこなそう。と奮起した第三弾です。

 第三弾はキーボードマクロです。

 MIFESはプログラマーが好んで使用するテキストエディタですので、エディタ自身をプログラム言語でコントロールすることができるという、一風変わったソフトウェアなのです。プログラムで変身できるといっても、中身は文字編集に特化していますので、ゲーム機にすることはできません。いや、やり方によってはできるかもしれませんが、今はそんなことに時間を割いている場合ではありません。何しろケツかっちん状態ですから、カスタマイズするのも仕事を進めながら、その合い間にやるしかありません。まるで線路を敷き詰めつつその上を走っていく列車のようです。

 マクロに関しては、ヘルプにマクロ言語のリファレンスがついていますので、とても心強いです。さらに面白いのはキーボードマクロで基本的な動きを記録、それをマクロ言語に変換する機能までついているのですから至れり尽くせりで、とても簡単にマクロ化が可能になっています。

 そのためには、まずキーボードマクロです。
 前回簡単に触れましたが、これは作業中の動きを記録して同じことを再現してくれる機能です。

 例えば、htmlのソースに長文を流し込むとき、この場合、今がまさにそれです。この記事を書いている(打ち込んでいる)ときは htmlのタグは気にせず文章を綴っています。その作業が終わった後にhtmlのソースとして、改行位置に『<br>』というタグをに書き込めば、ブラウザはそこで改行してくれますが、長文になると改行位置を目視で見つけて『<br>』をキーボードから打ち込むのが苦痛になります。

 こんなときは、【ワイルドカード検索】、あるいは【正規表現検索】を利用します。
 ふつうの検索では探せるのは文字のみですが、【ワイルドカード検索】や【正規表現検索】では『改行』の位置を探すことができます。特殊です。なので MIFESなのです。

 MIFESでは『改行』や『行頭』位置だけでなく、他にも特殊な検索をするために利用する特殊文字(メタ文字)がたくさん用意されています。その中で『改行』を表すのが『\n』です。当然ですが半角で書かないと意味がありません。

 改行位置に『<br>』というタグをに書き込みたければ、【ワイルドカード検索】、あるいは【正規表現検索】モードに切り替えて、まず検索文字に『\n』を入れます。そして置換文字に『<br>』『\n』として置換を実行すれば『改行』にヒットするたびに、改行コードの前に『<br>』が挿入されることになり、

 ありがたや、ありがたや。
 となります。

 この一連の置換作業の動きをキーボードマクロとして記録すれば、あとはそれをキー操作に登録するだけ。ワタシの場合は『ESC、Bキー』です。文章が何行あろうとも『ESC』を押した後に『B』と押せば、楽々と行末に『<br>』が書き込まれていきます。作業は自動的に進むので、やっぱり、

 あ~。ありがたや、ありがたや。
 となります。


 他のテキストエディタを使用されている方で、キーボードマクロとワイルドカード検索、あるいは正規表現検索モードが可能な置換モードがあるのでしたら、同じことができるはずですので、お試しください。


 この一連の動きをキーボードマクロに記録してみます。

 まず最初に、キーボードマクロの記録を開始します。MIFESならウインドウメニューの下の段にある『記録』と書かれた録音ボタンふうの赤丸アイコンを押すだけです。

 次に置換処理のダイアログを開きます。ワタシの場合は『Ctrl+W』というキーボードショートカットにしていますので、Ctlrキーと Wキーを押すだけです。
 ウィンドウメニューから置換処理を起動させてもちゃんと記録されていますので、ものすごく便利になります。ただし、記録中は余計なことをしないほうがいいです。してしまうとその動きも記録されます。

 置換ダイアログが出たら、先ほどと同じで、検索方法を【正規表現検索】あるいは【ワイルドカード検索】にして、検索する文字列と置換文字列を【新文字列】の欄に打ち込んで置換を実行。
 置換が終わったら、ここで記録を停止。

【キーボードマクロのライブラリ登録】が出たら、好きな ESCキーと英文字キーの組み合わせを選んで登録。次回からは『ESC』キーに続けて『英文字』キーを押せば、改行位置に『<br>』が自動的に書き込まれていきます。

【キーボードマクロのライブラリ登録】が出ないときは、【マクロ】→【ライブラリー登録】で出たダイアログの一番上にある【記録終了時にこのダイアログを表示する】にチェックを入れます。


 とまあ、これがキーボードマクロです。お分りいただけたでしょうか。使い方によってはとても便利な機能なのです。

 この正規表現検索を利用して、学年別漢字検索システムを作ろうというのが、今回のもくろみです。

 仕組みは超簡単。
 各学年で使用する漢字一覧をずらっと並べておいて、それを正規表現でorを作って検索するキーボードマクロを作ると、プレミアが吐き出したテキストファイルの中に点在するすべての漢字のうち、学年で使用できる漢字だけがハイライトされるという理屈です。あまりにも簡単であっけにとられるかもしれませんが、資料と作業ファイルと見比べていたことを思うとウソのようでした。

 ところが使っているうちに、欠点も見えてきます。習っていない漢字をカナにしたカナ混じりの漢字や、あえてひらがなで表現する語句であっても漢字オーケーとなることがあります。

 例えば小学校2年生では『学習』は『学しゅう』となります。さらにややこしいのは『入れ物』はダメで『いれもの』にしなければいけません。かと思うと『入れる』は漢字で書き『いれる』はダメです。この違いを資料や教科書から目視で探し出していたら、とても時間が掛かって効率的ではありません。

 また振出しに戻ってしまいました……。

 再び黙考です。
 ポクポク……ち~ん。


 この欠点を補う方法として登場するのがマクロ言語です。
 キーボードマクロでは記録されない処理やコマンドがありますので、カナ混じりの文字のチェックを確実に素早く可能にするには、マクロ言語を利用するしかないと 悟りました

 ということで、次回はやっとマクロ言語です。


 まだ続きます……。   ( ̄ω ̄;)...仕事せーよ







2023年 1月 6日(金)9℃(午前10時14分)

アクセル ベタ踏みっす(2)……。

進む 戻る

年が明けました。本年もよろしくお願いいたします

 年末は字幕の文字起こし作業を快適にするために Adobe Premiere(以降プレミア)のキーボードショートカットをカスタマイズしたという話でした。何しろ日本語変換モードにすると再生・停止やタイムラインの移動がとてもやりにくくなるため、効率がガタ落ちでしたが、ファンクションキーにそれらのコマンドを割り当てると、日本語モード中であってもコントロールが利き、さらに誤変換の修正もそのまま続けられます。

 次に足を引っ張ったのが漢字の処理です。大人向けの映像ではなく小学生に見せる映像ですので、習っていない漢字はすべてひらがなに変換しなければいけないのです。しかも学年によっては、使用できる、できないに違いがあるため、この問題はさらに複雑になります。

 あたりまえですが、プレミアにそんなことを期待するのは無理というもので、プレミアが吐き出す日本語はふつうに漢字が使用されています。誤変換は仕方がないとしても、学年別の漢字を識別するのは人間がやるしかないのか、と半ばあきらめていました。

 やがて気づきました。大量の文字列データを校正するには、プレミアの検索・置換だけでは追っつかないことに。
 そこでプレミアが吐き出したテキストをいったん『.txt』ファイルに出して、それを専用のテキストエディタで読み込んで校正したほうが、一度に見渡せる範囲が広がりますので、効率が上がることに気づきました。

 さてここからが本題です。

 幸い、長年使用しているテキストエディタはふつうのテキストエディタより高機能でして、プログラマ御用達の逸品です。もう 三十年以上 使用しているメガソフトさんの MIFESです。Ver3.0からのお付き合いですので、ワタシの片腕といってもいいかもです。現在は MIFES10です。まもなく MIFES11が出るみたいですね。

 涙がちょちょ切れるほどありがたいのは、グローバル検索と置換。
 フォルダ内に詰め込まれた何百とあるファイルから指定の文字列を探し出して新しい文字と置換して保存、ここまでを自動的に次々とやってくれます。

 さらにありがたいのは、複数置換機能。

 文字列の置換はどのテキストエディタでもある機能ですが、一回でできるのは一つの文字列だけです。プレミアに付属する置換機能も同じで、文字別にそのつど呼び出して実行するのみです。

 複数置換は文字のとおり、いくつもの単語を登録しておいて順番に置換していきます。検索文字列数はたぶん 2000語ぐらいはいけるのではないでしょうか。この辺りはヘルプに書かれているかもしれませんが、実際は人間の管理が追っつきませんで、いっぱいになることはないと思います。というのも、置換作業は人間が管理監視していないと、文章が支離滅裂になってえらいことになりますからね。

 ま、それでもこれらをあらかじめ正しくセットしておけば、キーボードからショートカットキーをチョチョンと叩くだけで、いくつもの異なった文字列が自動的に置換終了。

 あ~。ありがたや、ありがたや。

 同じ誤変換があっても、MIFESには【文字列の登録・挿入】というのもありますので、正しい文字列を登録してから、キーボードショートカットを作っておけば、キーを二つほど叩くだけで、正しい文字列がカーソル位置に挿入されます。
 文字列の登録は 36個まで可能で、それぞれに割り当てキーが異なりますから、この誤変換文字はこのキーを叩く、と覚えておけばサクサク作業が進みます。

 あ~。ありがたや、ありがたや。

 とやっていたのですが、どうしても我慢ならんのが、学年別の使用漢字の検索です。

 学年別に使用できる漢字の判断は、簡易的な資料と本物の教科書、あとはネットにある教育漢字検索ツール。そこから探し出して、使えるか使えないの判断をしなければいけないのです。
 ほとんどが手作業です。漢字は山ほどあるのにそのつどこんなことをしていたのでは、とても 1000なんて数をこなすことはできません。

 それでも黙々と作業をしているうち、ふと思ったのです。この作業を少しでも自動化できないかと、しばし黙考……。

 ポクポク……ち~ん。

 使える漢字を一覧にしたファイルを作り、作業中のファイルと漢字だけの比較をすれば、使える漢字がヒットする。そうすれば作業中のファイル内にあるヒットした文字だけをハイライトさせることが可能。そうなれば教育漢字検索ツールより便利になるゾ、と。

 教育漢字検索ツールはネット上にあるので、使用不可の漢字を赤色で示してくれるだけです。作業中のファイルにそれが反映されませんので、こっちのツールのほうがはるかに便利です。

 できたら……の話ですがね。

 使える漢字の一覧ファイルは、資料や作業中にそのつどコピペすれば、作業しながらでも徐々に増えて充実していくはずです。
 あとはそれだけの工程をどうやってキーボードショートカットに叩き込むかですね。

 再び黙考……。
 ポクポク……ち~ん。

 あー。作業しながらです。手を止めて考える時間はありません。なにしろケツかっちんです。仕事が後ろに並んでますから。

 MIFESの次なる秘密兵器はマクロコマンドです。
 なぜ MIFESがプログラマ御用達と言われるのか、それは新たな機能をプログラムできるテキストエディタだからです。
 これはすごいですよ。使っている人のオリジナルツールができるのですから。この漢字システムにもってこいの機能です。

 マクロ命令……。
  知っている人しか知らないものです。
 これはアセンブル時代に使用されていた疑似命令が基礎になっています。
 C言語の『#define』もこの一種ですね。

 アセンブル時代のマクロ命令というのは、よく使うプログラムの命令が並んだひと塊を、任意の文字列に置き換えるものです。サブルーチンとよく似ていますが、プログラムがコンパイルされるときに、その文字列の部分が命令語に展開されます。とうぜんメモリを食いますが、CPUの速度は落ちません。サブルーチンはメモリの使用率は減りますが、コールとリターンで速度が落ちます。

 話が少し逸れました。もとに戻します。

 MIFESのマクロ命令を使用する前に、キーボードマクロと呼ばれる機能を知っておかないと使えません。

 キーボードマクロと呼ばれるものは、作業中の一連の動作を記録して、同じことを繰り返してくれる機能のことで、Adobe Illustratorにあるアクション機能と同じです。

 例えば、プレミアで文字起こしをしたファイルには行頭に『、』がついた行がいくつも出てきます。これをそのつど目視して削除していたら、日が暮れます。

 そこで、キーボードマクロの登場です。

 新たな展開になったところで、今回はここで中断させていただきます。なにしろ仕事がケツかっちんですので。
 次回はさらに突っ込んだ話になります。


 起承転結の『承』なのだ!    ( ̄ω ̄;) アホヤ~






2022年 12月27日(火)14℃(午後 4時11分)

アクセル ベタ踏みっす……。

戻る

日に14時間パソコンの前にいたって平気の平左だったこの肉体が、最近12時間ぐらいで悲鳴を上げそうになってきています。まだ後ろから山ほど仕事が、まるで腸詰めソーセージの具のように待っているというのにです。

 夏の繁忙期には小学校の英語と算数のアニメーションをたぶん 300本は作ったと思います。その合間に 3Dの仕事がズボズボはめ込まれて、秋の終わりにようやくやれやれ一休みと思っているところへNFTアートの制作依頼が……。

「NFTの土台を作ったからそれに使える 短編の3D映像を12本ほど作って」と持ち込んできたのです。

 こういう特殊な仕事を持ってくる人といえば、例のプロデューサー Kさん。

 効果音を 5000個作ったときもこの Kさんの依頼です。この人のおかげで、こうして一日中パソコンの前にいられる、ありがたいお人なのです。いやマジで。


 話がそれました……。

 NFTとは非代替性トークンと呼ばれる技術を利用して作品に資産的価値を付与して世に送り出す、という。なんだか眉毛のあたりがピクピクするモノですが、もしかするとこれが新しいデジタルの夜明けかもしれないのです。

 デジタルデータはコピーが簡単にできます。アプリなどはコピーがしにくくなってきていますが、いくらコピー禁止と叫んでみても、パソコンで作られた絵や映像はやろうと思えば簡単に複製ができます。ただ法的にそれを抑制しているだけです。

 NFTの仕組みは頭から煙が出ますので省略しますが、とにかくコピーできないそうです。

 ま、そんな仕事も冬の繁忙期までの合間ならいいよ、快諾。12本中半分ほど完成したところで、いきなり教材映像の字幕文字起こしの依頼が飛び込んできました。しかも1000本。しかも2月中旬まで。

「………………」

 クチから変なものが出ましたね。1000本をその納期で……。
 これも Kさんの依頼。

 おいおい。

 おまけに、Kさん曰く。
「そのあとには小学校全学年のデジタル教科書に使用するルビ打ち作業が待ってるデ」

 つまり、ケツかっちん状態っすか?

「そう。エエやろ」
「………………」

 茫然自失する間もなく、NFTアートは急遽中断。まずは字幕文字起こしのために映像編集アプリであるプレミアを起動。

 ああぁ。久しぶり。ずっと AfterEffects(以降Ae)だけでアニメーションを作っていましたので、3年ぶりぐらいのプレミアです。キーボードショートカットもすっかり闇の中。ちゅうよりなんとやりにくいこと。

 文字起こしというのは、映像の中でしゃべる人の声を AIが日本語に変換してテキストファイルに起こしてくれるのですが、とんでもない日本語に誤変換することがしばしば、それを修正してテロップに移し替える仕事です。

 ようは、AIが打ち出した文字列と音声を聞きつつ、誤変換があると素早くそこを正しい日本語に修正するのですが、これがやりにくい。
 何がやりにくいかというと、文字起こしの編集中は日本語モードになっていますので、スペースキーで再生や停止ができないし、行あふれしたテロップを修正するときに、時間的な移動がしたくても手のひらツールや選択ツールのキーボードショートカットが利かないという最悪の状態なのです。

 コレは困りましたね。1秒でも作業時間を縮めたいのに、この効率の悪いことでは、ストレスから身体を壊しそうです。
 そりゃぁ、キーボードに載せていた右手をマウスに持ち替えて、「ぬ~」と動かして、ポチっとボタンを叩いてやれば作業はできるのですが、それだけの時間があれば他の仕事がしたいです。ワタシの信条は無駄なマウス作業をしない、です。

 右手にマウスを持ったのなら、キーは左手で打ちます。
 作業しているアプリの行き来は『alt+TAB』で切り替える、その間にマウスは次の標的を狙って移動させる、です。ハンターが獲物を見定めてから銃口を上げていてはもう遅いのです。

 さてどーするか。

 考えましたね。ケツかっちんの底力ですかね。ひらめきました。
 日本語モード中でも影響の出ないキーをそれらの仕事に割り当てたらどうだろうかと。

 日本語モード中でも反応するのはキーボード上部に並んだファンクションキーです。その中でも都合がいいのは、日本語モード切り替えキー、通称『漢字キー』の近くにある【F1】【F2】【F3】にそれぞれ【再生/停止】【手のひらツール】【選択ツール】のキーボードショートカットを割り当ててみました。

「…………♪」

 思いのほか好感触でした。日本語変換中でも【F1】キーで再生/停止ができて、Aeのように【F2】を押すとマウスが手のひらアイコンになりますので、タイムラインをドラッグして再生位置の移動ができます。【F3】でもともマウスアイコンに戻ります。

 字幕編集でイライラしている方がおられましたら、いちどお試しください。


 次回はキーボードマクロ機能を使って漢字検索システムを作る……の巻きです。