>386 訂正行 if ord(Str[ia]) = $2C then Continue;

デバックに動画を放り込んでると
'〜.json'ファイルが読み込めない(まだ出来上がってないから)と怒られるケースが出た。
さらに頭悪そうなコードを追加
ListBox_Convert.Items.LoadFromFileの1行を
以下に変更
for ia := 0 to 1000 do
begin
Application.ProcessMessages;
if FileExists(FileName) then // '〜.json'ファイルが存在するか?
begin
ListBox_Convert.Items.LoadFromFile(FileName);
Break;
end;
Sleep(100); // 待機
end;

プロセスの終了まで待機させないといけないからかーとこっちにしてみるも
参照 FDelphi Delphi Users' Forum [Q]CreateProcessのパラメータの使い方がヘルプを読んでもよく分かりません。
ht 〜アドレス貼れなかったので略〜
CreateProcess(Nil,PChar(SaveName),〜(略)
テキストでのバッチファイル実行はShellExecuteと同じ結果。
直接FFprobe実行を指定してみると実行できない?っぽいのだが
CreateProcess(Nil,PChar(Cmd),〜(略)
これは '>' 指定はあくまでバッチファイル用なのかな?と無しでやっても
パスは通ってても'〜.json'ファイルが作られないから進まないという結果に(謎)。
(バッチファイル実行ではFFprobeが無くてもパスが通ってなくて起動できなくても
 0バイト(空)の'〜.json'ファイルが出来るだけなので処理が通過する。)
う〜む