misc.log

日常茶飯事とお仕事と

作成した動画ファイルの名称を一括変更する(VBScript利用)

現在、原神の細切れなプレイ動画を作成してちまちまとYoutubeに挙げているのですが、カット編集したものをTMPGEnc Video Mastering Works 5で一括エンコードすると、本来のファイル名の前後に余計な文字が入って出力されます。それをこれまたちまちまと直すのが面倒だったので、昔作ったVBScriptスクリプトを少し改変し、ファイル名変更を一括でできるようにしてみました。

PowerShellとかでももっとスマートに出来ると思いますが、書式の指定などをここで試行錯誤する時間がもったいなかったので、敢えてVBScriptです。

処理前後

処理内容は、下図のようにファイルを名を書き換えるというものです。ファイル名の先頭に「Movie_##_(」という通番が入った文字列と、作業工程を記すために自分で入れた「★」、そして、ファイル名末尾に「)」の閉じ括弧が追加されているので、これを除外するというもの。

変更前のファイル群
変更後のファイル群

スクリプト

VBScriptはこんな感じです。

Dim fileSystem
Dim curFolder
Dim eachFile
Dim newName

Set fileSystem = WScript.CreateObject("Scripting.FileSystemObject")
Set curFolder = fileSystem.GetFolder(fileSystem.getParentFolderName(WScript.ScriptFullName))

For each eachFile in curFolder.Files
	If fileSystem.GEtExtensionName(eachFile.Name)="mp4" Then
		newName = Replace(Mid(eachFile.Name,12),").mp4",".mp4")
		eachFile.Name = newName
	End if
Next

FileSystemObjectを取得し、スクリプトと同じフォルダーにあるファイルのうち「.mp4」で終わるファイル全てについて

  • 先頭12文字をMid関数で削る。
  • 末尾の「).mp4」を「.mp4」に置換する。

この処理を加えています。

凝ったことをする必要もなく、確実に短時間でコンピューターに仕事をさせたい場合、別に言語も技術なんでもいいんですよ。道具として使えれば……という例でした。
参考まで。

改良版

もう少し改良したものをこちらで紹介しています。

www.backyrd.net


youtube.com